chiark / gitweb /
configure.ac, doc/Makefile.am: Overhaul LaTeX building.
[sod] / doc / Makefile.am
CommitLineData
3f725f73
MW
1### -*-makefile-*-
2###
3### Build script for the manual
4###
5### (c) 2015 Straylight/Edgeware
6###
7
8###----- Licensing notice ---------------------------------------------------
9###
e0808c47 10### This file is part of the Sensible Object Design, an object system for C.
3f725f73
MW
11###
12### SOD is free software; you can redistribute it and/or modify
13### it under the terms of the GNU General Public License as published by
14### the Free Software Foundation; either version 2 of the License, or
15### (at your option) any later version.
16###
17### SOD is distributed in the hope that it will be useful,
18### but WITHOUT ANY WARRANTY; without even the implied warranty of
19### MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20### GNU General Public License for more details.
21###
22### You should have received a copy of the GNU General Public License
23### along with SOD; if not, write to the Free Software Foundation,
24### Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
25
26include $(top_srcdir)/vars.am
27
28doc_DATA =
29TEX_FILES =
30
ddfe4265 31CLEANFILES += *.aux *.out *.log *.toc *.ind *.idx *.ilg
3f725f73
MW
32EXTRA_DIST += $(TEX_FILES)
33
b20e5e26 34TEXFLAGS = --interaction=batchmode \
c64f50f5 35 --output-directory=$(abs_builddir)
b20e5e26
MW
36BIBTEXFLAGS = --terse
37MAKEINDEXFLAGS = -q
7ad0d250 38
b20e5e26
MW
39V_LATEX = $(V_LATEX_@AM_V@)
40V_LATEX_ = $(V_LATEX_@AM_DEFAULT_V@)
41V_LATEX_0 = @echo " LATEX $@";
42
43V_BIBTEX = $(V_BIBTEX_@AM_V@)
44V_BIBTEX_ = $(V_BIBTEX_@AM_DEFAULT_V@)
45V_BIBTEX_0 = @echo " BIBTEX $@";
46
47V_MAKEINDEX = $(V_MAKEINDEX_@AM_V@)
48V_MAKEINDEX_ = $(V_MAKEINDEX_@AM_DEFAULT_V@)
49V_MAKEINDEX_0 = @echo " MAKEIDX $@";
50
51run_pdflatex = $(V_LATEX)cd $(srcdir) && \
52 $(PDFLATEX) $(TEXFLAGS) \
87837656
MW
53 --jobname=$(basename $1) \
54 '\def\pkgversion{$(VERSION)}\input{$1}'
55
3f725f73
MW
56###--------------------------------------------------------------------------
57### The manual.
58
59## The master file.
60TEX_FILES += sod.tex
61
62## Main document styling and definitions.
63TEX_FILES += sod.sty
64
e655a9fd
MW
65## The introduction.
66TEX_FILES += intro.tex
67
3f725f73
MW
68## Tutorial.
69TEX_FILES += tutorial.tex
70
71## Reference.
bdcacad3 72TEX_FILES += refintro.tex
3f725f73
MW
73TEX_FILES += concepts.tex
74##TEX_FILES += cmdline.tex
75TEX_FILES += syntax.tex
76TEX_FILES += runtime.tex
77TEX_FILES += structures.tex
78
79## Lisp interface.
80TEX_FILES += lispintro.tex
81TEX_FILES += misc.tex
82TEX_FILES += parsing.tex
83TEX_FILES += clang.tex
756f4928
MW
84TEX_FILES += meta.tex
85TEX_FILES += layout.tex
bca101d9 86TEX_FILES += module.tex
999a0e35 87TEX_FILES += output.tex
3f725f73
MW
88
89## Other hacks.
90TEX_FILES += cutting-room-floor.tex
91
92## Building the output documents.
93MAINTAINERCLEANFILES += sod.pdf
b20e5e26
MW
94
95if HAVE_LATEX
3f725f73 96doc_DATA += sod.pdf
b20e5e26 97EXTRA_DIST += sod.pdf
3f725f73 98sod.pdf: $(TEX_FILES)
87837656 99 $(call run_pdflatex,sod.tex)
b20e5e26 100 $(V_BIBTEX)$(BIBTEX) $(BIBTEXFLAGS) sod.aux
87837656 101 $(call run_pdflatex,sod.tex)
b20e5e26 102 $(V_MAKEINDEX)$(MAKEINDEX) $(MAKEINDEXFLAGS) sod.idx
87837656 103 $(call run_pdflatex,sod.tex)
b20e5e26 104endif
3f725f73
MW
105
106###----- That's all, folks --------------------------------------------------