]> git.proxmox.com Git - pve-manager.git/blobdiff - bin/Makefile
upgrade checklist
[pve-manager.git] / bin / Makefile
index 56c9f1ad5cadddb173e3038d80cbb2d9fba5c1fd..28236f3319caa551641847acb91e50a09176384e 100644 (file)
@@ -1,92 +1,67 @@
 include ../defines.mk
 
-SUBDIRS = init.d ocf test
+# this requires package pve-doc-generator
+export NOVIEW=1
+
+PERL_DOC_INC_DIRS=..
+include /usr/share/pve-doc-generator/pve-doc-generator.mk
 
 SERVICES = pvestatd pveproxy pvedaemon spiceproxy
-CLITOOLS = vzdump pvesubscription
+CLITOOLS = vzdump pvesubscription pveceph pveam pvesr pvenode pvesh pve5to6
 
 SCRIPTS =                      \
        ${SERVICES}             \
        ${CLITOOLS}             \
-       pveceph                 \
-       pvesh                   \
-       pveam                   \
        pvebanner               \
        pveversion              \
        pvemailforward.pl       \
        pveupgrade              \
        pveupdate               \
-       pveperf
+       pveperf                 \
+       pvereport
 
 SERVICE_MANS = $(addsuffix .8, ${SERVICES})
-SERVICE_PODS = $(addsuffix .pod, ${SERVICE_MANS})
 
 CLI_MANS =                             \
        $(addsuffix .1, ${CLITOOLS})    \
-       pveceph.1                       \
        pveversion.1                    \
        pveupgrade.1                    \
-       pveperf.1
-CLI_PODS = $(addsuffix .pod, ${CLI_MANS})
-
+       pveperf.1                       \
+       pvereport.1                     \
 
-all: ${SERVICE_MANS} ${CLI_MANS} pvemailforward
+BASH_COMPLETIONS =                                             \
+       $(addsuffix .service-bash-completion, ${SERVICES})      \
+       $(addsuffix .bash-completion, ${CLITOOLS})              \
 
-%.1.pod: %
-       perl -I.. -T -e "use PVE::CLI::$*; PVE::CLI::$*->generate_pod_manpage();" >$@.tmp
-       mv $@.tmp $@
+ZSH_COMPLETIONS =                                              \
+       $(addsuffix .service-zsh-completion, ${SERVICES})       \
+       $(addsuffix .zsh-completion, ${CLITOOLS})               \
 
-%.8.pod: %
-       perl -I.. -T -e "use PVE::Service::$*; PVE::Service::$*->generate_pod_manpage();" >$@.tmp
-       mv $@.tmp $@
+all: ${SERVICE_MANS} ${CLI_MANS} pvemailforward
 
 %.1: %.1.pod
        rm -f $@
-       cat $<|pod2man -n $* -s 1 -r ${VERSION} -c "Proxmox Documentation" >$@.tmp
+       cat $<|pod2man -n $* -s 1 -r ${VERSION} -c"Proxmox Documentation" - >$@.tmp
        mv $@.tmp $@
 
-%.8: %.8.pod
-       rm -f $@
-       cat $<|pod2man -n $* -s 8 -r ${VERSION} -c "Proxmox Documentation" >$@.tmp
+%.1.pod:
+       podselect $* > $@.tmp
        mv $@.tmp $@
 
+pve5to6.1.pod: pve5to6
 pveversion.1.pod: pveversion
-       podselect $< > $@.tmp
-       mv $@.tmp $@
-
 pveupgrade.1.pod: pveupgrade
-       podselect $< > $@.tmp
-       mv $@.tmp $@
-
-pveperf.1.pod: pveperf
-       podselect $< > $@.tmp
-       mv $@.tmp $@
-
-%.service-bash-completion:
-       perl -I.. -T -e "use PVE::Service::$*; PVE::Service::$*->generate_bash_completions();" >$@.tmp
-       mv $@.tmp $@
-
-%.bash-completion:
-       perl -I.. -T -e "use PVE::CLI::$*; PVE::CLI::$*->generate_bash_completions();" >$@.tmp
-       mv $@.tmp $@
-
-pvectl.1.pod: pvectl
-       perl -I.. ./pvectl printmanpod >$@
-
-pveceph.1.pod: pveceph
-       perl -I.. -T ./pveceph printmanpod >$@
-
-vzrestore.1.pod: vzrestore
-       perl -I.. ./vzrestore printmanpod >$@
+pvereport.1.pod: pvereport
 
 pvemailforward: pvemailforward.c
-       gcc $< -o $@ -g -O2 -Wall -ldl -lc
+       $(CC) $(CPPFLAGS) $(CFLAGS) -Wall -g -O2 $< -o $@
+
+.PHONY: check
+check: $(addsuffix .service-api-verified, ${SERVICES}) $(addsuffix .api-verified, ${CLITOOLS})
+       rm -f *.service-api-verified *.api-verified
 
 .PHONY: install
-install: ${SCRIPTS} ${CLI_MANS} ${SERVICE_MANS} pvemailforward $(addsuffix .service-bash-completion, ${SERVICES}) $(addsuffix .bash-completion, ${CLITOOLS}) ${SERVICE_PODS} ${CLI_PODS}
-       perl -I.. ./pvesh verifyapi
-       for i in ${CLITOOLS}; do perl -I.. -T -e "use PVE::CLI::$$i; PVE::CLI::$$i->verify_api();"; done
-       for i in ${SERVICES}; do perl -I.. -T -e "use PVE::Service::$$i; PVE::Service::$$i->verify_api();"; done
+install: ${SCRIPTS} ${CLI_MANS} ${SERVICE_MANS} pvemailforward ${BASH_COMPLETIONS} ${ZSH_COMPLETIONS}
        install -d ${BINDIR}
        install -m 0755 ${SCRIPTS} ${BINDIR}
        install -s -m 2755 -g www-data pvemailforward ${BINDIR}
@@ -94,17 +69,15 @@ install: ${SCRIPTS} ${CLI_MANS} ${SERVICE_MANS} pvemailforward $(addsuffix .serv
        install -m 0644 ${CLI_MANS} ${MAN1DIR}
        install -d ${MAN8DIR}
        install -m 0644 ${SERVICE_MANS} ${MAN8DIR}
-       install -d ${PODDIR}
-       for i in ${CLITOOLS}; do install -m 0644 $$i.1.pod ${PODDIR}; done
        for i in ${CLITOOLS}; do install -m 0644 -D $$i.bash-completion ${BASHCOMPLDIR}/$$i; done
        for i in ${SERVICES}; do install -m 0644 -D $$i.service-bash-completion ${BASHCOMPLDIR}/$$i; done
-       set -e && for i in ${SUBDIRS}; do ${MAKE} -C $$i $@; done
-
-.PHONY: distclean
-distclean: clean
-       set -e && for i in ${SUBDIRS}; do ${MAKE} -C $$i $@; done
+       for i in ${CLITOOLS}; do install -m 0644 -D $$i.zsh-completion ${ZSHCOMPLDIR}/_$$i; done
+       for i in ${SERVICES}; do install -m 0644 -D $$i.service-zsh-completion ${ZSHCOMPLDIR}/_$$i; done
 
 .PHONY: clean
 clean:
-       rm -rf *~ *.tmp ${CLI_MANS} ${SERVICE_MANS} *.1.pod *.8.pod pvemailforward *.bash-completion *.service-bash-completion
-       set -e && for i in ${SUBDIRS}; do ${MAKE} -C $$i $@; done
+       make cleanup-docgen
+       rm -rf *~ *.tmp ${CLI_MANS} ${SERVICE_MANS} *.1.pod *.8.pod pvemailforward  \
+           *.bash-completion *.service-bash-completion                             \
+           *.zsh-completion *.service-zsh-completion                               \
+           *.api-verified *.service-api-verified