(elisp): Make this be the default target.
[emacs.git] / lispref / Makefile.in
blob52887e7ed410a56bd19358473f75534bdab72dba
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
9 MAKE=make
11 # Where the TeX macros are kept:
12 texmacrodir = /usr/local/lib/tex/macros
14 # Where the Emacs hierarchy lives ($EMACS in the INSTALL document for Emacs.)
15 # For example:
16 # emacslibdir = /usr/local/gnu/lib/emacs
18 # Directory where Emacs is installed, by default:
19 emacslibdir = /usr/local/emacs
21 # Unless you have a nonstandard Emacs installation, these shouldn't have to
22 # be changed.
23 prefix = /usr/local
24 infodir = ${prefix}/info
26 # The name of the manual:
28 VERSION=2.4
29 manual = elisp-manual-19-$(VERSION)
31 # Uncomment this line for permuted index.
32 # permuted_index = 1
34 # List of all the texinfo files in the manual:
36 srcs = elisp.texi back.texi \
37 abbrevs.texi anti.texi backups.texi locals.texi buffers.texi \
38 calendar.texi commands.texi compile.texi control.texi debugging.texi \
39 display.texi edebug.texi errors.texi eval.texi files.texi \
40 frames.texi functions.texi help.texi hooks.texi \
41 internals.texi intro.texi keymaps.texi lists.texi \
42 loading.texi macros.texi maps.texi markers.texi \
43 minibuf.texi modes.texi numbers.texi objects.texi \
44 os.texi positions.texi processes.texi searching.texi \
45 sequences.texi streams.texi strings.texi symbols.texi \
46 syntax.texi text.texi tips.texi variables.texi \
47 windows.texi \
48 index.unperm index.perm
50 .PHONY: elisp.dvi clean
52 # The info file is named `elisp'.
53 # We depend on makeinfo.c rather than makeinfo -- there's no need to rebuild
54 # everything just because makeinfo isn't part of the distribution.
56 elisp: $(srcs) index.texi makeinfo.c
57 $(MAKE) makeinfo
58 rm -f elisp-*
59 ./makeinfo elisp.texi
61 elisp.dvi: $(srcs) index.texi texindex
62 # Avoid losing old contents of aux file entirely.
63 -mv elisp.aux elisp.oaux
64 # First shot to define xrefs:
65 $(TEX) elisp.texi
66 if [ a${permuted_index} != a ]; \
67 then \
68 ./permute-index; \
69 mv permuted.fns elisp.fns; \
70 else \
71 ./texindex elisp.??; \
73 $(TEX) elisp.texi
75 index.texi:
76 if [ a${permuted_index} != a ]; \
77 then \
78 ln -s index.perm index.texi; \
79 else \
80 ln -s index.unperm index.texi; \
83 install: elisp
84 ./mkinstalldirs $(infodir)
85 cp elisp elisp-* $(infodir)
86 @echo also add the line for elisp to $(infodir)/dir.
88 installall: install
89 install -c texinfo.tex $(texmacrodir)
91 clean:
92 rm -f *.toc *.aux *.log *.cp *.cps *.fn *.fns *.tp *.tps \
93 *.vr *.vrs *.pg *.pgs *.ky *.kys
94 rm -f make.out core
95 rm -f makeinfo.o makeinfo getopt.o getopt1.o
96 rm -f texindex.o texindex index.texi
98 maintainer-clean: clean
99 rm -f elisp elisp-*
101 dist:
102 -mkdir temp
103 -mkdir temp/$(manual)
104 -ln README Makefile permute-index $(srcs) \
105 texinfo.tex getopt.c getopt1.c getopt.h \
106 elisp.dvi elisp.aux elisp.??s elisp elisp-[0-9] elisp-[0-9][0-9] temp/$(manual)
107 -(cd temp/$(manual); rm -f texindex.c makeinfo.c mkinstalldirs)
108 cp texindex.c makeinfo.c mkinstalldirs temp/$(manual)
109 (cd temp/$(manual); rm -f *~)
110 (cd temp; tar chf - $(manual)) | gzip > $(manual).tar.gz
111 -rm -rf temp
113 # Make two programs used in generating output from texinfo.
115 CFLAGS = -g
117 texindex: texindex.o
118 $(CC) -o $@ $(LDFLAGS) $(CFLAGS) $?
119 texindex.o: texindex.c
121 MAKEINFO_MAJOR = 1
122 MAKEINFO_MINOR = 0
123 MAKEINFO_FLAGS = -DMAKEINFO_MAJOR=$(MAKEINFO_MAJOR) -DMAKEINFO_MINOR=$(MAKEINFO_MINOR)
125 makeinfo: makeinfo.o getopt.o getopt1.o
126 $(CC) $(LDFLAGS) -o makeinfo makeinfo.o getopt.o getopt1.o
128 makeinfo.o: makeinfo.c
129 $(CC) -c $(CFLAGS) $(MAKEINFO_FLAGS) makeinfo.c