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