Commit | Line | Data |
---|---|---|
3ff8ce93 RS |
1 | #### Makefile for the Emacs Manual and other documentation. |
2 | ||
3 | # Where to find the source code. The source code for Emacs's C kernel is | |
4 | # expected to be in ${srcdir}/src, and the source code for Emacs's | |
5 | # utility programs is expected to be in ${srcdir}/lib-src. This is | |
6 | # set by the configure script's `--srcdir' option. | |
7 | srcdir=@srcdir@ | |
8 | ||
9 | # Tell make where to find source files; this is needed for the makefiles. | |
10 | VPATH=@srcdir@ | |
11 | ||
12 | ||
13 | # The makeinfo program is part of the Texinfo distribution. | |
14 | MAKEINFO = makeinfo | |
0aa97803 | 15 | INFO_TARGETS = ../info/emacs ../info/ccmode ../info/cl ../info/dired-x \ |
40bb1f49 | 16 | ../info/ediff ../info/forms ../info/gnus ../info/info \ |
8dab271c | 17 | ../info/mh-e ../info/sc ../info/vip ../info/viper |
40bb1f49 RS |
18 | DVI_TARGETS = emacs.dvi cc-mode.dvi cl.dvi dired-x.dvi ediff.dvi forms.dvi \ |
19 | gnus.dvi mh-e.dvi sc.dvi vip.dvi viper.dvi | |
3ff8ce93 RS |
20 | INFOSOURCES = info.texi info-stnd.texi |
21 | ||
22 | # The following rule does not work with all versions of `make'. | |
23 | .SUFFIXES: .texi .dvi | |
24 | .texi.dvi: | |
25 | texi2dvi $< | |
26 | ||
27 | TEXI2DVI = texi2dvi | |
28 | ||
29 | EMACSSOURCES= \ | |
30 | ${srcdir}/emacs.texi \ | |
31 | ${srcdir}/screen.texi \ | |
32 | ${srcdir}/commands.texi \ | |
33 | ${srcdir}/entering.texi \ | |
34 | ${srcdir}/basic.texi \ | |
35 | ${srcdir}/mini.texi \ | |
36 | ${srcdir}/m-x.texi \ | |
37 | ${srcdir}/help.texi \ | |
38 | ${srcdir}/mark.texi \ | |
39 | ${srcdir}/killing.texi \ | |
40 | ${srcdir}/regs.texi \ | |
41 | ${srcdir}/display.texi \ | |
42 | ${srcdir}/search.texi \ | |
43 | ${srcdir}/fixit.texi \ | |
44 | ${srcdir}/files.texi \ | |
45 | ${srcdir}/buffers.texi \ | |
46 | ${srcdir}/windows.texi \ | |
47 | ${srcdir}/frames.texi \ | |
48 | ${srcdir}/major.texi \ | |
49 | ${srcdir}/indent.texi \ | |
50 | ${srcdir}/text.texi \ | |
51 | ${srcdir}/programs.texi \ | |
52 | ${srcdir}/building.texi \ | |
53 | ${srcdir}/abbrevs.texi \ | |
54 | ${srcdir}/picture.texi \ | |
55 | ${srcdir}/sending.texi \ | |
56 | ${srcdir}/rmail.texi \ | |
57 | ${srcdir}/dired.texi \ | |
58 | ${srcdir}/calendar.texi \ | |
59 | ${srcdir}/misc.texi \ | |
60 | ${srcdir}/custom.texi \ | |
61 | ${srcdir}/trouble.texi \ | |
62 | ${srcdir}/cmdargs.texi \ | |
63 | ${srcdir}/anti.texi \ | |
64 | ${srcdir}/gnu.texi \ | |
65 | ${srcdir}/gnu1.texi \ | |
66 | ${srcdir}/glossary.texi | |
67 | ||
68 | info: $(INFO_TARGETS) | |
69 | ||
70 | dvi: $(DVI_TARGETS) | |
71 | ||
e8edd7c5 RS |
72 | # Note that all the Info targets build the Info files |
73 | # in srcdir. There is no provision for Info files | |
74 | # to exist in the build directory. | |
75 | # In a distribution of Emacs, the Info files should be up to date. | |
76 | ||
3ff8ce93 | 77 | ../info/info: ${INFOSOURCES} |
b9aed9ca | 78 | cd $(srcdir); $(MAKEINFO) --no-split info.texi |
3ff8ce93 RS |
79 | |
80 | info.dvi: ${INFOSOURCES} | |
e8edd7c5 | 81 | TEXINPUTS="$(srcdir) $(TEXINPUTS)"; $(TEXI2DVI) ${srcdir}/info.texi |
3ff8ce93 RS |
82 | |
83 | ../info/emacs: ${EMACSSOURCES} | |
b9aed9ca | 84 | cd $(srcdir); $(MAKEINFO) emacs.texi |
3ff8ce93 RS |
85 | |
86 | emacs.dvi: ${EMACSSOURCES} | |
e8edd7c5 | 87 | TEXINPUTS="$(srcdir) $(TEXINPUTS)"; $(TEXI2DVI) ${srcdir}/emacs.texi |
3ff8ce93 | 88 | |
0aa97803 | 89 | ../info/ccmode: cc-mode.texi |
b9aed9ca | 90 | cd $(srcdir); $(MAKEINFO) cc-mode.texi |
40bb1f49 | 91 | cc-mode.dvi: cc-mode.texi |
e8edd7c5 | 92 | TEXINPUTS="$(srcdir) $(TEXINPUTS)"; $(TEXI2DVI) ${srcdir}/cc-mode.texi |
40bb1f49 | 93 | |
3ff8ce93 | 94 | ../info/cl: cl.texi |
b9aed9ca | 95 | cd $(srcdir); $(MAKEINFO) cl.texi |
3ff8ce93 | 96 | cl.dvi: cl.texi |
e8edd7c5 | 97 | TEXINPUTS="$(srcdir) $(TEXINPUTS)"; $(TEXI2DVI) ${srcdir}/cl.texi |
3ff8ce93 RS |
98 | |
99 | ../info/dired-x: dired-x.texi | |
b9aed9ca | 100 | cd $(srcdir); $(MAKEINFO) dired-x.texi |
3ff8ce93 | 101 | dired-x.dvi: dired-x.texi |
e8edd7c5 | 102 | TEXINPUTS="$(srcdir) $(TEXINPUTS)"; $(TEXI2DVI) ${srcdir}/dired-x.texi |
3ff8ce93 | 103 | |
11022425 | 104 | ../info/ediff: ediff.texi |
b9aed9ca | 105 | cd $(srcdir); $(MAKEINFO) ediff.texi |
11022425 | 106 | ediff.dvi: ediff.texi |
e8edd7c5 | 107 | TEXINPUTS="$(srcdir) $(TEXINPUTS)"; $(TEXI2DVI) ${srcdir}/ediff.texi |
11022425 | 108 | |
3ff8ce93 | 109 | ../info/forms: forms.texi |
b9aed9ca | 110 | cd $(srcdir); $(MAKEINFO) forms.texi |
3ff8ce93 | 111 | forms.dvi: forms.texi |
e8edd7c5 | 112 | TEXINPUTS="$(srcdir) $(TEXINPUTS)"; $(TEXI2DVI) ${srcdir}/forms.texi |
3ff8ce93 | 113 | |
f32cdadd | 114 | ../info/mh-e: mh-e.texi |
b9aed9ca | 115 | cd $(srcdir); $(MAKEINFO) mh-e.texi |
f32cdadd | 116 | mh-e.dvi: mh-e.texi |
e8edd7c5 | 117 | TEXINPUTS="$(srcdir) $(TEXINPUTS)"; $(TEXI2DVI) ${srcdir}/mh-e.texi |
f32cdadd | 118 | |
3ff8ce93 | 119 | ../info/sc: sc.texi |
b9aed9ca | 120 | cd $(srcdir); $(MAKEINFO) sc.texi |
3ff8ce93 | 121 | sc.dvi: sc.texi |
e8edd7c5 | 122 | TEXINPUTS="$(srcdir) $(TEXINPUTS)"; $(TEXI2DVI) ${srcdir}/sc.texi |
3ff8ce93 RS |
123 | |
124 | ../info/vip: vip.texi | |
b9aed9ca | 125 | cd $(srcdir); $(MAKEINFO) vip.texi |
3ff8ce93 | 126 | vip.dvi: vip.texi |
e8edd7c5 | 127 | TEXINPUTS="$(srcdir) $(TEXINPUTS)"; $(TEXI2DVI) ${srcdir}/vip.texi |
3ff8ce93 RS |
128 | |
129 | ../info/gnus: gnus.texi | |
b9aed9ca | 130 | cd $(srcdir); $(MAKEINFO) gnus.texi |
3ff8ce93 | 131 | gnus.dvi: gnus.texi |
e8edd7c5 | 132 | TEXINPUTS="$(srcdir) $(TEXINPUTS)"; $(TEXI2DVI) ${srcdir}/gnus.texi |
3ff8ce93 RS |
133 | |
134 | ../etc/GNU: gnu1.texi gnu.texi | |
135 | makeinfo --no-headers -o ../etc/GNU gnu1.texi | |
136 | ||
8dab271c | 137 | ../info/viper: viper.texi viper-cmd.texi |
b9aed9ca | 138 | cd $(srcdir); $(MAKEINFO) viper.texi |
8dab271c | 139 | viper.dvi: viper.texi viper-cmd.texi |
e8edd7c5 | 140 | TEXINPUTS="$(srcdir) $(TEXINPUTS)"; $(TEXI2DVI) ${srcdir}/viper.texi |
8dab271c | 141 | |
3ff8ce93 RS |
142 | mostlyclean: |
143 | rm -f *.log *.cp *.fn *.ky *.pg *.vr core | |
144 | ||
145 | clean: mostlyclean | |
146 | rm -f *.dvi | |
147 | ||
148 | distclean: clean | |
149 | ||
150 | maintainer-clean: distclean | |
151 | rm -f *.aux *.cps *.fns *.kys *.pgs *.vrs | |
152 | # Don't delete these, because they are outside the current directory. | |
153 | # for file in $(INFO_TARGETS); do rm -f $${file}*; done | |
154 | ||
155 | ||
156 | # Formerly this directory had texindex.c and getopt.c in it | |
157 | # and this makefile built them to make texindex. | |
158 | # That caused trouble because this is run entirely in the source directory. | |
159 | # Since we expect to get texi2dvi from elsewhere, | |
160 | # it is ok to expect texindex from elsewhere also. |