Commit | Line | Data |
---|---|---|
73804d4b RS |
1 | # Makefile for the GNU Emacs Lisp Reference Manual. |
2 | # | |
3 | # 11 August 1990 | |
4 | ||
5 | # Redefine `TEX' if `tex' does not invoke plain TeX. For example: | |
6 | # TEX=platex | |
7 | ||
8 | TEX=tex | |
9 | ||
10 | # Where the TeX macros are kept: | |
11 | texmacrodir = /usr/local/lib/tex/macros | |
12 | ||
13 | # Where the Emacs hierarchy lives ($EMACS in the INSTALL document for Emacs.) | |
14 | # For example: | |
15 | # emacslibdir = /usr/local/gnu/lib/emacs | |
16 | ||
17 | # Directory where Emacs is installed, by default: | |
18 | emacslibdir = /usr/local/emacs | |
19 | ||
20 | # Unless you have a nonstandard Emacs installation, these shouldn't have to | |
21 | # be changed. | |
22 | prefix = /usr/local | |
23 | infodir = ${prefix}/info | |
24 | ||
25 | # The name of the manual: | |
26 | ||
2fb9d641 | 27 | VERSION=2.4 |
73804d4b RS |
28 | manual = elisp-manual-19-$(VERSION) |
29 | ||
30 | # Uncomment this line for permuted index. | |
31 | # permuted_index = 1 | |
32 | ||
33 | # List of all the texinfo files in the manual: | |
34 | ||
35 | srcs = elisp.texi back.texi \ | |
36 | abbrevs.texi anti.texi backups.texi locals.texi buffers.texi \ | |
37 | calendar.texi commands.texi compile.texi control.texi debugging.texi \ | |
38 | display.texi edebug.texi errors.texi eval.texi files.texi \ | |
39 | frames.texi functions.texi help.texi hooks.texi \ | |
40 | internals.texi intro.texi keymaps.texi lists.texi \ | |
41 | loading.texi macros.texi maps.texi markers.texi \ | |
42 | minibuf.texi modes.texi numbers.texi objects.texi \ | |
43 | os.texi positions.texi processes.texi searching.texi \ | |
44 | sequences.texi streams.texi strings.texi symbols.texi \ | |
45 | syntax.texi text.texi tips.texi variables.texi \ | |
46 | windows.texi \ | |
47 | index.unperm index.perm | |
48 | ||
49 | .PHONY: elisp.dvi clean | |
50 | ||
51 | elisp.dvi: $(srcs) index.texi texindex | |
52 | # Avoid losing old contents of aux file entirely. | |
53 | -mv elisp.aux elisp.oaux | |
54 | # First shot to define xrefs: | |
55 | $(TEX) elisp.texi | |
56 | if [ a${permuted_index} != a ]; \ | |
57 | then \ | |
58 | ./permute-index; \ | |
59 | mv permuted.fns elisp.fns; \ | |
60 | else \ | |
61 | ./texindex elisp.??; \ | |
62 | fi | |
63 | $(TEX) elisp.texi | |
64 | ||
65 | index.texi: | |
66 | if [ a${permuted_index} != a ]; \ | |
67 | then \ | |
68 | ln -s index.perm index.texi; \ | |
69 | else \ | |
70 | ln -s index.unperm index.texi; \ | |
71 | fi | |
72 | ||
73 | # The info file is named `elisp'. | |
74 | ||
75 | elisp: $(srcs) index.texi makeinfo | |
79069c68 | 76 | rm -f elisp-* |
73804d4b RS |
77 | ./makeinfo elisp.texi |
78 | ||
79 | install: elisp elisp.dvi | |
80 | mv elisp elisp-* $(infodir) | |
81 | @echo also add the line for elisp to $(infodir)/dir. | |
82 | ||
83 | installall: install | |
84 | install -c texinfo.tex $(texmacrodir) | |
85 | ||
86 | clean: | |
87 | rm -f *.toc *.aux *.log *.cp *.cps *.fn *.fns *.tp *.tps \ | |
88 | *.vr *.vrs *.pg *.pgs *.ky *.kys | |
89 | rm -f make.out core | |
90 | rm -f makeinfo.o makeinfo getopt.o getopt1.o | |
91 | rm -f texindex.o texindex index.texi | |
92 | ||
2fb9d641 | 93 | maintainer-clean: clean |
79069c68 KH |
94 | rm -f elisp elisp-* |
95 | ||
73804d4b RS |
96 | dist: |
97 | -mkdir temp | |
98 | -mkdir temp/$(manual) | |
99 | -ln README Makefile permute-index $(srcs) \ | |
100 | texinfo.tex getopt.c getopt1.c getopt.h \ | |
101 | elisp.dvi elisp.aux elisp.??s elisp elisp-[0-9] elisp-[0-9][0-9] temp/$(manual) | |
102 | -rm -f temp/$(manual)/texindex.c temp/$(manual)/makeinfo.c | |
103 | cp texindex.c makeinfo.c temp/$(manual) | |
104 | (cd temp/$(manual); rm -f *~) | |
105 | (cd temp; tar chf - $(manual)) | gzip > $(manual).tar.gz | |
106 | -rm -rf temp | |
107 | ||
108 | # Make two programs used in generating output from texinfo. | |
109 | ||
110 | CFLAGS = -g | |
111 | ||
112 | texindex: texindex.o | |
113 | $(CC) -o $@ $(LDFLAGS) $(CFLAGS) $? | |
114 | texindex.o: texindex.c | |
115 | ||
116 | MAKEINFO_MAJOR = 1 | |
117 | MAKEINFO_MINOR = 0 | |
118 | MAKEINFO_FLAGS = -DMAKEINFO_MAJOR=$(MAKEINFO_MAJOR) -DMAKEINFO_MINOR=$(MAKEINFO_MINOR) | |
119 | ||
120 | makeinfo: makeinfo.o getopt.o getopt1.o | |
121 | $(CC) $(LDFLAGS) -o makeinfo makeinfo.o getopt.o getopt1.o | |
122 | ||
123 | makeinfo.o: makeinfo.c | |
124 | $(CC) -c $(CFLAGS) $(MAKEINFO_FLAGS) makeinfo.c |