Add 2007 to copyright years.
[bpt/emacs.git] / man / Makefile.in
CommitLineData
3ff8ce93
RS
1#### Makefile for the Emacs Manual and other documentation.
2
b65d8176 3# Copyright (C) 1994, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003,
4e6835db 4# 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
b3ae7a0a
GM
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
364c38d3
LK
20# the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
21# Boston, MA 02110-1301, USA.
b3ae7a0a 22
74a4eee3
RS
23# Where to find the source code. $(srcdir) will be the man
24# subdirectory of the source tree. This is
3ff8ce93
RS
25# set by the configure script's `--srcdir' option.
26srcdir=@srcdir@
36fcdbf6 27top_srcdir=@top_srcdir@
3ff8ce93
RS
28
29# Tell make where to find source files; this is needed for the makefiles.
30VPATH=@srcdir@
31
32
33# The makeinfo program is part of the Texinfo distribution.
4a8b387f
RS
34# Use --force so that it generates output even if there are errors.
35MAKEINFO = makeinfo --force
e645f2ad 36INFO_TARGETS = ../info/emacs ../info/ccmode ../info/cl \
933bdce2 37 ../info/dired-x ../info/ediff ../info/forms ../info/gnus \
23f87bed
MB
38 ../info/message ../info/sieve ../info/pgg ../info/emacs-mime \
39 ../info/info ../info/mh-e ../info/reftex \
84e7cd78 40 ../info/sc ../info/vip ../info/viper ../info/widget \
1128d4c6 41 ../info/efaq ../info/ada-mode ../info/autotype ../info/calc \
db2672fe 42 ../info/idlwave ../info/eudc ../info/ebrowse ../info/pcl-cvs \
948a35c1 43 ../info/woman ../info/eshell ../info/org ../info/url \
3c15ca69 44 ../info/speedbar ../info/tramp ../info/ses ../info/smtpmail \
597993cf 45 ../info/flymake ../info/newsticker ../info/rcirc ../info/erc
ef0ce4e0 46DVI_TARGETS = emacs.dvi calc.dvi cc-mode.dvi cl.dvi dired-x.dvi \
23f87bed
MB
47 ediff.dvi forms.dvi gnus.dvi message.dvi emacs-mime.dvi \
48 gnus.dvi message.dvi sieve.dvi pgg.dvi mh-e.dvi \
a226b66d 49 reftex.dvi sc.dvi vip.dvi viper.dvi widget.dvi faq.dvi \
6684834d 50 ada-mode.dvi autotype.dvi idlwave.dvi eudc.dvi ebrowse.dvi \
948a35c1 51 pcl-cvs.dvi woman.dvi eshell.dvi org.dvi url.dvi \
2d0f2dd6 52 speedbar.dvi tramp.dvi ses.dvi smtpmail.dvi flymake.dvi \
597993cf 53 newsticker.dvi emacs-xtra.dvi rcirc.dvi erc.dvi
444c5586 54INFOSOURCES = info.texi
3ff8ce93
RS
55
56# The following rule does not work with all versions of `make'.
57.SUFFIXES: .texi .dvi
58.texi.dvi:
59 texi2dvi $<
60
61TEXI2DVI = texi2dvi
177c0ea7 62ENVADD = TEXINPUTS="$(srcdir):$(TEXINPUTS)" MAKEINFO="$(MAKEINFO) -I$(srcdir)"
3ff8ce93 63
e645f2ad
EZ
64EMACS_XTRA=\
65 $(srcdir)/arevert-xtra.texi \
66 $(srcdir)/cal-xtra.texi \
67 $(srcdir)/dired-xtra.texi \
68 $(srcdir)/picture-xtra.texi \
69 $(srcdir)/emerge-xtra.texi \
70 $(srcdir)/vc-xtra.texi \
71 $(srcdir)/vc1-xtra.texi \
72 $(srcdir)/vc2-xtra.texi \
73 $(srcdir)/fortran-xtra.texi \
74 $(srcdir)/msdog-xtra.texi
75
3ff8ce93
RS
76EMACSSOURCES= \
77 ${srcdir}/emacs.texi \
78f743c7 78 ${srcdir}/doclicense.texi \
3ff8ce93
RS
79 ${srcdir}/screen.texi \
80 ${srcdir}/commands.texi \
81 ${srcdir}/entering.texi \
82 ${srcdir}/basic.texi \
83 ${srcdir}/mini.texi \
84 ${srcdir}/m-x.texi \
85 ${srcdir}/help.texi \
86 ${srcdir}/mark.texi \
87 ${srcdir}/killing.texi \
88 ${srcdir}/regs.texi \
89 ${srcdir}/display.texi \
90 ${srcdir}/search.texi \
91 ${srcdir}/fixit.texi \
92 ${srcdir}/files.texi \
93 ${srcdir}/buffers.texi \
94 ${srcdir}/windows.texi \
95 ${srcdir}/frames.texi \
32395fcf 96 ${srcdir}/mule.texi \
3ff8ce93
RS
97 ${srcdir}/major.texi \
98 ${srcdir}/indent.texi \
99 ${srcdir}/text.texi \
100 ${srcdir}/programs.texi \
101 ${srcdir}/building.texi \
78f743c7 102 ${srcdir}/maintaining.texi \
3ff8ce93 103 ${srcdir}/abbrevs.texi \
3ff8ce93
RS
104 ${srcdir}/sending.texi \
105 ${srcdir}/rmail.texi \
106 ${srcdir}/dired.texi \
107 ${srcdir}/calendar.texi \
108 ${srcdir}/misc.texi \
109 ${srcdir}/custom.texi \
110 ${srcdir}/trouble.texi \
111 ${srcdir}/cmdargs.texi \
78f743c7 112 ${srcdir}/xresources.texi \
3ff8ce93 113 ${srcdir}/anti.texi \
78f743c7 114 ${srcdir}/macos.texi \
11f7f688 115 ${srcdir}/msdog.texi \
3ff8ce93 116 ${srcdir}/gnu.texi \
11f7f688 117 ${srcdir}/glossary.texi \
0d79e1ab 118 ${srcdir}/ack.texi \
e645f2ad
EZ
119 ${srcdir}/kmacro.texi \
120 $(EMACS_XTRA)
3ff8ce93 121
855c2ccd
MB
122info: $(top_srcdir)/info $(INFO_TARGETS)
123
36fcdbf6
MB
124$(top_srcdir)/info:
125 mkdir $@
126
3ff8ce93
RS
127dvi: $(DVI_TARGETS)
128
e8edd7c5
RS
129# Note that all the Info targets build the Info files
130# in srcdir. There is no provision for Info files
131# to exist in the build directory.
132# In a distribution of Emacs, the Info files should be up to date.
133
7c836af3 134# The following target uses an explicit -o switch to work around
db921254
EZ
135# the @setfilename directive in info.texi, which is required for
136# the Texinfo distribution.
137
3ff8ce93 138../info/info: ${INFOSOURCES}
db921254 139 cd $(srcdir); $(MAKEINFO) --no-split info.texi -o $@
3ff8ce93
RS
140
141info.dvi: ${INFOSOURCES}
2ca250f9 142 $(ENVADD) $(TEXI2DVI) ${srcdir}/info.texi
3ff8ce93
RS
143
144../info/emacs: ${EMACSSOURCES}
b9aed9ca 145 cd $(srcdir); $(MAKEINFO) emacs.texi
3ff8ce93 146
d0d62cd5 147emacs.dvi: ${EMACSSOURCES}
2ca250f9 148 $(ENVADD) $(TEXI2DVI) ${srcdir}/emacs.texi
3ff8ce93 149
0a8ad7c4
EZ
150# This target is here so you could easily get the list of the *.texi
151# files which belong to the Emacs manual (as opposed to the separate
152# manuals for CL, CC Mode, Ebrowse, etc.). With this target, you can
153# say things like "grep foo `make emacsman`".
154emacsman:
155 @echo $(EMACSSOURCES)
156
0aa97803 157../info/ccmode: cc-mode.texi
b9aed9ca 158 cd $(srcdir); $(MAKEINFO) cc-mode.texi
40bb1f49 159cc-mode.dvi: cc-mode.texi
2ca250f9 160 $(ENVADD) $(TEXI2DVI) ${srcdir}/cc-mode.texi
40bb1f49 161
a226b66d
GM
162../info/ada-mode: ada-mode.texi
163 cd $(srcdir); $(MAKEINFO) ada-mode.texi
164ada-mode.dvi: ada-mode.texi
165 $(ENVADD) $(TEXI2DVI) ${srcdir}/ada-mode.texi
166
6684834d
SM
167../info/pcl-cvs: pcl-cvs.texi
168 cd $(srcdir); $(MAKEINFO) pcl-cvs.texi
169pcl-cvs.dvi: pcl-cvs.texi
170 $(ENVADD) $(TEXI2DVI) ${srcdir}/pcl-cvs.texi
171
572a0c97
JW
172../info/eshell: eshell.texi
173 cd $(srcdir); $(MAKEINFO) eshell.texi
174eshell.dvi: eshell.texi
175 $(ENVADD) $(TEXI2DVI) ${srcdir}/eshell.texi
176
3ff8ce93 177../info/cl: cl.texi
b9aed9ca 178 cd $(srcdir); $(MAKEINFO) cl.texi
3ff8ce93 179cl.dvi: cl.texi
2ca250f9 180 $(ENVADD) $(TEXI2DVI) ${srcdir}/cl.texi
3ff8ce93
RS
181
182../info/dired-x: dired-x.texi
b9aed9ca 183 cd $(srcdir); $(MAKEINFO) dired-x.texi
3ff8ce93 184dired-x.dvi: dired-x.texi
2ca250f9 185 $(ENVADD) $(TEXI2DVI) ${srcdir}/dired-x.texi
3ff8ce93 186
11022425 187../info/ediff: ediff.texi
b9aed9ca 188 cd $(srcdir); $(MAKEINFO) ediff.texi
11022425 189ediff.dvi: ediff.texi
2ca250f9 190 $(ENVADD) $(TEXI2DVI) ${srcdir}/ediff.texi
11022425 191
e645f2ad 192emacs-xtra.dvi: emacs-xtra.texi $(EMACS_XTRA)
2d0f2dd6
LT
193 $(ENVADD) $(TEXI2DVI) ${srcdir}/emacs-xtra.texi
194
3ff8ce93 195../info/forms: forms.texi
b9aed9ca 196 cd $(srcdir); $(MAKEINFO) forms.texi
3ff8ce93 197forms.dvi: forms.texi
2ca250f9 198 $(ENVADD) $(TEXI2DVI) ${srcdir}/forms.texi
3ff8ce93 199
23f87bed 200# gnus/message/emacs-mime/sieve/pgg are part of Gnus:
ef1ee5da 201../info/gnus: gnus.texi gnus-faq.texi
5f016f40 202 cd $(srcdir); $(MAKEINFO) gnus.texi
ef1ee5da 203gnus.dvi: gnus.texi gnus-faq.texi
177c0ea7 204 sed -e '/@iflatex/,/@end iflatex/d' ${srcdir}/gnus.texi > gnustmp.texi
55c875c2
DL
205 $(ENVADD) $(TEXI2DVI) gnustmp.texi
206 cp gnustmp.dvi $*.dvi
207 rm gnustmp.*
ef1ee5da 208
5f016f40
PE
209../info/message: message.texi
210 cd $(srcdir); $(MAKEINFO) message.texi
211message.dvi: message.texi
2ca250f9 212 $(ENVADD) $(TEXI2DVI) ${srcdir}/message.texi
ef1ee5da 213
23f87bed
MB
214../info/sieve: sieve.texi
215 cd $(srcdir); $(MAKEINFO) sieve.texi
216sieve.dvi: sieve.texi
217 $(ENVADD) $(TEXI2DVI) ${srcdir}/sieve.texi
1a1d61e0 218
23f87bed
MB
219../info/emacs-mime: emacs-mime.texi
220 cd $(srcdir); $(MAKEINFO) emacs-mime.texi
221emacs-mime.dvi: emacs-mime.texi
222 $(ENVADD) $(TEXI2DVI) ${srcdir}/emacs-mime.texi
ef1ee5da 223
23f87bed
MB
224../info/pgg: pgg.texi
225 cd $(srcdir); $(MAKEINFO) pgg.texi
226pgg.dvi: pgg.texi
227 $(ENVADD) $(TEXI2DVI) ${srcdir}/pgg.texi
5f016f40 228
f32cdadd 229../info/mh-e: mh-e.texi
b9aed9ca 230 cd $(srcdir); $(MAKEINFO) mh-e.texi
f32cdadd 231mh-e.dvi: mh-e.texi
2ca250f9 232 $(ENVADD) $(TEXI2DVI) ${srcdir}/mh-e.texi
f32cdadd 233
cf96540d
RS
234../info/reftex: reftex.texi
235 cd $(srcdir); $(MAKEINFO) reftex.texi
236reftex.dvi: reftex.texi
2ca250f9 237 $(ENVADD) $(TEXI2DVI) ${srcdir}/reftex.texi
cf96540d 238
3ff8ce93 239../info/sc: sc.texi
b9aed9ca 240 cd $(srcdir); $(MAKEINFO) sc.texi
3ff8ce93 241sc.dvi: sc.texi
2ca250f9 242 $(ENVADD) $(TEXI2DVI) ${srcdir}/sc.texi
3ff8ce93
RS
243
244../info/vip: vip.texi
b9aed9ca 245 cd $(srcdir); $(MAKEINFO) vip.texi
3ff8ce93 246vip.dvi: vip.texi
2ca250f9 247 $(ENVADD) $(TEXI2DVI) ${srcdir}/vip.texi
3ff8ce93 248
5f016f40
PE
249../info/viper: viper.texi
250 cd $(srcdir); $(MAKEINFO) viper.texi
251viper.dvi: viper.texi
2ca250f9 252 $(ENVADD) $(TEXI2DVI) ${srcdir}/viper.texi
168054a6 253
791f12e4
PA
254../info/widget: widget.texi
255 cd $(srcdir); $(MAKEINFO) widget.texi
256widget.dvi: widget.texi
2ca250f9 257 $(ENVADD) $(TEXI2DVI) ${srcdir}/widget.texi
791f12e4 258
429fc7c6 259../info/efaq: faq.texi
84e7cd78
DL
260 cd $(srcdir); $(MAKEINFO) faq.texi
261faq.dvi: faq.texi
262 $(ENVADD) $(TEXI2DVI) ${srcdir}/faq.texi
263
3ff8ce93 264../etc/GNU: gnu1.texi gnu.texi
2ca250f9 265 cd $(srcdir) && makeinfo --no-headers -o ../etc/GNU gnu1.texi
3ff8ce93 266
6bfff064
DL
267../info/autotype: autotype.texi
268 cd $(srcdir); $(MAKEINFO) autotype.texi
269autotype.dvi: autotype.texi
270 $(ENVADD) $(TEXI2DVI) ${srcdir}/autotype.texi
271
1128d4c6
EZ
272../info/calc: calc.texi
273 cd $(srcdir); $(MAKEINFO) calc.texi
ef0ce4e0
EZ
274
275calc.dvi: calc.texi
276 $(ENVADD) $(TEXI2DVI) ${srcdir}/calc.texi
1128d4c6 277
73ec1670
EZ
278# This is produced with --no-split to avoid making files whose
279# names clash on DOS 8+3 filesystems
4598da60 280../info/idlwave: idlwave.texi
73ec1670 281 cd $(srcdir); $(MAKEINFO) --no-split idlwave.texi
4598da60
EZ
282idlwave.dvi: idlwave.texi
283 $(ENVADD) $(TEXI2DVI) ${srcdir}/idlwave.texi
284
20ed8664
GM
285../info/eudc: eudc.texi
286 cd $(srcdir); $(MAKEINFO) eudc.texi
287eudc.dvi: eudc.texi
288 $(ENVADD) $(TEXI2DVI) ${srcdir}/eudc.texi
289
2f155bc2
GM
290../info/ebrowse: ebrowse.texi
291 cd $(srcdir); $(MAKEINFO) ebrowse.texi
292ebrowse.dvi: ebrowse.texi
293 $(ENVADD) $(TEXI2DVI) ${srcdir}/ebrowse.texi
294
db2672fe
EZ
295../info/woman: woman.texi
296 cd $(srcdir); $(MAKEINFO) woman.texi
297woman.dvi: woman.texi
298 $(ENVADD) $(TEXI2DVI) ${srcdir}/woman.texi
299
89205dcb
RS
300../info/org: org.texi
301 cd $(srcdir); $(MAKEINFO) org.texi
302org.dvi: org.texi
303 $(ENVADD) $(TEXI2DVI) ${srcdir}/org.texi
304
948a35c1
SM
305../info/url: url.texi
306 cd $(srcdir); $(MAKEINFO) url.texi
307url.dvi: url.texi
308 $(ENVADD) $(TEXI2DVI) ${srcdir}/url.texi
309
543951ab
EL
310../info/speedbar: speedbar.texi
311 cd $(srcdir); $(MAKEINFO) speedbar.texi
312speedbar.dvi: speedbar.texi
313 $(ENVADD) $(TEXI2DVI) ${srcdir}/speedbar.texi
82bb16f8 314
142941b8 315../info/tramp: tramp.texi trampver.texi
b1a2b924 316 cd $(srcdir); $(MAKEINFO) -D emacs tramp.texi
142941b8 317tramp.dvi: tramp.texi trampver.texi
d591a834
KG
318 $(ENVADD) $(TEXI2DVI) ${srcdir}/tramp.texi
319
7ed9159a
JY
320../info/ses: ses.texi
321 cd $(srcdir); $(MAKEINFO) ses.texi
322ses.dvi: ses.texi
323 $(ENVADD) $(TEXI2DVI) ${srcdir}/ses.texi
324
d5df5512
SJ
325../info/smtpmail: smtpmail.texi
326 cd $(srcdir); $(MAKEINFO) smtpmail.texi
327smtpmail.dvi: smtpmail.texi
328 $(ENVADD) $(TEXI2DVI) ${srcdir}/smtpmail.texi
329
3c15ca69
EZ
330../info/flymake: flymake.texi
331 cd $(srcdir); $(MAKEINFO) flymake.texi
332flymake.dvi: flymake.texi
333 $(ENVADD) $(TEXI2DVI) ${srcdir}/flymake.texi
334
b09bc6a4
RS
335../info/newsticker: newsticker.texi
336 cd $(srcdir); $(MAKEINFO) newsticker.texi
337newsticker.dvi: newsticker.texi
338 $(ENVADD) $(TEXI2DVI) ${srcdir}/newsticker.texi
339
ecabda0e
EZ
340../info/rcirc: rcirc.texi
341 cd $(srcdir); $(MAKEINFO) rcirc.texi
342rcirc.dvi: rcirc.texi
343 $(ENVADD) $(TEXI2DVI) ${srcdir}/rcirc.texi
344
597993cf
MB
345../info/erc: erc.texi
346 cd $(srcdir); $(MAKEINFO) erc.texi
347erc.dvi: erc.texi
348 $(ENVADD) $(TEXI2DVI) ${srcdir}/erc.texi
349
3ff8ce93 350mostlyclean:
8da1a051 351 rm -f *.log *.cp *.fn *.ky *.pg *.vr core *.tp *.core gnustmp.*
3ff8ce93
RS
352
353clean: mostlyclean
354 rm -f *.dvi
355
356distclean: clean
357
358maintainer-clean: distclean
8da1a051 359 rm -f *.aux *.cps *.fns *.kys *.pgs *.vrs *.toc
89205dcb 360 for file in $(INFO_TARGETS); do rm -f $${file}*; done
3ff8ce93
RS
361
362
363# Formerly this directory had texindex.c and getopt.c in it
364# and this makefile built them to make texindex.
365# That caused trouble because this is run entirely in the source directory.
366# Since we expect to get texi2dvi from elsewhere,
367# it is ok to expect texindex from elsewhere also.