tools/docs: sphinx-build-wrapper: only generate rust docs when requested

When the user explicitly specifies SPHINXDIRS to build a specific
subdirectory it is unexpected that the rust docs are also generated.
Especially as their generation may dominate the execution time.

Only generate the rust docs when they are part of the SPHINXDIRS
requested by the user. 'rust/rustdocs' is not considered, as it is
not a valid SPHINXDIRS anyways.

Signed-off-by: Thomas Weißschuh <linux@weissschuh.net>
Reviewed-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Tested-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Message-ID: <20260118-docs-spurious-rust-v1-4-998e14b9ed9e@weissschuh.net>
This commit is contained in:
Thomas Weißschuh 2026-01-18 00:26:24 +01:00 committed by Jonathan Corbet
parent 6f9a96cc96
commit ffb569d59c

View file

@ -119,12 +119,15 @@ class SphinxBuilder:
return path
def check_rust(self):
def check_rust(self, sphinxdirs):
"""
Checks if Rust is enabled
"""
config = os.path.join(self.srctree, ".config")
if not {'.', 'rust'}.intersection(sphinxdirs):
return False
if not os.path.isfile(config):
return False
@ -691,7 +694,7 @@ class SphinxBuilder:
args.extend(["-D", f"latex_elements.papersize={paper}paper"])
rustdoc = self.check_rust()
rustdoc = self.check_rust(sphinxdirs_list)
if rustdoc:
args.extend(["-t", "rustdoc"])