Commit | Line | Data |
---|---|---|
a8d46980 | 1 | #### -*- Makefile -*- for documentation other than the Emacs manual. |
4009494e | 2 | |
95df8112 | 3 | # Copyright (C) 2003-2011 Free Software Foundation, Inc. |
4009494e GM |
4 | |
5 | # This file is part of GNU Emacs. | |
6 | ||
97c0352c | 7 | # GNU Emacs is free software: you can redistribute it and/or modify |
4009494e | 8 | # it under the terms of the GNU General Public License as published by |
97c0352c GM |
9 | # the Free Software Foundation, either version 3 of the License, or |
10 | # (at your option) any later version. | |
4009494e GM |
11 | |
12 | # GNU Emacs is distributed in the hope that it will be useful, | |
13 | # but WITHOUT ANY WARRANTY; without even the implied warranty of | |
14 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
15 | # GNU General Public License for more details. | |
16 | ||
17 | # You should have received a copy of the GNU General Public License | |
97c0352c GM |
18 | # along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. |
19 | ||
4009494e GM |
20 | |
21 | # Where to find the source code. The source code for Emacs's C kernel is | |
22 | # expected to be in $(srcdir)/src, and the source code for Emacs's | |
23 | # utility programs is expected to be in $(srcdir)/lib-src. This is | |
24 | # set by the configure script's `--srcdir' option. | |
25 | srcdir=. | |
26 | ||
a8d46980 | 27 | infodir = $(srcdir)/../../info |
4009494e | 28 | |
6513b232 EZ |
29 | ## Directory with emacsver.texi. |
30 | ## Currently only used by efaq; could be added to MAKEINFO. | |
31 | emacsdir = $(srcdir)/../emacs | |
32 | ||
4009494e | 33 | # The makeinfo program is part of the Texinfo distribution. |
aeeb3dcb | 34 | MAKEINFO = makeinfo --force -I$(emacsdir) |
a8d46980 GM |
35 | MULTI_INSTALL_INFO = $(srcdir)\..\..\nt\multi-install-info.bat |
36 | INFO_TARGETS = $(infodir)/ccmode \ | |
1682490c JB |
37 | $(infodir)/cl $(infodir)/dbus $(infodir)/dired-x \ |
38 | $(infodir)/ediff $(infodir)/forms $(infodir)/gnus \ | |
39 | $(infodir)/message $(infodir)/sieve $(infodir)/pgg \ | |
40 | $(infodir)/emacs-mime $(infodir)/info $(infodir)/mh-e \ | |
41 | $(infodir)/reftex $(infodir)/sc $(infodir)/vip \ | |
42 | $(infodir)/viper $(infodir)/widget $(infodir)/efaq \ | |
43 | $(infodir)/ada-mode $(infodir)/autotype $(infodir)/calc \ | |
44 | $(infodir)/idlwave $(infodir)/eudc $(infodir)/ebrowse \ | |
45 | $(infodir)/pcl-cvs $(infodir)/woman $(infodir)/eshell \ | |
46 | $(infodir)/org $(infodir)/url $(infodir)/speedbar \ | |
47 | $(infodir)/tramp $(infodir)/ses $(infodir)/smtpmail \ | |
48 | $(infodir)/flymake $(infodir)/newsticker $(infodir)/rcirc \ | |
d221e780 CO |
49 | $(infodir)/erc $(infodir)/ert \ |
50 | $(infodir)/remember $(infodir)/nxml-mode \ | |
35ed8e2e | 51 | $(infodir)/epa $(infodir)/mairix-el $(infodir)/sasl \ |
af42a9cc | 52 | $(infodir)/auth $(infodir)/eieio $(infodir)/ede \ |
45a4a565 | 53 | $(infodir)/semantic $(infodir)/edt |
1682490c JB |
54 | DVI_TARGETS = calc.dvi cc-mode.dvi cl.dvi dbus.dvi dired-x.dvi \ |
55 | ediff.dvi forms.dvi gnus.dvi message.dvi emacs-mime.dvi \ | |
4997d802 | 56 | sieve.dvi pgg.dvi mh-e.dvi \ |
1682490c JB |
57 | reftex.dvi sc.dvi vip.dvi viper.dvi widget.dvi faq.dvi \ |
58 | ada-mode.dvi autotype.dvi idlwave.dvi eudc.dvi ebrowse.dvi \ | |
59 | pcl-cvs.dvi woman.dvi eshell.dvi org.dvi url.dvi \ | |
60 | speedbar.dvi tramp.dvi ses.dvi smtpmail.dvi flymake.dvi \ | |
d221e780 CO |
61 | newsticker.dvi rcirc.dvi erc.dvi ert.dvi \ |
62 | remember.dvi nxml-mode.dvi \ | |
af42a9cc | 63 | epa.dvi mairix-el.dvi sasl.dvi auth.dvi eieio.dvi ede.dvi \ |
45a4a565 | 64 | semantic.dvi edt.dvi |
4009494e GM |
65 | INFOSOURCES = info.texi |
66 | ||
67 | # The following rule does not work with all versions of `make'. | |
68 | .SUFFIXES: .texi .dvi | |
69 | .texi.dvi: | |
70 | texi2dvi $< | |
71 | ||
72 | TEXI2DVI = texi2dvi | |
a8d46980 | 73 | ENVADD = $(srcdir)\..\..\nt\envadd.bat "TEXINPUTS=$(srcdir);$(TEXINPUTS)" \ |
aeeb3dcb | 74 | "MAKEINFO=$(MAKEINFO) -I$(srcdir)" /C |
4009494e | 75 | |
4009494e | 76 | |
f272c0fd | 77 | info: $(INFO_TARGETS) |
4009494e GM |
78 | |
79 | dvi: $(DVI_TARGETS) | |
80 | ||
81 | # Note that all the Info targets build the Info files | |
82 | # in srcdir. There is no provision for Info files | |
83 | # to exist in the build directory. | |
84 | # In a distribution of Emacs, the Info files should be up to date. | |
85 | ||
f272c0fd JR |
86 | $(infodir)/dir: |
87 | $(MULTI_INSTALL_INFO) --info-dir=$(infodir) $(INFO_TARGETS) | |
88 | ||
4009494e GM |
89 | # The following target uses an explicit -o switch to work around |
90 | # the @setfilename directive in info.texi, which is required for | |
91 | # the Texinfo distribution. | |
92 | # Some Windows ports of makeinfo seem to require -o to come before the | |
93 | # texi filename, contrary to GNU standards. | |
94 | ||
4009494e GM |
95 | $(infodir)/info: $(INFOSOURCES) |
96 | $(MAKEINFO) --no-split -o $@ info.texi | |
97 | ||
98 | info.dvi: $(INFOSOURCES) | |
99 | $(ENVADD) $(TEXI2DVI) $(srcdir)/info.texi | |
100 | ||
4009494e GM |
101 | |
102 | $(infodir)/ccmode: cc-mode.texi | |
103 | $(MAKEINFO) cc-mode.texi | |
104 | cc-mode.dvi: cc-mode.texi | |
105 | $(ENVADD) $(TEXI2DVI) $(srcdir)/cc-mode.texi | |
106 | ||
107 | $(infodir)/ada-mode: ada-mode.texi | |
108 | $(MAKEINFO) ada-mode.texi | |
109 | ada-mode.dvi: ada-mode.texi | |
110 | $(ENVADD) $(TEXI2DVI) $(srcdir)/ada-mode.texi | |
111 | ||
112 | $(infodir)/pcl-cvs: pcl-cvs.texi | |
113 | $(MAKEINFO) pcl-cvs.texi | |
114 | pcl-cvs.dvi: pcl-cvs.texi | |
115 | $(ENVADD) $(TEXI2DVI) $(srcdir)/pcl-cvs.texi | |
116 | ||
117 | $(infodir)/eshell: eshell.texi | |
118 | $(MAKEINFO) eshell.texi | |
119 | eshell.dvi: eshell.texi | |
120 | $(ENVADD) $(TEXI2DVI) $(srcdir)/eshell.texi | |
121 | ||
122 | $(infodir)/cl: cl.texi | |
123 | $(MAKEINFO) cl.texi | |
124 | cl.dvi: cl.texi | |
125 | $(ENVADD) $(TEXI2DVI) $(srcdir)/cl.texi | |
126 | ||
1682490c JB |
127 | $(infodir)/dbus: dbus.texi |
128 | $(MAKEINFO) dbus.texi | |
129 | dbus.dvi: dbus.texi | |
130 | $(ENVADD) $(TEXI2DVI) $(srcdir)/dbus.texi | |
131 | ||
4009494e GM |
132 | $(infodir)/dired-x: dired-x.texi |
133 | $(MAKEINFO) dired-x.texi | |
134 | dired-x.dvi: dired-x.texi | |
135 | $(ENVADD) $(TEXI2DVI) $(srcdir)/dired-x.texi | |
136 | ||
137 | $(infodir)/ediff: ediff.texi | |
138 | $(MAKEINFO) ediff.texi | |
139 | ediff.dvi: ediff.texi | |
140 | $(ENVADD) $(TEXI2DVI) $(srcdir)/ediff.texi | |
141 | ||
142 | $(infodir)/flymake: flymake.texi | |
143 | $(MAKEINFO) flymake.texi | |
144 | flymake.dvi: flymake.texi | |
145 | $(ENVADD) $(TEXI2DVI) $(srcdir)/flymake.texi | |
146 | ||
147 | $(infodir)/forms: forms.texi | |
148 | $(MAKEINFO) forms.texi | |
149 | forms.dvi: forms.texi | |
150 | $(ENVADD) $(TEXI2DVI) $(srcdir)/forms.texi | |
151 | ||
152 | # gnus/message/emacs-mime/sieve/pgg are part of Gnus: | |
153 | $(infodir)/gnus: gnus.texi | |
154 | $(MAKEINFO) gnus.texi | |
155 | gnus.dvi: gnus.texi | |
156 | sed -e "/@iflatex/,/@end iflatex/d" $(srcdir)/gnus.texi > gnustmp.texi | |
157 | $(ENVADD) $(TEXI2DVI) gnustmp.texi | |
158 | cp gnustmp.dvi $*.dvi | |
159 | rm gnustmp.* | |
160 | # | |
161 | $(infodir)/message: message.texi | |
162 | $(MAKEINFO) message.texi | |
163 | message.dvi: message.texi | |
164 | $(ENVADD) $(TEXI2DVI) $(srcdir)/message.texi | |
165 | # | |
166 | $(infodir)/emacs-mime: emacs-mime.texi | |
167 | $(MAKEINFO) --enable-encoding emacs-mime.texi | |
168 | emacs-mime.dvi: emacs-mime.texi | |
169 | $(ENVADD) $(TEXI2DVI) $(srcdir)/emacs-mime.texi | |
170 | # | |
171 | $(infodir)/sieve: sieve.texi | |
172 | $(MAKEINFO) sieve.texi | |
173 | sieve.dvi: sieve.texi | |
174 | $(ENVADD) $(TEXI2DVI) $(srcdir)/sieve.texi | |
175 | # | |
176 | $(infodir)/pgg: pgg.texi | |
177 | $(MAKEINFO) pgg.texi | |
178 | pgg.dvi: pgg.texi | |
179 | $(ENVADD) $(TEXI2DVI) $(srcdir)/pgg.texi | |
180 | ||
181 | $(infodir)/mh-e: mh-e.texi | |
182 | $(MAKEINFO) mh-e.texi | |
183 | mh-e.dvi: mh-e.texi | |
184 | $(ENVADD) $(TEXI2DVI) $(srcdir)/mh-e.texi | |
185 | ||
186 | $(infodir)/reftex: reftex.texi | |
187 | $(MAKEINFO) reftex.texi | |
188 | reftex.dvi: reftex.texi | |
189 | $(ENVADD) $(TEXI2DVI) $(srcdir)/reftex.texi | |
190 | ||
b6173182 JB |
191 | $(infodir)/remember: remember.texi |
192 | $(MAKEINFO) remember.texi | |
193 | remember.dvi: remember.texi | |
194 | $(ENVADD) $(TEXI2DVI) $(srcdir)/remember.texi | |
195 | ||
4997d802 JB |
196 | $(infodir)/sasl: sasl.texi |
197 | $(MAKEINFO) sasl.texi | |
198 | sasl.dvi: sasl.texi | |
199 | $(ENVADD) $(TEXI2DVI) $(srcdir)/sasl.texi | |
200 | ||
4009494e GM |
201 | $(infodir)/sc: sc.texi |
202 | $(MAKEINFO) sc.texi | |
203 | sc.dvi: sc.texi | |
204 | $(ENVADD) $(TEXI2DVI) $(srcdir)/sc.texi | |
205 | ||
206 | $(infodir)/vip: vip.texi | |
207 | $(MAKEINFO) vip.texi | |
208 | vip.dvi: vip.texi | |
209 | $(ENVADD) $(TEXI2DVI) $(srcdir)/vip.texi | |
210 | ||
211 | $(infodir)/viper: viper.texi | |
212 | $(MAKEINFO) viper.texi | |
213 | viper.dvi: viper.texi | |
214 | $(ENVADD) $(TEXI2DVI) $(srcdir)/viper.texi | |
215 | ||
216 | $(infodir)/widget: widget.texi | |
217 | $(MAKEINFO) widget.texi | |
218 | widget.dvi: widget.texi | |
219 | $(ENVADD) $(TEXI2DVI) $(srcdir)/widget.texi | |
220 | ||
6513b232 | 221 | $(infodir)/efaq: faq.texi $(emacsdir)/emacsver.texi |
aeeb3dcb | 222 | $(MAKEINFO) faq.texi |
6513b232 | 223 | faq.dvi: faq.texi $(emacsdir)/emacsver.texi |
4009494e GM |
224 | $(ENVADD) $(TEXI2DVI) $(srcdir)/faq.texi |
225 | ||
4009494e GM |
226 | $(infodir)/autotype: autotype.texi |
227 | $(MAKEINFO) autotype.texi | |
228 | autotype.dvi: autotype.texi | |
229 | $(ENVADD) $(TEXI2DVI) $(srcdir)/autotype.texi | |
230 | ||
aeeb3dcb | 231 | $(infodir)/calc: calc.texi $(emacsdir)/emacsver.texi |
4009494e GM |
232 | $(MAKEINFO) calc.texi |
233 | ||
aeeb3dcb | 234 | calc.dvi: calc.texi $(emacsdir)/emacsver.texi |
4009494e GM |
235 | $(ENVADD) $(TEXI2DVI) $(srcdir)/calc.texi |
236 | ||
237 | # This is produced with --no-split to avoid making files whose | |
238 | # names clash on DOS 8+3 filesystems | |
239 | $(infodir)/idlwave: idlwave.texi | |
240 | $(MAKEINFO) --no-split idlwave.texi | |
241 | idlwave.dvi: idlwave.texi | |
242 | $(ENVADD) $(TEXI2DVI) $(srcdir)/idlwave.texi | |
243 | ||
244 | $(infodir)/eudc: eudc.texi | |
245 | $(MAKEINFO) eudc.texi | |
246 | eudc.dvi: eudc.texi | |
247 | $(ENVADD) $(TEXI2DVI) $(srcdir)/eudc.texi | |
248 | ||
249 | $(infodir)/ebrowse: ebrowse.texi | |
250 | $(MAKEINFO) ebrowse.texi | |
251 | ebrowse.dvi: ebrowse.texi | |
252 | $(ENVADD) $(TEXI2DVI) $(srcdir)/ebrowse.texi | |
253 | ||
254 | $(infodir)/woman: woman.texi | |
255 | $(MAKEINFO) woman.texi | |
256 | woman.dvi: woman.texi | |
257 | $(ENVADD) $(TEXI2DVI) $(srcdir)/woman.texi | |
258 | ||
259 | $(infodir)/speedbar: speedbar.texi | |
260 | $(MAKEINFO) speedbar.texi | |
261 | speedbar.dvi: speedbar.texi | |
262 | $(ENVADD) $(TEXI2DVI) $(srcdir)/speedbar.texi | |
263 | ||
264 | $(infodir)/tramp: tramp.texi | |
265 | $(MAKEINFO) tramp.texi | |
266 | tramp.dvi: tramp.texi | |
267 | $(ENVADD) $(TEXI2DVI) $(srcdir)/tramp.texi | |
268 | ||
269 | $(infodir)/ses: ses.texi | |
270 | $(MAKEINFO) ses.texi | |
271 | ses.dvi: ses.texi | |
272 | $(ENVADD) $(TEXI2DVI) $(srcdir)/ses.texi | |
273 | ||
274 | $(infodir)/smtpmail: smtpmail.texi | |
275 | $(MAKEINFO) smtpmail.texi | |
276 | smtpmail.dvi: smtpmail.texi | |
277 | $(ENVADD) $(TEXI2DVI) $(srcdir)/smtpmail.texi | |
278 | ||
4009494e GM |
279 | $(infodir)/org: org.texi |
280 | $(MAKEINFO) org.texi | |
281 | org.dvi: org.texi | |
282 | $(ENVADD) $(TEXI2DVI) $(srcdir)/org.texi | |
283 | ||
284 | $(infodir)/url: url.texi | |
285 | $(MAKEINFO) url.texi | |
286 | url.dvi: url.texi | |
287 | $(ENVADD) $(TEXI2DVI) $(srcdir)/url.texi | |
288 | ||
289 | $(infodir)/newsticker: newsticker.texi | |
290 | $(MAKEINFO) newsticker.texi | |
291 | newsticker.dvi: newsticker.texi | |
292 | $(ENVADD) $(TEXI2DVI) $(srcdir)/newsticker.texi | |
293 | ||
ac97a16b MH |
294 | $(infodir)/nxml-mode: nxml-mode.texi |
295 | $(MAKEINFO) nxml-mode.texi | |
296 | nxml-mod.dvi: nxml-mode.texi | |
297 | $(ENVADD) $(TEXI2DVI) $(srcdir)/nxml-mode.texi | |
298 | ||
4009494e GM |
299 | $(infodir)/rcirc: rcirc.texi |
300 | $(MAKEINFO) rcirc.texi | |
301 | rcirc.dvi: rcirc.texi | |
302 | $(ENVADD) $(TEXI2DVI) $(srcdir)/rcirc.texi | |
303 | ||
304 | $(infodir)/erc: erc.texi | |
305 | $(MAKEINFO) erc.texi | |
306 | erc.dvi: erc.texi | |
307 | $(ENVADD) $(TEXI2DVI) $(srcdir)/erc.texi | |
308 | ||
d221e780 CO |
309 | $(infodir)/ert: ert.texi |
310 | $(MAKEINFO) ert.texi | |
311 | ert.dvi: ert.texi | |
312 | $(ENVADD) $(TEXI2DVI) $(srcdir)/ert.texi | |
313 | ||
bca98fc9 JB |
314 | $(infodir)/epa: epa.texi |
315 | $(MAKEINFO) epa.texi | |
316 | epa.dvi: epa.texi | |
317 | $(ENVADD) $(TEXI2DVI) $(srcdir)/epa.texi | |
318 | ||
d1dad0b9 JB |
319 | $(infodir)/mairix-el: mairix-el.texi |
320 | $(MAKEINFO) mairix-el.texi | |
321 | mairix-el.dvi: mairix-el.texi | |
322 | $(ENVADD) $(TEXI2DVI) $(srcdir)/mairix-el.texi | |
323 | ||
35ed8e2e JB |
324 | $(infodir)/auth: auth.texi |
325 | $(MAKEINFO) auth.texi | |
326 | auth.dvi: auth.texi | |
327 | $(ENVADD) $(TEXI2DVI) $(srcdir)/auth.texi | |
328 | ||
216f299a JB |
329 | $(infodir)/eieio: eieio.texi |
330 | $(MAKEINFO) eieio.texi | |
331 | eieio.dvi: eieio.texi | |
332 | $(ENVADD) $(TEXI2DVI) $(srcdir)/eieio.texi | |
333 | ||
334 | $(infodir)/ede: ede.texi | |
335 | $(MAKEINFO) ede.texi | |
336 | ede.dvi: ede.texi | |
337 | $(ENVADD) $(TEXI2DVI) $(srcdir)/ede.texi | |
338 | ||
af42a9cc JB |
339 | $(infodir)/semantic: semantic.texi |
340 | $(MAKEINFO) semantic.texi | |
341 | semantic.dvi: semantic.texi | |
342 | $(ENVADD) $(TEXI2DVI) $(srcdir)/semantic.texi | |
343 | ||
45a4a565 JB |
344 | $(infodir)/edt: edt.texi |
345 | $(MAKEINFO) edt.texi | |
346 | edt.dvi: edt.texi | |
347 | $(ENVADD) $(TEXI2DVI) $(srcdir)/edt.texi | |
348 | ||
4009494e GM |
349 | mostlyclean: |
350 | - $(DEL) *.log *.cp *.fn *.ky *.pg *.vr core *.tp *.core gnustmp.* | |
351 | ||
352 | clean: mostlyclean | |
353 | - $(DEL) *.dvi | |
1682490c JB |
354 | - $(DEL) $(infodir)/ccmode* $(infodir)/cl* \ |
355 | $(infodir)/dbus* $(infodir)/dired-x* \ | |
4009494e GM |
356 | $(infodir)/ediff* $(infodir)/forms* \ |
357 | $(infodir)/gnus* $(infodir)/info* \ | |
358 | $(infodir)/message* $(infodir)/mh-e* \ | |
359 | $(infodir)/reftex* $(infodir)/sc* \ | |
360 | $(infodir)/vip* $(infodir)/widget* \ | |
361 | $(infodir)/efaq* $(infodir)/ada-mode* \ | |
362 | $(infodir)/autotype* $(infodir)/calc* \ | |
363 | $(infodir)/idlwave* $(infodir)/eudc* \ | |
364 | $(infodir)/ebrowse* $(infodir)/pcl-cvs* \ | |
365 | $(infodir)/woman* $(infodir)/eshell* \ | |
366 | $(infodir)/speedbar* $(infodir)/tramp* \ | |
367 | $(infodir)/ses* $(infodir)/smtpmail* \ | |
368 | $(infodir)/url* $(infodir)/org* \ | |
369 | $(infodir)/flymake* $(infodir)/newsticker* \ | |
370 | $(infodir)/sieve* $(infodir)/pgg* \ | |
d221e780 | 371 | $(infodir)/erc* $(infodir)/ert* $(infodir)/rcirc* \ |
bca98fc9 | 372 | $(infodir)/remember* $(infodir)/nxml-mode* \ |
4997d802 | 373 | $(infodir)/epa* $(infodir)/sasl* \ |
216f299a | 374 | $(infodir)/mairix-el* $(infodir)/auth* \ |
af42a9cc | 375 | $(infodir)/eieio* $(infodir)/ede* \ |
45a4a565 | 376 | $(infodir)/semantic* $(infodir)edt* |
4009494e GM |
377 | |
378 | distclean: clean | |
7389398d | 379 | - $(DEL) makefile |
4009494e GM |
380 | |
381 | maintainer-clean: distclean | |
382 | - $(DEL) *.aux *.cps *.fns *.kys *.pgs *.vrs *.toc | |
383 | # Don't delete these, because they are outside the current directory. | |
384 | # for file in $(INFO_TARGETS); do rm -f $${file}*; done | |
385 | ||
386 | ||
387 | # Formerly this directory had texindex.c and getopt.c in it | |
388 | # and this makefile built them to make texindex. | |
389 | # That caused trouble because this is run entirely in the source directory. | |
390 | # Since we expect to get texi2dvi from elsewhere, | |
391 | # it is ok to expect texindex from elsewhere also. |