1 #### Makefile for documentation other than the Emacs manual.
3 # Copyright (C) 1994, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003,
4 # 2004, 2005, 2006, 2007, 2008, 2009, 2010
5 # Free Software Foundation, Inc.
7 # This file is part of GNU Emacs.
9 # GNU Emacs is free software: you can redistribute it and/or modify
10 # it under the terms of the GNU General Public License as published by
11 # the Free Software Foundation, either version 3 of the License, or
12 # (at your option) any later version.
14 # GNU Emacs is distributed in the hope that it will be useful,
15 # but WITHOUT ANY WARRANTY; without even the implied warranty of
16 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 # GNU General Public License for more details.
19 # You should have received a copy of the GNU General Public License
20 # along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
24 # Where to find the source code. $(srcdir) will be the man-aux
25 # subdirectory of the source tree. This is
26 # set by the configure script's `--srcdir' option.
29 # Tell make where to find source files; this is needed for the makefiles.
32 ## Where the output files go.
33 ## Note that the setfilename command in the .texi files assumes this.
36 # The makeinfo program is part of the Texinfo distribution.
37 # Use --force so that it generates output even if there are errors.
38 MAKEINFO
= makeinfo --force
40 # Also add new entries to INFO_FILES in the top-level Makefile.in.
55 $(infodir)/emacs-mime \
66 $(infodir)/mairix-el \
69 $(infodir)/newsticker \
70 $(infodir)/nxml-mode \
194 # The following rule does not work with all versions of `make'.
195 .SUFFIXES
: .texi .
dvi
199 ENVADD
= TEXINPUTS
="$(srcdir):$(TEXINPUTS)" MAKEINFO
="$(MAKEINFO) -I$(srcdir)"
202 info: $(INFO_TARGETS
)
205 mkdir
$@ ||
test -d
$@
211 # Note that all the Info targets build the Info files
212 # in srcdir. There is no provision for Info files
213 # to exist in the build directory.
214 # In a distribution of Emacs, the Info files should be up to date.
216 ## "short" target names for convenience, to just rebuild one manual.
217 ada-mode
: $(infodir)/ada-mode
218 $(infodir)/ada-mode
: ada-mode.texi
$(infodir)
219 cd
$(srcdir); $(MAKEINFO
) ada-mode.texi
220 ada-mode.
dvi: ada-mode.texi
221 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/ada-mode.texi
222 ada-mode.pdf
: ada-mode.texi
223 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/ada-mode.texi
225 auth
: $(infodir)/auth
226 $(infodir)/auth
: auth.texi
$(infodir)
227 cd
$(srcdir); $(MAKEINFO
) auth.texi
229 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/auth.texi
231 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/auth.texi
233 autotype
: $(infodir)/autotype
234 $(infodir)/autotype
: autotype.texi
$(infodir)
235 cd
$(srcdir); $(MAKEINFO
) autotype.texi
236 autotype.
dvi: autotype.texi
237 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/autotype.texi
238 autotype.pdf
: autotype.texi
239 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/autotype.texi
241 calc
: $(infodir)/calc
242 $(infodir)/calc
: calc.texi
$(infodir)
243 cd
$(srcdir); $(MAKEINFO
) calc.texi
245 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/calc.texi
247 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/calc.texi
249 ccmode
: $(infodir)/ccmode
250 $(infodir)/ccmode
: cc-mode.texi
$(infodir)
251 cd
$(srcdir); $(MAKEINFO
) cc-mode.texi
252 cc-mode.
dvi: cc-mode.texi
253 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/cc-mode.texi
254 cc-mode.pdf
: cc-mode.texi
255 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/cc-mode.texi
258 $(infodir)/cl
: cl.texi
$(infodir)
259 cd
$(srcdir); $(MAKEINFO
) cl.texi
261 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/cl.texi
263 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/cl.texi
265 dbus
: $(infodir)/dbus
266 $(infodir)/dbus
: dbus.texi
$(infodir)
267 cd
$(srcdir); $(MAKEINFO
) dbus.texi
269 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/dbus.texi
271 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/dbus.texi
273 dired-x
: $(infodir)/dired-x
274 $(infodir)/dired-x
: dired-x.texi
$(infodir)
275 cd
$(srcdir); $(MAKEINFO
) dired-x.texi
276 dired-x.
dvi: dired-x.texi
277 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/dired-x.texi
278 dired-x.pdf
: dired-x.texi
279 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/dired-x.texi
281 ebrowse
: $(infodir)/ebrowse
282 $(infodir)/ebrowse
: ebrowse.texi
$(infodir)
283 cd
$(srcdir); $(MAKEINFO
) ebrowse.texi
284 ebrowse.
dvi: ebrowse.texi
285 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/ebrowse.texi
286 ebrowse.pdf
: ebrowse.texi
287 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/ebrowse.texi
290 $(infodir)/ede
: ede.texi
$(infodir)
291 cd
$(srcdir); $(MAKEINFO
) ede.texi
293 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/ede.texi
295 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/ede.texi
297 ediff
: $(infodir)/ediff
298 $(infodir)/ediff
: ediff.texi
$(infodir)
299 cd
$(srcdir); $(MAKEINFO
) ediff.texi
300 ediff.
dvi: ediff.texi
301 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/ediff.texi
302 ediff.pdf
: ediff.texi
303 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/ediff.texi
306 $(infodir)/edt
: edt.texi
$(infodir)
307 cd
$(srcdir); $(MAKEINFO
) edt.texi
309 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/edt.texi
311 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/edt.texi
313 eieio
: $(infodir)/eieio
314 $(infodir)/eieio
: eieio.texi
$(infodir)
315 cd
$(srcdir); $(MAKEINFO
) eieio.texi
316 eieio.
dvi: eieio.texi
317 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/eieio.texi
318 eieio.pdf
: eieio.texi
319 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/eieio.texi
321 emacs-mime
: $(infodir)/emacs-mime
322 $(infodir)/emacs-mime
: emacs-mime.texi
$(infodir)
323 cd
$(srcdir); $(MAKEINFO
) --enable-encoding emacs-mime.texi
324 emacs-mime.
dvi: emacs-mime.texi
325 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/emacs-mime.texi
326 emacs-mime.pdf
: emacs-mime.texi
327 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/emacs-mime.texi
330 $(infodir)/epa
: epa.texi
$(infodir)
331 cd
$(srcdir); $(MAKEINFO
) epa.texi
333 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/epa.texi
335 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/epa.texi
338 $(infodir)/erc
: erc.texi
$(infodir)
339 cd
$(srcdir); $(MAKEINFO
) erc.texi
341 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/erc.texi
343 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/erc.texi
345 eshell
: $(infodir)/eshell
346 $(infodir)/eshell
: eshell.texi
$(infodir)
347 cd
$(srcdir); $(MAKEINFO
) eshell.texi
348 eshell.
dvi: eshell.texi
349 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/eshell.texi
350 eshell.pdf
: eshell.texi
351 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/eshell.texi
353 eudc
: $(infodir)/eudc
354 $(infodir)/eudc
: eudc.texi
355 cd
$(srcdir); $(MAKEINFO
) eudc.texi
357 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/eudc.texi
359 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/eudc.texi
361 efaq
: $(infodir)/efaq
362 $(infodir)/efaq
: faq.texi
$(infodir)
363 cd
$(srcdir); $(MAKEINFO
) faq.texi
365 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/faq.texi
367 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/faq.texi
369 flymake
: $(infodir)/flymake
370 $(infodir)/flymake
: flymake.texi
371 cd
$(srcdir); $(MAKEINFO
) flymake.texi
372 flymake.
dvi: flymake.texi
373 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/flymake.texi
374 flymake.pdf
: flymake.texi
375 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/flymake.texi
377 forms
: $(infodir)/forms
378 $(infodir)/forms
: forms.texi
$(infodir)
379 cd
$(srcdir); $(MAKEINFO
) forms.texi
380 forms.
dvi: forms.texi
381 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/forms.texi
382 forms.pdf
: forms.texi
383 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/forms.texi
385 # gnus/message/emacs-mime/sieve/pgg are part of Gnus:
386 gnus
: $(infodir)/gnus
387 $(infodir)/gnus
: gnus.texi gnus-faq.texi
$(infodir)
388 cd
$(srcdir); $(MAKEINFO
) gnus.texi
389 gnus.
dvi: gnus.texi gnus-faq.texi
390 sed
-e
'/@iflatex/,/@end iflatex/d' ${srcdir}/gnus.texi
> gnustmp.texi
391 $(ENVADD
) $(TEXI2DVI
) gnustmp.texi
392 cp gnustmp.
dvi $*.
dvi
394 gnus.pdf
: gnus.texi gnus-faq.texi
395 sed
-e
'/@iflatex/,/@end iflatex/d' ${srcdir}/gnus.texi
> gnustmp.texi
396 $(ENVADD
) $(TEXI2PDF
) gnustmp.texi
400 # This is produced with --no-split to avoid making files whose
401 # names clash on DOS 8+3 filesystems
402 idlwave
: $(infodir)/idlwave
403 $(infodir)/idlwave
: idlwave.texi
$(infodir)
404 cd
$(srcdir); $(MAKEINFO
) --no-split idlwave.texi
405 idlwave.
dvi: idlwave.texi
406 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/idlwave.texi
407 idlwave.pdf
: idlwave.texi
408 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/idlwave.texi
410 # The following target uses an explicit -o switch to work around
411 # the @setfilename directive in info.texi, which is required for
412 # the Texinfo distribution.
413 ###info : $(infodir)/info # circular!
414 $(infodir)/info: info.texi
$(infodir)
415 cd
$(srcdir); $(MAKEINFO
) --no-split
info.texi
-o
$@
417 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/info.texi
419 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/info.texi
421 mairix-el
: $(infodir)/mairix-el
422 $(infodir)/mairix-el
: mairix-el.texi
$(infodir)
423 cd
$(srcdir); $(MAKEINFO
) mairix-el.texi
424 mairix-el.
dvi: mairix-el.texi
425 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/mairix-el.texi
426 mairix-el.pdf
: mairix-el.texi
427 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/mairix-el.texi
429 message
: $(infodir)/message
430 $(infodir)/message
: message.texi
$(infodir)
431 cd
$(srcdir); $(MAKEINFO
) message.texi
432 message.
dvi: message.texi
433 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/message.texi
434 message.pdf
: message.texi
435 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/message.texi
437 mh-e
: $(infodir)/mh-e
438 $(infodir)/mh-e
: mh-e.texi
$(infodir)
439 cd
$(srcdir); $(MAKEINFO
) mh-e.texi
441 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/mh-e.texi
443 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/mh-e.texi
445 newsticker
: $(infodir)/newsticker
446 $(infodir)/newsticker
: newsticker.texi
$(infodir)
447 cd
$(srcdir); $(MAKEINFO
) newsticker.texi
448 newsticker.
dvi: newsticker.texi
449 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/newsticker.texi
450 newsticker.pdf
: newsticker.texi
451 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/newsticker.texi
453 nxml-mode
: $(infodir)/nxml-mode
454 $(infodir)/nxml-mode
: nxml-mode.texi
$(infodir)
455 cd
$(srcdir); $(MAKEINFO
) nxml-mode.texi
456 nxml-mode.
dvi: nxml-mode.texi
457 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/nxml-mode.texi
458 nxml-mode.pdf
: nxml-mode.texi
459 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/nxml-mode.texi
462 $(infodir)/org
: org.texi
$(infodir)
463 cd
$(srcdir); $(MAKEINFO
) org.texi
465 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/org.texi
467 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/org.texi
469 pcl-cvs
: $(infodir)/pcl-cvs
470 $(infodir)/pcl-cvs
: pcl-cvs.texi
$(infodir)
471 cd
$(srcdir); $(MAKEINFO
) pcl-cvs.texi
472 pcl-cvs.
dvi: pcl-cvs.texi
473 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/pcl-cvs.texi
474 pcl-cvs.pdf
: pcl-cvs.texi
475 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/pcl-cvs.texi
478 $(infodir)/pgg
: pgg.texi
$(infodir)
479 cd
$(srcdir); $(MAKEINFO
) pgg.texi
481 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/pgg.texi
483 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/pgg.texi
485 rcirc
: $(infodir)/rcirc
486 $(infodir)/rcirc
: rcirc.texi
$(infodir)
487 cd
$(srcdir); $(MAKEINFO
) rcirc.texi
488 rcirc.
dvi: rcirc.texi
489 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/rcirc.texi
490 rcirc.pdf
: rcirc.texi
491 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/rcirc.texi
493 reftex
: $(infodir)/reftex
494 $(infodir)/reftex
: reftex.texi
$(infodir)
495 cd
$(srcdir); $(MAKEINFO
) reftex.texi
496 reftex.
dvi: reftex.texi
497 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/reftex.texi
498 reftex.pdf
: reftex.texi
499 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/reftex.texi
501 remember
: $(infodir)/remember
502 $(infodir)/remember
: remember.texi
$(infodir)
503 cd
$(srcdir); $(MAKEINFO
) remember.texi
504 remember.
dvi: remember.texi
505 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/remember.texi
506 remember.pdf
: remember.texi
507 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/remember.texi
509 sasl
: $(infodir)/sasl
510 $(infodir)/sasl
: sasl.texi
$(infodir)
511 cd
$(srcdir); $(MAKEINFO
) sasl.texi
513 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/sasl.texi
515 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/sasl.texi
518 $(infodir)/sc
: sc.texi
$(infodir)
519 cd
$(srcdir); $(MAKEINFO
) sc.texi
521 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/sc.texi
523 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/sc.texi
525 semantic
: $(infodir)/semantic
526 $(infodir)/semantic
: semantic.texi sem-user.texi
$(infodir)
527 cd
$(srcdir); $(MAKEINFO
) semantic.texi
528 semantic.
dvi: semantic.texi
529 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/semantic.texi
530 semantic.pdf
: semantic.texi
531 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/semantic.texi
534 $(infodir)/ses
: ses.texi
$(infodir)
535 cd
$(srcdir); $(MAKEINFO
) ses.texi
537 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/ses.texi
539 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/ses.texi
541 sieve
: $(infodir)/sieve
542 $(infodir)/sieve
: sieve.texi
$(infodir)
543 cd
$(srcdir); $(MAKEINFO
) sieve.texi
544 sieve.
dvi: sieve.texi
545 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/sieve.texi
546 sieve.pdf
: sieve.texi
547 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/sieve.texi
549 smtpmail
: $(infodir)/smtpmail
550 $(infodir)/smtpmail
: smtpmail.texi
$(infodir)
551 cd
$(srcdir); $(MAKEINFO
) smtpmail.texi
552 smtpmail.
dvi: smtpmail.texi
553 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/smtpmail.texi
554 smtpmail.pdf
: smtpmail.texi
555 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/smtpmail.texi
557 speedbar
: $(infodir)/speedbar
558 $(infodir)/speedbar
: speedbar.texi
$(infodir)
559 cd
$(srcdir); $(MAKEINFO
) speedbar.texi
560 speedbar.
dvi: speedbar.texi
561 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/speedbar.texi
562 speedbar.pdf
: speedbar.texi
563 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/speedbar.texi
565 tramp
: $(infodir)/tramp
566 $(infodir)/tramp
: tramp.texi trampver.texi
$(infodir)
567 cd
$(srcdir); $(MAKEINFO
) -D emacs tramp.texi
568 tramp.
dvi: tramp.texi trampver.texi
569 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/tramp.texi
570 tramp.pdf
: tramp.texi trampver.texi
571 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/tramp.texi
574 $(infodir)/url
: url.texi
$(infodir)
575 cd
$(srcdir); $(MAKEINFO
) url.texi
577 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/url.texi
579 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/url.texi
582 $(infodir)/vip
: vip.texi
$(infodir)
583 cd
$(srcdir); $(MAKEINFO
) vip.texi
585 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/vip.texi
587 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/vip.texi
589 viper
: $(infodir)/viper
590 $(infodir)/viper
: viper.texi
$(infodir)
591 cd
$(srcdir); $(MAKEINFO
) viper.texi
592 viper.
dvi: viper.texi
593 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/viper.texi
594 viper.pdf
: viper.texi
595 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/viper.texi
597 widget
: $(infodir)/widget
598 $(infodir)/widget
: widget.texi
$(infodir)
599 cd
$(srcdir); $(MAKEINFO
) widget.texi
600 widget.
dvi: widget.texi
601 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/widget.texi
602 widget.pdf
: widget.texi
603 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/widget.texi
605 woman
: $(infodir)/woman
606 $(infodir)/woman
: woman.texi
$(infodir)
607 cd
$(srcdir); $(MAKEINFO
) woman.texi
608 woman.
dvi: woman.texi
609 $(ENVADD
) $(TEXI2DVI
) ${srcdir}/woman.texi
610 woman.pdf
: woman.texi
611 $(ENVADD
) $(TEXI2PDF
) ${srcdir}/woman.texi
615 rm -f
*.aux
*.log
*.cp
*.cps
*.fn
*.fns
*.ky
*.kys \
616 *.op
*.ops
*.pg
*.pgs
*.tp
*.tps
*.vr
*.vrs
620 rm -f
$(DVI_TARGETS
) $(PDF_TARGETS
)
625 maintainer-clean
: distclean
626 for file in
$(INFO_TARGETS
); do \
627 rm -f
$${file} $${file}-[1-9] $${file}-[1-9][0-9]; \
630 ### Makefile ends here