]> git.proxmox.com Git - pve-manager.git/blob - bin/Makefile
cleanup: move bin/test to toplevel
[pve-manager.git] / bin / Makefile
1 include ../defines.mk
2
3 # this requires package pve-doc-generator
4 export NOVIEW=1
5 include /usr/share/pve-doc-generator/pve-doc-generator.mk
6
7 SERVICES = pvestatd pveproxy pvedaemon spiceproxy
8 CLITOOLS = vzdump pvesubscription pveceph pveam pvesr pvenode
9
10 SCRIPTS = \
11 ${SERVICES} \
12 ${CLITOOLS} \
13 pvesh \
14 pvebanner \
15 pveversion \
16 pvemailforward.pl \
17 pveupgrade \
18 pveupdate \
19 pveperf \
20 pvereport
21
22 SERVICE_MANS = $(addsuffix .8, ${SERVICES})
23
24 CLI_MANS = \
25 $(addsuffix .1, ${CLITOOLS}) \
26 pveversion.1 \
27 pveupgrade.1 \
28 pveperf.1 \
29 pvesh.1 \
30 pvereport.1 \
31
32
33 all: ${SERVICE_MANS} ${CLI_MANS} pvemailforward
34
35 %.1: %.1.pod
36 rm -f $@
37 cat $<|pod2man -n $* -s 1 -r ${VERSION} -c "Proxmox Documentation" >$@.tmp
38 mv $@.tmp $@
39
40 %.1.pod:
41 podselect $* > $@.tmp
42 mv $@.tmp $@
43
44 pveversion.1.pod: pveversion
45 pveupgrade.1.pod: pveupgrade
46 pvesh.1.pod: pvesh
47 pvereport.1.pod: pvereport
48
49 %.service-bash-completion:
50 perl -I.. -T -e "use PVE::Service::$*; PVE::Service::$*->generate_bash_completions();" >$@.tmp
51 mv $@.tmp $@
52
53 %.bash-completion:
54 perl -I.. -T -e "use PVE::CLI::$*; PVE::CLI::$*->generate_bash_completions();" >$@.tmp
55 mv $@.tmp $@
56
57 pvemailforward: pvemailforward.c
58 $(CC) $(CPPFLAGS) $(CFLAGS) -Wall -g -O2 $< -o $@
59
60 .PHONY: install
61 install: ${SCRIPTS} ${CLI_MANS} ${SERVICE_MANS} pvemailforward $(addsuffix .service-bash-completion, ${SERVICES}) $(addsuffix .bash-completion, ${CLITOOLS})
62 perl -I.. ./pvesh verifyapi
63 for i in ${CLITOOLS}; do perl -I.. -T -e "use PVE::CLI::$$i; PVE::CLI::$$i->verify_api();"; done
64 for i in ${SERVICES}; do perl -I.. -T -e "use PVE::Service::$$i; PVE::Service::$$i->verify_api();"; done
65 install -d ${BINDIR}
66 install -m 0755 ${SCRIPTS} ${BINDIR}
67 install -s -m 2755 -g www-data pvemailforward ${BINDIR}
68 install -d ${MAN1DIR}
69 install -m 0644 ${CLI_MANS} ${MAN1DIR}
70 install -d ${MAN8DIR}
71 install -m 0644 ${SERVICE_MANS} ${MAN8DIR}
72 for i in ${CLITOOLS}; do install -m 0644 -D $$i.bash-completion ${BASHCOMPLDIR}/$$i; done
73 for i in ${SERVICES}; do install -m 0644 -D $$i.service-bash-completion ${BASHCOMPLDIR}/$$i; done
74
75 .PHONY: clean
76 clean:
77 make cleanup-docgen
78 rm -rf *~ *.tmp ${CLI_MANS} ${SERVICE_MANS} *.1.pod *.8.pod pvemailforward *.bash-completion *.service-bash-completion