Utilities/Sphinx: Port cmake extension to Sphinx 1.4

Sphinx 1.4 introduced a breaking change to `indexnode` by changing
the length of a tuple.  Teach our extension to produce a tuple of
the proper length for the version of Sphinx in use.

This gets rid of the "4 column based index found" warning.
This commit is contained in:
Gregor Jasny
2017-02-09 18:48:31 +01:00
committed by Brad King
parent 92be2fb392
commit 971384c287

View File

@@ -46,7 +46,7 @@ from sphinx.directives import ObjectDescription
from sphinx.domains import Domain, ObjType
from sphinx.roles import XRefRole
from sphinx.util.nodes import make_refnode
from sphinx import addnodes
from sphinx import addnodes, version_info
class CMakeModule(Directive):
required_arguments = 1
@@ -123,7 +123,11 @@ class _cmake_index_entry:
self.desc = desc
def __call__(self, title, targetid, main = 'main'):
return ('pair', u'%s ; %s' % (self.desc, title), targetid, main)
# See https://github.com/sphinx-doc/sphinx/issues/2673
if version_info < (1, 4):
return ('pair', u'%s ; %s' % (self.desc, title), targetid, main)
else:
return ('pair', u'%s ; %s' % (self.desc, title), targetid, main, None)
_cmake_index_objs = {
'command': _cmake_index_entry('command'),