Commit | Line | Data |
---|---|---|
306ba736 | 1 | # Makefile for the GNU Emacs Lisp Reference Manual. |
61760ae8 EZ |
2 | |
3 | # Copyright (C) 1990,1991,1992,1993,1994,1995,1996,1998,1999,2000,2001 | |
4 | # Free Software Foundation, Inc. | |
5 | ||
6 | # This file is part of GNU Emacs. | |
7 | ||
8 | # GNU Emacs is free software; you can redistribute it and/or modify | |
9 | # it under the terms of the GNU General Public License as published by | |
10 | # the Free Software Foundation; either version 2, or (at your option) | |
11 | # any later version. | |
12 | ||
13 | # GNU Emacs is distributed in the hope that it will be useful, | |
14 | # but WITHOUT ANY WARRANTY; without even the implied warranty of | |
15 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
16 | # GNU General Public License for more details. | |
17 | ||
18 | # You should have received a copy of the GNU General Public License | |
19 | # along with GNU Emacs; see the file COPYING. If not, write to | |
20 | # the Free Software Foundation, Inc., 59 Temple Place - Suite 330, | |
21 | # Boston, MA 02111-1307, USA. | |
73804d4b | 22 | |
306ba736 | 23 | # Standard configure variables. |
306ba736 | 24 | srcdir = @srcdir@ |
73804d4b | 25 | |
61760ae8 EZ |
26 | # Tell make where to find source files; this is needed for the makefiles. |
27 | VPATH=@srcdir@ | |
28 | ||
4eeb568b | 29 | infodir = $(srcdir)/../info |
61760ae8 | 30 | |
306ba736 GM |
31 | # Redefine `TEX' if `tex' does not invoke plain TeX. For example: |
32 | # TEX=platex | |
73804d4b | 33 | TEX=tex |
0e9b2517 | 34 | SHELL=/bin/sh |
26a781f6 | 35 | INSTALL_INFO = install-info |
94101513 | 36 | MAKEINFO=makeinfo |
73804d4b | 37 | |
306ba736 GM |
38 | # The environment variable and its value to add $(srcdir) to the path |
39 | # searched for TeX input files. | |
61760ae8 | 40 | texinputdir = TEXINPUTS=$(srcdir):"$(TEXINPUTS)" |
73804d4b RS |
41 | |
42 | # The name of the manual: | |
231ac53b | 43 | VERSION=2.9 |
c7f125f2 | 44 | manual = elisp-manual-21-$(VERSION) |
73804d4b RS |
45 | |
46 | # Uncomment this line for permuted index. | |
177c0ea7 | 47 | # permuted_index = 1 |
73804d4b RS |
48 | |
49 | # List of all the texinfo files in the manual: | |
50 | ||
306ba736 GM |
51 | srcs = \ |
52 | $(srcdir)/abbrevs.texi \ | |
53 | $(srcdir)/advice.texi \ | |
54 | $(srcdir)/anti.texi \ | |
55 | $(srcdir)/back.texi \ | |
56 | $(srcdir)/backups.texi \ | |
57 | $(srcdir)/buffers.texi \ | |
58 | $(srcdir)/calendar.texi \ | |
59 | $(srcdir)/commands.texi \ | |
60 | $(srcdir)/compile.texi \ | |
61 | $(srcdir)/control.texi \ | |
62 | $(srcdir)/customize.texi \ | |
63 | $(srcdir)/debugging.texi \ | |
64 | $(srcdir)/display.texi \ | |
65 | $(srcdir)/edebug.texi \ | |
66 | $(srcdir)/elisp.texi \ | |
67 | $(srcdir)/errors.texi \ | |
68 | $(srcdir)/eval.texi \ | |
69 | $(srcdir)/files.texi \ | |
70 | $(srcdir)/frames.texi \ | |
71 | $(srcdir)/functions.texi \ | |
72 | $(srcdir)/hash.texi \ | |
73 | $(srcdir)/help.texi \ | |
74 | $(srcdir)/hooks.texi \ | |
75 | $(srcdir)/internals.texi \ | |
76 | $(srcdir)/intro.texi \ | |
77 | $(srcdir)/keymaps.texi \ | |
78 | $(srcdir)/lists.texi \ | |
79 | $(srcdir)/loading.texi \ | |
80 | $(srcdir)/locals.texi \ | |
81 | $(srcdir)/macros.texi \ | |
82 | $(srcdir)/maps.texi \ | |
83 | $(srcdir)/markers.texi \ | |
84 | $(srcdir)/minibuf.texi \ | |
85 | $(srcdir)/modes.texi \ | |
86 | $(srcdir)/nonascii.texi \ | |
87 | $(srcdir)/numbers.texi \ | |
88 | $(srcdir)/objects.texi \ | |
89 | $(srcdir)/os.texi \ | |
90 | $(srcdir)/positions.texi \ | |
91 | $(srcdir)/processes.texi \ | |
92 | $(srcdir)/searching.texi \ | |
93 | $(srcdir)/sequences.texi \ | |
94 | $(srcdir)/streams.texi \ | |
95 | $(srcdir)/strings.texi \ | |
96 | $(srcdir)/symbols.texi \ | |
97 | $(srcdir)/syntax.texi \ | |
98 | $(srcdir)/text.texi \ | |
99 | $(srcdir)/tips.texi \ | |
100 | $(srcdir)/variables.texi \ | |
101 | $(srcdir)/windows.texi \ | |
102 | $(srcdir)/index.unperm \ | |
e7fd29af GM |
103 | $(srcdir)/index.perm \ |
104 | $(srcdir)/gpl.texi \ | |
105 | $(srcdir)/doclicense.texi | |
106 | ||
306ba736 GM |
107 | |
108 | .PHONY: clean | |
73804d4b | 109 | |
52172e23 | 110 | # The info file is named `elisp'. |
707e9f16 | 111 | info: $(infodir)/elisp |
52172e23 | 112 | |
61760ae8 | 113 | $(infodir)/elisp: $(srcs) index.texi |
4eeb568b | 114 | $(MAKEINFO) -I. -I$(srcdir) $(srcdir)/elisp.texi -o $(infodir)/elisp |
52172e23 | 115 | |
b569d7ea | 116 | elisp.dvi: $(srcs) index.texi |
73804d4b RS |
117 | # Avoid losing old contents of aux file entirely. |
118 | -mv elisp.aux elisp.oaux | |
306ba736 GM |
119 | # First shot to define xrefs. |
120 | $(texinputdir) $(TEX) $(srcdir)/elisp.texi | |
73804d4b RS |
121 | if [ a${permuted_index} != a ]; \ |
122 | then \ | |
306ba736 | 123 | $(srcdir)/permute-index; \ |
55a7ac51 | 124 | mv permuted.fns elisp.fns; \ |
b569d7ea | 125 | texindex elisp.tp; \ |
73804d4b | 126 | else \ |
b569d7ea | 127 | texindex elisp.??; \ |
73804d4b | 128 | fi |
306ba736 | 129 | $(texinputdir) $(TEX) $(srcdir)/elisp.texi |
73804d4b RS |
130 | |
131 | index.texi: | |
132 | if [ a${permuted_index} != a ]; \ | |
133 | then \ | |
4eeb568b | 134 | ln -s $(srcdir)/index.perm index.texi || ln $(srcdir)/index.perm index.texi || cp $(srcdir)/index.perm index.texi; \ |
73804d4b | 135 | else \ |
4eeb568b | 136 | ln -s $(srcdir)/index.unperm index.texi || ln $(srcdir)/index.unperm index.texi || cp $(srcdir)/index.unperm index.texi; \ |
73804d4b RS |
137 | fi |
138 | ||
52172e23 | 139 | install: elisp |
306ba736 | 140 | $(srcdir)/mkinstalldirs $(infodir) |
52172e23 | 141 | cp elisp elisp-* $(infodir) |
722d9ee6 | 142 | ${INSTALL_INFO} --info-dir=${infodir} ${infodir}/elisp |
73804d4b | 143 | |
73804d4b RS |
144 | clean: |
145 | rm -f *.toc *.aux *.log *.cp *.cps *.fn *.fns *.tp *.tps \ | |
146 | *.vr *.vrs *.pg *.pgs *.ky *.kys | |
177c0ea7 | 147 | rm -f make.out core |
0e9b2517 | 148 | rm -f index.texi |
73804d4b | 149 | |
7a1494ce EZ |
150 | distclean: clean |
151 | ||
2fb9d641 | 152 | maintainer-clean: clean |
306ba736 | 153 | rm -f elisp elisp-* elisp.dvi elisp.oaux |
79069c68 | 154 | |
306ba736 | 155 | dist: elisp elisp.dvi |
0e9b2517 | 156 | -rm -rf temp |
73804d4b RS |
157 | -mkdir temp |
158 | -mkdir temp/$(manual) | |
306ba736 GM |
159 | -ln $(srcdir)/README $(srcdir)/configure.in $(srcdir)/configure \ |
160 | $(srcdir)/Makefile.in $(srcdir)/permute-index $(srcs) \ | |
161 | $(srcdir)/../man/texinfo.tex \ | |
162 | elisp.dvi elisp.aux elisp.??s elisp elisp-[0-9] elisp-[0-9][0-9] \ | |
153d0a6d | 163 | temp/$(manual) |
0e9b2517 | 164 | -(cd temp/$(manual); rm -f mkinstalldirs) |
306ba736 | 165 | cp $(srcdir)/mkinstalldirs temp/$(manual) |
73804d4b RS |
166 | (cd temp/$(manual); rm -f *~) |
167 | (cd temp; tar chf - $(manual)) | gzip > $(manual).tar.gz | |
168 | -rm -rf temp |