]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/blame - Documentation/Makefile.sphinx
Merge tag 'mac80211-for-davem-2016-08-05' of git://git.kernel.org/pub/scm/linux/kerne...
[mirror_ubuntu-artful-kernel.git] / Documentation / Makefile.sphinx
CommitLineData
22cba31b
JN
1# -*- makefile -*-
2# Makefile for Sphinx documentation
3#
4
5# You can set these variables from the command line.
6SPHINXBUILD = sphinx-build
7SPHINXOPTS =
8PAPER =
9BUILDDIR = $(obj)/output
10
11# User-friendly check for sphinx-build
12HAVE_SPHINX := $(shell if which $(SPHINXBUILD) >/dev/null 2>&1; then echo 1; else echo 0; fi)
13
14ifeq ($(HAVE_SPHINX),0)
15
16.DEFAULT:
17 $(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.)
18 @echo " SKIP Sphinx $@ target."
19
6387872c
JN
20else ifneq ($(DOCBOOKS),)
21
22# Skip Sphinx build if the user explicitly requested DOCBOOKS.
23.DEFAULT:
24 @echo " SKIP Sphinx $@ target (DOCBOOKS specified)."
25
22cba31b
JN
26else # HAVE_SPHINX
27
28# User-friendly check for rst2pdf
29HAVE_RST2PDF := $(shell if python -c "import rst2pdf" >/dev/null 2>&1; then echo 1; else echo 0; fi)
30
31# Internal variables.
32PAPEROPT_a4 = -D latex_paper_size=a4
33PAPEROPT_letter = -D latex_paper_size=letter
24dcdeb2
JN
34KERNELDOC = $(srctree)/scripts/kernel-doc
35KERNELDOC_CONF = -D kerneldoc_srctree=$(srctree) -D kerneldoc_bin=$(KERNELDOC)
c13ce448 36ALLSPHINXOPTS = -D version=$(KERNELVERSION) -D release=$(KERNELRELEASE) -d $(BUILDDIR)/.doctrees $(KERNELDOC_CONF) $(PAPEROPT_$(PAPER)) -c $(srctree)/$(src) $(SPHINXOPTS) $(srctree)/$(src)
22cba31b
JN
37# the i18n builder cannot share the environment and doctrees with the others
38I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
39
40quiet_cmd_sphinx = SPHINX $@
627e32df 41 cmd_sphinx = BUILDDIR=$(BUILDDIR) $(SPHINXBUILD) -b $2 $(ALLSPHINXOPTS) $(BUILDDIR)/$2
22cba31b
JN
42
43htmldocs:
60c2820d 44 $(MAKE) BUILDDIR=$(BUILDDIR) -f $(srctree)/Documentation/media/Makefile $@
22cba31b
JN
45 $(call cmd,sphinx,html)
46
47pdfdocs:
48ifeq ($(HAVE_RST2PDF),0)
49 $(warning The Python 'rst2pdf' module was not found. Make sure you have the module installed to produce PDF output.)
50 @echo " SKIP Sphinx $@ target."
51else # HAVE_RST2PDF
52 $(call cmd,sphinx,pdf)
53endif # HAVE_RST2PDF
54
55epubdocs:
56 $(call cmd,sphinx,epub)
57
58xmldocs:
59 $(call cmd,sphinx,xml)
60
61# no-ops for the Sphinx toolchain
62sgmldocs:
63psdocs:
64mandocs:
65installmandocs:
a569bf69 66cleanmediadocs:
22cba31b
JN
67
68cleandocs:
69 $(Q)rm -rf $(BUILDDIR)
70
ebc88ef0
JN
71dochelp:
72 @echo ' Linux kernel internal documentation in different formats (Sphinx):'
73 @echo ' htmldocs - HTML'
74 @echo ' pdfdocs - PDF'
75 @echo ' epubdocs - EPUB'
76 @echo ' xmldocs - XML'
77 @echo ' cleandocs - clean all generated files'
78
22cba31b 79endif # HAVE_SPHINX