-RELEASE=4.1
+include /usr/share/dpkg/default.mk
PACKAGE=pve-cluster
-PKGVER=4.0
-PKGREL=27
+BUILDDIR ?= $(PACKAGE)-$(DEB_VERSION)
+DSC=$(PACKAGE)_$(DEB_VERSION).dsc
-ARCH:=$(shell dpkg-architecture -qDEB_BUILD_ARCH)
-GITVERSION:=$(shell cat .git/refs/heads/master)
+GITVERSION:=$(shell git rev-parse HEAD)
-DEB=${PACKAGE}_${PKGVER}-${PKGREL}_${ARCH}.deb
-DBG_DEB=${PACKAGE}-dbg_${PKGVER}-${PKGREL}_${ARCH}.deb
+DEB=$(PACKAGE)_$(DEB_VERSION)_$(DEB_BUILD_ARCH).deb
+LIB_DEB = libpve-cluster-perl_$(DEB_VERSION)_all.deb
+LIB_DEB += libpve-cluster-api-perl_$(DEB_VERSION)_all.deb
+LIB_DEB += libpve-notify-perl_$(DEB_VERSION)_all.deb
+DBG_DEB=$(PACKAGE)-dbgsym_$(DEB_VERSION)_$(DEB_BUILD_ARCH).deb
+DEBS = $(DEB) $(DBG_DEB) $(LIB_DEB)
+all: $(DEB) $(DBG_DEB)
-all: ${DEB} ${DBG_DEB}
+$(BUILDDIR):
+ rm -rf $@ $@.tmp
+ cp -a src $@.tmp
+ cp -a debian $@.tmp/
+ echo "git clone git://git.proxmox.com/git/pve-cluster.git\\ngit checkout $(GITVERSION)" > $@.tmp/debian/SOURCE
+ mv $@.tmp $@
-cpgtest: cpgtest.c
- gcc -Wall cpgtest.c $(shell pkg-config --cflags --libs libcpg libqb) -o cpgtest
+dsc:
+ rm -rf $(BUILDDIR) $(DSC)
+ $(MAKE) $(DSC)
+ lintian $(DSC)
-.PHONY: dinstall
-dinstall: ${DEB}
- dpkg -i ${DEB}
+$(DSC): $(BUILDDIR)
+ cd $(BUILDDIR); dpkg-buildpackage -S -us -uc -d
+
+.PHONY: deb
+deb $(DBG_DEB) $(LIB_DEB): $(DEB)
+$(DEB): $(BUILDDIR)
+ cd $(BUILDDIR); dpkg-buildpackage -b -us -uc
+ lintian $(DEB)
-.PHONY: ${DEB} ${DBG_DEB}
-${DEB} ${DBG_DEB}:
- rm -rf build
- rsync -a --exclude .svn data/ build
- cp -a debian build/debian
- echo "git clone git://git.proxmox.com/git/pve-cluster.git\\ngit checkout ${GITVERSION}" > build/debian/SOURCE
- cd build; ./autogen.sh
- cd build; dpkg-buildpackage -rfakeroot -b -us -uc
- lintian ${DEB}
+sbuild: $(DSC)
+ sbuild $(DSC)
+.PHONY: dinstall
+dinstall: $(DEB) $(LIB_DEB)
+ dpkg -i $^
.PHONY: upload
-upload: ${DEB} ${DBG_DEB}
- umount /pve/${RELEASE}; mount /pve/${RELEASE} -o rw
- mkdir -p /pve/${RELEASE}/extra
- rm -f /pve/${RELEASE}/extra/${PACKAGE}*.deb
- rm -f /pve/${RELEASE}/extra/Packages*
- cp ${DEB} ${DBG_DEB} /pve/${RELEASE}/extra
- cd /pve/${RELEASE}/extra; dpkg-scanpackages . /dev/null > Packages; gzip -9c Packages > Packages.gz
- umount /pve/${RELEASE}; mount /pve/${RELEASE} -o ro
+upload: UPLOAD_DIST ?= $(DEB_DISTRIBUTION)
+upload: $(DEBS)
+ tar cf - $(DEBS) | ssh -X repoman@repo.proxmox.com -- upload --product pve --dist $(UPLOAD_DIST) --arch $(DEB_BUILD_ARCH)
.PHONY: clean
clean:
- rm -rf *~ build *_${ARCH}.deb *.changes *.dsc ${CSDIR}
+ rm -rf $(PACKAGE)-[0-9]*/ *.deb *.dsc *.changes *.buildinfo *.build *.tar.*