Moved code around to minimize compiler warnings.
[emacs.git] / lispref / Makefile.in
blobc71ca8419090b8002d2efe733998a68cb6f4fc06
1 # Makefile for the GNU Emacs Lisp Reference Manual.
3 # 11 August 1990
5 # Redefine `TEX' if `tex' does not invoke plain TeX. For example:
6 # TEX=platex
8 TEX=tex
10 # Where the TeX macros are kept:
11 texmacrodir = /usr/local/lib/tex/macros
13 # Where the Emacs hierarchy lives ($EMACS in the INSTALL document for Emacs.)
14 # For example:
15 # emacslibdir = /usr/local/gnu/lib/emacs
17 # Directory where Emacs is installed, by default:
18 emacslibdir = /usr/local/emacs
20 # Unless you have a nonstandard Emacs installation, these shouldn't have to
21 # be changed.
22 prefix = /usr/local
23 infodir = ${prefix}/info
25 # The name of the manual:
27 VERSION=2.4
28 manual = elisp-manual-19-$(VERSION)
30 # Uncomment this line for permuted index.
31 # permuted_index = 1
33 # List of all the texinfo files in the manual:
35 srcs = elisp.texi back.texi \
36 abbrevs.texi anti.texi backups.texi locals.texi buffers.texi \
37 calendar.texi commands.texi compile.texi control.texi debugging.texi \
38 display.texi edebug.texi errors.texi eval.texi files.texi \
39 frames.texi functions.texi help.texi hooks.texi \
40 internals.texi intro.texi keymaps.texi lists.texi \
41 loading.texi macros.texi maps.texi markers.texi \
42 minibuf.texi modes.texi numbers.texi objects.texi \
43 os.texi positions.texi processes.texi searching.texi \
44 sequences.texi streams.texi strings.texi symbols.texi \
45 syntax.texi text.texi tips.texi variables.texi \
46 windows.texi \
47 index.unperm index.perm
49 .PHONY: elisp.dvi clean
51 elisp.dvi: $(srcs) index.texi texindex
52 # Avoid losing old contents of aux file entirely.
53 -mv elisp.aux elisp.oaux
54 # First shot to define xrefs:
55 $(TEX) elisp.texi
56 if [ a${permuted_index} != a ]; \
57 then \
58 ./permute-index; \
59 mv permuted.fns elisp.fns; \
60 else \
61 ./texindex elisp.??; \
63 $(TEX) elisp.texi
65 index.texi:
66 if [ a${permuted_index} != a ]; \
67 then \
68 ln -s index.perm index.texi; \
69 else \
70 ln -s index.unperm index.texi; \
73 # The info file is named `elisp'.
75 elisp: $(srcs) index.texi makeinfo
76 rm -f elisp-*
77 ./makeinfo elisp.texi
79 install: elisp elisp.dvi
80 mv elisp elisp-* $(infodir)
81 @echo also add the line for elisp to $(infodir)/dir.
83 installall: install
84 install -c texinfo.tex $(texmacrodir)
86 clean:
87 rm -f *.toc *.aux *.log *.cp *.cps *.fn *.fns *.tp *.tps \
88 *.vr *.vrs *.pg *.pgs *.ky *.kys
89 rm -f make.out core
90 rm -f makeinfo.o makeinfo getopt.o getopt1.o
91 rm -f texindex.o texindex index.texi
93 maintainer-clean: clean
94 rm -f elisp elisp-*
96 dist:
97 -mkdir temp
98 -mkdir temp/$(manual)
99 -ln README Makefile permute-index $(srcs) \
100 texinfo.tex getopt.c getopt1.c getopt.h \
101 elisp.dvi elisp.aux elisp.??s elisp elisp-[0-9] elisp-[0-9][0-9] temp/$(manual)
102 -rm -f temp/$(manual)/texindex.c temp/$(manual)/makeinfo.c
103 cp texindex.c makeinfo.c temp/$(manual)
104 (cd temp/$(manual); rm -f *~)
105 (cd temp; tar chf - $(manual)) | gzip > $(manual).tar.gz
106 -rm -rf temp
108 # Make two programs used in generating output from texinfo.
110 CFLAGS = -g
112 texindex: texindex.o
113 $(CC) -o $@ $(LDFLAGS) $(CFLAGS) $?
114 texindex.o: texindex.c
116 MAKEINFO_MAJOR = 1
117 MAKEINFO_MINOR = 0
118 MAKEINFO_FLAGS = -DMAKEINFO_MAJOR=$(MAKEINFO_MAJOR) -DMAKEINFO_MINOR=$(MAKEINFO_MINOR)
120 makeinfo: makeinfo.o getopt.o getopt1.o
121 $(CC) $(LDFLAGS) -o makeinfo makeinfo.o getopt.o getopt1.o
123 makeinfo.o: makeinfo.c
124 $(CC) -c $(CFLAGS) $(MAKEINFO_FLAGS) makeinfo.c