194 lines
6.7 KiB
Makefile
Executable File
194 lines
6.7 KiB
Makefile
Executable File
# Makefile for documentation
|
|
# This makefile is a modified version of the makefile generated by the sphinx-quickstart command
|
|
|
|
# set environment for Diamond Light Source
|
|
ifeq ($(CONTEXT),diamond)
|
|
@echo "Environment variable CONTEXT=diamond, so setting build environment suitable for Diamond Light Source"
|
|
# get the location of a Python that has Sphinx installed
|
|
SPHINXBUILD?=$(shell module load python/2.7.2;which sphinx-build)
|
|
# set http proxy
|
|
export http_proxy?=http://wwwcache.rl.ac.uk:8080
|
|
export https_proxy?=https://wwwcache.rl.ac.uk:8080
|
|
endif
|
|
|
|
# optionally use Sphinx's "-W" options, which converts warnings into errors
|
|
ifeq ($(HALTONWARNING),y)
|
|
SPHINXEXTRAOPT=-W
|
|
else ifeq ($(HALTONWARNING),Y)
|
|
SPHINXEXTRAOPT=-W
|
|
else
|
|
SPHINXEXTRAOPT=
|
|
endif
|
|
|
|
### <-- start of Makefile contents generated by sphinx-quickstart --> ###
|
|
|
|
# You can set these variables from the command line.
|
|
SPHINXOPTS ?=
|
|
SPHINXBUILD ?= sphinx-build
|
|
PAPER ?=
|
|
BUILDDIR ?= build
|
|
|
|
# Internal variables.
|
|
PAPEROPT_a4 = -D latex_paper_size=a4
|
|
PAPEROPT_letter = -D latex_paper_size=letter
|
|
ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXEXTRAOPT) $(SPHINXOPTS) source
|
|
|
|
.PHONY: help helpfull pwd clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest pdfa4 pdfletter pdf all
|
|
|
|
help:
|
|
@echo
|
|
@echo "Please use \`make <target>' where <target> is one of"
|
|
@echo " html to make standalone HTML files"
|
|
@echo " pdf to create pdf files for both A4- and Letter-sized paper"
|
|
@echo " pdfa4 to create pdf files for A4-sized paper"
|
|
@echo " pdfletter to create pdf files for Letter-sized paper"
|
|
@echo " all to build html and pdf"
|
|
@echo " clean to wipe the build directory"
|
|
@echo
|
|
@echo "You can use \`make helpfull' to get a full list of targets (not all have been tested)"
|
|
|
|
helpfull:
|
|
@echo "Please use \`make <target>' where <target> is one of"
|
|
@echo " html to make standalone HTML files"
|
|
@echo " dirhtml to make HTML files named index.html in directories"
|
|
@echo " singlehtml to make a single large HTML file"
|
|
@echo " pickle to make pickle files"
|
|
@echo " json to make JSON files"
|
|
@echo " htmlhelp to make HTML files and a HTML help project"
|
|
@echo " qthelp to make HTML files and a qthelp project"
|
|
@echo " devhelp to make HTML files and a Devhelp project"
|
|
@echo " epub to make an epub"
|
|
@echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter"
|
|
@echo " latexpdf to make LaTeX files and run them through pdflatex"
|
|
@echo " text to make text files"
|
|
@echo " man to make manual pages"
|
|
@echo " changes to make an overview of all changed/added/deprecated items"
|
|
@echo " linkcheck to check all external links for integrity"
|
|
@echo " doctest to run all doctests embedded in the documentation (if enabled)"
|
|
|
|
pwd:
|
|
@echo
|
|
@echo "*******************************************************************************************************"
|
|
@echo "Current directory = "`pwd`
|
|
@echo "*******************************************************************************************************"
|
|
|
|
clean: pwd
|
|
-rm -rf $(BUILDDIR)/*
|
|
|
|
html: pwd
|
|
$(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
|
|
@echo
|
|
@echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
|
|
|
|
dirhtml:
|
|
$(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml
|
|
@echo
|
|
@echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml."
|
|
|
|
singlehtml:
|
|
$(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml
|
|
@echo
|
|
@echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml."
|
|
|
|
pickle:
|
|
$(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle
|
|
@echo
|
|
@echo "Build finished; now you can process the pickle files."
|
|
|
|
json:
|
|
$(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json
|
|
@echo
|
|
@echo "Build finished; now you can process the JSON files."
|
|
|
|
htmlhelp:
|
|
$(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp
|
|
@echo
|
|
@echo "Build finished; now you can run HTML Help Workshop with the" \
|
|
".hhp project file in $(BUILDDIR)/htmlhelp."
|
|
|
|
qthelp:
|
|
$(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp
|
|
@echo
|
|
@echo "Build finished; now you can run "qcollectiongenerator" with the" \
|
|
".qhcp project file in $(BUILDDIR)/qthelp, like this:"
|
|
@echo "# qcollectiongenerator $(BUILDDIR)/qthelp/GDA.qhcp"
|
|
@echo "To view the help file:"
|
|
@echo "# assistant -collectionFile $(BUILDDIR)/qthelp/GDA.qhc"
|
|
|
|
devhelp:
|
|
$(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp
|
|
@echo
|
|
@echo "Build finished."
|
|
@echo "To view the help file:"
|
|
@echo "# mkdir -p $$HOME/.local/share/devhelp/GDA"
|
|
@echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/GDA"
|
|
@echo "# devhelp"
|
|
|
|
epub:
|
|
$(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub
|
|
@echo
|
|
@echo "Build finished. The epub file is in $(BUILDDIR)/epub."
|
|
|
|
latex: pwd
|
|
$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
|
|
@echo
|
|
@echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex."
|
|
@echo "Run \`make' in that directory to run these through (pdf)latex" \
|
|
"(use \`make latexpdf' here to do that automatically)."
|
|
|
|
latexpdf: pwd
|
|
$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
|
|
@echo "Running LaTeX files through pdflatex..."
|
|
make -C $(BUILDDIR)/latex all-pdf
|
|
@echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."
|
|
|
|
text:
|
|
$(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text
|
|
@echo
|
|
@echo "Build finished. The text files are in $(BUILDDIR)/text."
|
|
|
|
man:
|
|
$(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man
|
|
@echo
|
|
@echo "Build finished. The manual pages are in $(BUILDDIR)/man."
|
|
|
|
changes:
|
|
$(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes
|
|
@echo
|
|
@echo "The overview file is in $(BUILDDIR)/changes."
|
|
|
|
linkcheck:
|
|
$(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck
|
|
@echo
|
|
@echo "Link check complete; look for any errors in the above output " \
|
|
"or in $(BUILDDIR)/linkcheck/output.txt."
|
|
|
|
doctest:
|
|
$(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest
|
|
@echo "Testing of doctests in the sources finished, look at the " \
|
|
"results in $(BUILDDIR)/doctest/output.txt."
|
|
|
|
### <-- end of Makefile contents generated by sphinx-quickstart --> ###
|
|
|
|
pdfa4: pwd
|
|
rm -rf $(BUILDDIR)/latex
|
|
rm -rf $(BUILDDIR)/pdf-a4
|
|
make latexpdf PAPER=a4
|
|
mkdir $(BUILDDIR)/pdf-a4/
|
|
cp $(BUILDDIR)/latex/*.pdf $(BUILDDIR)/pdf-a4/.
|
|
@echo
|
|
@echo "Build finished for A4-sized PDFs. The PDF files are in $(BUILDDIR)/pdf-a4."
|
|
|
|
pdfletter: pwd
|
|
rm -rf $(BUILDDIR)/latex
|
|
rm -rf $(BUILDDIR)/pdf-letter
|
|
make latexpdf PAPER=letter
|
|
mkdir $(BUILDDIR)/pdf-letter/
|
|
cp $(BUILDDIR)/latex/*.pdf $(BUILDDIR)/pdf-letter/.
|
|
@echo
|
|
@echo "Build finished for Letter-sized PDFs. The PDF files are in $(BUILDDIR)/pdf-letter."
|
|
|
|
pdf: pwd pdfa4 pdfletter
|
|
|
|
all: pwd html pdf
|