]> git.proxmox.com Git - pve-manager.git/blob - Makefile
firewall: expose configuration option for new nftables firewall
[pve-manager.git] / Makefile
1 include /usr/share/dpkg/pkg-info.mk
2 include /usr/share/dpkg/architecture.mk
3 include defines.mk
4
5 export PVERELEASE=${DEB_VERSION_UPSTREAM}
6 export VERSION=${DEB_VERSION_UPSTREAM_REVISION}
7
8 DESTDIR=
9
10 SUBDIRS = aplinfo PVE bin www services configs network-hooks test
11
12 GITVERSION:=$(shell git rev-parse HEAD)
13
14 # possibly set via debian/rules(.env)
15 REPOID?=$(shell git rev-parse --short=8 HEAD)
16
17 DEB=${PACKAGE}_${VERSION}_${DEB_BUILD_ARCH}.deb
18
19 all: ${SUBDIRS}
20 set -e && for i in ${SUBDIRS}; do ${MAKE} -C $$i; done
21
22 .PHONY: check
23 check: bin test
24 ${MAKE} -C bin check
25 ${MAKE} -C test check
26
27 .PHONY: dinstall
28 dinstall: ${DEB}
29 dpkg -i ${DEB}
30
31 .PHONY: deb
32 deb: $(DEB)
33 $(DEB):
34 rm -rf dest
35 mkdir dest
36 rsync -a * dest
37 echo "git clone git://git.proxmox.com/git/pve-manager.git\\ngit checkout ${GITVERSION}" > dest/debian/SOURCE
38 echo "REPOID_GENERATED=${REPOID}" > dest/debian/rules.env
39 cd dest; dpkg-buildpackage -b -us -uc
40 # supress lintian error: statically-linked-binary usr/bin/pvemailforward
41 lintian -X binaries ${DEB}
42
43 .PHONY: upload
44 upload: ${DEB} check
45 # check if working directory is clean
46 git diff --exit-code --stat && git diff --exit-code --stat --staged
47 tar cf - ${DEB} | ssh -X repoman@repo.proxmox.com upload --product pve --dist buster
48
49 .PHONY: install
50 install: vzdump-hook-script.pl
51 install -d -m 0700 -o www-data -g www-data ${DESTDIR}/var/log/pveproxy
52 install -d ${DOCDIR}/examples
53 install -d ${DESTDIR}/var/lib/${PACKAGE}
54 install -d ${DESTDIR}/var/lib/vz/images
55 install -d ${DESTDIR}/var/lib/vz/template/cache
56 install -d ${DESTDIR}/var/lib/vz/template/iso
57 install -d ${DESTDIR}/var/lib/vz/template/qemu
58 install -m 0644 vzdump-hook-script.pl ${DOCDIR}/examples/vzdump-hook-script.pl
59 install -m 0644 spice-example-sh ${DOCDIR}/examples/spice-example-sh
60 set -e && for i in ${SUBDIRS}; do ${MAKE} -C $$i $@; done
61
62 .PHONY: distclean
63 distclean: clean
64
65 .PHONY: clean
66 clean:
67 set -e && for i in ${SUBDIRS}; do ${MAKE} -C $$i $@; done
68 find . -name '*~' -exec rm {} ';'
69 rm -rf dest country.dat *.deb *.buildinfo *.changes ca-tmp