diff options
author | Ben Gamari <ben@smart-cactus.org> | 2018-09-20 17:35:05 -0400 |
---|---|---|
committer | Ben Gamari <ben@smart-cactus.org> | 2018-09-20 18:18:05 -0400 |
commit | a257782f56e5e330349d4cc7db71e297d8396c67 (patch) | |
tree | f9ba3ef3efa50a13933a73c5eb012d1439e29691 | |
parent | 8c7d33a8ff6d3ea55b5dc8108d9441521af68ab8 (diff) | |
download | haskell-a257782f56e5e330349d4cc7db71e297d8396c67.tar.gz |
user-guide: Allow build with sphinx < 1.8
Apparently the override argument to add_directive_to_domain was added in sphinx
1.8.
-rw-r--r-- | docs/users_guide/flags.py | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/docs/users_guide/flags.py b/docs/users_guide/flags.py index 0e56bdfcc3..c95b9aa96c 100644 --- a/docs/users_guide/flags.py +++ b/docs/users_guide/flags.py @@ -46,9 +46,11 @@ from docutils import nodes from docutils.parsers.rst import Directive, directives +import sphinx from sphinx import addnodes from sphinx.domains.std import GenericObject from sphinx.errors import SphinxError +from distutils.version import LooseVersion from utils import build_table_from_list ### Settings @@ -599,15 +601,18 @@ def purge_flags(app, env, docname): ### Initialization def setup(app): + # The override argument to add_directive_to_domain is only supported by >= 1.8 + sphinx_version = LooseVersion(sphinx.__version__) + override_arg = {'override': True} if sphinx_version >= LooseVersion('1.8') else {} # Add ghc-flag directive, and override the class with our own app.add_object_type('ghc-flag', 'ghc-flag') - app.add_directive_to_domain('std', 'ghc-flag', Flag, override=True) + app.add_directive_to_domain('std', 'ghc-flag', Flag, **override_arg) # Add extension directive, and override the class with our own app.add_object_type('extension', 'extension') app.add_directive_to_domain('std', 'extension', LanguageExtension, - override=True) + **override_arg) # NB: language-extension would be misinterpreted by sphinx, and produce # lang="extensions" XML attributes |