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
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
|
# $Id: Makefile 614 2018-03-28 22:21:21Z karl $
# Public domain. Originally written 2006, Karl Berry.
# Makefile for latexrefman.
en_tex_output = latex2e.dvi latex2e.pdf
es_tex_output = latex2e-es.dvi latex2e-es.pdf
fr_tex_output = latex2e-fr.dvi latex2e-fr.pdf
#
xref_suffixes := ky cp vr fn cp pg tp
xref_suffixes := $(xref_suffixes) $(addsuffix s,$(xref_suffixes))
xref_suffixes := aux log toc $(xref_suffixes)
mi_suffixes = dbk html info txt xml
en_mi_output = $(addprefix latex2e., $(mi_suffixes))
es_mi_output = $(addprefix latex2e-es., $(mi_suffixes))
fr_mi_output = $(addprefix latex2e-fr., $(mi_suffixes))
#
all_suffixes = dvi pdf $(mi_suffixes)
# how to build.
#
texi2dvi = texi2dvi --batch --tidy --build-dir=$*.t2dvi
texi2pdf = texi2pdf --batch --tidy --build-dir=$*.t2pdf
#
makeinfo = makeinfo
texi2docbook = $(makeinfo) --docbook
texi2html = $(makeinfo) --html --no-split --css-include=latex2e.css $(texi2html_top)
texi2info = $(makeinfo) --no-split
texi2txt = $(makeinfo) --plaintext --no-split
texi2xml = $(makeinfo) --xml
#
# Go somewhere useful from Top.
texi2html_top = -c TOP_NODE_UP_URL=http://tug.org/texinfohtml/
%.pdf: %.texi
$(texi2pdf) $<
%.dvi: %.texi
$(texi2dvi) $<
#
%.dbk: %.texi
$(texi2docbook) -o $@ $<
%.html: %.texi %.css
$(texi2html) $<
%.info: %.texi
$(texi2info) $<
%.txt: %.texi
$(texi2txt) -o $@ $<
%.xml: %.texi
$(texi2xml) $<
# targets follow.
#
default: check-en
# to test changes, build a subset: html and info (since these formats
# exercise significantly different code paths), and pdf for tex.
check_suffixes = html info pdf
#
check-en: spell-en $(addprefix latex2e., $(check_suffixes))
check-es: $(addprefix latex2e-es., $(check_suffixes))
check-fr: $(addprefix latex2e-fr., $(check_suffixes))
check: check-en check-es check-fr
# Build per language.
en: $(en_mi_output) $(en_tex_output)
es: $(es_mi_output) $(es_tex_output)
fr: $(fr_mi_output) $(fr_tex_output)
# To build everything in all languages.
all: en es fr
# following the GNU sequence of clean targets.
distclean clean mostlyclean:
rm -rf latex2e*.t2*
realclean maintainer-clean: distclean
rm -f $(addprefix latex2e*., pdf dvi $(mi_suffixes) $(xref_suffixes))
# dist for CTAN. Also update NEWS
#
txt_files = ChangeLog Makefile NEWS README aspell.en.pws ltx-help.el
figure_files = list.eps list.pdf list.png list.txt
figure_source_files = asy/list.asy
dist = latex2e-help-texinfo.zip
#
dist: en es
mkdir latex2e-help-texinfo && cd latex2e-help-texinfo && ln -s ../* .
mkdir latex2e-help-texinfo/spanish && cd latex2e-help-texinfo/spanish && ln -s ../../* .
rm -f $(dist)
zip -q $(dist) \
$(addprefix latex2e-help-texinfo/, $(txt_files) \
latex2e.texi common.texi $(en_mi_output) latex2e.pdf) \
$(addprefix latex2e-help-texinfo/spanish/, $(es_mi_output)) \
$(addprefix latex2e-help-texinfo/latex2e-figures/, $(figure_files)) \
$(addprefix latex2e-help-texinfo/graphics/, README $(figure_source_files))
rm -rf latex2e-help-texinfo
@ls -l $(dist); unzip -l $(dist)
# A hacky spell check target.
# Remove \commandnames to reduce exception list, but not {args} or
# [args], since they are often words.
spell spell-en:
sed -e 's/\\[a-zA-Z]*//g' latex2e.texi \
| aspell list --mode=texinfo --add-extra-dicts=`pwd`/aspell.en.pws \
| sort -f -u
# Check for doubled words.
# http://www.math.utah.edu/~beebe/software/file-tools.html#dw
check-dw:
grep -v '^@item' latex2e.texi | dw
# Convenience targets to svn revert the generated files,
# and svn diff the source files.
svr:
svn revert $(addprefix latex2e*., $(all_suffixes))
svd:
svn diff $(txt_files) *.texi
|