-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathMakefile
74 lines (62 loc) · 3.04 KB
/
Makefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
# === Makefile for SFS Toolbox documentation ===
#
# The documentation is compiled with Sphinx (http://www.sphinx-doc.org/).
# It is splitted in four different parts that can be compiled independently
# from each other:
#
# theory - mathematical fundamentals of sound field synthesis
# matlab - documentation for the Matlab/Octave version of the SFS Toolbox
# python - documentation for the Python version of the SFS Toolbox
# code_references - explöanation of links in the code to the theory
#
# You can set these variables from the command line.
SPHINXOPTS =
SPHINXBUILD = sphinx-build
PAPER =
SOURCEDIR = .
BUILDDIR = ./_build
# User-friendly check for sphinx-build
ifeq ($(shell which $(SPHINXBUILD) >/dev/null 2>&1; echo $$?), 1)
$(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 not have Sphinx installed, grab it from http://sphinx-doc.org/)
endif
# Internal variables.
PAPEROPT_a4 = -D latex_paper_size=a4
PAPEROPT_letter = -D latex_paper_size=letter
ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS)
# the i18n builder cannot share the environment and doctrees with the others
I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS)
.PHONY: help clean html html-preview latex latexpdf linkcheck
help:
@echo "Please use \`make <target>' where <target> is one of"
@echo " clean to delete previous builds"
@echo " html to make web page ready files"
@echo " html-preview to make HTML files for better preview on localhost"
@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 " linkcheck to check all external links for integrity"
clean:
rm -rf $(BUILDDIR)/*
html-preview:
$(SPHINXBUILD) -b html -A web=0 $(ALLSPHINXOPTS) $(SOURCEDIR) $(BUILDDIR)/html-preview
@echo
@echo "Build finished. The HTML pages are in $(BUILDDIR)/html-preview/."
html:
$(SPHINXBUILD) -b dirhtml -A web=1 $(ALLSPHINXOPTS) $(SOURCEDIR) $(BUILDDIR)/html
@echo
@echo "Build finished. The HTML pages are in $(BUILDDIR)/html/."
latex:
$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(SOURCEDIR) $(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:
$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(SOURCEDIR) $(BUILDDIR)/latex
@echo "Running LaTeX files through pdflatex..."
$(MAKE) -C $(BUILDDIR)/latex all-pdf
@echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex/."
linkcheck:
$(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(SOURCEDIR) $(BUILDDIR)/linkcheck
@echo
@echo "Link check complete; look for any errors in the above output " \
"or in $(BUILDDIR)/linkcheck/output.txt."