]> git.proxmox.com Git - pve-container.git/blob - src/Makefile
pct: use separate class for CLIHandler (src/PVE/CLI/pct.pm)
[pve-container.git] / src / Makefile
1 PACKAGE=pve-container
2
3 PREFIX=${DESTDIR}/usr
4 BINDIR=${PREFIX}/bin
5 SBINDIR=${PREFIX}/sbin
6 MANDIR=${PREFIX}/share/man
7 DOCDIR=${PREFIX}/share/doc/${PACKAGE}
8 LXC_SCRIPT_DIR=${PREFIX}/share/lxc
9 LXC_TMPL_DIR=${LXC_SCRIPT_DIR}/templates
10 LXC_HOOK_DIR=${LXC_SCRIPT_DIR}/hooks
11 LXC_COMMON_CONFIG_DIR=${LXC_SCRIPT_DIR}/config/common.conf.d
12 PODDIR=${DOCDIR}/pod
13 MAN1DIR=${MANDIR}/man1/
14 MAN5DIR=${MANDIR}/man5/
15 BASHCOMPLDIR=${PREFIX}/share/bash-completion/completions/
16 export PERLDIR=${PREFIX}/share/perl5
17
18 all:
19
20 %.1.gz: %.1.pod
21 rm -f $@
22 cat $<|pod2man -n $* -s 1 -r ${VERSION} -c "Proxmox Documentation"|gzip -c9 >$@
23
24 %.5.gz: %.5.pod
25 rm -f $@
26 cat $<|pod2man -n $* -s 5 -r ${VERSION} -c "Proxmox Documentation"|gzip -c9 >$@
27
28 pct.1.pod: pct
29 perl -I. -T -e "use PVE::CLI::pct; PVE::CLI::pct->generate_pod_manpage();" >$@
30
31 pct.conf.5.pod: gen-pct-conf-pod.pl PVE/LXC.pm
32 perl -I. ./gen-pct-conf-pod.pl >$@
33
34 .PHONY: install
35 install: pct lxc-pve.conf lxc-pve-prestart-hook lxc-pve-mount-hook lxc-pve-poststop-hook lxcnetaddbr pct.1.pod pct.1.gz pct.conf.5.pod pct.conf.5.gz pve-update-lxc-config pct.bash-completion
36 perl -I. -T -e "use PVE::CLI::pct; PVE::CLI::pct->verify_api();"
37 install -d ${SBINDIR}
38 install -m 0755 pct ${SBINDIR}
39 install -m 0755 pve-update-lxc-config ${SBINDIR}
40 install -d ${LXC_SCRIPT_DIR}
41 install -m 0755 lxcnetaddbr ${LXC_SCRIPT_DIR}
42 install -d ${LXC_HOOK_DIR}
43 install -m 0755 lxc-pve-prestart-hook ${LXC_HOOK_DIR}
44 install -m 0755 lxc-pve-mount-hook ${LXC_HOOK_DIR}
45 install -m 0755 lxc-pve-poststop-hook ${LXC_HOOK_DIR}
46 install -d ${LXC_COMMON_CONFIG_DIR}
47 install -m 0644 lxc-pve.conf ${LXC_COMMON_CONFIG_DIR}/01-pve.conf
48 install -m 0644 -D pct.bash-completion ${BASHCOMPLDIR}/pct
49 make -C PVE install
50 install -d ${MAN1DIR}
51 install -d ${MAN5DIR}
52 install -d ${PODDIR}
53 install -m 0644 pct.1.gz ${MAN1DIR}
54 install -m 0644 pct.1.pod ${PODDIR}
55 install -m 0644 pct.conf.5.pod ${PODDIR}
56 install -m 0644 pct.conf.5.gz ${MAN5DIR}
57
58 .PHONY: test
59 test:
60 make -C test test
61
62 .PHONY: clean
63 clean:
64 make -C test clean
65 rm -rf *.1.pod *.1.gz
66 find . -name '*~' -exec rm {} ';'
67
68 .PHONY: distclean
69 distclean: clean
70