1- # Makefile for Sphinx documentation
1+ # Minimal makefile for Sphinx documentation
22#
33
44# You can set these variables from the command line.
55SPHINXOPTS =
66SPHINXBUILD = sphinx-build
7- PAPER =
7+ SOURCEDIR = .
88BUILDDIR = _build
99
10- # User-friendly check for sphinx-build
11- ifeq ($(shell which $(SPHINXBUILD ) >/dev/null 2>&1; echo $$? ) , 1)
12- $(error The '$(SPHINXBUILD ) ' command was not found. Make sure you have Sphinx installed, then set the SPHINXBUILD environment variable to point to the full path of the '$(SPHINXBUILD ) ' executable. Alternatively you can add the directory with the executable to your PATH. If you don't have Sphinx installed, grab it from http ://sphinx-doc.org/)
13- endif
14-
15- # Internal variables.
16- PAPEROPT_a4 = -D latex_paper_size=a4
17- PAPEROPT_letter = -D latex_paper_size=letter
18- ALLSPHINXOPTS = -d $(BUILDDIR ) /doctrees $(PAPEROPT_$(PAPER ) ) $(SPHINXOPTS ) .
19- # the i18n builder cannot share the environment and doctrees with the others
20- I18NSPHINXOPTS = $(PAPEROPT_$(PAPER ) ) $(SPHINXOPTS ) .
21-
22- .PHONY : help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest coverage gettext
23-
10+ # Put it first so that "make" without argument is like "make help".
2411help :
25- @echo " Please use \` make <target>' where <target> is one of"
26- @echo " html to make standalone HTML files"
27- @echo " dirhtml to make HTML files named index.html in directories"
28- @echo " singlehtml to make a single large HTML file"
29- @echo " pickle to make pickle files"
30- @echo " json to make JSON files"
31- @echo " htmlhelp to make HTML files and a HTML help project"
32- @echo " qthelp to make HTML files and a qthelp project"
33- @echo " applehelp to make an Apple Help Book"
34- @echo " devhelp to make HTML files and a Devhelp project"
35- @echo " epub to make an epub"
36- @echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter"
37- @echo " latexpdf to make LaTeX files and run them through pdflatex"
38- @echo " latexpdfja to make LaTeX files and run them through platex/dvipdfmx"
39- @echo " text to make text files"
40- @echo " man to make manual pages"
41- @echo " texinfo to make Texinfo files"
42- @echo " info to make Texinfo files and run them through makeinfo"
43- @echo " gettext to make PO message catalogs"
44- @echo " changes to make an overview of all changed/added/deprecated items"
45- @echo " xml to make Docutils-native XML files"
46- @echo " pseudoxml to make pseudoxml-XML files for display purposes"
47- @echo " linkcheck to check all external links for integrity"
48- @echo " doctest to run all doctests embedded in the documentation (if enabled)"
49- @echo " coverage to run coverage check of the documentation (if enabled)"
50-
51- clean :
52- rm -rf $(BUILDDIR ) /*
53-
54- html :
55- $(SPHINXBUILD ) -b html $(ALLSPHINXOPTS ) $(BUILDDIR ) /html
56- @echo
57- @echo " Build finished. The HTML pages are in $( BUILDDIR) /html."
58-
59- dirhtml :
60- $(SPHINXBUILD ) -b dirhtml $(ALLSPHINXOPTS ) $(BUILDDIR ) /dirhtml
61- @echo
62- @echo " Build finished. The HTML pages are in $( BUILDDIR) /dirhtml."
63-
64- singlehtml :
65- $(SPHINXBUILD ) -b singlehtml $(ALLSPHINXOPTS ) $(BUILDDIR ) /singlehtml
66- @echo
67- @echo " Build finished. The HTML page is in $( BUILDDIR) /singlehtml."
68-
69- pickle :
70- $(SPHINXBUILD ) -b pickle $(ALLSPHINXOPTS ) $(BUILDDIR ) /pickle
71- @echo
72- @echo " Build finished; now you can process the pickle files."
73-
74- json :
75- $(SPHINXBUILD ) -b json $(ALLSPHINXOPTS ) $(BUILDDIR ) /json
76- @echo
77- @echo " Build finished; now you can process the JSON files."
78-
79- htmlhelp :
80- $(SPHINXBUILD ) -b htmlhelp $(ALLSPHINXOPTS ) $(BUILDDIR ) /htmlhelp
81- @echo
82- @echo " Build finished; now you can run HTML Help Workshop with the" \
83- " .hhp project file in $( BUILDDIR) /htmlhelp."
84-
85- qthelp :
86- $(SPHINXBUILD ) -b qthelp $(ALLSPHINXOPTS ) $(BUILDDIR ) /qthelp
87- @echo
88- @echo " Build finished; now you can run " qcollectiongenerator" with the" \
89- " .qhcp project file in $( BUILDDIR) /qthelp, like this:"
90- @echo " # qcollectiongenerator $( BUILDDIR) /qthelp/socketio.qhcp"
91- @echo " To view the help file:"
92- @echo " # assistant -collectionFile $( BUILDDIR) /qthelp/socketio.qhc"
93-
94- applehelp :
95- $(SPHINXBUILD ) -b applehelp $(ALLSPHINXOPTS ) $(BUILDDIR ) /applehelp
96- @echo
97- @echo " Build finished. The help book is in $( BUILDDIR) /applehelp."
98- @echo " N.B. You won't be able to view it unless you put it in" \
99- " ~/Library/Documentation/Help or install it in your application" \
100- " bundle."
101-
102- devhelp :
103- $(SPHINXBUILD ) -b devhelp $(ALLSPHINXOPTS ) $(BUILDDIR ) /devhelp
104- @echo
105- @echo " Build finished."
106- @echo " To view the help file:"
107- @echo " # mkdir -p $$ HOME/.local/share/devhelp/socketio"
108- @echo " # ln -s $( BUILDDIR) /devhelp $$ HOME/.local/share/devhelp/socketio"
109- @echo " # devhelp"
110-
111- epub :
112- $(SPHINXBUILD ) -b epub $(ALLSPHINXOPTS ) $(BUILDDIR ) /epub
113- @echo
114- @echo " Build finished. The epub file is in $( BUILDDIR) /epub."
115-
116- latex :
117- $(SPHINXBUILD ) -b latex $(ALLSPHINXOPTS ) $(BUILDDIR ) /latex
118- @echo
119- @echo " Build finished; the LaTeX files are in $( BUILDDIR) /latex."
120- @echo " Run \` make' in that directory to run these through (pdf)latex" \
121- " (use \` make latexpdf' here to do that automatically)."
122-
123- latexpdf :
124- $(SPHINXBUILD ) -b latex $(ALLSPHINXOPTS ) $(BUILDDIR ) /latex
125- @echo " Running LaTeX files through pdflatex..."
126- $(MAKE ) -C $(BUILDDIR ) /latex all-pdf
127- @echo " pdflatex finished; the PDF files are in $( BUILDDIR) /latex."
128-
129- latexpdfja :
130- $(SPHINXBUILD ) -b latex $(ALLSPHINXOPTS ) $(BUILDDIR ) /latex
131- @echo " Running LaTeX files through platex and dvipdfmx..."
132- $(MAKE ) -C $(BUILDDIR ) /latex all-pdf-ja
133- @echo " pdflatex finished; the PDF files are in $( BUILDDIR) /latex."
134-
135- text :
136- $(SPHINXBUILD ) -b text $(ALLSPHINXOPTS ) $(BUILDDIR ) /text
137- @echo
138- @echo " Build finished. The text files are in $( BUILDDIR) /text."
139-
140- man :
141- $(SPHINXBUILD ) -b man $(ALLSPHINXOPTS ) $(BUILDDIR ) /man
142- @echo
143- @echo " Build finished. The manual pages are in $( BUILDDIR) /man."
144-
145- texinfo :
146- $(SPHINXBUILD ) -b texinfo $(ALLSPHINXOPTS ) $(BUILDDIR ) /texinfo
147- @echo
148- @echo " Build finished. The Texinfo files are in $( BUILDDIR) /texinfo."
149- @echo " Run \` make' in that directory to run these through makeinfo" \
150- " (use \` make info' here to do that automatically)."
151-
152- info :
153- $(SPHINXBUILD ) -b texinfo $(ALLSPHINXOPTS ) $(BUILDDIR ) /texinfo
154- @echo " Running Texinfo files through makeinfo..."
155- make -C $(BUILDDIR ) /texinfo info
156- @echo " makeinfo finished; the Info files are in $( BUILDDIR) /texinfo."
157-
158- gettext :
159- $(SPHINXBUILD ) -b gettext $(I18NSPHINXOPTS ) $(BUILDDIR ) /locale
160- @echo
161- @echo " Build finished. The message catalogs are in $( BUILDDIR) /locale."
162-
163- changes :
164- $(SPHINXBUILD ) -b changes $(ALLSPHINXOPTS ) $(BUILDDIR ) /changes
165- @echo
166- @echo " The overview file is in $( BUILDDIR) /changes."
167-
168- linkcheck :
169- $(SPHINXBUILD ) -b linkcheck $(ALLSPHINXOPTS ) $(BUILDDIR ) /linkcheck
170- @echo
171- @echo " Link check complete; look for any errors in the above output " \
172- " or in $( BUILDDIR) /linkcheck/output.txt."
173-
174- doctest :
175- $(SPHINXBUILD ) -b doctest $(ALLSPHINXOPTS ) $(BUILDDIR ) /doctest
176- @echo " Testing of doctests in the sources finished, look at the " \
177- " results in $( BUILDDIR) /doctest/output.txt."
178-
179- coverage :
180- $(SPHINXBUILD ) -b coverage $(ALLSPHINXOPTS ) $(BUILDDIR ) /coverage
181- @echo " Testing of coverage in the sources finished, look at the " \
182- " results in $( BUILDDIR) /coverage/python.txt."
12+ @$(SPHINXBUILD ) -M help " $( SOURCEDIR) " " $( BUILDDIR) " $(SPHINXOPTS ) $(O )
18313
184- xml :
185- $(SPHINXBUILD ) -b xml $(ALLSPHINXOPTS ) $(BUILDDIR ) /xml
186- @echo
187- @echo " Build finished. The XML files are in $( BUILDDIR) /xml."
14+ .PHONY : help Makefile
18815
189- pseudoxml :
190- $( SPHINXBUILD ) -b pseudoxml $( ALLSPHINXOPTS ) $( BUILDDIR ) /pseudoxml
191- @echo
192- @echo " Build finished. The pseudo-XML files are in $( BUILDDIR) /pseudoxml. "
16+ # Catch-all target: route all unknown targets to Sphinx using the new
17+ # "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
18+ % : Makefile
19+ @$( SPHINXBUILD ) -M $@ " $( SOURCEDIR ) " " $( BUILDDIR) " $( SPHINXOPTS ) $( O )
0 commit comments