]> git.proxmox.com Git - pmg-docs.git/blob - pmg-doc-generator.mk.in
7c231de88400e408ab60cda28e678aea30baede4
[pmg-docs.git] / pmg-doc-generator.mk.in
1 # also update debian/changelog
2 DOCRELEASE=5.0
3
4 DGDIR?=/usr/share/pmg-doc-generator
5
6 ASCIIDOC_PMG?=/usr/bin/asciidoc-pmg
7
8 PERL_DOC_ENV=PMG_GENERATING_DOCS=1
9
10 PMG_COMMON_DOC_SOURCES= \
11 ${ASCIIDOC_PMG} \
12 pmg-copyright.adoc \
13 docinfo.xml
14
15 all:
16
17 pmg-smtp-filter.8-synopsis.adoc:
18 @echo 'Please use systemd tools to manage this service.' >$@.tmp
19 @echo '' >>$@.tmp
20 @echo '*systemctl* `(start|stop|restart|reload)` `pmg-smtp-filter`' >>$@.tmp
21 mv $@.tmp $@
22
23
24 docinfo.xml:
25 cp ${DGDIR}/$@ $@.tmp
26 mv $@.tmp $@
27
28 %-opts.adoc: ${DGDIR}/gen-%-opts.pl
29 $(PERL_DOC_ENV) perl -I. ${DGDIR}/gen-$*-opts.pl >$@.tmp
30 mv $@.tmp $@
31
32 %.adoc: ${DGDIR}/gen-%-adoc.pl
33 $(PERL_DOC_ENV) perl -I. ${DGDIR}/gen-$*-adoc.pl >$@.tmp
34 mv $@.tmp $@
35
36 %.1-synopsis.adoc:
37 $(PERL_DOC_ENV) perl -I. -e "use PMG::CLI::$(subst -,_,$*);print PMG::CLI::$(subst -,_,$*)->generate_asciidoc_synopsis();" > $@.tmp
38 mv $@.tmp $@
39
40 %.8-synopsis.adoc:
41 $(PERL_DOC_ENV) perl -I. -e "use PMG::Service::$(subst -,_,$*);print PMG::Service::$(subst -,_,$*)->generate_asciidoc_synopsis();" > $@.tmp
42 mv $@.tmp $@
43
44 ifneq (${DGDIR},.)
45 %.adoc: ${DGDIR}/%.adoc
46 cp $< $@.tmp
47 mv $@.tmp $@
48 endif
49
50
51 %-plain.html: %.adoc ${PMG_COMMON_DOC_SOURCES}
52 ${ASCIIDOC_PMG} compile-wiki -o $@ $*.adoc
53
54 chapter-%.html: %.adoc ${PMG_COMMON_DOC_SOURCES}
55 ${ASCIIDOC_PMG} compile-chapter -o $@ $*.adoc
56
57 %.1: %.adoc %.1-synopsis.adoc ${PMG_COMMON_DOC_SOURCES}
58 ${ASCIIDOC_PMG} compile-man -o $@ $*.adoc
59 test -n "$${NOVIEW}" || man -l $@
60
61 %.1.html: %.adoc %.1-synopsis.adoc ${PMG_COMMON_DOC_SOURCES}
62 ${ASCIIDOC_PMG} compile-man-html -o $@ $*.adoc
63
64 %.8: %.adoc %.8-synopsis.adoc ${PMG_COMMON_DOC_SOURCES}
65 ${ASCIIDOC_PMG} compile-man -o $@ $*.adoc
66 test -n "$${NOVIEW}" || man -l $@
67
68 %.8.html: %.adoc %.8-synopsis.adoc ${PMG_COMMON_DOC_SOURCES}
69 ${ASCIIDOC_PMG} compile-man-html -o $@ $*.adoc
70
71 %.5: %.adoc %.5-opts.adoc ${PMG_COMMON_DOC_SOURCES}
72 ${ASCIIDOC_PMG} compile-man -o $@ $*.adoc
73 test -n "$${NOVIEW}" || man -l $@
74
75 %.5.html: %.adoc %.5-opts.adoc ${PMG_COMMON_DOC_SOURCES}
76 ${ASCIIDOC_PMG} compile-man-html -o $@ $*.adoc
77
78 %.5-plain.html: %.adoc %.5-opts.adoc ${PMG_COMMON_DOC_SOURCES}
79 ${ASCIIDOC_PMG} compile-man-wiki -o $@ $*.adoc
80
81
82 .PHONY: cleanup-docgen
83 cleanup-docgen:
84 rm -f *.xml.tmp *.1 *.5 *.8 *.adoc docinfo.xml
85