]> git.proxmox.com Git - pve-manager.git/blobdiff - bin/Makefile
ui: fix align mode of two column container
[pve-manager.git] / bin / Makefile
index caea93922ea955c531472372f10feae67742284c..180a91b554a6187faa799bdbde4b253da01b2e1a 100644 (file)
 include ../defines.mk
 
-SUBDIRS = init.d cron test
+PERL_DOC_INC_DIRS=..
+-include /usr/share/pve-doc-generator/pve-doc-generator.mk
+
+SERVICES = pvestatd pveproxy pvedaemon spiceproxy pvescheduler
+CLITOOLS = \
+       vzdump \
+       pvesubscription \
+       pveceph \
+       pveam \
+       pvesr \
+       pvenode \
+       pvesh \
+       pve7to8 \
+
 
 SCRIPTS =                      \
-       pvestatd                \
-       pvesh                   \
-       pveam                   \
+       $(SERVICES)             \
+       $(CLITOOLS)             \
        pvebanner               \
-       pvectl                  \
-       pvedaemon               \
        pveversion              \
-       pveperf
-
-MANS =                                 \
-       pvestatd.1              \
-       pvedaemon.1             \
-       pveversion.1            \
-       pveperf.1
-
-%.1: %
-       pod2man -n $* -s 1 -r "proxmox ${VERSION}" -c "Proxmox Documentation" <$* >$*.1
-
-.PHONY: install 
-install: ${SCRIPTS} ${MANS}
-       perl -I.. ./pvesh verifyapi
-       install -d ${BINDIR}
-       install -m 0755 ${SCRIPTS} ${BINDIR}
-       install -d ${MAN1DIR}
-       install -m 0644 ${MANS} ${MAN1DIR}
-       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
+       pveupgrade              \
+       pveupdate               \
+       pveperf                 \
+       pvereport
+
+HELPERS =                      \
+       pve-startall-delay      \
+       pve-init-ceph-crash
+
+SERVICE_MANS = $(addsuffix .8, $(SERVICES))
+
+CLI_MANS =                             \
+       $(addsuffix .1, $(CLITOOLS))    \
+       pveversion.1                    \
+       pveupgrade.1                    \
+       pveperf.1                       \
+       pvereport.1                     \
+
+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)
+
+%.1: %.1.pod
+       rm -f $@
+       cat $<|pod2man -n $* -s 1 -r $(VERSION) -c"Proxmox Documentation" - >$@.tmp
+       mv $@.tmp $@
+
+%.1.pod:
+       podselect $* > $@.tmp
+       mv $@.tmp $@
+
+pve6to7.1:
+       printf ".TH PVE6TO7 1\n.SH NAME\npve6to7 \- Proxmox VE upgrade checker script for 6.4 to 7.x\n" > $@.tmp
+       printf ".SH NOTE\npve6to7 is for the previous upgrade, from Proxmox VE 6 to 7, but there's a\
+        new Proxmox VE 8 available, see the 'pve7to8' tool.\n" >> $@.tmp
+       printf ".SH SYNOPSIS\npve6to7 [--full]\n" >> $@.tmp
+       mv $@.tmp $@
+
+pve7to8.1:
+       printf ".TH PVE7TO8 1\n.SH NAME\npve7to8 \- Proxmox VE upgrade checker script for 7.4+ to current 8.x\n" > $@.tmp
+       printf ".SH DESCRIPTION\nThis tool will help you to detect common pitfalls and misconfguration\
+        before, and during the upgrade of a Proxmox VE system\n" >> $@.tmp
+       printf "Any failure must be addressed before the upgrade, and any waring must be addressed, \
+        or at least carefully evaluated, if a false-positive is suspected\n" >> $@.tmp
+       printf ".SH SYNOPSIS\npve7to8 [--full]\n" >> $@.tmp
+       mv $@.tmp $@
+
+pveversion.1.pod: pveversion
+pveupgrade.1.pod: pveupgrade
+pvereport.1.pod: pvereport
+
+.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) $(BASH_COMPLETIONS) $(ZSH_COMPLETIONS)
+       install -d $(BINDIR)
+       install -m 0755 $(SCRIPTS) $(BINDIR)
+       install -d $(USRSHARE)/helpers
+       install -m 0755 $(HELPERS) $(USRSHARE)/helpers
+       install -d $(MAN1DIR)
+       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}
-       set -e && for i in ${SUBDIRS}; do ${MAKE} -C $$i $@; done
+       rm -f *.xml.tmp *.1 *.5 *.8 *{synopsis,opts}.adoc docinfo.xml *.tmp
+       rm -f *~ *.tmp $(CLI_MANS) $(SERVICE_MANS) *.1.pod *.8.pod
+       rm -f *.bash-completion *.service-bash-completion *.zsh-completion *.service-zsh-completion
+       rm -f *.api-verified *.service-api-verified