Edouard@810: # Makefile for Sphinx documentation Edouard@810: # Edouard@810: Edouard@810: # You can set these variables from the command line. Edouard@810: SPHINXOPTS = Edouard@810: SPHINXBUILD = sphinx-build Edouard@810: PAPER = Edouard@810: BUILDDIR = _build Edouard@810: Edouard@810: # Internal variables. Edouard@810: PAPEROPT_a4 = -D latex_paper_size=a4 Edouard@810: PAPEROPT_letter = -D latex_paper_size=letter Edouard@810: ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) . Edouard@810: # the i18n builder cannot share the environment and doctrees with the others Edouard@810: I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) . Edouard@810: Edouard@810: .PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest gettext Edouard@810: Edouard@811: mofiles := Edouard@812: sitelist := dirhtml Edouard@811: langs = fr kr Edouard@811: rstfiles = $(shell find * -name '*.rst') Edouard@811: define by_lang Edouard@811: mos = $$(rstfiles:%.rst=locale/$(1)/LC_MESSAGES/%.mo) Edouard@811: $$(mos):locale/$(1)/LC_MESSAGES/%.mo: %_$(1).po Edouard@811: mkdir -p `dirname $$@` Edouard@811: msgfmt $$^ -o $$@ Edouard@811: mofiles += $$(mos) Edouard@811: pos = $$(rstfiles:%.rst=%_$(1).po) Edouard@811: $$(pos):%_$(1).po: $(BUILDDIR)/locale/%.pot Edouard@811: if [ -e $$@ ] ; then msgmerge -U $$@ $$<; else cat $$< > $$@; fi Edouard@812: Edouard@812: site_$(1): $$(mos) Edouard@812: $(SPHINXBUILD) -D language=$(1) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml_$(1) Edouard@812: find $(BUILDDIR)/dirhtml_$(1) -name "index.html" -print -exec mv {} {}.$(1) ';' Edouard@812: sitelist += site_$(1) Edouard@812: Edouard@811: endef Edouard@811: $(foreach lang, $(langs), $(eval $(call by_lang,$(lang)))) Edouard@811: andrej@1723: %.pot : gettext andrej@1723: echo "Build missing pot files" Edouard@812: Edouard@812: all: $(sitelist) Edouard@812: mkdir -p $(BUILDDIR)/final Edouard@812: #cp -av $(BUILDDIR)/dirhtml*/* $(BUILDDIR)/final || true Edouard@812: Edouard@811: mofiles: $(mofiles) Edouard@811: Edouard@810: help: Edouard@810: @echo "Please use \`make ' where is one of" Edouard@810: @echo " html to make standalone HTML files" Edouard@810: @echo " dirhtml to make HTML files named index.html in directories" Edouard@810: @echo " singlehtml to make a single large HTML file" Edouard@810: @echo " pickle to make pickle files" Edouard@810: @echo " json to make JSON files" Edouard@810: @echo " htmlhelp to make HTML files and a HTML help project" Edouard@810: @echo " qthelp to make HTML files and a qthelp project" Edouard@810: @echo " devhelp to make HTML files and a Devhelp project" Edouard@810: @echo " epub to make an epub" Edouard@810: @echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter" Edouard@810: @echo " latexpdf to make LaTeX files and run them through pdflatex" Edouard@810: @echo " text to make text files" Edouard@810: @echo " man to make manual pages" Edouard@810: @echo " texinfo to make Texinfo files" Edouard@810: @echo " info to make Texinfo files and run them through makeinfo" Edouard@810: @echo " gettext to make PO message catalogs" Edouard@810: @echo " changes to make an overview of all changed/added/deprecated items" Edouard@810: @echo " linkcheck to check all external links for integrity" Edouard@810: @echo " doctest to run all doctests embedded in the documentation (if enabled)" Edouard@810: Edouard@810: clean: Edouard@810: -rm -rf $(BUILDDIR)/* Edouard@810: Edouard@810: html: Edouard@810: $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html Edouard@810: @echo Edouard@810: @echo "Build finished. The HTML pages are in $(BUILDDIR)/html." Edouard@810: Edouard@810: dirhtml: Edouard@810: $(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml Edouard@810: @echo Edouard@810: @echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml." Edouard@810: Edouard@810: singlehtml: Edouard@810: $(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml Edouard@810: @echo Edouard@810: @echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml." Edouard@810: Edouard@810: pickle: Edouard@810: $(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle Edouard@810: @echo Edouard@810: @echo "Build finished; now you can process the pickle files." Edouard@810: Edouard@810: json: Edouard@810: $(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json Edouard@810: @echo Edouard@810: @echo "Build finished; now you can process the JSON files." Edouard@810: Edouard@810: htmlhelp: Edouard@810: $(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp Edouard@810: @echo Edouard@810: @echo "Build finished; now you can run HTML Help Workshop with the" \ Edouard@810: ".hhp project file in $(BUILDDIR)/htmlhelp." Edouard@810: Edouard@810: qthelp: Edouard@810: $(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp Edouard@810: @echo Edouard@810: @echo "Build finished; now you can run "qcollectiongenerator" with the" \ Edouard@810: ".qhcp project file in $(BUILDDIR)/qthelp, like this:" Edouard@810: @echo "# qcollectiongenerator $(BUILDDIR)/qthelp/Beremiz.qhcp" Edouard@810: @echo "To view the help file:" Edouard@810: @echo "# assistant -collectionFile $(BUILDDIR)/qthelp/Beremiz.qhc" Edouard@810: Edouard@810: devhelp: Edouard@810: $(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp Edouard@810: @echo Edouard@810: @echo "Build finished." Edouard@810: @echo "To view the help file:" Edouard@810: @echo "# mkdir -p $$HOME/.local/share/devhelp/Beremiz" Edouard@810: @echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/Beremiz" Edouard@810: @echo "# devhelp" Edouard@810: Edouard@810: epub: Edouard@810: $(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub Edouard@810: @echo Edouard@810: @echo "Build finished. The epub file is in $(BUILDDIR)/epub." Edouard@810: Edouard@810: latex: Edouard@810: $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex Edouard@810: @echo Edouard@810: @echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex." Edouard@810: @echo "Run \`make' in that directory to run these through (pdf)latex" \ Edouard@810: "(use \`make latexpdf' here to do that automatically)." Edouard@810: Edouard@810: latexpdf: Edouard@810: $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex Edouard@810: @echo "Running LaTeX files through pdflatex..." Edouard@810: $(MAKE) -C $(BUILDDIR)/latex all-pdf Edouard@810: @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex." Edouard@810: Edouard@810: text: Edouard@810: $(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text Edouard@810: @echo Edouard@810: @echo "Build finished. The text files are in $(BUILDDIR)/text." Edouard@810: Edouard@810: man: Edouard@810: $(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man Edouard@810: @echo Edouard@810: @echo "Build finished. The manual pages are in $(BUILDDIR)/man." Edouard@810: Edouard@810: texinfo: Edouard@810: $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo Edouard@810: @echo Edouard@810: @echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo." Edouard@810: @echo "Run \`make' in that directory to run these through makeinfo" \ Edouard@810: "(use \`make info' here to do that automatically)." Edouard@810: Edouard@810: info: Edouard@810: $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo Edouard@810: @echo "Running Texinfo files through makeinfo..." Edouard@810: make -C $(BUILDDIR)/texinfo info Edouard@810: @echo "makeinfo finished; the Info files are in $(BUILDDIR)/texinfo." Edouard@810: Edouard@810: gettext: Edouard@810: $(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILDDIR)/locale Edouard@810: @echo Edouard@810: @echo "Build finished. The message catalogs are in $(BUILDDIR)/locale." Edouard@810: Edouard@811: Edouard@810: changes: Edouard@810: $(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes Edouard@810: @echo Edouard@810: @echo "The overview file is in $(BUILDDIR)/changes." Edouard@810: Edouard@810: linkcheck: Edouard@810: $(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck Edouard@810: @echo Edouard@810: @echo "Link check complete; look for any errors in the above output " \ Edouard@810: "or in $(BUILDDIR)/linkcheck/output.txt." Edouard@810: Edouard@810: doctest: Edouard@810: $(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest Edouard@810: @echo "Testing of doctests in the sources finished, look at the " \ Edouard@810: "results in $(BUILDDIR)/doctest/output.txt."