]> git.proxmox.com Git - corosync-pve.git/blobdiff - Makefile
debian: depend on new-enough dwz to make the d/rules override void
[corosync-pve.git] / Makefile
index b91024ecaa80221504c811b86293938e979f6a3d..9801aecee211504bda73e1ec542f3a6202860821 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,72 +1,82 @@
-RELEASE=5.0
-
-# source from http://www.corosync.org
-
-CSVERSION=2.4.2
-CSRELEASE=pve2
-DEBRELEASE=3
-CSDIR=corosync-${CSVERSION}
-CSSRC=corosync-${CSVERSION}.tar.gz
-
-ARCH:=$(shell dpkg-architecture -qDEB_BUILD_ARCH)
-GITVERSION:=$(shell cat .git/refs/heads/master)
-
-DEBS=corosync-pve_${CSVERSION}-${CSRELEASE}_all.deb \
-corosync_${CSVERSION}-${CSRELEASE}_${ARCH}.deb \
-corosync-notifyd_${CSVERSION}-${CSRELEASE}_${ARCH}.deb \
-corosync-qdevice_${CSVERSION}-${CSRELEASE}_${ARCH}.deb \
-corosync-qnetd_${CSVERSION}-${CSRELEASE}_${ARCH}.deb \
-corosync-doc_${CSVERSION}-${CSRELEASE}_all.deb \
-corosync-dev_${CSVERSION}-${CSRELEASE}_all.deb \
-libcfg6_${CSVERSION}-${CSRELEASE}_${ARCH}.deb \
-libcmap4_${CSVERSION}-${CSRELEASE}_${ARCH}.deb \
-libcorosync-common4_${CSVERSION}-${CSRELEASE}_${ARCH}.deb \
-libcpg4_${CSVERSION}-${CSRELEASE}_${ARCH}.deb \
-libquorum5_${CSVERSION}-${CSRELEASE}_${ARCH}.deb \
-libsam4_${CSVERSION}-${CSRELEASE}_${ARCH}.deb \
-libtotem-pg5_${CSVERSION}-${CSRELEASE}_${ARCH}.deb \
-libvotequorum8_${CSVERSION}-${CSRELEASE}_${ARCH}.deb \
-libcfg-dev_${CSVERSION}-${CSRELEASE}_${ARCH}.deb \
-libcmap-dev_${CSVERSION}-${CSRELEASE}_${ARCH}.deb \
-libcorosync-common-dev_${CSVERSION}-${CSRELEASE}_${ARCH}.deb \
-libcpg-dev_${CSVERSION}-${CSRELEASE}_${ARCH}.deb \
-libquorum-dev_${CSVERSION}-${CSRELEASE}_${ARCH}.deb \
-libsam-dev_${CSVERSION}-${CSRELEASE}_${ARCH}.deb \
-libtotem-pg-dev_${CSVERSION}-${CSRELEASE}_${ARCH}.deb \
-libvotequorum-dev_${CSVERSION}-${CSRELEASE}_${ARCH}.deb
+include /usr/share/dpkg/pkg-info.mk
+include /usr/share/dpkg/architecture.mk
+
+PACKAGE=corosync
+
+CSVERSION=${DEB_VERSION_UPSTREAM}
+
+BUILDDIR=${PACKAGE}-${CSVERSION}
+CSSRC=upstream
+
+GITVERSION:=$(shell git rev-parse HEAD)
+
+MAIN_DEB=corosync_${DEB_VERSION}_${DEB_BUILD_ARCH}.deb \
+
+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 \
+
+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 \
+
+DEBS=${MAIN_DEB} ${OTHER_DEBS} ${DBG_DEBS}
+
+DSC=corosync-pve_${DEB_VERSION}.dsc
 
 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}
-${DEBS}: ${CSSRC}
-       rm -rf ${CSDIR}
-       tar xf ${CSSRC}
-       mv ${CSDIR}/debian/changelog ${CSDIR}/debian/changelog.org
-       cat changelog.Debian ${CSDIR}/debian/changelog.org > ${CSDIR}/debian/changelog
-       cd ${CSDIR}; ln -s ../patches patches
-       cd ${CSDIR}; quilt push -a
-       cd ${CSDIR}; rm -rf .pc ./patches
-       cd ${CSDIR}; dpkg-buildpackage -b -us -uc
-
-.PHONY: download
-download:
-       rm -rf ${CSSRC} ${CSSRC}.tmp ${CSDIR}
-       git clone https://anonscm.debian.org/git/debian-ha/corosync.git -b debian/${CSVERSION}-${DEBRELEASE} ${CSDIR}
-       # wget http://build.clusterlabs.org/corosync/releases/${CSSRC}
-       tar czf ${CSSRC}.tmp ${CSDIR}
-       mv ${CSSRC}.tmp ${CSSRC}
+${OTHER_DEBS} ${DBG_DEBS}: ${MAIN_DEB}
+${MAIN_DEB}: ${BUILDDIR}
+       cd ${BUILDDIR}; dpkg-buildpackage -b -us -uc
+
+.PHONY: dsc
+dsc: ${DSC}
+${DSC}: ${BUILDDIR}
+       cd ${BUILDDIR}; dpkg-buildpackage -S -us -uc -d -nc
+
+.PHONY: submodule
+submodule:
+       test -f "${CSSRC}/INSTALL" || git submodule update --init ${CSSRC}
 
 .PHONY: upload
 upload: ${DEBS}
-       tar cf - ${DEBS} | ssh repoman@repo.proxmox.com -- upload --product pve --dist stretch --arch ${ARCH}
-
-distclean: clean
+       tar cf - ${DEBS} | ssh -X repoman@repo.proxmox.com -- upload --product pve --dist buster --arch ${DEB_BUILD_ARCH}
 
 .PHONY: clean
+distclean: clean
 clean:
-       rm -rf *.deb *.changes *.dsc *.buildinfo ${CSDIR} corosync_${CSVERSION}-${CSRELEASE}.tar.gz
+       rm -rf *.deb *.changes *.dsc *.buildinfo ${BUILDDIR}
        find . -name '*~' -exec rm {} ';'
 
 .PHONY: dinstall