summaryrefslogtreecommitdiffstats
path: root/Doc/Makefile
blob: 04cca4e7ed3d9c5e7bf8dd8fe71ee55f7f658150 (plain)
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
74
75
76
#
# Makefile for Python documentation
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#

# You can set these variables from the command line.
PYTHON       = python
SVNROOT      = http://svn.python.org/projects
SPHINXOPTS   =
PAPER        =

ALLSPHINXOPTS = -b $(BUILDER) -d build/doctrees -D latex_paper_size=$(PAPER) \
                $(SPHINXOPTS) . build/$(BUILDER)

.PHONY: help checkout update build html web htmlhelp clean

help:
	@echo "Please use \`make <target>' where <target> is one of"
	@echo "  html     to make standalone HTML files"
	@echo "  web      to make file usable by Sphinx.web"
	@echo "  htmlhelp to make HTML files and a HTML help project"
	@echo "  latex    to make LaTeX files, you can set PAPER=a4 or PAPER=letter"
	@echo "  changes  to make an overview over all changed/added/deprecated items"

checkout:
	@if [ ! -d tools/sphinx ]; then \
	  echo "Checking out Sphinx..."; \
	  svn checkout $(SVNROOT)/doctools/trunk/sphinx tools/sphinx; \
	fi
	@if [ ! -d tools/docutils ]; then \
	  echo "Checking out Docutils..."; \
	  svn checkout $(SVNROOT)/external/docutils-0.4/docutils tools/docutils; \
	fi
	@if [ ! -d tools/pygments ]; then \
	  echo "Checking out Pygments..."; \
	  svn checkout $(SVNROOT)/external/Pygments-0.9/pygments tools/pygments; \
	fi

update: checkout
	svn update tools/sphinx
	svn update tools/docutils
	svn update tools/pygments

build: checkout
	mkdir -p build/$(BUILDER) build/doctrees
	$(PYTHON) tools/sphinx-build.py $(ALLSPHINXOPTS)
	@echo

html: BUILDER = html
html: build
	@echo "Build finished. The HTML pages are in build/html."

web: BUILDER = web
web: build
	@echo "Build finished; now you can run"
	@echo "  PYTHONPATH=tools $(PYTHON) -m sphinx.web build/web"
	@echo "to start the server."

htmlhelp: BUILDER = htmlhelp
htmlhelp: build
	@echo "Build finished; now you can run HTML Help Workshop with the" \
	      "build/htmlhelp/pydoc.hhp project file."

latex: BUILDER = latex
latex: build
	@echo "Build finished; the LaTeX files are in build/latex."
	@echo "Run \`make all-pdf' or \`make all-ps' in that directory to" \
	      "run these through (pdf)latex."

changes: BUILDER = changes
changes: build
	@echo "The overview file is in build/changes."

clean:
	-rm -rf build/*
	-rm -rf tools/sphinx