tools/docs/sphinx-build-wrapper
Source file repositories/reference/linux-study-clean/tools/docs/sphinx-build-wrapper
File Facts
- System
- Linux kernel
- Corpus path
tools/docs/sphinx-build-wrapper- Extension
[no extension]- Size
- 31360 bytes
- Lines
- 903
- Domain
- Support Tooling And Documentation
- Bucket
- tools
- Inferred role
- Support Tooling And Documentation: tools
- Status
- atlas-only
Why This File Exists
Repository support layer: documentation, build tooling, samples, user-space helper tools, generated initramfs support, licenses, and validation utilities.
- Repository support layer: documentation, build tooling, samples, user-space helper tools, generated initramfs support, licenses, and validation utilities.
Dependency Surface
- No C-style include directives detected by the generator.
Detected Declarations
- No top-level syscall, struct, function, initcall, or export declaration detected by the generator.
Annotated Snippet
#!/usr/bin/env python3
# SPDX-License-Identifier: GPL-2.0
# Copyright (C) 2025 Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
#
# pylint: disable=R0902, R0912, R0913, R0914, R0915, R0917, C0103
#
# Converted from docs Makefile and parallel-wrapper.sh, both under
# GPLv2, copyrighted since 2008 by the following authors:
#
# Akira Yokosawa <akiyks@gmail.com>
# Arnd Bergmann <arnd@arndb.de>
# Breno Leitao <leitao@debian.org>
# Carlos Bilbao <carlos.bilbao@amd.com>
# Dave Young <dyoung@redhat.com>
# Donald Hunter <donald.hunter@gmail.com>
# Geert Uytterhoeven <geert+renesas@glider.be>
# Jani Nikula <jani.nikula@intel.com>
# Jan Stancek <jstancek@redhat.com>
# Jonathan Corbet <corbet@lwn.net>
# Joshua Clayton <stillcompiling@gmail.com>
# Kees Cook <keescook@chromium.org>
# Linus Torvalds <torvalds@linux-foundation.org>
# Magnus Damm <damm+renesas@opensource.se>
# Masahiro Yamada <masahiroy@kernel.org>
# Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
# Maxim Cournoyer <maxim.cournoyer@gmail.com>
# Peter Foley <pefoley2@pefoley.com>
# Randy Dunlap <rdunlap@infradead.org>
# Rob Herring <robh@kernel.org>
# Shuah Khan <shuahkh@osg.samsung.com>
# Thorsten Blum <thorsten.blum@toblux.com>
# Tomas Winkler <tomas.winkler@intel.com>
"""
Sphinx build wrapper that handles Kernel-specific business rules:
- it gets the Kernel build environment vars;
- it determines what's the best parallelism;
- it handles SPHINXDIRS
This tool ensures that MIN_PYTHON_VERSION is satisfied. If version is
below that, it seeks for a new Python version. If found, it re-runs using
the newer version.
"""
import argparse
import locale
import os
import re
import shlex
import shutil
import subprocess
import sys
from concurrent import futures
from glob import glob
LIB_DIR = "../lib/python"
SRC_DIR = os.path.dirname(os.path.realpath(__file__))
sys.path.insert(0, os.path.join(SRC_DIR, LIB_DIR))
from kdoc.python_version import PythonVersion
from kdoc.latex_fonts import LatexFontChecker
from jobserver import JobserverExec # pylint: disable=C0413,C0411,E0401
#
# Some constants
Annotation
- Atlas domain: Support Tooling And Documentation / tools.
- Implementation status: atlas-only.
Implementation Notes
- This generated page is the file-by-file coverage layer; curated subsystem chapters should link here when they synthesize a multi-file control flow.
- Core OS pages should be promoted from atlas-only to deep-reviewed when they explain data structures, invariants, locking, lifecycle, and C implementation snippets.
- Driver-family pages are intentionally pattern-oriented unless they are part of the selected PCIe/NVMe representative device path.