##// END OF EJS Templates
Clean documentation process...
Matthias Bussonnier -
Show More
@@ -1,164 +1,144 b''
1 # Makefile for Sphinx documentation
1 # Makefile for Sphinx documentation
2 #
2 #
3
3
4 # You can set these variables from the command line.
4 # You can set these variables from the command line.
5 SPHINXOPTS =
5 SPHINXOPTS =
6 SPHINXBUILD = sphinx-build
6 SPHINXBUILD = sphinx-build
7 PAPER =
7 PAPER =
8 SRCDIR = source
8 SRCDIR = source
9 BUILDDIR = build
9 BUILDDIR = build
10 PYTHON = python
10 PYTHON = python
11
11
12 # Internal variables.
12 # Internal variables.
13 PAPEROPT_a4 = -D latex_paper_size=a4
13 PAPEROPT_a4 = -D latex_paper_size=a4
14 PAPEROPT_letter = -D latex_paper_size=letter
14 PAPEROPT_letter = -D latex_paper_size=letter
15 ALLSPHINXOPTS = -d build/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) $(SRCDIR)
15 ALLSPHINXOPTS = -d build/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) $(SRCDIR)
16
16
17 .PHONY: help clean html web pickle htmlhelp latex changes linkcheck api
17 .PHONY: help clean html web pickle htmlhelp latex changes linkcheck api
18
18
19 default: html
19 default: html
20
20
21 help:
21 help:
22 @echo "Please use \`make <target>' where <target> is one of"
22 @echo "Please use \`make <target>' where <target> is one of"
23 @echo " html standalone HTML files"
23 @echo " html standalone HTML files"
24 @echo " html_noapi same as above, without the time consuming API docs"
24 @echo " html_noapi same as above, without the time consuming API docs"
25 @echo " pickle pickle files (usable by e.g. sphinx-web)"
25 @echo " pickle pickle files (usable by e.g. sphinx-web)"
26 @echo " htmlhelp HTML files and a HTML help project"
26 @echo " htmlhelp HTML files and a HTML help project"
27 @echo " latex LaTeX files, you can set PAPER=a4 or PAPER=letter"
27 @echo " latex LaTeX files, you can set PAPER=a4 or PAPER=letter"
28 @echo " texinfo Texinfo files"
28 @echo " texinfo Texinfo files"
29 @echo " info Texinfo files and run them through makeinfo"
29 @echo " info Texinfo files and run them through makeinfo"
30 @echo " changes an overview over all changed/added/deprecated items"
30 @echo " changes an overview over all changed/added/deprecated items"
31 @echo " linkcheck check all external links for integrity (takes a long time)"
31 @echo " linkcheck check all external links for integrity (takes a long time)"
32 @echo " gh-pages clone IPython docs in ./gh-pages/ , build doc, autocommit"
33 @echo
32 @echo
34 @echo "Compound utility targets:"
33 @echo "Compound utility targets:"
35 @echo "pdf latex and then runs the PDF generation"
34 @echo "pdf latex and then runs the PDF generation"
36 @echo "all html and pdf"
35 @echo "all html and pdf"
37 @echo "dist all, and then puts the results in dist/"
36 @echo "dist all, and then puts the results in dist/"
38
37
39 clean_api:
38 clean_api:
40 -rm -rf $(SRCDIR)/api/generated
39 -rm -rf $(SRCDIR)/api/generated
41
40
42 clean: clean_api
41 clean: clean_api
43 -rm -rf build/* dist/*
42 -rm -rf build/* dist/*
44 -rm -f $(SRCDIR)/config/options/config-generated.txt
43 -rm -f $(SRCDIR)/config/options/config-generated.txt
45 -rm -f $(SRCDIR)/config/shortcuts/*.csv
44 -rm -f $(SRCDIR)/config/shortcuts/*.csv
46 -rm -f $(SRCDIR)/interactive/magics-generated.txt
45 -rm -f $(SRCDIR)/interactive/magics-generated.txt
47
46
48 pdf: latex
47 pdf: latex
49 cd build/latex && make all-pdf
48 cd build/latex && make all-pdf
50
49
51 all: html pdf
50 all: html pdf
52
51
53 # For final distribution, only build HTML (our pdf is now so large as to be
52 # For final distribution, only build HTML (our pdf is now so large as to be
54 # unusable, takes forever to build and just bloats the downloads). We leave
53 # unusable, takes forever to build and just bloats the downloads). We leave
55 # them hardlinked at the top-level so users find them easily, though the
54 # them hardlinked at the top-level so users find them easily, though the
56 # original build/html dir is left in-place (useful to reload builds while
55 # original build/html dir is left in-place (useful to reload builds while
57 # testing).
56 # testing).
58 dist: html
57 dist: html
59 rm -rf html
58 rm -rf html
60 cp -al build/html .
59 cp -al build/html .
61 @echo "Build finished. Final docs are in html/"
60 @echo "Build finished. Final docs are in html/"
62
61
63 html: api autoconfig automagic autogen_shortcuts
62 html: api autoconfig automagic autogen_shortcuts
64 html_noapi: clean_api autoconfig automagic autogen_shortcuts
63 html_noapi: clean_api autoconfig automagic autogen_shortcuts
65
64
66 html html_noapi:
65 html html_noapi:
67 mkdir -p build/html build/doctrees
66 mkdir -p build/html build/doctrees
68 $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) build/html
67 $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) build/html
69 @echo
68 @echo
70 @echo "Build finished. The HTML pages are in build/html."
69 @echo "Build finished. The HTML pages are in build/html."
71
70
72 automagic: source/interactive/magics-generated.txt
71 automagic: source/interactive/magics-generated.txt
73
72
74 source/interactive/magics-generated.txt: autogen_magics.py
73 source/interactive/magics-generated.txt: autogen_magics.py
75 $(PYTHON) autogen_magics.py
74 $(PYTHON) autogen_magics.py
76 @echo "Created docs for line & cell magics"
75 @echo "Created docs for line & cell magics"
77
76
78 autoconfig: source/config/options/config-generated.txt
77 autoconfig: source/config/options/config-generated.txt
79
78
80 source/config/options/config-generated.txt:
79 source/config/options/config-generated.txt:
81 $(PYTHON) autogen_config.py
80 $(PYTHON) autogen_config.py
82 @echo "Created docs for config options"
81 @echo "Created docs for config options"
83
82
84 api: source/api/generated/gen.txt
83 api: source/api/generated/gen.txt
85
84
86 source/api/generated/gen.txt:
85 source/api/generated/gen.txt:
87 $(PYTHON) autogen_api.py
86 $(PYTHON) autogen_api.py
88 @echo "Build API docs finished."
87 @echo "Build API docs finished."
89
88
90 autogen_shortcuts: autogen_shortcuts.py ../IPython/terminal/interactiveshell.py source/config/shortcuts/index.rst
89 autogen_shortcuts: autogen_shortcuts.py ../IPython/terminal/interactiveshell.py source/config/shortcuts/index.rst
91 $(PYTHON) autogen_shortcuts.py
90 $(PYTHON) autogen_shortcuts.py
92 @echo "Created docs for shortcuts"
91 @echo "Created docs for shortcuts"
93
92
94 pickle:
93 pickle:
95 mkdir -p build/pickle build/doctrees
94 mkdir -p build/pickle build/doctrees
96 $(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) build/pickle
95 $(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) build/pickle
97 @echo
96 @echo
98 @echo "Build finished; now you can process the pickle files or run"
97 @echo "Build finished; now you can process the pickle files or run"
99 @echo " sphinx-web build/pickle"
98 @echo " sphinx-web build/pickle"
100 @echo "to start the sphinx-web server."
99 @echo "to start the sphinx-web server."
101
100
102 web: pickle
101 web: pickle
103
102
104 htmlhelp:
103 htmlhelp:
105 mkdir -p build/htmlhelp build/doctrees
104 mkdir -p build/htmlhelp build/doctrees
106 $(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) build/htmlhelp
105 $(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) build/htmlhelp
107 @echo
106 @echo
108 @echo "Build finished; now you can run HTML Help Workshop with the" \
107 @echo "Build finished; now you can run HTML Help Workshop with the" \
109 ".hhp project file in build/htmlhelp."
108 ".hhp project file in build/htmlhelp."
110
109
111 qthelp:
112 mkdir -p build/qthelp
113 $(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) build/qthelp
114 @echo
115 @echo "Build finished; now you can run "qcollectiongenerator" with the" \
116 ".qhcp project file in $(BUILDDIR)/qthelp, like this:"
117 @echo "# qcollectiongenerator $(BUILDDIR)/qthelp/IPython.qhcp"
118 @echo "To view the help file:"
119 @echo "# assistant -collectionFile $(BUILDDIR)/qthelp/IPython.qhc"
120
121 latex: api autoconfig
110 latex: api autoconfig
122 mkdir -p build/latex build/doctrees
111 mkdir -p build/latex build/doctrees
123 $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) build/latex
112 $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) build/latex
124 @echo
113 @echo
125 @echo "Build finished; the LaTeX files are in build/latex."
114 @echo "Build finished; the LaTeX files are in build/latex."
126 @echo "Run \`make all-pdf' or \`make all-ps' in that directory to" \
115 @echo "Run \`make all-pdf' or \`make all-ps' in that directory to" \
127 "run these through (pdf)latex."
116 "run these through (pdf)latex."
128
117
129 changes:
118 changes:
130 mkdir -p build/changes build/doctrees
119 mkdir -p build/changes build/doctrees
131 $(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) build/changes
120 $(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) build/changes
132 @echo
121 @echo
133 @echo "The overview file is in build/changes."
122 @echo "The overview file is in build/changes."
134
123
135 linkcheck:
124 linkcheck:
136 mkdir -p build/linkcheck build/doctrees
125 mkdir -p build/linkcheck build/doctrees
137 $(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) build/linkcheck
126 $(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) build/linkcheck
138 @echo
127 @echo
139 @echo "Link check complete; look for any errors in the above output " \
128 @echo "Link check complete; look for any errors in the above output " \
140 "or in build/linkcheck/output.rst."
129 "or in build/linkcheck/output.rst."
141
130
142 nightly: dist
143 rsync -avH --delete dist/ ipython:www/doc/nightly
144
145 gh-pages: clean html
146 # if VERSION is unspecified, it will be dev
147 # For releases, VERSION should be just the major version,
148 # e.g. VERSION=2 make gh-pages
149 $(PYTHON) gh-pages.py $(VERSION)
150
151 texinfo:
131 texinfo:
152 mkdir -p $(BUILDDIR)/texinfo
132 mkdir -p $(BUILDDIR)/texinfo
153 $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
133 $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
154 @echo
134 @echo
155 @echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo."
135 @echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo."
156 @echo "Run \`make' in that directory to run these through makeinfo" \
136 @echo "Run \`make' in that directory to run these through makeinfo" \
157 "(use \`make info' here to do that automatically)."
137 "(use \`make info' here to do that automatically)."
158
138
159 info:
139 info:
160 mkdir -p $(BUILDDIR)/texinfo
140 mkdir -p $(BUILDDIR)/texinfo
161 $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
141 $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
162 @echo "Running Texinfo files through makeinfo..."
142 @echo "Running Texinfo files through makeinfo..."
163 make -C $(BUILDDIR)/texinfo info
143 make -C $(BUILDDIR)/texinfo info
164 @echo "makeinfo finished; the Info files are in $(BUILDDIR)/texinfo."
144 @echo "makeinfo finished; the Info files are in $(BUILDDIR)/texinfo."
1 NO CONTENT: file was removed
NO CONTENT: file was removed
General Comments 0
You need to be logged in to leave comments. Login now