Commit | Line | Data |
---|---|---|
3ff8ce93 RS |
1 | #### Makefile for the Emacs Manual and other documentation. |
2 | ||
d5df5512 | 3 | # Copyright (C) 1994, 1996, 1997, 1998, 1999, 2000, 2001, 2003 |
b3ae7a0a GM |
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. | |
22 | ||
3ff8ce93 RS |
23 | # Where to find the source code. The source code for Emacs's C kernel is |
24 | # expected to be in ${srcdir}/src, and the source code for Emacs's | |
25 | # utility programs is expected to be in ${srcdir}/lib-src. This is | |
26 | # set by the configure script's `--srcdir' option. | |
27 | srcdir=@srcdir@ | |
6b61353c | 28 | top_srcdir=@top_srcdir@ |
3ff8ce93 RS |
29 | |
30 | # Tell make where to find source files; this is needed for the makefiles. | |
31 | VPATH=@srcdir@ | |
32 | ||
33 | ||
34 | # The makeinfo program is part of the Texinfo distribution. | |
35 | MAKEINFO = makeinfo | |
04cf41b4 | 36 | INFO_TARGETS = ../info/emacs ../info/ccmode ../info/cl \ |
933bdce2 RS |
37 | ../info/dired-x ../info/ediff ../info/forms ../info/gnus \ |
38 | ../info/info ../info/message ../info/mh-e ../info/reftex \ | |
84e7cd78 | 39 | ../info/sc ../info/vip ../info/viper ../info/widget \ |
1128d4c6 | 40 | ../info/efaq ../info/ada-mode ../info/autotype ../info/calc \ |
db2672fe | 41 | ../info/idlwave ../info/eudc ../info/ebrowse ../info/pcl-cvs \ |
543951ab | 42 | ../info/woman ../info/emacs-mime ../info/eshell \ |
d5df5512 | 43 | ../info/speedbar ../info/tramp ../info/ses ../info/smtpmail |
ef0ce4e0 | 44 | DVI_TARGETS = emacs.dvi calc.dvi cc-mode.dvi cl.dvi dired-x.dvi \ |
cf96540d | 45 | ediff.dvi forms.dvi gnus.dvi message.dvi mh-e.dvi \ |
a226b66d | 46 | reftex.dvi sc.dvi vip.dvi viper.dvi widget.dvi faq.dvi \ |
6684834d | 47 | ada-mode.dvi autotype.dvi idlwave.dvi eudc.dvi ebrowse.dvi \ |
543951ab | 48 | pcl-cvs.dvi woman.dvi emacs-mime.dvi eshell.dvi \ |
d5df5512 | 49 | speedbar.dvi tramp.dvi ses.dvi smtpmail.dvi |
444c5586 | 50 | INFOSOURCES = info.texi |
3ff8ce93 RS |
51 | |
52 | # The following rule does not work with all versions of `make'. | |
53 | .SUFFIXES: .texi .dvi | |
54 | .texi.dvi: | |
55 | texi2dvi $< | |
56 | ||
57 | TEXI2DVI = texi2dvi | |
177c0ea7 | 58 | ENVADD = TEXINPUTS="$(srcdir):$(TEXINPUTS)" MAKEINFO="$(MAKEINFO) -I$(srcdir)" |
3ff8ce93 RS |
59 | |
60 | EMACSSOURCES= \ | |
61 | ${srcdir}/emacs.texi \ | |
78f743c7 | 62 | ${srcdir}/doclicense.texi \ |
3ff8ce93 RS |
63 | ${srcdir}/screen.texi \ |
64 | ${srcdir}/commands.texi \ | |
65 | ${srcdir}/entering.texi \ | |
66 | ${srcdir}/basic.texi \ | |
67 | ${srcdir}/mini.texi \ | |
68 | ${srcdir}/m-x.texi \ | |
69 | ${srcdir}/help.texi \ | |
70 | ${srcdir}/mark.texi \ | |
71 | ${srcdir}/killing.texi \ | |
72 | ${srcdir}/regs.texi \ | |
73 | ${srcdir}/display.texi \ | |
74 | ${srcdir}/search.texi \ | |
75 | ${srcdir}/fixit.texi \ | |
76 | ${srcdir}/files.texi \ | |
77 | ${srcdir}/buffers.texi \ | |
78 | ${srcdir}/windows.texi \ | |
79 | ${srcdir}/frames.texi \ | |
32395fcf | 80 | ${srcdir}/mule.texi \ |
3ff8ce93 RS |
81 | ${srcdir}/major.texi \ |
82 | ${srcdir}/indent.texi \ | |
83 | ${srcdir}/text.texi \ | |
84 | ${srcdir}/programs.texi \ | |
85 | ${srcdir}/building.texi \ | |
78f743c7 | 86 | ${srcdir}/maintaining.texi \ |
3ff8ce93 RS |
87 | ${srcdir}/abbrevs.texi \ |
88 | ${srcdir}/picture.texi \ | |
89 | ${srcdir}/sending.texi \ | |
90 | ${srcdir}/rmail.texi \ | |
91 | ${srcdir}/dired.texi \ | |
92 | ${srcdir}/calendar.texi \ | |
93 | ${srcdir}/misc.texi \ | |
94 | ${srcdir}/custom.texi \ | |
95 | ${srcdir}/trouble.texi \ | |
96 | ${srcdir}/cmdargs.texi \ | |
78f743c7 | 97 | ${srcdir}/xresources.texi \ |
3ff8ce93 | 98 | ${srcdir}/anti.texi \ |
78f743c7 | 99 | ${srcdir}/macos.texi \ |
11f7f688 | 100 | ${srcdir}/msdog.texi \ |
3ff8ce93 | 101 | ${srcdir}/gnu.texi \ |
11f7f688 | 102 | ${srcdir}/glossary.texi \ |
6b61353c KH |
103 | ${srcdir}/ack.texi \ |
104 | ${srcdir}/kmacro.texi | |
3ff8ce93 | 105 | |
6b61353c KH |
106 | info: $(top_srcdir)/info $(INFO_TARGETS) |
107 | ||
108 | $(top_srcdir)/info: | |
109 | mkdir $@ | |
3ff8ce93 RS |
110 | |
111 | dvi: $(DVI_TARGETS) | |
112 | ||
e8edd7c5 RS |
113 | # Note that all the Info targets build the Info files |
114 | # in srcdir. There is no provision for Info files | |
115 | # to exist in the build directory. | |
116 | # In a distribution of Emacs, the Info files should be up to date. | |
117 | ||
7c836af3 | 118 | # The following target uses an explicit -o switch to work around |
db921254 EZ |
119 | # the @setfilename directive in info.texi, which is required for |
120 | # the Texinfo distribution. | |
121 | ||
3ff8ce93 | 122 | ../info/info: ${INFOSOURCES} |
db921254 | 123 | cd $(srcdir); $(MAKEINFO) --no-split info.texi -o $@ |
3ff8ce93 RS |
124 | |
125 | info.dvi: ${INFOSOURCES} | |
2ca250f9 | 126 | $(ENVADD) $(TEXI2DVI) ${srcdir}/info.texi |
3ff8ce93 RS |
127 | |
128 | ../info/emacs: ${EMACSSOURCES} | |
b9aed9ca | 129 | cd $(srcdir); $(MAKEINFO) emacs.texi |
3ff8ce93 RS |
130 | |
131 | emacs.dvi: ${EMACSSOURCES} | |
2ca250f9 | 132 | $(ENVADD) $(TEXI2DVI) ${srcdir}/emacs.texi |
3ff8ce93 | 133 | |
0a8ad7c4 EZ |
134 | # This target is here so you could easily get the list of the *.texi |
135 | # files which belong to the Emacs manual (as opposed to the separate | |
136 | # manuals for CL, CC Mode, Ebrowse, etc.). With this target, you can | |
137 | # say things like "grep foo `make emacsman`". | |
138 | emacsman: | |
139 | @echo $(EMACSSOURCES) | |
140 | ||
0aa97803 | 141 | ../info/ccmode: cc-mode.texi |
b9aed9ca | 142 | cd $(srcdir); $(MAKEINFO) cc-mode.texi |
40bb1f49 | 143 | cc-mode.dvi: cc-mode.texi |
2ca250f9 | 144 | $(ENVADD) $(TEXI2DVI) ${srcdir}/cc-mode.texi |
40bb1f49 | 145 | |
a226b66d GM |
146 | ../info/ada-mode: ada-mode.texi |
147 | cd $(srcdir); $(MAKEINFO) ada-mode.texi | |
148 | ada-mode.dvi: ada-mode.texi | |
149 | $(ENVADD) $(TEXI2DVI) ${srcdir}/ada-mode.texi | |
150 | ||
6684834d SM |
151 | ../info/pcl-cvs: pcl-cvs.texi |
152 | cd $(srcdir); $(MAKEINFO) pcl-cvs.texi | |
153 | pcl-cvs.dvi: pcl-cvs.texi | |
154 | $(ENVADD) $(TEXI2DVI) ${srcdir}/pcl-cvs.texi | |
155 | ||
572a0c97 JW |
156 | ../info/eshell: eshell.texi |
157 | cd $(srcdir); $(MAKEINFO) eshell.texi | |
158 | eshell.dvi: eshell.texi | |
159 | $(ENVADD) $(TEXI2DVI) ${srcdir}/eshell.texi | |
160 | ||
3ff8ce93 | 161 | ../info/cl: cl.texi |
b9aed9ca | 162 | cd $(srcdir); $(MAKEINFO) cl.texi |
3ff8ce93 | 163 | cl.dvi: cl.texi |
2ca250f9 | 164 | $(ENVADD) $(TEXI2DVI) ${srcdir}/cl.texi |
3ff8ce93 RS |
165 | |
166 | ../info/dired-x: dired-x.texi | |
b9aed9ca | 167 | cd $(srcdir); $(MAKEINFO) dired-x.texi |
3ff8ce93 | 168 | dired-x.dvi: dired-x.texi |
2ca250f9 | 169 | $(ENVADD) $(TEXI2DVI) ${srcdir}/dired-x.texi |
3ff8ce93 | 170 | |
11022425 | 171 | ../info/ediff: ediff.texi |
b9aed9ca | 172 | cd $(srcdir); $(MAKEINFO) ediff.texi |
11022425 | 173 | ediff.dvi: ediff.texi |
2ca250f9 | 174 | $(ENVADD) $(TEXI2DVI) ${srcdir}/ediff.texi |
11022425 | 175 | |
3ff8ce93 | 176 | ../info/forms: forms.texi |
b9aed9ca | 177 | cd $(srcdir); $(MAKEINFO) forms.texi |
3ff8ce93 | 178 | forms.dvi: forms.texi |
2ca250f9 | 179 | $(ENVADD) $(TEXI2DVI) ${srcdir}/forms.texi |
3ff8ce93 | 180 | |
5f016f40 PE |
181 | ../info/gnus: gnus.texi |
182 | cd $(srcdir); $(MAKEINFO) gnus.texi | |
183 | gnus.dvi: gnus.texi | |
177c0ea7 | 184 | sed -e '/@iflatex/,/@end iflatex/d' ${srcdir}/gnus.texi > gnustmp.texi |
55c875c2 DL |
185 | $(ENVADD) $(TEXI2DVI) gnustmp.texi |
186 | cp gnustmp.dvi $*.dvi | |
187 | rm gnustmp.* | |
5f016f40 PE |
188 | |
189 | ../info/message: message.texi | |
190 | cd $(srcdir); $(MAKEINFO) message.texi | |
191 | message.dvi: message.texi | |
2ca250f9 | 192 | $(ENVADD) $(TEXI2DVI) ${srcdir}/message.texi |
5f016f40 | 193 | |
f32cdadd | 194 | ../info/mh-e: mh-e.texi |
b9aed9ca | 195 | cd $(srcdir); $(MAKEINFO) mh-e.texi |
f32cdadd | 196 | mh-e.dvi: mh-e.texi |
2ca250f9 | 197 | $(ENVADD) $(TEXI2DVI) ${srcdir}/mh-e.texi |
f32cdadd | 198 | |
cf96540d RS |
199 | ../info/reftex: reftex.texi |
200 | cd $(srcdir); $(MAKEINFO) reftex.texi | |
201 | reftex.dvi: reftex.texi | |
2ca250f9 | 202 | $(ENVADD) $(TEXI2DVI) ${srcdir}/reftex.texi |
cf96540d | 203 | |
3ff8ce93 | 204 | ../info/sc: sc.texi |
b9aed9ca | 205 | cd $(srcdir); $(MAKEINFO) sc.texi |
3ff8ce93 | 206 | sc.dvi: sc.texi |
2ca250f9 | 207 | $(ENVADD) $(TEXI2DVI) ${srcdir}/sc.texi |
3ff8ce93 RS |
208 | |
209 | ../info/vip: vip.texi | |
b9aed9ca | 210 | cd $(srcdir); $(MAKEINFO) vip.texi |
3ff8ce93 | 211 | vip.dvi: vip.texi |
2ca250f9 | 212 | $(ENVADD) $(TEXI2DVI) ${srcdir}/vip.texi |
3ff8ce93 | 213 | |
5f016f40 PE |
214 | ../info/viper: viper.texi |
215 | cd $(srcdir); $(MAKEINFO) viper.texi | |
216 | viper.dvi: viper.texi | |
2ca250f9 | 217 | $(ENVADD) $(TEXI2DVI) ${srcdir}/viper.texi |
168054a6 | 218 | |
791f12e4 PA |
219 | ../info/widget: widget.texi |
220 | cd $(srcdir); $(MAKEINFO) widget.texi | |
221 | widget.dvi: widget.texi | |
2ca250f9 | 222 | $(ENVADD) $(TEXI2DVI) ${srcdir}/widget.texi |
791f12e4 | 223 | |
429fc7c6 | 224 | ../info/efaq: faq.texi |
84e7cd78 DL |
225 | cd $(srcdir); $(MAKEINFO) faq.texi |
226 | faq.dvi: faq.texi | |
227 | $(ENVADD) $(TEXI2DVI) ${srcdir}/faq.texi | |
228 | ||
3ff8ce93 | 229 | ../etc/GNU: gnu1.texi gnu.texi |
2ca250f9 | 230 | cd $(srcdir) && makeinfo --no-headers -o ../etc/GNU gnu1.texi |
3ff8ce93 | 231 | |
6bfff064 DL |
232 | ../info/autotype: autotype.texi |
233 | cd $(srcdir); $(MAKEINFO) autotype.texi | |
234 | autotype.dvi: autotype.texi | |
235 | $(ENVADD) $(TEXI2DVI) ${srcdir}/autotype.texi | |
236 | ||
1128d4c6 EZ |
237 | ../info/calc: calc.texi |
238 | cd $(srcdir); $(MAKEINFO) calc.texi | |
ef0ce4e0 EZ |
239 | |
240 | calc.dvi: calc.texi | |
241 | $(ENVADD) $(TEXI2DVI) ${srcdir}/calc.texi | |
1128d4c6 | 242 | |
73ec1670 EZ |
243 | # This is produced with --no-split to avoid making files whose |
244 | # names clash on DOS 8+3 filesystems | |
4598da60 | 245 | ../info/idlwave: idlwave.texi |
73ec1670 | 246 | cd $(srcdir); $(MAKEINFO) --no-split idlwave.texi |
4598da60 EZ |
247 | idlwave.dvi: idlwave.texi |
248 | $(ENVADD) $(TEXI2DVI) ${srcdir}/idlwave.texi | |
249 | ||
20ed8664 GM |
250 | ../info/eudc: eudc.texi |
251 | cd $(srcdir); $(MAKEINFO) eudc.texi | |
252 | eudc.dvi: eudc.texi | |
253 | $(ENVADD) $(TEXI2DVI) ${srcdir}/eudc.texi | |
254 | ||
2f155bc2 GM |
255 | ../info/ebrowse: ebrowse.texi |
256 | cd $(srcdir); $(MAKEINFO) ebrowse.texi | |
257 | ebrowse.dvi: ebrowse.texi | |
258 | $(ENVADD) $(TEXI2DVI) ${srcdir}/ebrowse.texi | |
259 | ||
db2672fe EZ |
260 | ../info/woman: woman.texi |
261 | cd $(srcdir); $(MAKEINFO) woman.texi | |
262 | woman.dvi: woman.texi | |
263 | $(ENVADD) $(TEXI2DVI) ${srcdir}/woman.texi | |
264 | ||
543951ab EL |
265 | ../info/speedbar: speedbar.texi |
266 | cd $(srcdir); $(MAKEINFO) speedbar.texi | |
267 | speedbar.dvi: speedbar.texi | |
268 | $(ENVADD) $(TEXI2DVI) ${srcdir}/speedbar.texi | |
82bb16f8 DL |
269 | |
270 | ../info/emacs-mime: emacs-mime.texi | |
271 | cd $(srcdir); $(MAKEINFO) emacs-mime.texi | |
272 | emacs-mime.dvi: emacs-mime.texi | |
273 | $(ENVADD) $(TEXI2DVI) ${srcdir}/emacs-mime.texi | |
274 | ||
d591a834 | 275 | ../info/tramp: tramp.texi |
b1a2b924 | 276 | cd $(srcdir); $(MAKEINFO) -D emacs tramp.texi |
d591a834 KG |
277 | tramp.dvi: tramp.texi |
278 | $(ENVADD) $(TEXI2DVI) ${srcdir}/tramp.texi | |
279 | ||
7ed9159a JY |
280 | ../info/ses: ses.texi |
281 | cd $(srcdir); $(MAKEINFO) ses.texi | |
282 | ses.dvi: ses.texi | |
283 | $(ENVADD) $(TEXI2DVI) ${srcdir}/ses.texi | |
284 | ||
d5df5512 SJ |
285 | ../info/smtpmail: smtpmail.texi |
286 | cd $(srcdir); $(MAKEINFO) smtpmail.texi | |
287 | smtpmail.dvi: smtpmail.texi | |
288 | $(ENVADD) $(TEXI2DVI) ${srcdir}/smtpmail.texi | |
289 | ||
3ff8ce93 | 290 | mostlyclean: |
8da1a051 | 291 | rm -f *.log *.cp *.fn *.ky *.pg *.vr core *.tp *.core gnustmp.* |
3ff8ce93 RS |
292 | |
293 | clean: mostlyclean | |
294 | rm -f *.dvi | |
295 | ||
296 | distclean: clean | |
297 | ||
298 | maintainer-clean: distclean | |
8da1a051 | 299 | rm -f *.aux *.cps *.fns *.kys *.pgs *.vrs *.toc |
3ff8ce93 RS |
300 | # Don't delete these, because they are outside the current directory. |
301 | # for file in $(INFO_TARGETS); do rm -f $${file}*; done | |
302 | ||
303 | ||
304 | # Formerly this directory had texindex.c and getopt.c in it | |
305 | # and this makefile built them to make texindex. | |
306 | # That caused trouble because this is run entirely in the source directory. | |
307 | # Since we expect to get texi2dvi from elsewhere, | |
308 | # it is ok to expect texindex from elsewhere also. | |
6b61353c KH |
309 | |
310 | # arch-tag: 19cdb89e-4acb-448e-b0cc-2ddc05948ee2 |