1# Makefile for Sphinx LaTeX output
2
3ALLDOCS = $(basename $(wildcard *.tex))
4ALLPDF = $(addsuffix .pdf,$(ALLDOCS))
5ALLDVI = $(addsuffix .dvi,$(ALLDOCS))
6ALLXDV =
7ALLPS  = $(addsuffix .ps,$(ALLDOCS))
8
9# Prefix for archive names
10ARCHIVEPREFIX =
11# Additional LaTeX options (passed via variables in latexmkrc/latexmkjarc file)
12export LATEXOPTS ?=
13# Additional latexmk options
14LATEXMKOPTS ?=
15# format: pdf or dvi (used only by archive targets)
16FMT = pdf
17
18LATEX = latexmk -dvi
19PDFLATEX = latexmk -pdf -dvi- -ps-
20
21
22%.dvi: %.tex FORCE_MAKE
23	$(LATEX) $(LATEXMKOPTS) '$<'
24
25%.ps: %.dvi
26	dvips '$<'
27
28%.pdf: %.tex FORCE_MAKE
29	$(PDFLATEX) $(LATEXMKOPTS) '$<'
30
31all: $(ALLPDF)
32
33all-dvi: $(ALLDVI)
34
35all-ps: $(ALLPS)
36
37all-pdf: $(ALLPDF)
38
39zip: all-$(FMT)
40	mkdir $(ARCHIVEPREFIX)docs-$(FMT)
41	cp $(ALLPDF) $(ARCHIVEPREFIX)docs-$(FMT)
42	zip -q -r -9 $(ARCHIVEPREFIX)docs-$(FMT).zip $(ARCHIVEPREFIX)docs-$(FMT)
43	rm -r $(ARCHIVEPREFIX)docs-$(FMT)
44
45tar: all-$(FMT)
46	mkdir $(ARCHIVEPREFIX)docs-$(FMT)
47	cp $(ALLPDF) $(ARCHIVEPREFIX)docs-$(FMT)
48	tar cf $(ARCHIVEPREFIX)docs-$(FMT).tar $(ARCHIVEPREFIX)docs-$(FMT)
49	rm -r $(ARCHIVEPREFIX)docs-$(FMT)
50
51gz: tar
52	gzip -9 < $(ARCHIVEPREFIX)docs-$(FMT).tar > $(ARCHIVEPREFIX)docs-$(FMT).tar.gz
53
54bz2: tar
55	bzip2 -9 -k $(ARCHIVEPREFIX)docs-$(FMT).tar
56
57xz: tar
58	xz -9 -k $(ARCHIVEPREFIX)docs-$(FMT).tar
59
60clean:
61	rm -f *.log *.ind *.aux *.toc *.syn *.idx *.out *.ilg *.pla *.ps *.tar *.tar.gz *.tar.bz2 *.tar.xz $(ALLPDF) $(ALLDVI) $(ALLXDV) *.fls *.fdb_latexmk
62
63.PHONY: all all-pdf all-dvi all-ps clean zip tar gz bz2 xz
64.PHONY: FORCE_MAKE