X-Git-Url: https://git.proxmox.com/?p=corosync-pve.git;a=blobdiff_plain;f=Makefile;h=a0f476986d53cd71b5768a7dcffedc984ca70cc7;hp=e54697f4e423b14381e12b9e611f47b49f79cd40;hb=HEAD;hpb=0320eacf36c76a25ae8c3eac56a15855e6bce5f2 diff --git a/Makefile b/Makefile index e54697f..c35b1a9 100644 --- a/Makefile +++ b/Makefile @@ -1,49 +1,90 @@ -RELEASE=3.2 +include /usr/share/dpkg/default.mk -# source from http://www.corosync.org +PACKAGE=corosync -CSVERSION=1.4.7 -CSRELEASE=1 -CSDIR=corosync-${CSVERSION} -CSSRC=corosync-${CSVERSION}.orig.tar.gz +CSVERSION=$(DEB_VERSION_UPSTREAM) -ARCH:=$(shell dpkg-architecture -qDEB_BUILD_ARCH) -GITVERSION:=$(shell cat .git/refs/heads/master) +BUILDDIR=$(PACKAGE)-$(CSVERSION) +ORIG_SRC_TAR=$(PACKAGE)_$(DEB_VERSION_UPSTREAM).orig.tar.gz +CSSRC=upstream -DEBS= \ - corosync-pve_${CSVERSION}-${CSRELEASE}_${ARCH}.deb \ - libcorosync4-pve_${CSVERSION}-${CSRELEASE}_${ARCH}.deb \ - libcorosync-pve-dev_${CSVERSION}-${CSRELEASE}_${ARCH}.deb +GITVERSION:=$(shell git rev-parse HEAD) -all: ${DEBS} - echo ${DEBS} +DSC=$(PACKAGE)_$(DEB_VERSION).dsc +MAIN_DEB=corosync_$(DEB_VERSION)_$(DEB_BUILD_ARCH).deb \ -${DEBS}: ${CSSRC} - echo ${DEBS} - rm -rf ${CSDIR} - tar xf ${CSSRC} - cp -a debian ${CSDIR}/debian - echo "git clone git://git.proxmox.com/git/corosync-pve.git\\ngit checkout ${GITVERSION}" > ${CSDIR}/debian/SOURCE +OTHER_DEBS=\ +corosync-notifyd_$(DEB_VERSION)_$(DEB_BUILD_ARCH).deb \ +corosync-doc_$(DEB_VERSION)_all.deb \ +libcfg7_$(DEB_VERSION)_$(DEB_BUILD_ARCH).deb \ +libcmap4_$(DEB_VERSION)_$(DEB_BUILD_ARCH).deb \ +libcorosync-common4_$(DEB_VERSION)_$(DEB_BUILD_ARCH).deb \ +libcpg4_$(DEB_VERSION)_$(DEB_BUILD_ARCH).deb \ +libquorum5_$(DEB_VERSION)_$(DEB_BUILD_ARCH).deb \ +libsam4_$(DEB_VERSION)_$(DEB_BUILD_ARCH).deb \ +libvotequorum8_$(DEB_VERSION)_$(DEB_BUILD_ARCH).deb \ +libcfg-dev_$(DEB_VERSION)_$(DEB_BUILD_ARCH).deb \ +libcmap-dev_$(DEB_VERSION)_$(DEB_BUILD_ARCH).deb \ +libcorosync-common-dev_$(DEB_VERSION)_$(DEB_BUILD_ARCH).deb \ +libcpg-dev_$(DEB_VERSION)_$(DEB_BUILD_ARCH).deb \ +libquorum-dev_$(DEB_VERSION)_$(DEB_BUILD_ARCH).deb \ +libsam-dev_$(DEB_VERSION)_$(DEB_BUILD_ARCH).deb \ +libvotequorum-dev_$(DEB_VERSION)_$(DEB_BUILD_ARCH).deb \ - cd ${CSDIR}; dpkg-buildpackage -rfakeroot -b -us -uc +DBG_DEBS=\ +corosync-dbgsym_$(DEB_VERSION)_$(DEB_BUILD_ARCH).deb \ +corosync-notifyd-dbgsym_$(DEB_VERSION)_$(DEB_BUILD_ARCH).deb \ +libcfg7-dbgsym_$(DEB_VERSION)_$(DEB_BUILD_ARCH).deb \ +libcmap4-dbgsym_$(DEB_VERSION)_$(DEB_BUILD_ARCH).deb \ +libcorosync-common4-dbgsym_$(DEB_VERSION)_$(DEB_BUILD_ARCH).deb \ +libcpg4-dbgsym_$(DEB_VERSION)_$(DEB_BUILD_ARCH).deb \ +libquorum5-dbgsym_$(DEB_VERSION)_$(DEB_BUILD_ARCH).deb \ +libsam4-dbgsym_$(DEB_VERSION)_$(DEB_BUILD_ARCH).deb \ +libvotequorum8-dbgsym_$(DEB_VERSION)_$(DEB_BUILD_ARCH).deb \ -.PHONY: upload -upload: ${DEBS} - umount /pve/${RELEASE}; mount /pve/${RELEASE} -o rw - mkdir -p /pve/${RELEASE}/extra - rm -f /pve/${RELEASE}/extra/corosync*.deb - rm -f /pve/${RELEASE}/extra/libcorosync*.deb - rm -f /pve/${RELEASE}/extra/Packages* - cp ${DEBS} /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 +DEBS=$(MAIN_DEB) $(OTHER_DEBS) $(DBG_DEBS) -distclean: clean +all: $(DEBS) + echo $(DEBS) + +$(BUILDDIR): submodule debian/changelog + rm -rf $@ $@.tmp + cp -a $(CSSRC) $@.tmp + cp -a debian $@.tmp + mv $@.tmp $@ + +.PHONY: deb +deb: $(DEBS) +$(OTHER_DEBS) $(DBG_DEBS): $(MAIN_DEB) +$(MAIN_DEB): $(BUILDDIR) + cd $(BUILDDIR); dpkg-buildpackage -b -us -uc + +$(ORIG_SRC_TAR): $(BUILDDIR) + tar czf $(ORIG_SRC_TAR) --exclude="$(BUILDDIR)/debian" $(BUILDDIR) + +.PHONY: dsc +dsc: $(DSC) +$(DSC): $(ORIG_SRC_TAR) $(BUILDDIR) + cd $(BUILDDIR); dpkg-buildpackage -S -us -uc -d + lintian $(DSC) + +sbuild: $(DSC) + sbuild $(DSC) + +.PHONY: submodule +submodule: + test -f "$(CSSRC)/INSTALL" || git submodule update --init $(CSSRC) + +.PHONY: upload +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 +distclean: clean clean: - rm -rf *_${ARCH}.deb *.changes *.dsc ${CSDIR} corosync_${CSVERSION}-${CSRELEASE}.tar.gz + rm -rf *.deb *.changes *.dsc *.buildinfo *.build $(PACKAGE)-[0-9]*/ *.tar.?z .PHONY: dinstall -dinstall: ${DEBS} - dpkg -i ${DEBS} +dinstall: $(DEBS) + dpkg -i $(DEBS)