]> git.proxmox.com Git - proxmox-mailgateway.git/blobdiff - Makefile
buildsys: make build-dir generation atomic
[proxmox-mailgateway.git] / Makefile
index 886b54b1570341ec6c125fcdc90d57dd14e29c7a..facc154d6b0ba82cdc53d6a4d6c78c2c95c20fd6 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -4,13 +4,14 @@ PACKAGE=proxmox-mailgateway
 
 GITVERSION:=$(shell git rev-parse HEAD)
 
+BUILDDIR=$(PACKAGE)-$(DEB_VERSION)
+
 DEB=$(PACKAGE)_$(DEB_VERSION_UPSTREAM_REVISION)_all.deb
 CT_DEB=$(PACKAGE)-container_$(DEB_VERSION_UPSTREAM_REVISION)_all.deb
 HEADER_DEB=pve-headers_$(DEB_VERSION_UPSTREAM_REVISION)_all.deb
 
 DEBS=$(DEB) $(CT_DEB) $(HEADER_DEB)
 
-BUILD_DIR=build
 
 ARCH=amd64
 
@@ -18,12 +19,16 @@ all: $(DEB)
 
 .PHONY: deb
 deb $(CT_DEB) $(HEADER_DEB): $(DEB)
-$(DEB): debian
-       rm -rf $(BUILD_DIR)
-       mkdir -p $(BUILD_DIR)/debian
-       cp -ar debian/* $(BUILD_DIR)/debian/
-       echo "git clone git://git.proxmox.com/git/proxmox-mailgateway.git\\ngit checkout $(GITVERSION)" > $(BUILD_DIR)/debian/SOURCE
-       cd $(BUILD_DIR); dpkg-buildpackage -b -uc -us
+
+$(BUILDDIR): debian
+       rm -rf $@ $@.tmp
+       mkdir -p $@.tmp/debian
+       cp -a debian/ $@.tmp/
+       echo "git clone git://git.proxmox.com/git/proxmox-mailgateway.git\\ngit checkout $(GITVERSION)" > $@.tmp/debian/SOURCE
+       mv $@.tmp $@
+
+$(DEB): $(BUILDDIR)
+       cd $(BUILDDIR); dpkg-buildpackage -b -uc -us
        lintian $(DEBS)
 
 .PHONY: upload
@@ -31,5 +36,5 @@ upload: $(DEBS)
        tar cf - $(DEBS)|ssh -X repoman@repo.proxmox.com -- upload --product pmg --dist bullseye --arch $(ARCH)
 
 clean:
-       rm -rf $(BUILD_DIR) *.deb *.buildinfo *.changes
+       rm -rf $(PACKAGE)-[0-9]*/ *.deb *.buildinfo *.changes
        find . -name '*~' -exec rm {} ';'