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