path: root/Documentation/sphinx
diff options
authorMauro Carvalho Chehab <>2020-10-04 09:44:28 +0200
committerMauro Carvalho Chehab <>2020-10-15 07:49:36 +0200
commit93351d4196802b3ee01074d96df47b73716984ba (patch)
treead992a9d39fd6513dd719a418d6792906ecff47e /Documentation/sphinx
parented8348e23abce79780f3b679c74a48bcdc47c947 (diff)
scripts: kernel-doc: allow passing desired Sphinx C domain dialect
When kernel-doc is called via, there's no need to auto-detect the Sphinx version, as the Sphinx module already knows it. So, add an optional parameter to allow changing the Sphinx dialect. As kernel-doc can also be manually called, keep the auto-detection logic if the parameter was not specified. On such case, emit a warning if sphinx-build can't be found at PATH. I ended using a suggestion from Joe for using a more readable regex, instead of using a complex one with a hidden group like: m/^(\d+)\.(\d+)(?:\.?(\d+)?)/ in order to get the optional <patch> argument. Thanks-to: Joe Perches <> Suggested-by: Jonathan Corbet <> Signed-off-by: Mauro Carvalho Chehab <>
Diffstat (limited to 'Documentation/sphinx')
1 files changed, 5 insertions, 0 deletions
diff --git a/Documentation/sphinx/ b/Documentation/sphinx/
index 4bcbd6ae01cd..1a1b12242a45 100644
--- a/Documentation/sphinx/
+++ b/Documentation/sphinx/
@@ -70,6 +70,11 @@ class KernelDocDirective(Directive):
env = self.state.document.settings.env
cmd = [env.config.kerneldoc_bin, '-rst', '-enable-lineno']
+ # Pass the version string to kernel-doc, as it needs to use a different
+ # dialect, depending what the C domain supports for each specific
+ # Sphinx versions
+ cmd += ['-sphinx-version', sphinx.__version__]
filename = env.config.kerneldoc_srctree + '/' + self.arguments[0]
export_file_patterns = []