blob: 996f01b7d5cfcf5ff1fe8742920fd6d8dd6f8885 [file] [log] [blame]
Andrew Geissler6ce62a22020-11-30 19:58:47 -06001# Minimal makefile for Sphinx documentation
2#
3
4# You can set these variables from the command line, and also
5# from the environment for the first two.
Patrick Williams213cb262021-08-07 19:21:33 -05006SPHINXOPTS ?= -W --keep-going -j auto
Andrew Geissler6ce62a22020-11-30 19:58:47 -06007SPHINXBUILD ?= sphinx-build
8SOURCEDIR = .
9BUILDDIR = _build
10DESTDIR = final
11
12ifeq ($(shell if which $(SPHINXBUILD) >/dev/null 2>&1; then echo 1; else echo 0; fi),0)
13$(error "The '$(SPHINXBUILD)' command was not found. Make sure you have Sphinx installed")
14endif
15
16# Put it first so that "make" without argument is like "make help".
17help:
18 @$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
19
20.PHONY: help Makefile clean publish
21
22publish: Makefile html singlehtml
23 rm -rf $(BUILDDIR)/$(DESTDIR)/
24 mkdir -p $(BUILDDIR)/$(DESTDIR)/
25 cp -r $(BUILDDIR)/html/* $(BUILDDIR)/$(DESTDIR)/
26 cp $(BUILDDIR)/singlehtml/index.html $(BUILDDIR)/$(DESTDIR)/singleindex.html
27 sed -i -e 's@index.html#@singleindex.html#@g' $(BUILDDIR)/$(DESTDIR)/singleindex.html
28
29clean:
30 @rm -rf $(BUILDDIR)
31
32# Catch-all target: route all unknown targets to Sphinx using the new
33# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
34%: Makefile
35 @$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)