]> git.ipfire.org Git - thirdparty/pdns.git/blob - docs/Makefile.am
Try to limit the scanned files.
[thirdparty/pdns.git] / docs / Makefile.am
1 MAIN_MANS = pdns_server.1 \
2 pdns_control.1 \
3 pdnsutil.1 \
4 zone2json.1 \
5 zone2sql.1
6
7 MANPAGES_INSTALL = $(MAIN_MANS)
8
9 MANPAGES_DIST = $(MAIN_MANS) zone2ldap.1
10
11 if LDAP
12 MANPAGES_INSTALL += zone2ldap.1
13 endif
14
15 MANPAGES_TARGET_TOOLS = calidns.1 \
16 dnspcap2calidns.1 \
17 dnsgram.1 \
18 dnsreplay.1 \
19 dnsscan.1 \
20 dnsscope.1 \
21 dnswasher.1 \
22 dumresp.1 \
23 ixplore.1 \
24 nproxy.1 \
25 nsec3dig.1 \
26 pdns_notify.1 \
27 saxfr.1 \
28 sdig.1
29
30 MANPAGES_TARGET_IXFRDIST = ixfrdist.1 \
31 ixfrdist.yml.5
32
33 MANPAGES_DIST += $(MANPAGES_TARGET_TOOLS) \
34 $(MANPAGES_TARGET_IXFRDIST) \
35 dnsbulktest.1 \
36 dnstcpbench.1 \
37 dnspcap2protobuf.1
38
39 if HAVE_BOOST_GE_148
40 MANPAGES_INSTALL += dnsbulktest.1 \
41 dnstcpbench.1
42 endif
43
44 if HAVE_PROTOBUF
45 if HAVE_PROTOC
46 MANPAGES_INSTALL += dnspcap2protobuf.1
47 endif
48 endif
49
50 if TOOLS
51 MANPAGES_INSTALL += $(MANPAGES_TARGET_TOOLS)
52 endif
53
54 if IXFRDIST
55 MANPAGES_INSTALL += $(MANPAGES_TARGET_IXFRDIST)
56 endif
57
58 man_MANS = $(MANPAGES_INSTALL)
59
60 EXTRA_DIST = $(MANPAGES_DIST)
61
62 if HAVE_VIRTUALENV
63 if !HAVE_MANPAGES
64 $(MANPAGES_DIST): %: manpages/%.rst mans
65 mv "mans/$@" "$@"
66 endif # if !HAVE_MANPAGES
67
68 mans: .venv
69 rm -rf "$@.tmp"; .venv/bin/python -msphinx -b man -c . manpages "$@.tmp" && mv "$@.tmp" "$@"; rm -rf "$@.tmp"
70
71 .venv: requirements.txt
72 virtualenv .venv
73 .venv/bin/pip install -U pip setuptools setuptools-git
74 .venv/bin/pip install -r requirements.txt
75
76 .NOTPARALLEL: \
77 all-docs \
78 upload-docs \
79 html-docs \
80 $(MANPAGES_DIST) \
81 latex/PowerDNS-Authoritative.pdf \
82 PowerDNS-Authoritative.pdf \
83 html-docs.tar.bz2
84
85 clean-local:
86 rm -f latex/PowerDNS-Authoritative.pdf $(MANPAGES_DIST) html-docs.tar.bz2
87 rm -rf mans
88
89 html-docs: common/** manpages/** .venv *.rst
90 .venv/bin/python -msphinx -b html . html-docs
91
92 latex/PowerDNS-Authoritative.pdf: common/** manpages/** .venv *.rst
93 .venv/bin/python -msphinx -M latexpdf . .
94
95 PowerDNS-Authoritative.pdf: latex/PowerDNS-Authoritative.pdf
96 mv $< $@
97
98 html-docs.tar.bz2: html-docs
99 tar cjf $@ $<
100
101 all-docs: PowerDNS-Authoritative.pdf html-docs html-docs.tar.bz2
102
103 upload-docs: all-docs
104 rsync -crv --delete --no-p --chmod=g=rwX --exclude '*~' ./html-docs/ web1.powerdns.com:/srv/www/doc.powerdns.com/authoritative/
105 rsync -crv --no-p --chmod=g=rwX --exclude '*~' ./html-docs.tar.bz2 web1.powerdns.com:/srv/www/doc.powerdns.com/authoritative/
106 rsync -crv --no-p --chmod=g=rwX --exclude '*~' ./PowerDNS-Authoritative.pdf web1.powerdns.com:/srv/www/doc.powerdns.com/authoritative/
107
108 else # if HAVE_VIRTUALENV
109 $(MANPAGES_DIST):
110 echo "You need virtualenv to generate the manpages"
111 exit 1
112
113 PowerDNS-Authoritative.pdf:
114 echo "You need virtualenv to generate the PDF"
115 exit 1
116
117 html-docs:
118 echo "You need virtualenv to generate the HTML docs"
119 exit 1
120 endif
121
122