]> git.proxmox.com Git - pve-manager.git/blob - Makefile
add SOURCE_DATE_EPOCH to Makefile
[pve-manager.git] / Makefile
1 include defines.mk
2
3 export SOURCE_DATE_EPOCH ?= $(shell dpkg-parsechangelog -l debian/changelog.Debian -STimestamp)
4
5 DESTDIR=
6
7 SUBDIRS = aplinfo PVE bin www po
8
9 ARCH:=$(shell dpkg-architecture -qDEB_BUILD_ARCH)
10 GITVERSION:=$(shell cat .git/refs/heads/master)
11
12 DEB=${PACKAGE}_${VERSION}-${PACKAGERELEASE}_${ARCH}.deb
13
14 all: ${SUBDIRS}
15
16 check:
17 ${MAKE} -C bin/test check
18
19 %:
20 set -e && for i in ${SUBDIRS}; do ${MAKE} -C $$i $@; done
21
22 .PHONY: dinstall
23 dinstall: ${DEB}
24 dpkg -i ${DEB}
25
26 country.dat: country.pl
27 ./country.pl > country.dat
28
29 .PHONY: deb
30 deb: $(DEB)
31 $(DEB):
32 ${MAKE} -C bin/test check
33 make clean
34 rm -rf dest
35 mkdir dest
36 make DESTDIR=`pwd`/dest install
37 mkdir dest/DEBIAN
38 sed -e s/@VERSION@/${VERSION}/ -e s/@PACKAGE@/${PACKAGE}/ -e s/@PACKAGERELEASE@/${PACKAGERELEASE}/ debian/control.in >dest/DEBIAN/control
39 install -m 0644 debian/conffiles dest/DEBIAN
40 install -m 0755 debian/config dest/DEBIAN
41 install -m 0644 debian/templates dest/DEBIAN
42 install -m 0755 debian/preinst dest/DEBIAN
43 install -m 0755 debian/postinst dest/DEBIAN
44 install -m 0755 debian/prerm dest/DEBIAN
45 install -m 0755 debian/postrm dest/DEBIAN
46 install -m 0644 debian/triggers dest/DEBIAN
47 install -m 0644 -D debian/lintian-overrides dest/usr/share/lintian/overrides/${PACKAGE}
48 echo "git clone git://git.proxmox.com/git/pve-manager.git\\ngit checkout ${GITVERSION}" > dest/usr/share/doc/${PACKAGE}/SOURCE
49 gzip -n --best dest/usr/share/man/*/*
50 gzip -n --best dest/usr/share/doc/${PACKAGE}/changelog.Debian
51 dpkg-deb --build dest
52 mv dest.deb ${DEB}
53 rm -rf dest
54 # supress lintian error: statically-linked-binary usr/bin/pvemailforward
55 lintian -X binaries ${DEB}
56
57 .PHONY: upload
58 upload: ${DEB} check
59 ./repoid.pl .git check
60 tar cf - ${DEB} | ssh -X repoman@repo.proxmox.com upload --product pve --dist stretch
61
62 #.PHONY: poupload
63 #poupload:
64 # rsync po/*.po po/pve-manager.pot pve.proxmox.com:/home/ftp/sources/po-files/
65
66 .PHONY: install
67 install: country.dat vzdump.conf vzdump-hook-script.pl pve-apt.conf mtu bridgevlan bridgevlanport vlan vlan-down
68 install -d -m 0700 -o www-data -g www-data ${DESTDIR}/var/log/pveproxy
69 install -D -m 0644 debian/pve.logrotate ${DESTDIR}/etc/logrotate.d/pve
70 install -d ${DESTDIR}/usr/share/${PACKAGE}
71 install -d ${DESTDIR}/usr/share/man/man1
72 install -d ${DOCDIR}/examples
73 install -d ${DESTDIR}/var/lib/${PACKAGE}
74 install -d ${DESTDIR}/var/lib/vz/images
75 install -d ${DESTDIR}/var/lib/vz/template/cache
76 install -d ${DESTDIR}/var/lib/vz/template/iso
77 install -d ${DESTDIR}/var/lib/vz/template/qemu
78 install -D -m 0644 pve-apt.conf ${DESTDIR}/etc/apt/apt.conf.d/75pveconf
79 install -D -m 0644 pve-sources.list ${DESTDIR}/etc/apt/sources.list.d/pve-enterprise.list
80 install -D -m 0644 pve-blacklist.conf ${DESTDIR}/etc/modprobe.d/pve-blacklist.conf
81 install -D -m 0644 vzdump.conf ${DESTDIR}/etc/vzdump.conf
82 install -D -m 0755 mtu ${DESTDIR}/etc/network/if-up.d/mtu
83 install -D -m 0755 bridgevlan ${DESTDIR}/etc/network/if-up.d/bridgevlan
84 install -D -m 0755 bridgevlanport ${DESTDIR}/etc/network/if-up.d/bridgevlanport
85 install -D -m 0755 vlan ${DESTDIR}/etc/network/if-pre-up.d/vlan
86 install -D -m 0755 vlan-down ${DESTDIR}/etc/network/if-post-down.d/vlan
87
88 install -m 0644 vzdump-hook-script.pl ${DOCDIR}/examples/vzdump-hook-script.pl
89 install -m 0644 spice-example-sh ${DOCDIR}/examples/spice-example-sh
90 install -m 0644 copyright ${DOCDIR}
91 install -m 0644 debian/changelog.Debian ${DOCDIR}
92 install -m 0644 country.dat ${DESTDIR}/usr/share/${PACKAGE}
93 # temporary: set ExtJS 6 migration devel directory
94 install -d ${DESTDIR}/usr/share/${PACKAGE}/manager6
95 set -e && for i in ${SUBDIRS}; do ${MAKE} -C $$i $@; done
96
97 .PHONY: distclean
98 distclean: clean
99
100 .PHONY: clean
101 clean:
102 set -e && for i in ${SUBDIRS}; do ${MAKE} -C $$i $@; done
103 find . -name '*~' -exec rm {} ';'
104 rm -rf dest country.dat *.deb ca-tmp