script:
- *configure
- make -j${BUILD_PARALLEL_JOBS:-1} -k doc V=1
- - qpdf --check doc/arm/_build/latex/Bv9ARM.pdf
- find doc/man/ -maxdepth 1 -name "*.[0-9]" -exec mandoc -T lint "{}" \; | ( ! grep -v -e "skipping paragraph macro. sp after" -e "unknown font, skipping request. ft C" -e "input text line longer than 80 bytes" )
.respdiff: &respdiff_job
- mv "${BIND_DIRECTORY}"/{CHANGES*,COPYRIGHT,LICENSE,README.md,srcid} .
- rm -rf "${BIND_DIRECTORY}"
- mv "../doc/arm/_build/html" doc/arm/
- - mv "../doc/arm/_build/latex/Bv9ARM.pdf" doc/arm/
- mv "../doc/arm/_build/epub/Bv9ARM.epub" doc/arm/
- echo '<!DOCTYPE HTML><html lang="en"><meta http-equiv="refresh" content="0; url=doc/arm/html/notes.html"><title>Redirect</title></html>' > "RELEASE-NOTES-${BIND_DIRECTORY}.html"
- popd
### Before the ASN Deadline (for ASN Releases) or the Public Release Date (for Regular Releases)
- - [ ] ***(QA)*** Check that the formatting is correct for HTML and PDF versions of release notes.
+ - [ ] ***(QA)*** Check that the formatting is correct for the HTML version of release notes.
- [ ] ***(QA)*** Check that the formatting of the generated man pages is correct.
- [ ] ***(QA)*** Verify GitLab CI results [for the tags](https://gitlab.isc.org/isc-private/bind9/-/pipelines?scope=tags) created and sign off on the releases to be published.
- [ ] ***(QA)*** Update GitLab settings for all maintained branches to allow merging to them again: [public](https://gitlab.isc.org/isc-projects/bind9/-/settings/repository), [private](https://gitlab.isc.org/isc-private/bind9/-/settings/repository)
they document, in files ending in `.rst`: for example, the
`named` man page is `bin/named/named.rst`.
* The *BIND 9 Administrator Reference Manual* is in the .rst files in
- `doc/arm/`; the PDF and HTML versions are automatically generated from
+ `doc/arm/`; the HTML version is automatically generated from
the `.rst` files.
* API documentation is in the header file describing the API, in
Doxygen-formatted comments.
-a \
$(SPHINX_V)
-# The "today" variable set below is not directly used in the ARM, but its value
-# is implicitly inserted on the title page of the PDF file produced by Sphinx.
ALLSPHINXOPTS = \
$(common_SPHINXOPTS) \
- -D today="$(RELEASE_DATE)" \
-D rst_epilog="$$(printf "$${RST_EPILOG}")" \
$(SPHINXOPTS) \
$(srcdir)
The *BIND 9 Administrator Reference Manual* (ARM) is included with the source
distribution, and in .rst format, in the `doc/arm`
-directory. HTML and PDF versions are automatically generated and can
+directory. The HTML version is automatically generated and can
be viewed at [https://bind9.readthedocs.io/en/latest/index.html](https://bind9.readthedocs.io/en/latest/index.html).
+The PDF version can be built by running:
+
+ cd doc/arm/
+ sphinx-build -b latex . pdf/
+ make -C pdf/ all-pdf
+
+The above requires TeX Live in order to work. The PDF will be written to
+`doc/arm/pdf/Bv9ARM.pdf`.
+
Man pages for some of the programs in the BIND 9 distribution
are also included in the BIND ARM.
AC_PATH_PROG([SPHINX_BUILD], [sphinx-build], [])
AM_CONDITIONAL([HAVE_SPHINX_BUILD], [test -n "$SPHINX_BUILD"])
-AC_PATH_PROG([XELATEX], [xelatex], [])
-AC_PATH_PROG([LATEXMK], [latexmk], [])
-AM_CONDITIONAL([HAVE_XELATEX], [test -n "$XELATEX" && test -n "$LATEXMK"])
-
#
# Build the man pages only if we have prebuilt manpages or we can build them from RST sources
#
+++ /dev/null
-
-Bv9ARM.ch* -diff -merge
-Bv9ARM.pdf -diff -merge
-Bv9ARM.xml text
-Bv9ARM.conf text
-
-*.xml auto=text
$(INSTALL) -d $(DESTDIR)/$(docdir)
$(INSTALL_DATA) $(SPHINXBUILDDIR)/epub/*.epub $(DESTDIR)/$(docdir)/
-if HAVE_XELATEX
-pdf-local:
- $(AM_V_SPHINX)$(SPHINX_BUILD) -b latex -d $(SPHINXBUILDDIR)/.doctrees/latex $(ALLSPHINXOPTS) $(SPHINXBUILDDIR)/latex
- $(MAKE) -C $(SPHINXBUILDDIR)/latex all-pdf
-
-install-pdf-local:
- $(INSTALL) -d $(DESTDIR)/$(docdir)
- $(INSTALL_DATA) $(SPHINXBUILDDIR)/latex/*.pdf $(DESTDIR)/$(docdir)/
-endif
-
clean-local:
-rm -rf $(SPHINXBUILDDIR)
-doc-local: html singlehtml pdf epub
+doc-local: html singlehtml epub