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