]> git.proxmox.com Git - pve-manager.git/blobdiff - bin/Makefile
upgrade checklist
[pve-manager.git] / bin / Makefile
index cda55d79df92026c216ba29414b342a2750c6893..28236f3319caa551641847acb91e50a09176384e 100644 (file)
@@ -1,64 +1,83 @@
 include ../defines.mk
 
-SUBDIRS = init.d cron 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 pveceph pveam pvesr pvenode pvesh pve5to6
 
 SCRIPTS =                      \
-       vzdump                  \
-       vzrestore               \
-       pvestatd                \
-       pvesh                   \
-       pveam                   \
+       ${SERVICES}             \
+       ${CLITOOLS}             \
        pvebanner               \
-       pvectl                  \
-       pvedaemon               \
        pveversion              \
-       pveperf
+       pvemailforward.pl       \
+       pveupgrade              \
+       pveupdate               \
+       pveperf                 \
+       pvereport
+
+SERVICE_MANS = $(addsuffix .8, ${SERVICES})
 
-MANS =                                 \
-       pvectl.1                \
-       vzdump.1                \
-       vzrestore.1             \
-       pvestatd.1              \
-       pvedaemon.1             \
-       pveversion.1            \
-       pveperf.1
+CLI_MANS =                             \
+       $(addsuffix .1, ${CLITOOLS})    \
+       pveversion.1                    \
+       pveupgrade.1                    \
+       pveperf.1                       \
+       pvereport.1                     \
 
-all: ${MANS}
+BASH_COMPLETIONS =                                             \
+       $(addsuffix .service-bash-completion, ${SERVICES})      \
+       $(addsuffix .bash-completion, ${CLITOOLS})              \
+
+ZSH_COMPLETIONS =                                              \
+       $(addsuffix .service-zsh-completion, ${SERVICES})       \
+       $(addsuffix .zsh-completion, ${CLITOOLS})               \
+
+all: ${SERVICE_MANS} ${CLI_MANS} pvemailforward
 
 %.1: %.1.pod
        rm -f $@
-       cat $<|pod2man -n $* -s 1 -r ${VERSION} -c "Proxmox Documentation" >$@
+       cat $<|pod2man -n $* -s 1 -r ${VERSION} -c"Proxmox Documentation" - >$@.tmp
+       mv $@.tmp $@
 
-%.1.pod: %
-       podselect $*>$@
+%.1.pod:
+       podselect $* > $@.tmp
+       mv $@.tmp $@
 
-pvectl.1.pod: pvectl
-       perl -I.. ./pvectl printmanpod >$@
+pve5to6.1.pod: pve5to6
+pveversion.1.pod: pveversion
+pveupgrade.1.pod: pveupgrade
+pvereport.1.pod: pvereport
 
-vzdump.1.pod: vzdump
-       perl -I.. -T ./vzdump printmanpod >$@
+pvemailforward: pvemailforward.c
+       $(CC) $(CPPFLAGS) $(CFLAGS) -Wall -g -O2 $< -o $@
 
-vzrestore.1.pod: vzrestore
-       perl -I.. ./vzrestore printmanpod >$@
+.PHONY: check
+check: $(addsuffix .service-api-verified, ${SERVICES}) $(addsuffix .api-verified, ${CLITOOLS})
+       rm -f *.service-api-verified *.api-verified
 
-.PHONY: install 
-install: ${SCRIPTS} ${MANS}
-       perl -I.. ./pvesh verifyapi
+.PHONY: install
+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}
        install -d ${MAN1DIR}
-       install -m 0644 ${MANS} ${MAN1DIR}
-       install -d ${PODDIR}
-       install -m 0644 pvectl.1.pod ${PODDIR}
-       install -m 0644 vzdump.1.pod ${PODDIR}
-       install -m 0644 vzrestore.1.pod ${PODDIR}
-       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
+       install -m 0644 ${CLI_MANS} ${MAN1DIR}
+       install -d ${MAN8DIR}
+       install -m 0644 ${SERVICE_MANS} ${MAN8DIR}
+       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
+       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 *~ ${MANS} *.1.pod
-       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