aboutsummaryrefslogtreecommitdiffstats
path: root/manual/build.mk
diff options
context:
space:
mode:
Diffstat (limited to 'manual/build.mk')
-rw-r--r--manual/build.mk43
1 files changed, 43 insertions, 0 deletions
diff --git a/manual/build.mk b/manual/build.mk
new file mode 100644
index 00000000..55c49652
--- /dev/null
+++ b/manual/build.mk
@@ -0,0 +1,43 @@
+INDOC = manual/qpdf-manual
+OUTDOC = manual/$(OUTPUT_DIR)/qpdf-manual
+
+TARGETS_manual := doc/qpdf.1 doc/fix-qdf.1 doc/zlib-flate.1
+ifeq ($(BUILD_HTML),1)
+TARGETS_manual += doc/qpdf-manual.html
+endif
+ifeq ($(BUILD_PDF),1)
+TARGETS_manual += doc/qpdf-manual.pdf
+endif
+
+VALIDATE=manual/$(OUTPUT_DIR)/validate
+
+ifeq ($(VALIDATE_DOC),1)
+
+$(VALIDATE): $(INDOC).xml
+ $(XMLLINT) --noout --dtdvalid $(DOCBOOKX_DTD) $<
+ touch $(VALIDATE)
+
+else
+
+$(VALIDATE):
+ touch $(VALIDATE)
+
+endif
+
+$(OUTDOC).pdf: $(OUTDOC).fo
+ $(FOP) $< -pdf $@
+
+$(OUTDOC).html: $(INDOC).xml manual/html.xsl $(VALIDATE)
+ $(XSLTPROC) --output $@ manual/html.xsl $<
+
+.PRECIOUS: $(OUTDOC).fo
+$(OUTDOC).fo: $(INDOC).xml manual/print.xsl $(VALIDATE)
+ $(XSLTPROC) --output $@ manual/print.xsl $<
+
+doc/%.1: manual/%.1.in
+ sed -e 's:@PACKAGE_VERSION@:$(PACKAGE_VERSION):g' \
+ -e 's:@docdir@:$(docdir):g' \
+ < $< > $@
+
+doc/%: manual/$(OUTPUT_DIR)/%
+ cp $< $@