1 include $(top_srcdir)/Makefile.top 2 include $(top_srcdir)/Makefile.docs 3 4 MANPAGES_RST = \ 5 arpaname.rst \ 6 delv.rst \ 7 dig.rst \ 8 ddns-confgen.rst \ 9 dnssec-cds.rst \ 10 dnssec-dsfromkey.rst \ 11 dnssec-importkey.rst \ 12 dnssec-keyfromlabel.rst \ 13 dnssec-keygen.rst \ 14 dnssec-ksr.rst \ 15 dnssec-revoke.rst \ 16 dnssec-settime.rst \ 17 dnssec-signzone.rst \ 18 dnssec-verify.rst \ 19 dnstap-read.rst \ 20 filter-aaaa.rst \ 21 filter-a.rst \ 22 host.rst \ 23 index.rst \ 24 mdig.rst \ 25 named-checkconf.rst \ 26 named-checkzone.rst \ 27 named-compilezone.rst \ 28 named-journalprint.rst \ 29 named-nzd2nzf.rst \ 30 named-rrchecker.rst \ 31 named.conf.rst \ 32 named.rst \ 33 nsec3hash.rst \ 34 nslookup.rst \ 35 nsupdate.rst \ 36 rndc-confgen.rst \ 37 rndc.conf.rst \ 38 rndc.rst \ 39 tsig-keygen.rst \ 40 ../../bin/check/named-checkconf.rst \ 41 ../../bin/check/named-checkzone.rst \ 42 ../../bin/check/named-compilezone.rst \ 43 ../../bin/confgen/ddns-confgen.rst \ 44 ../../bin/confgen/rndc-confgen.rst \ 45 ../../bin/confgen/tsig-keygen.rst \ 46 ../../bin/delv/delv.rst \ 47 ../../bin/dig/dig.rst \ 48 ../../bin/dig/host.rst \ 49 ../../bin/dig/nslookup.rst \ 50 ../../bin/dnssec/dnssec-cds.rst \ 51 ../../bin/dnssec/dnssec-dsfromkey.rst \ 52 ../../bin/dnssec/dnssec-importkey.rst \ 53 ../../bin/dnssec/dnssec-keyfromlabel.rst \ 54 ../../bin/dnssec/dnssec-keygen.rst \ 55 ../../bin/dnssec/dnssec-ksr.rst \ 56 ../../bin/dnssec/dnssec-revoke.rst \ 57 ../../bin/dnssec/dnssec-settime.rst \ 58 ../../bin/dnssec/dnssec-signzone.rst \ 59 ../../bin/dnssec/dnssec-verify.rst \ 60 ../../bin/named/named.conf.rst \ 61 ../../bin/named/named.rst \ 62 ../../bin/nsupdate/nsupdate.rst \ 63 ../../bin/plugins/filter-aaaa.rst \ 64 ../../bin/plugins/filter-a.rst \ 65 ../../bin/rndc/rndc.conf.rst \ 66 ../../bin/rndc/rndc.rst \ 67 ../../bin/tools/arpaname.rst \ 68 ../../bin/tools/dnstap-read.rst \ 69 ../../bin/tools/mdig.rst \ 70 ../../bin/tools/named-journalprint.rst \ 71 ../../bin/tools/named-nzd2nzf.rst \ 72 ../../bin/tools/named-rrchecker.rst \ 73 ../../bin/tools/nsec3hash.rst 74 75 man_MANS = \ 76 arpaname.1 \ 77 ddns-confgen.8 \ 78 delv.1 \ 79 dig.1 \ 80 host.1 \ 81 mdig.1 \ 82 named-rrchecker.1 \ 83 nslookup.1 \ 84 nsupdate.1 \ 85 named.conf.5 \ 86 rndc.conf.5 \ 87 dnssec-cds.1 \ 88 dnssec-dsfromkey.1 \ 89 dnssec-importkey.1 \ 90 dnssec-keyfromlabel.1 \ 91 dnssec-keygen.1 \ 92 dnssec-ksr.1 \ 93 dnssec-revoke.1 \ 94 dnssec-settime.1 \ 95 dnssec-signzone.1 \ 96 dnssec-verify.1 \ 97 filter-aaaa.8 \ 98 filter-a.8 \ 99 named-checkconf.1 \ 100 named-checkzone.1 \ 101 named-compilezone.1 \ 102 named-journalprint.1 \ 103 named.8 \ 104 nsec3hash.1 \ 105 rndc-confgen.8 \ 106 rndc.8 \ 107 tsig-keygen.8 108 109 if HAVE_DNSTAP 110 man_MANS += \ 111 dnstap-read.1 112 endif HAVE_DNSTAP 113 114 if HAVE_LMDB 115 man_MANS += \ 116 named-nzd2nzf.1 117 endif HAVE_LMDB 118 119 MANPAGES_IN = \ 120 $(man_MANS:=in) \ 121 dnstap-read.1in \ 122 named-nzd2nzf.1in 123 124 EXTRA_DIST = \ 125 conf.py \ 126 $(MANPAGES_RST) \ 127 $(MANPAGES_IN) 128 129 CLEANFILES += \ 130 $(man_MANS) 131 132 # 133 # Build rules for pre-generated manpages 134 # 135 136 man_SUBST = \ 137 $(AM_V_SED)$(SED) \ 138 -e 's,[@]PACKAGE_VERSION@,$(PACKAGE_VERSION),' \ 139 -e 's,[@]RELEASE_DATE@,$(RELEASE_DATE),' \ 140 -e 's,[@]libdir[@],$(libdir),g' \ 141 -e 's,[@]runstatedir[@],$(runstatedir),g' \ 142 -e 's,[@]sysconfdir[@],$(sysconfdir),g' \ 143 $(srcdir)/$@in >$@ 144 145 .1in.1: 146 $(man_SUBST) 147 148 .5in.5: 149 $(man_SUBST) 150 151 .8in.8: 152 $(man_SUBST) 153 154 .NOTPARALLEL: man 155 man: Makefile $(man_MANS) 156 157 doc-local: man 158 159 clean-local:: 160 -rm -rf $(SPHINXBUILDDIR) 161 162 163 CLEANFILES += \ 164 manpages.stamp 165 166 if MAINTAINER_MODE 167 168 MAINTAINERCLEANFILES = \ 169 $(MANPAGES_IN) 170 171 endif MAINTAINER_MODE 172 173 # 174 # Build rules for generating pre-generated manpages 175 # 176 177 if HAVE_SPHINX_BUILD 178 # 179 # See https://www.gnu.org/software/automake/manual/html_node/Multiple-Outputs.html 180 # 181 manpages.stamp: $(MANPAGES_RST) 182 @rm -f manpages.tmp 183 @touch manpages.tmp 184 echo "${man_RST_EPILOG}" 185 $(AM_V_SPHINX)$(SPHINX_BUILD) -b man -d $(SPHINXBUILDDIR)/.doctrees/man $(man_SPHINXOPTS) $(SPHINXBUILDDIR)/man 186 for f in $(SPHINXBUILDDIR)/man/*; do \ 187 cp -a "$$f" "$(srcdir)/$$(basename $$f)in"; \ 188 done 189 @mv -f manpages.tmp $@ 190 191 $(MANPAGES_IN): manpages.stamp 192 ## Recover from the removal of $@ 193 @dry=; for f in x $$MAKEFLAGS; do \ 194 case $$f in \ 195 *=*|--*);; \ 196 *n*) dry=:;; \ 197 esac; \ 198 done; \ 199 if test -f $@; then :; else \ 200 $$dry trap 'rm -rf manpages.lock manpages.stamp' 1 2 13 15; \ 201 if $$dry mkdir manpages.lock 2>/dev/null; then \ 202 ## This code is being executed by the first process. 203 $$dry rm -f manpages.stamp; \ 204 $(MAKE) $(AM_MAKEFLAGS) manpages.stamp; \ 205 $$dry rmdir manpages.lock; \ 206 else \ 207 ## This code is being executed by the follower processes. 208 ## Wait until the first process is done. 209 while test -d manpages.lock && test -z "$$dry"; do \ 210 sleep 1; \ 211 done; \ 212 ## Succeed if and only if the first process succeeded. 213 $$dry test -f manpages.stamp; exit $$?; \ 214 fi; \ 215 fi 216 217 endif HAVE_SPHINX_BUILD 218