bind9/doc
Petr Špaček bbb24264bb
Use unique program + option names for link anchors to support Sphinx 1.8.5
Sphinx "standard domain" provides directive types ".. program::" and
".. option::" to create link anchor for a program name + option combination.
These can be referenced using :ref:`program option` syntax.

The problem is that Sphinx 1.8.5 (e.g. in Ubuntu 18.04) generates
conflicting link targets if a page contains two option directives
starting with the same word, e.g.:

.. program:: dnssec-settime
.. option:: -P date
.. option:: -P ds date

The reason is that option directive consumes only first word as "option
name" (-P) and all the rest is considered "option argument" (date, ds
date). Newer versions of Sphinx (e.g. 4.5.0) handle this by creating
numbered link anchors, but older versions warn and BIND build system
turns the warning into a hard error.

To handle that we use method recommended by Sphinx maintainer:
https://github.com/sphinx-doc/sphinx/issues/10218#issuecomment-1059925508
As a bonus it provides more accurate link anchors for sub-options.

Alternatives considered:
- Replacing standard domain definition of .. option - causes more
  problems, see BIND issue #3294.
- Removing hyperlinks for options - that would be a step back.

Fixes: #3295
2022-04-25 14:27:34 +02:00
..
arm Implement catalog zones change of ownership (coo) support 2022-04-14 20:41:52 +00:00
design Drop documents that have been folded into doc/dev/dev.md 2022-03-09 18:01:28 +00:00
dev Remove use of the inline keyword used as suggestion to compiler 2022-03-25 08:33:43 +01:00
dnssec-guide Add CDS/CDNSKEY DELETE documentation 2022-04-13 13:26:59 +02:00
doxygen Update the copyright information in all files in the repository 2022-01-11 09:05:02 +01:00
man Use unique program + option names for link anchors to support Sphinx 1.8.5 2022-04-25 14:27:34 +02:00
misc Rename the configuration option to load balance sockets to reuseport 2022-04-06 17:03:57 +02:00
notes Add release note for [GL #3234] 2022-04-19 14:35:35 +10:00
Makefile.am Install man pages when sphinx-build tool is missing 2021-05-25 11:21:32 +02:00