xref: /netbsd-src/external/mpl/bind/dist/doc/man/Makefile.in (revision 528ce0b18ee40383f14928382d06afd754b01561)
1# Copyright (C) Internet Systems Consortium, Inc. ("ISC")
2#
3# SPDX-License-Identifier: MPL-2.0
4#
5# This Source Code Form is subject to the terms of the Mozilla Public
6# License, v. 2.0.  If a copy of the MPL was not distributed with this
7# file, you can obtain one at https://mozilla.org/MPL/2.0/.
8#
9# See the COPYRIGHT file distributed with this work for additional
10# information regarding copyright ownership.
11
12srcdir =	@srcdir@
13VPATH =		@srcdir@
14top_srcdir =	@top_srcdir@
15abs_srcdir =	@abs_srcdir@
16builddir =	@builddir@
17top_builddir =	@top_builddir@
18
19@BIND9_MAKE_RULES@
20
21man1_MANS =			\
22	arpaname.1		\
23	delv.1			\
24	dig.1			\
25	host.1			\
26	mdig.1			\
27	named-rrchecker.1	\
28	nslookup.1		\
29	nsupdate.1
30
31man5_MANS =			\
32	named.conf.5		\
33	rndc.conf.5
34
35man8_MANS =			\
36	ddns-confgen.8		\
37	dnssec-cds.8		\
38	dnssec-checkds.8	\
39	dnssec-coverage.8	\
40	dnssec-dsfromkey.8	\
41	dnssec-importkey.8	\
42	dnssec-keyfromlabel.8	\
43	dnssec-keygen.8		\
44	dnssec-keymgr.8		\
45	dnssec-revoke.8		\
46	dnssec-settime.8	\
47	dnssec-signzone.8	\
48	dnssec-verify.8		\
49	filter-aaaa.8		\
50	named-checkconf.8	\
51	named-checkzone.8	\
52	named-compilezone.8	\
53	named-journalprint.8	\
54	named.8			\
55	nsec3hash.8		\
56	rndc-confgen.8		\
57	rndc.8			\
58	tsig-keygen.8
59
60MANPAGES_RST =			\
61	arpaname.rst		\
62	ddns-confgen.rst	\
63	delv.rst		\
64	dig.rst			\
65	dnssec-cds.rst		\
66	dnssec-checkds.rst	\
67	dnssec-coverage.rst	\
68	dnssec-dsfromkey.rst	\
69	dnssec-importkey.rst	\
70	dnssec-keyfromlabel.rst	\
71	dnssec-keygen.rst	\
72	dnssec-keymgr.rst	\
73	dnssec-revoke.rst	\
74	dnssec-settime.rst	\
75	dnssec-signzone.rst	\
76	dnssec-verify.rst	\
77	dnstap-read.rst		\
78	filter-aaaa.rst		\
79	host.rst		\
80	mdig.rst		\
81	named-checkconf.rst	\
82	named-checkzone.rst	\
83	named-compilezone.rst	\
84	named-journalprint.rst	\
85	named-nzd2nzf.rst	\
86	named-rrchecker.rst	\
87	named.conf.rst		\
88	named.rst		\
89	nsec3hash.rst		\
90	nslookup.rst		\
91	nsupdate.rst		\
92	rndc-confgen.rst	\
93	rndc.conf.rst		\
94	rndc.rst		\
95	tsig-keygen.rst		\
96	pkcs11-destroy.rst	\
97	pkcs11-keygen.rst	\
98	pkcs11-list.rst		\
99	pkcs11-tokens.rst
100
101MANPAGES_IN = \
102	arpaname.1in		\
103	ddns-confgen.8in	\
104	delv.1in		\
105	dig.1in			\
106	dnssec-cds.8in		\
107	dnssec-checkds.8in	\
108	dnssec-coverage.8in	\
109	dnssec-dsfromkey.8in	\
110	dnssec-importkey.8in	\
111	dnssec-keyfromlabel.8in	\
112	dnssec-keygen.8in	\
113	dnssec-keymgr.8in	\
114	dnssec-revoke.8in	\
115	dnssec-settime.8in	\
116	dnssec-signzone.8in	\
117	dnssec-verify.8in	\
118	dnstap-read.1in		\
119	filter-aaaa.8in		\
120	host.1in		\
121	mdig.1in		\
122	named-checkconf.8in	\
123	named-checkzone.8in	\
124	named-compilezone.8in	\
125	named-journalprint.8in	\
126	named-nzd2nzf.8in	\
127	named-rrchecker.1in	\
128	named.conf.5in		\
129	named.8in		\
130	nsec3hash.8in		\
131	nslookup.1in		\
132	nsupdate.1in		\
133	rndc-confgen.8in	\
134	rndc.conf.5in		\
135	rndc.8in		\
136	tsig-keygen.8in		\
137	pkcs11-destroy.8in	\
138	pkcs11-keygen.8in	\
139	pkcs11-list.8in		\
140	pkcs11-tokens.8in
141
142dnstap_man1_MANS =		\
143	dnstap-read.1
144
145nzd_man8_MANS =			\
146	named-nzd2nzf.8
147
148pkcs11_man8_MANS =		\
149	pkcs11-destroy.8	\
150	pkcs11-keygen.8		\
151	pkcs11-list.8		\
152	pkcs11-tokens.8
153
154BIND9_VERSION=@BIND9_VERSION@
155RELEASE_DATE=@RELEASE_DATE@
156BIND9_VERSIONSTRING=@BIND9_VERSIONSTRING@
157
158# You can set these variables from the command line.
159SPHINXBUILD = @SPHINX_BUILD@
160SPHINXBUILDDIR = ${builddir}/_build
161SPHINX_W = -W
162
163common_SPHINXOPTS =		\
164	$(SPHINX_W)		\
165	-a			\
166	-v			\
167	-c "${abs_srcdir}"
168
169ALLSPHINXOPTS =					\
170	$(common_SPHINXOPTS)			\
171	-D version="${BIND9_VERSION}"		\
172	-D today="${RELEASE_DATE}"		\
173	-D release="${BIND9_VERSIONSTRING}"	\
174	$(SPHINXOPTS)				\
175	${srcdir}
176
177man_SPHINXOPTS =				\
178	$(common_SPHINXOPTS)			\
179	-D version="@""BIND9_VERSION""@"	\
180	-D today="@""RELEASE_DATE""@"		\
181	-D release="@""BIND9_VERSIONSTRING""@"	\
182	$(SPHINXOPTS)				\
183	${srcdir}
184
185# Put it first so that "make" without argument just builds manpages
186all: man
187	@:
188
189man:: ootsetup $(man1_MANS) $(man5_MANS) $(man8_MANS) @DNSTAP_MANS@ @NZD_MANS@ @PKCS11_MANS@
190
191doc:: @HTMLTARGET@ @PDFTARGET@
192
193html dirhtml:
194	$(SPHINXBUILD) -b $@ -d "$(SPHINXBUILDDIR)"/.doctrees/$@ $(ALLSPHINXOPTS) "$(SPHINXBUILDDIR)"/$@
195
196# copy in out-of-tree files in case sphinx-build isn't available
197.NOTPARALLEL:
198ootsetup: $(MANPAGES_IN)
199	for man in $(MANPAGES_IN); do \
200	  [ -e "$$man" ] || cp -f ${srcdir}/"$$man" .; \
201	done
202
203$(MANPAGES_IN): $(MANPAGES_RST)
204	$(SPHINXBUILD) -b man -d "$(SPHINXBUILDDIR)"/.doctrees/$@ $(man_SPHINXOPTS) "$(SPHINXBUILDDIR)"/man
205	-for man in $(MANPAGES_IN); do \
206	  [ -e "$(SPHINXBUILDDIR)"/man/"$$(basename $$man in)" ] && \
207	    cp -f "$(SPHINXBUILDDIR)"/man/"$$(basename $$man in)" "$$man"; \
208	done
209
210man_SUBST = sed							\
211	-e 's,[@]BIND9_VERSION[@],$(BIND9_VERSION),'			\
212	-e 's,[@]RELEASE_DATE[@],$(RELEASE_DATE),'			\
213	-e 's,[@]BIND9_VERSION_STRING[@],$(BIND9_VERSION_STRING),'	\
214	-e 's,[@]sysconfdir[@],$(sysconfdir),'				\
215	-e 's,[@]plugindir[@],$(plugindir),'
216
217$(man1_MANS): @MANSRCS@
218	for m in $(man1_MANS); do \
219		$(man_SUBST) $${m}in > $$m; \
220	done
221
222$(man5_MANS): @MANSRCS@
223	for m in $(man5_MANS); do \
224		$(man_SUBST) $${m}in > $$m; \
225	done
226
227$(man8_MANS): @MANSRCS@
228	for m in $(man8_MANS); do \
229		$(man_SUBST) $${m}in > $$m; \
230	done
231
232$(dnstap_man1_MANS): @MANSRCS@
233	for m in $(dnstap_man1_MANS); do \
234		$(man_SUBST) $${m}in > $$m; \
235	done
236
237$(nzd_man8_MANS): @MANSRCS@
238	for m in $(nzd_man8_MANS); do \
239		$(man_SUBST) $${m}in > $$m; \
240	done
241
242$(pkcs11_man8_MANS): @MANSRCS@
243	for m in $(pkcs11_man8_MANS); do \
244		$(man_SUBST) $${m}in > $$m; \
245	done
246
247.PHONY: help Makefile doc pdf man
248
249installdirs:
250	$(SHELL) ${top_srcdir}/mkinstalldirs ${DESTDIR}${mandir}/man1
251	$(SHELL) ${top_srcdir}/mkinstalldirs ${DESTDIR}${mandir}/man5
252	$(SHELL) ${top_srcdir}/mkinstalldirs ${DESTDIR}${mandir}/man8
253
254install:: installdirs
255	for m in $(man1_MANS); do ${INSTALL_DATA} $$m ${DESTDIR}${mandir}/man1/; done
256	for m in $(man5_MANS); do ${INSTALL_DATA} $$m ${DESTDIR}${mandir}/man5/; done
257	for m in $(man8_MANS); do ${INSTALL_DATA} $$m ${DESTDIR}${mandir}/man8/; done
258	for m in @DNSTAP_MANS@; do ${INSTALL_DATA} $$m ${DESTDIR}${mandir}/man1/; done
259	for m in @NZD_MANS@; do ${INSTALL_DATA} $$m ${DESTDIR}${mandir}/man8/; done
260	for m in @PKCS11_MANS@; do ${INSTALL_DATA} $$m ${DESTDIR}${mandir}/man8/; done
261
262uninstall::
263	for m in $(man1_MANS); do rm -f ${DESTDIR}${mandir}/man1/$$m; done
264	for m in $(man5_MANS); do rm -f ${DESTDIR}${mandir}/man5/$$m; done
265	for m in $(man8_MANS); do rm -f ${DESTDIR}${mandir}/man8/$$m; done
266	for m in @DNSTAP_MANS@; do rm -f ${DESTDIR}${mandir}/man1/$$m; done
267	for m in @NZD_MANS@; do rm -f ${DESTDIR}${mandir}/man8/$$m; done
268	for m in @PKCS11_MANS@; do rm -f ${DESTDIR}${mandir}/man8/$$m; done
269
270docclean manclean maintainer-clean::
271	rm -f $(MANPAGES_IN)
272
273clean::
274	-rm -rf $(SPHINXBUILDDIR)
275	-rm -f $(man1_MANS) $(man5_MANS) $(man8_MANS) @DNSTAP_MANS@ @NZD_MANS@ @PKCS11_MANS@
276