]> git.proxmox.com Git - pve-manager.git/blob - Makefile
avoid apt autoremoval for pve-kernel packages
[pve-manager.git] / Makefile
1 include defines.mk
2
3 DESTDIR=
4
5 #SUBDIRS = bin lib www aplinfo
6 SUBDIRS = aplinfo PVE bin www po
7
8 ARCH:=$(shell dpkg-architecture -qDEB_BUILD_ARCH)
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
21 .PHONY: dinstall
22 dinstall: ${DEB}
23 dpkg -i ${DEB}
24
25 country.dat: country.pl
26 ./country.pl > country.dat
27
28 .PHONY: ${DEB}
29 ${DEB} 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/postinst dest/DEBIAN
40 install -m 0755 debian/prerm dest/DEBIAN
41 install -m 0755 debian/postrm dest/DEBIAN
42 install -m 0644 debian/triggers dest/DEBIAN
43 gzip --best dest/usr/share/man/*/*
44 gzip --best dest/usr/share/doc/${PACKAGE}/changelog.Debian
45 dpkg-deb --build dest
46 mv dest.deb ${DEB}
47 rm -rf dest
48 # supress lintian error: statically-linked-binary usr/bin/pvemailforward
49 lintian -X binaries ${DEB}
50
51 .PHONY: upload
52 upload: ${DEB} check
53 ./repoid.pl .git check
54 umount /pve/${RELEASE}; mount /pve/${RELEASE} -o rw
55 mkdir -p /pve/${RELEASE}/extra
56 rm -f /pve/${RELEASE}/extra/${PACKAGE}_*.deb
57 rm -f /pve/${RELEASE}/extra/Packages*
58 cp ${DEB} /pve/${RELEASE}/extra
59 cd /pve/${RELEASE}/extra; dpkg-scanpackages . /dev/null > Packages; gzip -9c Packages > Packages.gz
60 umount /pve/${RELEASE}; mount /pve/${RELEASE} -o ro
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: aplupload
67 aplupload:
68 ./aplinfo/apltest.pl
69 gpg -bas -u support@proxmox.com aplinfo/aplinfo.dat
70 gzip -c aplinfo/aplinfo.dat > aplinfo.dat.gz
71 scp aplinfo/aplinfo.dat aplinfo.dat.gz aplinfo/aplinfo.dat.asc download1.proxmox.com:/home/ftp/appliances/
72
73 .PHONY: install
74 install: country.dat vznet.conf vzdump.conf vzdump-hook-script.pl
75 install -d -m 0700 -o www-data -g www-data ${DESTDIR}/var/log/pveproxy
76 install -D -m 0644 debian/pve.logrotate ${DESTDIR}/etc/logrotate.d/pve
77 install -d ${DESTDIR}/usr/share/${PACKAGE}
78 install -d ${DESTDIR}/usr/share/man/man1
79 install -d ${DOCDIR}/examples
80 install -d ${DESTDIR}/var/lib/${PACKAGE}
81 install -d ${DESTDIR}/var/lib/vz/images
82 install -d ${DESTDIR}/var/lib/vz/template/cache
83 install -d ${DESTDIR}/var/lib/vz/template/iso
84 install -d ${DESTDIR}/var/lib/vz/template/qemu
85 install -D -m 0644 pve-apt.conf ${DESTDIR}/etc/apt/apt.conf.d/75pveconf
86 install -D -m 0644 vzdump.conf ${DESTDIR}/etc/vzdump.conf
87 install -D -m 0755 vznet.conf ${DESTDIR}/etc/vz/vznet.conf
88 install -m 0644 vzdump-hook-script.pl ${DOCDIR}/examples/vzdump-hook-script.pl
89 install -m 0644 copyright ${DOCDIR}
90 install -m 0644 debian/changelog.Debian ${DOCDIR}
91 install -m 0644 country.dat ${DESTDIR}/usr/share/${PACKAGE}
92 set -e && for i in ${SUBDIRS}; do ${MAKE} -C $$i $@; done
93
94 .PHONY: distclean
95 distclean: clean
96 set -e && for i in ${SUBDIRS}; do ${MAKE} -C $$i $@; done
97
98 .PHONY: clean
99 clean:
100 set -e && for i in ${SUBDIRS}; do ${MAKE} -C $$i $@; done
101 find . -name '*~' -exec rm {} ';'
102 rm -rf dest country.dat *.deb