Commit | Line | Data |
---|---|---|
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 | ||
26 | include $(top_srcdir)/vars.am | |
27 | ||
28 | doc_DATA = | |
29 | TEX_FILES = | |
30 | ||
ddfe4265 | 31 | CLEANFILES += *.aux *.out *.log *.toc *.ind *.idx *.ilg |
3f725f73 MW |
32 | EXTRA_DIST += $(TEX_FILES) |
33 | ||
b20e5e26 | 34 | TEXFLAGS = --interaction=batchmode \ |
c64f50f5 | 35 | --output-directory=$(abs_builddir) |
b20e5e26 MW |
36 | BIBTEXFLAGS = --terse |
37 | MAKEINDEXFLAGS = -q | |
7ad0d250 | 38 | |
b20e5e26 MW |
39 | V_LATEX = $(V_LATEX_@AM_V@) |
40 | V_LATEX_ = $(V_LATEX_@AM_DEFAULT_V@) | |
41 | V_LATEX_0 = @echo " LATEX $@"; | |
42 | ||
43 | V_BIBTEX = $(V_BIBTEX_@AM_V@) | |
44 | V_BIBTEX_ = $(V_BIBTEX_@AM_DEFAULT_V@) | |
45 | V_BIBTEX_0 = @echo " BIBTEX $@"; | |
46 | ||
47 | V_MAKEINDEX = $(V_MAKEINDEX_@AM_V@) | |
48 | V_MAKEINDEX_ = $(V_MAKEINDEX_@AM_DEFAULT_V@) | |
49 | V_MAKEINDEX_0 = @echo " MAKEIDX $@"; | |
50 | ||
51 | run_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. | |
60 | TEX_FILES += sod.tex | |
61 | ||
62 | ## Main document styling and definitions. | |
63 | TEX_FILES += sod.sty | |
64 | ||
e655a9fd MW |
65 | ## The introduction. |
66 | TEX_FILES += intro.tex | |
67 | ||
3f725f73 MW |
68 | ## Tutorial. |
69 | TEX_FILES += tutorial.tex | |
70 | ||
71 | ## Reference. | |
bdcacad3 | 72 | TEX_FILES += refintro.tex |
3f725f73 MW |
73 | TEX_FILES += concepts.tex |
74 | ##TEX_FILES += cmdline.tex | |
75 | TEX_FILES += syntax.tex | |
76 | TEX_FILES += runtime.tex | |
77 | TEX_FILES += structures.tex | |
78 | ||
79 | ## Lisp interface. | |
80 | TEX_FILES += lispintro.tex | |
81 | TEX_FILES += misc.tex | |
82 | TEX_FILES += parsing.tex | |
83 | TEX_FILES += clang.tex | |
756f4928 MW |
84 | TEX_FILES += meta.tex |
85 | TEX_FILES += layout.tex | |
bca101d9 | 86 | TEX_FILES += module.tex |
999a0e35 | 87 | TEX_FILES += output.tex |
3f725f73 MW |
88 | |
89 | ## Other hacks. | |
90 | TEX_FILES += cutting-room-floor.tex | |
91 | ||
92 | ## Building the output documents. | |
93 | MAINTAINERCLEANFILES += sod.pdf | |
b20e5e26 MW |
94 | |
95 | if HAVE_LATEX | |
3f725f73 | 96 | doc_DATA += sod.pdf |
b20e5e26 | 97 | EXTRA_DIST += sod.pdf |
3f725f73 | 98 | sod.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 | 104 | endif |
3f725f73 MW |
105 | |
106 | ###----- That's all, folks -------------------------------------------------- |