From e5f30e2ed87f729e9af82f5258b4e7d8c7df1689 Mon Sep 17 00:00:00 2001 From: Thomas Lamprecht Date: Mon, 22 Jul 2019 08:28:27 +0200 Subject: [PATCH] rework build and packaging, add debian source package diffoscope shows that the only real changes is the new SOURCE file we ship in docs, like other packages. Signed-off-by: Thomas Lamprecht --- Makefile | 41 ++++++++++++---------- debian/control | 8 ++--- debian/docs | 1 + debian/install | 1 - src/Makefile | 20 +++++++++++ pmg-log-tracker.c => src/pmg-log-tracker.c | 0 6 files changed, 48 insertions(+), 23 deletions(-) create mode 100644 debian/docs delete mode 100644 debian/install create mode 100644 src/Makefile rename pmg-log-tracker.c => src/pmg-log-tracker.c (100%) diff --git a/Makefile b/Makefile index 0cd627e..1e344dd 100644 --- a/Makefile +++ b/Makefile @@ -1,41 +1,46 @@ +include /usr/share/dpkg/pkg-info.mk +include /usr/share/dpkg/architecture.mk + PACKAGE=pmg-log-tracker -PKGVER=1.0 -PKGREL=1 +BUILDDIR ?= ${PACKAGE}-${DEB_VERSION_UPSTREAM} -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 - -LIBS=$(shell pkg-config --libs glib-2.0) -lz -CFLAGS=$(shell pkg-config --cflags glib-2.0) -O2 -Wpedantic +DEB=${PACKAGE}_${DEB_VERSION_UPSTREAM_REVISION}_${DEB_BUILD_ARCH}.deb +DSC=${PACKAGE}_${DEB_VERSION_UPSTREAM_REVISION}.dsc all: ${DEB} -pmg-log-tracker: pmg-log-tracker.c - gcc $< -o $@ ${CFLAGS} ${LIBS} +.PHONY: ${BUILDDIR} +${BUILDDIR}: src + rm -rf ${BUILDDIR} ${BUILDDIR}.tmp + cp -a src ${BUILDDIR}.tmp + cp -a debian ${BUILDDIR}.tmp/debian + echo "git clone git://git.proxmox.com/git/pmg-log-tracker.git\\ngit checkout ${GITVERSION}" > ${BUILDDIR}.tmp/debian/SOURCE + mv ${BUILDDIR}.tmp ${BUILDDIR} .PHONY: deb -deb ${DEB}: pmg-log-tracker - rm -f *.deb - rm -rf build - install -D -m 0755 pmg-log-tracker build/usr/bin/pmg-log-tracker - cp -a debian build/debian - cd build; dpkg-buildpackage -rfakeroot -b -us -uc +deb ${DEB}: ${BUILDDIR} + cd ${BUILDDIR}; dpkg-buildpackage -rfakeroot -b -us -uc lintian ${DEB} +.PHONY: dsc +dsc ${DSC}: ${BUILDDIR} + cd ${BUILDDIR}; dpkg-buildpackage -rfakeroot -S -us -uc -d + lintian ${DSC} + .PHONY: dinstall dinstall: ${DEB} dpkg -i ${DEB} .PHONY: upload upload: ${DEB} ${DBG_DEB} - tar cf - ${DEB} ${DBG_DEB}| ssh repoman@repo.proxmox.com -- upload --product pmg --dist stretch --arch ${ARCH} + tar cf - ${DEB} ${DBG_DEB}| ssh repoman@repo.proxmox.com -- upload --product pmg --dist stretch --arch ${DEB_BUILD_ARCH} .PHONY: distclean distclean: clean .PHONY: clean clean: - rm -rf build *.deb pmg-log-tracker *.buildinfo *.changes + rm -rf *.deb ${PACKAGE}-* *.buildinfo *.changes *.dsc ${PACKAGE}_*.tar.gz find . -name '*~' -exec rm {} ';' diff --git a/debian/control b/debian/control index 169a0ad..26210a3 100644 --- a/debian/control +++ b/debian/control @@ -2,13 +2,13 @@ Source: pmg-log-tracker Section: admin Priority: optional Maintainer: Proxmox Support Team -Build-Depends: debhelper (>= 9), - libglib2.0-dev (>= 2.42.1-1) -Standards-Version: 3.9.5 +Build-Depends: debhelper (>= 10~), + libglib2.0-dev (>= 2.42.1) +Standards-Version: 3.9.8 Homepage: http://www.proxmox.com Package: pmg-log-tracker Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends} Description: Proxmox Mailgateway Log Tracker - Tools to scan mail logs. \ No newline at end of file + Tools to scan mail logs. diff --git a/debian/docs b/debian/docs new file mode 100644 index 0000000..8696672 --- /dev/null +++ b/debian/docs @@ -0,0 +1 @@ +debian/SOURCE diff --git a/debian/install b/debian/install deleted file mode 100644 index d50c85b..0000000 --- a/debian/install +++ /dev/null @@ -1 +0,0 @@ -/usr/bin/pmg-log-tracker \ No newline at end of file diff --git a/src/Makefile b/src/Makefile new file mode 100644 index 0000000..1f48092 --- /dev/null +++ b/src/Makefile @@ -0,0 +1,20 @@ +DESTDIR= + +LIBS=$(shell pkg-config --libs glib-2.0) -lz +CFLAGS=$(shell pkg-config --cflags glib-2.0) -O2 -Wpedantic + +all: pmg-log-tracker + +pmg-log-tracker: pmg-log-tracker.c + gcc $< -o $@ ${CFLAGS} ${LIBS} + +.PHONY: install +install: pmg-log-tracker + install -d ${DESTDIR}/usr/bin + install -m 0755 pmg-log-tracker ${DESTDIR}/usr/bin/ + +.PHONY: clean distclean +distclean: clean +clean: + rm -rf pmg-log-tracker + find . -name '*~' -exec rm {} ';' diff --git a/pmg-log-tracker.c b/src/pmg-log-tracker.c similarity index 100% rename from pmg-log-tracker.c rename to src/pmg-log-tracker.c