include ../defines.mk
GENERATED_SYNOPSIS := \
+ proxmox-tape/synopsis.rst \
proxmox-backup-client/synopsis.rst \
proxmox-backup-client/catalog-shell-synopsis.rst \
proxmox-backup-manager/synopsis.rst \
+ proxmox-backup-debug/synopsis.rst \
+ proxmox-file-restore/synopsis.rst \
pxar/synopsis.rst \
pmtx/synopsis.rst \
pmt/synopsis.rst \
- backup-protocol-api.rst \
- reader-protocol-api.rst \
+ config/media-pool/config.rst \
+ config/tape/config.rst \
+ config/tape-job/config.rst \
config/user/config.rst \
- config/remote/config.rst \
+ config/remote/config.rst \
+ config/sync/config.rst \
+ config/verification/config.rst \
+ config/acl/roles.rst \
config/datastore/config.rst
MAN1_PAGES := \
pxar.1 \
pmtx.1 \
pmt.1 \
+ proxmox-tape.1 \
proxmox-backup-proxy.1 \
proxmox-backup-client.1 \
- proxmox-backup-manager.1
+ proxmox-backup-manager.1 \
+ proxmox-file-restore.1 \
+ proxmox-backup-debug.1
MAN5_PAGES := \
+ media-pool.cfg.5 \
+ tape.cfg.5 \
+ tape-job.cfg.5 \
+ acl.cfg.5 \
user.cfg.5 \
remote.cfg.5 \
+ sync.cfg.5 \
+ verification.cfg.5 \
datastore.cfg.5
PRUNE_SIMULATOR_FILES := \
prune-simulator/clear-trigger.png \
prune-simulator/prune-simulator.js
+PRUNE_SIMULATOR_JS_SOURCE := \
+ /usr/share/javascript/proxmox-widget-toolkit-dev/Toolkit.js \
+ prune-simulator/prune-simulator_source.js
+
+LTO_BARCODE_JS_SOURCE := \
+ /usr/share/javascript/proxmox-widget-toolkit-dev/Toolkit.js \
+ lto-barcode/code39.js \
+ lto-barcode/prefix-field.js \
+ lto-barcode/label-style.js \
+ lto-barcode/tape-type.js \
+ lto-barcode/paper-size.js \
+ lto-barcode/page-layout.js \
+ lto-barcode/page-calibration.js \
+ lto-barcode/label-list.js \
+ lto-barcode/label-setup.js \
+ lto-barcode/lto-barcode.js
+
LTO_BARCODE_FILES := \
lto-barcode/index.html \
- lto-barcode/code39.js \
- lto-barcode/prefix-field.js \
- lto-barcode/label-style.js \
- lto-barcode/tape-type.js \
- lto-barcode/paper-size.js \
- lto-barcode/page-layout.js \
- lto-barcode/page-calibration.js \
- lto-barcode/label-list.js \
- lto-barcode/label-setup.js \
- lto-barcode/lto-barcode.js
+ lto-barcode/lto-barcode-generator.js
+
+API_VIEWER_SOURCES= \
+ api-viewer/index.html \
+ api-viewer/apidoc.js
+
+API_VIEWER_FILES := \
+ api-viewer/apidata.js \
+ /usr/share/javascript/proxmox-widget-toolkit-dev/APIViewer.js \
# Sphinx documentation setup
SPHINXOPTS =
all: ${MAN1_PAGES} ${MAN5_PAGES}
-# Extract backup protocol docs
-backup-protocol-api.rst: ${COMPILEDIR}/dump-backup-api
- ${COMPILEDIR}/dump-backup-api >$@
-
-# Extract reader protocol docs
-reader-protocol-api.rst: ${COMPILEDIR}/dump-reader-api
- ${COMPILEDIR}/dump-backup-api >$@
-
# Build manual pages using rst2man
pxar/synopsis.rst: ${COMPILEDIR}/pxar
pmt/synopsis.rst: ${COMPILEDIR}/pmt
${COMPILEDIR}/pmt printdoc > pmt/synopsis.rst
-pmt.1: pmt/man1.rst pmt/description.rst pmt/synopsis.rst
+pmt.1: pmt/man1.rst pmt/description.rst pmt/options.rst pmt/synopsis.rst
rst2man $< >$@
config/datastore/config.rst: ${COMPILEDIR}/docgen
remote.cfg.5: config/remote/man5.rst config/remote/config.rst config/remote/format.rst
rst2man $< >$@
+config/sync/config.rst: ${COMPILEDIR}/docgen
+ ${COMPILEDIR}/docgen sync.cfg >$@
+
+sync.cfg.5: config/sync/man5.rst config/sync/config.rst config/sync/format.rst
+ rst2man $< >$@
+
+config/verification/config.rst: ${COMPILEDIR}/docgen
+ ${COMPILEDIR}/docgen verification.cfg >$@
+
+verification.cfg.5: config/verification/man5.rst config/verification/config.rst config/verification/format.rst
+ rst2man $< >$@
+
+config/acl/roles.rst: ${COMPILEDIR}/docgen
+ ${COMPILEDIR}/docgen "config::acl::Role" >$@
+
+acl.cfg.5: config/acl/man5.rst config/acl/roles.rst config/acl/format.rst
+ rst2man $< >$@
+
+config/media-pool/config.rst: ${COMPILEDIR}/docgen
+ ${COMPILEDIR}/docgen media-pool.cfg >$@
+
+media-pool.cfg.5: config/media-pool/man5.rst config/media-pool/config.rst config/media-pool/format.rst
+ rst2man $< >$@
+
+config/tape/config.rst: ${COMPILEDIR}/docgen
+ ${COMPILEDIR}/docgen tape.cfg >$@
+
+tape.cfg.5: config/tape/man5.rst config/tape/config.rst config/tape/format.rst
+ rst2man $< >$@
+
+config/tape-job/config.rst: ${COMPILEDIR}/docgen
+ ${COMPILEDIR}/docgen tape-job.cfg >$@
+
+tape-job.cfg.5: config/tape-job/man5.rst config/tape-job/config.rst config/tape-job/format.rst
+ rst2man $< >$@
+
+proxmox-tape/synopsis.rst: ${COMPILEDIR}/proxmox-tape
+ ${COMPILEDIR}/proxmox-tape printdoc > proxmox-tape/synopsis.rst
+
+proxmox-tape.1: proxmox-tape/man1.rst proxmox-tape/description.rst proxmox-tape/synopsis.rst
+ rst2man $< >$@
+
proxmox-backup-client/synopsis.rst: ${COMPILEDIR}/proxmox-backup-client
${COMPILEDIR}/proxmox-backup-client printdoc > proxmox-backup-client/synopsis.rst
proxmox-backup-proxy.1: proxmox-backup-proxy/man1.rst proxmox-backup-proxy/description.rst
rst2man $< >$@
+proxmox-file-restore/synopsis.rst: ${COMPILEDIR}/proxmox-file-restore
+ ${COMPILEDIR}/proxmox-file-restore printdoc > proxmox-file-restore/synopsis.rst
+
+proxmox-file-restore.1: proxmox-file-restore/man1.rst proxmox-file-restore/description.rst proxmox-file-restore/synopsis.rst
+ rst2man $< >$@
+
+proxmox-backup-debug/synopsis.rst: ${COMPILEDIR}/proxmox-backup-debug
+ ${COMPILEDIR}/proxmox-backup-debug printdoc > proxmox-backup-debug/synopsis.rst
+
+proxmox-backup-debug.1: proxmox-backup-debug/man1.rst proxmox-backup-debug/description.rst proxmox-backup-debug/synopsis.rst
+ rst2man $< >$@
+
.PHONY: onlinehelpinfo
onlinehelpinfo:
@echo "Generating OnlineHelpInfo.js..."
- $(SPHINXBUILD) -b proxmox-scanrefs $(ALLSPHINXOPTS) $(BUILDDIR)/scanrefs
+ $(SPHINXBUILD) -b proxmox-scanrefs -Q $(ALLSPHINXOPTS) $(BUILDDIR)/scanrefs
@echo "Build finished. OnlineHelpInfo.js is in $(BUILDDIR)/scanrefs."
+api-viewer/apidata.js: ${COMPILEDIR}/docgen
+ ${COMPILEDIR}/docgen apidata.js >$@
+
+api-viewer/apidoc.js: ${API_VIEWER_FILES}
+ cat ${API_VIEWER_FILES} >$@.tmp
+ mv $@.tmp $@
+
+prune-simulator/prune-simulator.js: ${PRUNE_SIMULATOR_JS_SOURCE}
+ cat ${PRUNE_SIMULATOR_JS_SOURCE} >$@.tmp
+ mv $@.tmp $@
+
+lto-barcode/lto-barcode-generator.js: ${LTO_BARCODE_JS_SOURCE}
+ cat ${LTO_BARCODE_JS_SOURCE} >$@.tmp
+ mv $@.tmp $@
+
.PHONY: html
-html: ${GENERATED_SYNOPSIS} images/proxmox-logo.svg custom.css conf.py ${PRUNE_SIMULATOR_FILES} ${LTO_BARCODE_FILES}
+html: ${GENERATED_SYNOPSIS} images/proxmox-logo.svg custom.css conf.py ${PRUNE_SIMULATOR_FILES} ${LTO_BARCODE_FILES} ${API_VIEWER_SOURCES}
$(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
install -m 0644 custom.js custom.css images/proxmox-logo.svg $(BUILDDIR)/html/_static/
install -dm 0755 $(BUILDDIR)/html/prune-simulator
install -m 0644 ${PRUNE_SIMULATOR_FILES} $(BUILDDIR)/html/prune-simulator
install -dm 0755 $(BUILDDIR)/html/lto-barcode
install -m 0644 ${LTO_BARCODE_FILES} $(BUILDDIR)/html/lto-barcode
+ install -dm 0755 $(BUILDDIR)/html/api-viewer
+ install -m 0644 ${API_VIEWER_SOURCES} $(BUILDDIR)/html/api-viewer
@echo
@echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
@echo "Build finished. The epub3 file is in $(BUILDDIR)/epub3."
clean:
- rm -r -f *~ *.1 ${BUILDDIR} ${GENERATED_SYNOPSIS}
+ rm -r -f *~ *.1 ${BUILDDIR} ${GENERATED_SYNOPSIS} api-viewer/apidata.js
+ rm -f api-viewer/apidoc.js lto-barcode/lto-barcode-generator.js prune-simulator/prune-simulator.js
install_manual_pages: ${MAN1_PAGES} ${MAN5_PAGES}