Something went wrong. Try again.
(I'm so sorry!) Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
Something went wrong. Try again.
4.4 kB · 120 lines
Makefile
at master
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121# -*- makefile -*-# Makefile for Sphinx documentation#
# for cleaningsubdir- := devicetree/bindings
ifneq ($(MAKECMDGOALS),cleandocs)# Check for broken documentation file referencesifeq ($(CONFIG_WARN_MISSING_DOCUMENTS),y)$(shell $(srctree)/tools/docs/documentation-file-ref-check --warn)endif
# Check for broken ABI filesifeq ($(CONFIG_WARN_ABI_ERRORS),y)$(shell $(srctree)/tools/docs/get_abi.py --dir $(srctree)/Documentation/ABI validate)endifendif
# You can set these variables from the command line.SPHINXBUILD = sphinx-buildSPHINXOPTS =SPHINXDIRS = .DOCS_THEME =DOCS_CSS =RUSTDOC =PAPER =BUILDDIR = $(obj)/outputPDFLATEX = xelatexLATEXOPTS = -interaction=batchmode -no-shell-escape
PYTHONPYCACHEPREFIX ?= $(abspath $(BUILDDIR)/__pycache__)
# Wrapper for sphinx-build
BUILD_WRAPPER = $(srctree)/tools/docs/sphinx-build-wrapper
# For denylisting "variable font" files# Can be overridden by setting as an env variableFONTS_CONF_DENY_VF ?= $(HOME)/deny-vf
# User-friendly check for sphinx-buildHAVE_SPHINX := $(shell if which $(SPHINXBUILD) >/dev/null 2>&1; then echo 1; else echo 0; fi)
ifeq ($(HAVE_SPHINX),0)
.DEFAULT: $(warning The '$(SPHINXBUILD)' command was not found. Make sure you have Sphinx installed and in PATH, or set the SPHINXBUILD make variable to point to the full path of the '$(SPHINXBUILD)' executable.) @echo @$(srctree)/tools/docs/sphinx-pre-install @echo " SKIP Sphinx $@ target."
else # HAVE_SPHINX
# Common documentation targetshtmldocs mandocs infodocs texinfodocs latexdocs epubdocs xmldocs pdfdocs linkcheckdocs: $(Q)PYTHONPYCACHEPREFIX="$(PYTHONPYCACHEPREFIX)" \ $(srctree)/tools/docs/sphinx-pre-install --version-check +$(Q)PYTHONPYCACHEPREFIX="$(PYTHONPYCACHEPREFIX)" \ $(PYTHON3) $(BUILD_WRAPPER) $@ \ --sphinxdirs="$(SPHINXDIRS)" $(RUSTDOC) \ --builddir="$(BUILDDIR)" --deny-vf=$(FONTS_CONF_DENY_VF) \ --theme=$(DOCS_THEME) --css=$(DOCS_CSS) --paper=$(PAPER)
endif
# The following targets are independent of HAVE_SPHINX, and the rules should# work or silently pass without Sphinx.
htmldocs-redirects: $(srctree)/Documentation/.renames.txt @tools/docs/gen-redirects.py --output $(BUILDDIR) < $<
refcheckdocs: $(Q)cd $(srctree); tools/docs/documentation-file-ref-check
testdocs: $(Q)PYTHONPYCACHEPREFIX="$(PYTHONPYCACHEPREFIX)" \ $(PYTHON3) $(srctree)/tools/unittests/run.py
cleandocs: $(Q)rm -rf $(BUILDDIR)
# Used only on help_SPHINXDIRS = $(shell printf "%s\n" $(patsubst $(srctree)/Documentation/%/index.rst,%,$(wildcard $(srctree)/Documentation/*/index.rst)) | sort -f)
dochelp: @echo ' Linux kernel internal documentation in different formats from ReST:' @echo ' htmldocs - HTML' @echo ' htmldocs-redirects - generate HTML redirects for moved pages' @echo ' texinfodocs - Texinfo' @echo ' infodocs - Info' @echo ' mandocs - Man pages' @echo ' latexdocs - LaTeX' @echo ' pdfdocs - PDF' @echo ' epubdocs - EPUB' @echo ' xmldocs - XML' @echo ' linkcheckdocs - check for broken external links' @echo ' (will connect to external hosts)' @echo ' refcheckdocs - check for references to non-existing files under' @echo ' Documentation' @echo ' testdocs - run the unit tests of the documentation tools' @echo ' cleandocs - clean all generated files' @echo @echo ' make SPHINXDIRS="s1 s2" [target] Generate only docs of folder s1, s2' @echo ' top level values for SPHINXDIRS are:' @echo '$(_SPHINXDIRS)' | fmt -s -w 75 -g 75 | sed 's/^/ /' @echo ' you may also use a subdirectory like SPHINXDIRS=userspace-api/media,' @echo ' provided that there is an index.rst file at the subdirectory.' @echo @echo ' make DOCS_THEME={sphinx-theme} selects a different Sphinx theme.' @echo @echo ' make DOCS_CSS={a .css file} adds a DOCS_CSS override file for html/epub output.' @echo @echo ' make PAPER={a4|letter} Specifies the paper size used for LaTeX/PDF output.' @echo @echo ' make FONTS_CONF_DENY_VF={path} sets a deny list to block variable Noto CJK fonts' @echo ' for PDF build. See tools/lib/python/kdoc/latex_fonts.py for more details' @echo @echo ' Default location for the generated documents is Documentation/output'