mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2024-12-17 10:06:13 +00:00
130 lines
3.5 KiB
Makefile
130 lines
3.5 KiB
Makefile
# Makefile for the GNU Emacs Lisp Reference Manual.
|
|
#
|
|
# 11 August 1990
|
|
|
|
# Redefine `TEX' if `tex' does not invoke plain TeX. For example:
|
|
# TEX=platex
|
|
|
|
TEX=tex
|
|
MAKE=make
|
|
|
|
# Where the TeX macros are kept:
|
|
texmacrodir = /usr/local/lib/tex/macros
|
|
|
|
# Where the Emacs hierarchy lives ($EMACS in the INSTALL document for Emacs.)
|
|
# For example:
|
|
# emacslibdir = /usr/local/gnu/lib/emacs
|
|
|
|
# Directory where Emacs is installed, by default:
|
|
emacslibdir = /usr/local/emacs
|
|
|
|
# Unless you have a nonstandard Emacs installation, these shouldn't have to
|
|
# be changed.
|
|
prefix = /usr/local
|
|
infodir = ${prefix}/info
|
|
|
|
# The name of the manual:
|
|
|
|
VERSION=2.4.2
|
|
manual = elisp-manual-19-$(VERSION)
|
|
|
|
# Uncomment this line for permuted index.
|
|
# permuted_index = 1
|
|
|
|
# List of all the texinfo files in the manual:
|
|
|
|
srcs = elisp.texi back.texi \
|
|
abbrevs.texi anti.texi backups.texi locals.texi buffers.texi \
|
|
calendar.texi commands.texi compile.texi control.texi debugging.texi \
|
|
display.texi edebug.texi errors.texi eval.texi files.texi \
|
|
frames.texi functions.texi help.texi hooks.texi \
|
|
internals.texi intro.texi keymaps.texi lists.texi \
|
|
loading.texi macros.texi maps.texi markers.texi \
|
|
minibuf.texi modes.texi numbers.texi objects.texi \
|
|
os.texi positions.texi processes.texi searching.texi \
|
|
sequences.texi streams.texi strings.texi symbols.texi \
|
|
syntax.texi text.texi tips.texi variables.texi \
|
|
windows.texi \
|
|
index.unperm index.perm
|
|
|
|
.PHONY: elisp.dvi clean
|
|
|
|
# The info file is named `elisp'.
|
|
# We depend on makeinfo.c rather than makeinfo -- there's no need to rebuild
|
|
# everything just because makeinfo isn't part of the distribution.
|
|
|
|
elisp: $(srcs) index.texi makeinfo.c
|
|
$(MAKE) makeinfo
|
|
rm -f elisp-*
|
|
./makeinfo elisp.texi
|
|
|
|
elisp.dvi: $(srcs) index.texi texindex
|
|
# Avoid losing old contents of aux file entirely.
|
|
-mv elisp.aux elisp.oaux
|
|
# First shot to define xrefs:
|
|
$(TEX) elisp.texi
|
|
if [ a${permuted_index} != a ]; \
|
|
then \
|
|
./permute-index; \
|
|
mv permuted.fns elisp.fns; \
|
|
else \
|
|
./texindex elisp.??; \
|
|
fi
|
|
$(TEX) elisp.texi
|
|
|
|
index.texi:
|
|
if [ a${permuted_index} != a ]; \
|
|
then \
|
|
ln -s index.perm index.texi; \
|
|
else \
|
|
ln -s index.unperm index.texi; \
|
|
fi
|
|
|
|
install: elisp
|
|
./mkinstalldirs $(infodir)
|
|
cp elisp elisp-* $(infodir)
|
|
@echo also add the line for elisp to $(infodir)/dir.
|
|
|
|
installall: install
|
|
install -c texinfo.tex $(texmacrodir)
|
|
|
|
clean:
|
|
rm -f *.toc *.aux *.log *.cp *.cps *.fn *.fns *.tp *.tps \
|
|
*.vr *.vrs *.pg *.pgs *.ky *.kys
|
|
rm -f make.out core
|
|
rm -f makeinfo.o makeinfo getopt.o getopt1.o
|
|
rm -f texindex.o texindex index.texi
|
|
|
|
maintainer-clean: clean
|
|
rm -f elisp elisp-*
|
|
|
|
dist:
|
|
-mkdir temp
|
|
-mkdir temp/$(manual)
|
|
-ln README Makefile permute-index $(srcs) \
|
|
texinfo.tex getopt.c getopt1.c getopt.h \
|
|
elisp.dvi elisp.aux elisp.??s elisp elisp-[0-9] elisp-[0-9][0-9] temp/$(manual)
|
|
-(cd temp/$(manual); rm -f texindex.c makeinfo.c mkinstalldirs)
|
|
cp texindex.c makeinfo.c mkinstalldirs temp/$(manual)
|
|
(cd temp/$(manual); rm -f *~)
|
|
(cd temp; tar chf - $(manual)) | gzip > $(manual).tar.gz
|
|
-rm -rf temp
|
|
|
|
# Make two programs used in generating output from texinfo.
|
|
|
|
CFLAGS = -g
|
|
|
|
texindex: texindex.o
|
|
$(CC) -o $@ $(LDFLAGS) $(CFLAGS) $?
|
|
texindex.o: texindex.c
|
|
|
|
MAKEINFO_MAJOR = 1
|
|
MAKEINFO_MINOR = 0
|
|
MAKEINFO_FLAGS = -DMAKEINFO_MAJOR=$(MAKEINFO_MAJOR) -DMAKEINFO_MINOR=$(MAKEINFO_MINOR)
|
|
|
|
makeinfo: makeinfo.o getopt.o getopt1.o
|
|
$(CC) $(LDFLAGS) -o makeinfo makeinfo.o getopt.o getopt1.o
|
|
|
|
makeinfo.o: makeinfo.c
|
|
$(CC) -c $(CFLAGS) $(MAKEINFO_FLAGS) makeinfo.c
|