5
0
mirror of git://git.proxmox.com/git/pve-docs.git synced 2025-01-22 22:03:47 +03:00
pve-docs/pve-doc-generator.mk
Fabian Grünbichler fcace69a97 add pveperf section and man page
this is a bit ugly, because pveperf is not an instance of
PVE::CLIHandler - the actual installed man page is still
generated via the pod data contained in
pve-manager/bin/pveperf ...
2016-10-07 10:09:48 +02:00

292 lines
6.5 KiB
Makefile

# also update debian/changelog
DOCRELEASE=4.3
DGDIR?=/usr/share/pve-doc-generator
all:
PVE_COMMON_DOC_SOURCES= \
attributes.txt \
pve-copyright.adoc \
docinfo.xml
PVECM_MAN1_SOURCES= \
pvecm.adoc \
pvecm.1-synopsis.adoc \
${PVE_COMMON_DOC_SOURCES}
PVE_FIREWALL_MAN8_SOURCES= \
pve-firewall.adoc \
pve-firewall.8-synopsis.adoc \
pve-firewall-cluster-opts.adoc \
pve-firewall-host-opts.adoc \
pve-firewall-vm-opts.adoc \
pve-firewall-rules-opts.adoc \
pve-firewall-macros.adoc \
${PVE_COMMON_DOC_SOURCES}
PVESM_MAN1_SOURCES= \
pvesm.adoc \
pvesm.1-synopsis.adoc \
pve-storage-dir.adoc \
pve-storage-glusterfs.adoc \
pve-storage-iscsi.adoc \
pve-storage-iscsidirect.adoc \
pve-storage-lvm.adoc \
pve-storage-lvmthin.adoc \
pve-storage-nfs.adoc \
pve-storage-rbd.adoc \
pve-storage-zfspool.adoc \
${PVE_COMMON_DOC_SOURCES}
VZDUMP_MAN1_SOURCES= \
vzdump.adoc \
vzdump.1-synopsis.adoc \
vzdump.conf.5-opts.adoc \
${PVE_COMMON_DOC_SOURCES}
PVESUBSCRIPTION_MAN1_SOURCES= \
pvesubscription.adoc \
pvesubscription.1-synopsis.adoc \
${PVE_COMMON_DOC_SOURCES}
PVECEPH_MAN1_SOURCES= \
pveceph.adoc \
pveceph.1-synopsis.adoc \
${PVE_COMMON_DOC_SOURCES}
PCT_MAN1_SOURCES= \
pct.adoc \
pct.1-synopsis.adoc \
pct.conf.5-opts.adoc \
pct-network-opts.adoc \
pct-mountpoint-opts.adoc \
${PVE_COMMON_DOC_SOURCES}
PCT_CONF_MAN5_SOURCES= \
pct.conf.adoc \
pct.conf.5-opts.adoc \
${PVE_COMMON_DOC_SOURCES}
DATACENTER_CONF_MAN5_SOURCES= \
datacenter.cfg.adoc \
datacenter.cfg.5-opts.adoc \
${PVE_COMMON_DOC_SOURCES}
QM_MAN1_SOURCES= \
qm.adoc \
qm.1-synopsis.adoc \
qm.conf.5-opts.adoc \
${PVE_COMMON_DOC_SOURCES}
QM_CONF_MAN5_SOURCES= \
qm.conf.adoc \
qm.conf.5-opts.adoc \
${PVE_COMMON_DOC_SOURCES}
QMRESTORE_MAN1_SOURCES= \
qmrestore.adoc \
qmrestore.1-synopsis.adoc \
${PVE_COMMON_DOC_SOURCES}
PVEUM_MAN1_SOURCES= \
pveum.adoc \
pveum.1-synopsis.adoc \
${PVE_COMMON_DOC_SOURCES}
PVEAM_MAN1_SOURCES= \
pveam.adoc \
pveam.1-synopsis.adoc \
${PVE_COMMON_DOC_SOURCES}
HA_MANAGER_MAN1_SOURCES= \
ha-manager.adoc \
ha-manager.1-synopsis.adoc \
${PVE_COMMON_DOC_SOURCES}
PVE_HA_CRM_MAN8_SOURCES= \
pve-ha-crm.adoc \
pve-ha-crm.8-synopsis.adoc \
${PVE_COMMON_DOC_SOURCES}
PVE_HA_LRM_MAN8_SOURCES= \
pve-ha-lrm.adoc \
pve-ha-lrm.8-synopsis.adoc \
${PVE_COMMON_DOC_SOURCES}
PVESTATD_MAN8_SOURCES= \
pvestatd.adoc \
pvestatd.8-synopsis.adoc \
${PVE_COMMON_DOC_SOURCES}
PVEDAEMON_MAN8_SOURCES= \
pvedaemon.adoc \
pvedaemon.8-synopsis.adoc \
${PVE_COMMON_DOC_SOURCES}
PVEPROXY_MAN8_SOURCES= \
pveproxy.adoc \
pveproxy.8-synopsis.adoc \
${PVE_COMMON_DOC_SOURCES}
SPICEPROXY_MAN8_SOURCES= \
spiceproxy.adoc \
spiceproxy.8-synopsis.adoc \
${PVE_COMMON_DOC_SOURCES}
PMXCFS_MAN8_SOURCES= \
pmxcfs.adoc \
pmxcfs.8-cli.adoc \
${PVE_COMMON_DOC_SOURCES}
PVEPERF_MAN1_SOURCES= \
pveperf.adoc \
pveperf.1-synopsis.adoc \
${PVE_COMMON_DOC_SOURCES}
attributes.txt docinfo.xml:
cp ${DGDIR}/$@ $@.tmp
mv $@.tmp $@
%-opts.adoc: ${DGDIR}/gen-%-opts.pl
${DGDIR}/gen-$*-opts.pl >$@.tmp
mv $@.tmp $@
%.adoc: ${DGDIR}/gen-%-adoc.pl
${DGDIR}/gen-$*-adoc.pl >$@.tmp
mv $@.tmp $@
pveperf.1-synopsis.adoc:
echo '*pveperf* `[PATH]`' > pveperf.1-synopsis.adoc
%.1-synopsis.adoc:
perl -I. -e "use PVE::CLI::$(subst -,_,$*);print PVE::CLI::$(subst -,_,$*)->generate_asciidoc_synopsis();" > $@.tmp
mv $@.tmp $@
%.8-synopsis.adoc:
perl -I. -e "use PVE::Service::$(subst -,_,$*);print PVE::Service::$(subst -,_,$*)->generate_asciidoc_synopsis();" > $@.tmp
mv $@.tmp $@
ifneq (${DGDIR},.)
%.adoc: ${DGDIR}/%.adoc
cp $< $@.tmp
mv $@.tmp $@
endif
# asciidoc /etc/asciidoc/docbook-xsl/manpage.xsl skip REFERENCES section
# like footnotes, so we cannot use a2x. We use xmlto instead.
#A2MAN_COMMON=a2x -v -k -a docinfo1 -a "manversion=Release ${DOCRELEASE}" -f manpage
#A2MAN1=${A2MAN_COMMON} -a "manvolnum=1"
#A2MAN5=${A2MAN_COMMON} -a "manvolnum=5"
#A2MAN8=${A2MAN_COMMON} -a "manvolnum=8"
A2MAN_COMMON=asciidoc -dmanpage -bdocbook -a docinfo1
define A2MAN1
${A2MAN_COMMON} -a "manvolnum=1" -o $1.tmp.xml $1.adoc
xmlto -v man $1.tmp.xml
@rm -f $1.tmp.xml
endef
define A2MAN5
${A2MAN_COMMON} -a "manvolnum=5" -o $1.tmp.xml $1.adoc
xmlto -v man $1.tmp.xml
@rm -f $1.tmp.xml
endef
define A2MAN8
${A2MAN_COMMON} -a "manvolnum=8" -o $1.tmp.xml $1.adoc
xmlto -v man $1.tmp.xml
@rm -f $1.tmp.xml
endef
pve-firewall.8: ${PVE_FIREWALL_MAN8_SOURCES}
$(call A2MAN8,pve-firewall)
test -n "$${NOVIEW}" || man -l $@
pvesm.1: ${PVESM_MAN1_SOURCES}
$(call A2MAN1,pvesm)
test -n "$${NOVIEW}" || man -l $@
pveceph.1: ${PVECEPH_MAN1_SOURCES}
$(call A2MAN1,pveceph)
test -n "$${NOVIEW}" || man -l $@
pct.1: ${PCT_MAN1_SOURCES}
$(call A2MAN1,pct)
test -n "$${NOVIEW}" || man -l $@
vzdump.1: ${VZDUMP_MAN1_SOURCES}
$(call A2MAN1,vzdump)
test -n "$${NOVIEW}" || man -l $@
pvesubscription.1: ${PVESUBSCRIPTION_MAN1_SOURCES}
$(call A2MAN1,pvesubscription)
test -n "$${NOVIEW}" || man -l $@
qm.1: ${QM_MAN1_SOURCES}
$(call A2MAN1,qm)
test -n "$${NOVIEW}" || man -l $@
qmrestore.1: ${QMRESTORE_MAN1_SOURCES}
$(call A2MAN1,qmrestore)
test -n "$${NOVIEW}" || man -l $@
pvecm.1: ${PVECM_MAN1_SOURCES}
$(call A2MAN1,pvecm)
test -n "$${NOVIEW}" || man -l $@
pveum.1: ${PVEUM_MAN1_SOURCES}
$(call A2MAN1,pveum)
test -n "$${NOVIEW}" || man -l $@
pveam.1: ${PVEAM_MAN1_SOURCES}
$(call A2MAN1,pveam)
test -n "$${NOVIEW}" || man -l $@
ha-manager.1: ${HA_MANAGER_MAN1_SOURCES}
$(call A2MAN1,ha-manager)
test -n "$${NOVIEW}" || man -l $@
pve-ha-crm.8: ${PVE_HA_CRM_MAN8_SOURCES}
$(call A2MAN8,pve-ha-crm)
test -n "$${NOVIEW}" || man -l $@
pve-ha-lrm.8: ${PVE_HA_LRM_MAN8_SOURCES}
$(call A2MAN8,pve-ha-lrm)
test -n "$${NOVIEW}" || man -l $@
pvestatd.8: ${PVESTATD_MAN8_SOURCES}
$(call A2MAN8,pvestatd)
test -n "$${NOVIEW}" || man -l $@
pvedaemon.8: ${PVEDAEMON_MAN8_SOURCES}
$(call A2MAN8,pvedaemon)
test -n "$${NOVIEW}" || man -l $@
pveproxy.8: ${PVEPROXY_MAN8_SOURCES}
$(call A2MAN8,pveproxy)
test -n "$${NOVIEW}" || man -l $@
spiceproxy.8: ${SPICEPROXY_MAN8_SOURCES}
$(call A2MAN8,spiceproxy)
test -n "$${NOVIEW}" || man -l $@
pmxcfs.8: ${PMXCFS_MAN8_SOURCES}
$(call A2MAN8,pmxcfs)
test -n "$${NOVIEW}" || man -l $@
qm.conf.5: ${QM_CONF_MAN5_SOURCES}
pct.conf.5: ${PCT_CONF_MAN5_SOURCES}
datacenter.cfg.5: ${DATACENTER_CONF_MAN5_SOURCES}
%.5: %.adoc %.5-opts.adoc ${PVE_COMMON_DOC_SOURCES}
$(call A2MAN5,$*)
test -n "$${NOVIEW}" || man -l $@
.PHONY: cleanup-docgen
cleanup-docgen:
rm -f *.tmp.xml *.1 *.5 *.8 *.adoc attributes.txt docinfo.xml