X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=Makefile;h=2829539594829afaa6075c200e4c8448bb97a686;hb=6e7cef49231efa0f8919ed75ffba03afb96e3c62;hp=433b606937b58efcaeeaa71396f478ee799889c4;hpb=86a76b287518940be432caa04d8662ec332dea06;p=pve-manager.git diff --git a/Makefile b/Makefile index 433b6069..28295395 100644 --- a/Makefile +++ b/Makefile @@ -1,79 +1,77 @@ +include /usr/share/dpkg/default.mk include defines.mk -export SOURCE_DATE_EPOCH ?= $(shell dpkg-parsechangelog -STimestamp) +export PVERELEASE = $(shell echo $(DEB_VERSION_UPSTREAM) | cut -d. -f1-2) +export VERSION = $(DEB_VERSION_UPSTREAM_REVISION) -DESTDIR= - -SUBDIRS = aplinfo PVE bin www - -ARCH:=$(shell dpkg-architecture -qDEB_BUILD_ARCH) -GITVERSION:=$(shell git rev-parse HEAD) - -DEB=${PACKAGE}_${VERSION}-${PACKAGERELEASE}_${ARCH}.deb +BUILDDIR = $(PACKAGE)-$(DEB_VERSION_UPSTREAM) -all: ${SUBDIRS} +DSC=$(PACKAGE)_$(DEB_VERSION).dsc +DEB=$(PACKAGE)_$(DEB_VERSION)_$(DEB_HOST_ARCH).deb -check: - ${MAKE} -C bin/test check - -.PHONY: dinstall -dinstall: ${DEB} - dpkg -i ${DEB} +DESTDIR= +SUBDIRS = aplinfo PVE bin www services configs network-hooks test + +all: $(SUBDIRS) + set -e && for i in $(SUBDIRS); do $(MAKE) -C $$i; done + +.PHONY: check +check: bin test www + $(MAKE) -C bin check + $(MAKE) -C test check + $(MAKE) -C www check + +GITVERSION:=$(shell git rev-parse --short=16 HEAD) +$(BUILDDIR): + rm -rf $@ $@.tmp + mkdir $@.tmp + rsync -a * $@.tmp + echo "git clone git://git.proxmox.com/git/pve-manager.git\\ngit checkout $(GITVERSION)" > $@.tmp/debian/SOURCE + echo "REPOID_GENERATED=$(GITVERSION)" > $@.tmp/debian/rules.env + mv $@.tmp $@ + +.PHONY: deb dsc +deb: $(DEB) +$(DEB): $(BUILDDIR) + cd $(BUILDDIR); dpkg-buildpackage -b -us -uc + lintian $(DEB) -country.dat: country.pl - ./country.pl > country.dat +dsc: + rm -rf $(BUILDDIR) $(DSC) + $(MAKE) $(DSC) + lintian $(DSC) +$(DSC): $(BUILDDIR) + cd $(BUILDDIR); dpkg-buildpackage -S -us -uc -d -.PHONY: deb -deb: $(DEB) -$(DEB): - rm -rf dest - mkdir dest - rsync -a * dest - echo "git clone git://git.proxmox.com/git/pve-manager.git\\ngit checkout ${GITVERSION}" > dest/debian/SOURCE - cd dest; dpkg-buildpackage -b -us -uc - # supress lintian error: statically-linked-binary usr/bin/pvemailforward - lintian -X binaries ${DEB} +sbuild: $(DSC) + sbuild $< .PHONY: upload -upload: ${DEB} check - ./repoid.pl .git check - tar cf - ${DEB} | ssh -X repoman@repo.proxmox.com upload --product pve --dist stretch +upload: UPLOAD_DIST ?= $(DEB_DISTRIBUTION) +upload: $(DEB) + tar cf - $(DEB) | ssh -X repoman@repo.proxmox.com upload --product pve --dist $(UPLOAD_DIST) .PHONY: install -install: country.dat vzdump.conf vzdump-hook-script.pl pve-apt.conf mtu bridgevlan bridgevlanport vlan vlan-down - install -d -m 0700 -o www-data -g www-data ${DESTDIR}/var/log/pveproxy - install -D -m 0644 debian/pve.logrotate ${DESTDIR}/etc/logrotate.d/pve - install -d ${DESTDIR}/usr/share/${PACKAGE} - install -d ${DESTDIR}/usr/share/man/man1 - install -d ${DOCDIR}/examples - install -d ${DESTDIR}/var/lib/${PACKAGE} - install -d ${DESTDIR}/var/lib/vz/images - install -d ${DESTDIR}/var/lib/vz/template/cache - install -d ${DESTDIR}/var/lib/vz/template/iso - install -d ${DESTDIR}/var/lib/vz/template/qemu - install -D -m 0644 pve-apt.conf ${DESTDIR}/etc/apt/apt.conf.d/75pveconf - install -D -m 0644 pve-sources.list ${DESTDIR}/etc/apt/sources.list.d/pve-enterprise.list - install -D -m 0644 pve-blacklist.conf ${DESTDIR}/etc/modprobe.d/pve-blacklist.conf - install -D -m 0644 vzdump.conf ${DESTDIR}/etc/vzdump.conf - install -D -m 0755 mtu ${DESTDIR}/etc/network/if-up.d/mtu - install -D -m 0755 bridgevlan ${DESTDIR}/etc/network/if-up.d/bridgevlan - install -D -m 0755 bridgevlanport ${DESTDIR}/etc/network/if-up.d/bridgevlanport - install -D -m 0755 vlan ${DESTDIR}/etc/network/if-pre-up.d/vlan - install -D -m 0755 vlan-down ${DESTDIR}/etc/network/if-post-down.d/vlan - - install -D -m 0644 pve-initramfs.conf ${DESTDIR}/etc/initramfs-tools/conf.d/pve-initramfs.conf - - install -m 0644 vzdump-hook-script.pl ${DOCDIR}/examples/vzdump-hook-script.pl - install -m 0644 spice-example-sh ${DOCDIR}/examples/spice-example-sh - install -m 0644 country.dat ${DESTDIR}/usr/share/${PACKAGE} - - set -e && for i in ${SUBDIRS}; do ${MAKE} -C $$i $@; done +install: vzdump-hook-script.pl + install -d -m 0700 -o www-data -g www-data $(DESTDIR)/var/log/pveproxy + install -d $(DOCDIR)/examples + install -d $(DESTDIR)/var/lib/$(PACKAGE) + install -d $(DESTDIR)/var/lib/vz/images + install -d $(DESTDIR)/var/lib/vz/template/cache + install -d $(DESTDIR)/var/lib/vz/template/iso + install -m 0644 vzdump-hook-script.pl $(DOCDIR)/examples/vzdump-hook-script.pl + install -m 0644 spice-example-sh $(DOCDIR)/examples/spice-example-sh + set -e && for i in $(SUBDIRS); do $(MAKE) -C $$i $@; done .PHONY: distclean distclean: clean .PHONY: clean clean: - set -e && for i in ${SUBDIRS}; do ${MAKE} -C $$i $@; done - find . -name '*~' -exec rm {} ';' - rm -rf dest country.dat *.deb *.buildinfo *.changes ca-tmp + set -e && for i in $(SUBDIRS); do $(MAKE) -C $$i $@; done + rm -f $(PACKAGE)*.tar* country.dat *.deb *.dsc *.build *.buildinfo *.changes + rm -rf dest $(PACKAGE)-[0-9]*/ + +.PHONY: dinstall +dinstall: $(DEB) + dpkg -i $(DEB)