]> git.proxmox.com Git - pve-storage.git/blob - Makefile
buildsys: use gzip -n to disable timestamps
[pve-storage.git] / Makefile
1 VERSION=4.0
2 PACKAGE=libpve-storage-perl
3 PKGREL=73
4
5 DESTDIR=
6 PREFIX=/usr
7 BINDIR=${PREFIX}/bin
8 SBINDIR=${PREFIX}/sbin
9 MANDIR=${PREFIX}/share/man
10 DOCDIR=${PREFIX}/share/doc/${PACKAGE}
11 MAN1DIR=${MANDIR}/man1/
12 BASHCOMPLDIR=${PREFIX}/share/bash-completion/completions/
13
14 export PERLDIR=${PREFIX}/share/perl5
15
16 #ARCH:=$(shell dpkg-architecture -qDEB_BUILD_ARCH)
17 ARCH=all
18 GITVERSION:=$(shell cat .git/refs/heads/master)
19
20 DEB=${PACKAGE}_${VERSION}-${PKGREL}_${ARCH}.deb
21
22 # this require package pve-doc-generator
23 export NOVIEW=1
24 include /usr/share/pve-doc-generator/pve-doc-generator.mk
25
26 all: ${DEB}
27
28 .PHONY: dinstall
29 dinstall: deb
30 dpkg -i ${DEB}
31
32 pvesm.bash-completion:
33 perl -I. -T -e "use PVE::CLI::pvesm; PVE::CLI::pvesm->generate_bash_completions();" >$@.tmp
34 mv $@.tmp $@
35
36 .PHONY: install
37 install: pvesm.1 pvesm.bash-completion
38 install -d ${DESTDIR}${SBINDIR}
39 install -m 0755 pvesm ${DESTDIR}${SBINDIR}
40 make -C PVE install
41 install -d ${DESTDIR}/usr/share/man/man1
42 install -m 0644 pvesm.1 ${DESTDIR}/usr/share/man/man1/
43 gzip -9 -n ${DESTDIR}/usr/share/man/man1/pvesm.1
44 install -m 0644 -D pvesm.bash-completion ${DESTDIR}${BASHCOMPLDIR}/pvesm
45
46 .PHONY: deb
47 deb: ${DEB}
48 ${DEB}:
49 rm -rf debian
50 mkdir debian
51 make DESTDIR=${CURDIR}/debian install
52 perl -I. -T -e "use PVE::CLI::pvesm; PVE::CLI::pvesm->verify_api();"
53 install -d -m 0755 debian/DEBIAN
54 sed -e s/@@VERSION@@/${VERSION}/ -e s/@@PKGRELEASE@@/${PKGREL}/ -e s/@@ARCH@@/${ARCH}/ <control.in >debian/DEBIAN/control
55 install -D -m 0644 copyright debian/${DOCDIR}/copyright
56 install -m 0644 changelog.Debian debian/${DOCDIR}/
57 install -m 0644 triggers debian/DEBIAN
58 gzip -9 -n debian/${DOCDIR}/changelog.Debian
59 echo "git clone git://git.proxmox.com/git/pve-storage.git\\ngit checkout ${GITVERSION}" > debian/${DOCDIR}/SOURCE
60 fakeroot dpkg-deb --build debian
61 mv debian.deb ${DEB}
62 rm -rf debian
63 lintian ${DEB}
64
65 .PHONY: clean
66 clean:
67 make cleanup-docgen
68 rm -rf debian *.deb ${PACKAGE}-*.tar.gz dist *.1 *.tmp pvesm.bash-completion
69 find . -name '*~' -exec rm {} ';'
70
71 .PHONY: distclean
72 distclean: clean
73
74
75 .PHONY: upload
76 upload: ${DEB}
77 tar cf - ${DEB} | ssh repoman@repo.proxmox.com upload
78