]> git.proxmox.com Git - pve-storage.git/blob - Makefile
buildsys: switch upload dist over to buster
[pve-storage.git] / Makefile
1 include /usr/share/dpkg/pkg-info.mk
2 include /usr/share/dpkg/architecture.mk
3
4 PACKAGE=libpve-storage-perl
5
6 DESTDIR=
7 PREFIX=/usr
8 BINDIR=${PREFIX}/bin
9 SBINDIR=${PREFIX}/sbin
10 MANDIR=${PREFIX}/share/man
11 DOCDIR=${PREFIX}/share/doc/${PACKAGE}
12 MAN1DIR=${MANDIR}/man1/
13 BASHCOMPLDIR=${PREFIX}/share/bash-completion/completions/
14 ZSHCOMPLDIR=${PREFIX}/share/zsh/vendor-completions/
15
16 export PERLDIR=${PREFIX}/share/perl5
17
18 GITVERSION:=$(shell git rev-parse HEAD)
19
20 DEB=${PACKAGE}_${DEB_VERSION_UPSTREAM_REVISION}_all.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:
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 pvesm.zsh-completion:
37 perl -I. -T -e "use PVE::CLI::pvesm; PVE::CLI::pvesm->generate_zsh_completions();" >$@.tmp
38 mv $@.tmp $@
39
40 .PHONY: install
41 install: PVE pvesm.1 pvesm.bash-completion pvesm.zsh-completion
42 install -d ${DESTDIR}${SBINDIR}
43 install -m 0755 pvesm ${DESTDIR}${SBINDIR}
44 make -C PVE install
45 install -d ${DESTDIR}/usr/share/man/man1
46 install -m 0644 pvesm.1 ${DESTDIR}/usr/share/man/man1/
47 gzip -9 -n ${DESTDIR}/usr/share/man/man1/pvesm.1
48 install -m 0644 -D pvesm.bash-completion ${DESTDIR}${BASHCOMPLDIR}/pvesm
49 install -m 0644 -D pvesm.zsh-completion ${DESTDIR}${ZSHCOMPLDIR}/_pvesm
50
51 .PHONY: deb
52 deb: ${DEB}
53 ${DEB}:
54 rm -rf build
55 rsync -a * build
56 echo "git clone git://git.proxmox.com/git/pve-storage.git\\ngit checkout ${GITVERSION}" >build/debian/SOURCE
57 cd build; dpkg-buildpackage -b -us -uc
58 lintian ${DEB}
59
60 .PHONY: test
61 test:
62 perl -I. -T -e "use PVE::CLI::pvesm; PVE::CLI::pvesm->verify_api();"
63 make -C test
64
65 .PHONY: clean
66 clean:
67 make cleanup-docgen
68 rm -rf build *.deb *.buildinfo *.changes
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 --product pve --dist buster
78