mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2024-12-27 10:54:40 +00:00
4eeb568b5d
($(infodir)/elisp): Don't chdir into $(srcdir), but add it to the include directories list via -I switch to makeinfo. (index.texi): Use cp if both hard and symbolic links fail.
169 lines
4.6 KiB
Makefile
169 lines
4.6 KiB
Makefile
# Makefile for the GNU Emacs Lisp Reference Manual.
|
|
|
|
# Copyright (C) 1990,1991,1992,1993,1994,1995,1996,1998,1999,2000,2001
|
|
# Free Software Foundation, Inc.
|
|
|
|
# This file is part of GNU Emacs.
|
|
|
|
# GNU Emacs is free software; you can redistribute it and/or modify
|
|
# it under the terms of the GNU General Public License as published by
|
|
# the Free Software Foundation; either version 2, or (at your option)
|
|
# any later version.
|
|
|
|
# GNU Emacs is distributed in the hope that it will be useful,
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
# GNU General Public License for more details.
|
|
|
|
# You should have received a copy of the GNU General Public License
|
|
# along with GNU Emacs; see the file COPYING. If not, write to
|
|
# the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
|
# Boston, MA 02111-1307, USA.
|
|
|
|
# Standard configure variables.
|
|
srcdir = @srcdir@
|
|
|
|
# Tell make where to find source files; this is needed for the makefiles.
|
|
VPATH=@srcdir@
|
|
|
|
infodir = $(srcdir)/../info
|
|
|
|
# Redefine `TEX' if `tex' does not invoke plain TeX. For example:
|
|
# TEX=platex
|
|
TEX=tex
|
|
SHELL=/bin/sh
|
|
INSTALL_INFO = install-info
|
|
MAKEINFO=makeinfo
|
|
|
|
# The environment variable and its value to add $(srcdir) to the path
|
|
# searched for TeX input files.
|
|
texinputdir = TEXINPUTS=$(srcdir):"$(TEXINPUTS)"
|
|
|
|
# The name of the manual:
|
|
VERSION=2.8
|
|
manual = elisp-manual-21-$(VERSION)
|
|
|
|
# Uncomment this line for permuted index.
|
|
# permuted_index = 1
|
|
|
|
# List of all the texinfo files in the manual:
|
|
|
|
srcs = \
|
|
$(srcdir)/abbrevs.texi \
|
|
$(srcdir)/advice.texi \
|
|
$(srcdir)/anti.texi \
|
|
$(srcdir)/back.texi \
|
|
$(srcdir)/backups.texi \
|
|
$(srcdir)/buffers.texi \
|
|
$(srcdir)/calendar.texi \
|
|
$(srcdir)/commands.texi \
|
|
$(srcdir)/compile.texi \
|
|
$(srcdir)/control.texi \
|
|
$(srcdir)/customize.texi \
|
|
$(srcdir)/debugging.texi \
|
|
$(srcdir)/display.texi \
|
|
$(srcdir)/edebug.texi \
|
|
$(srcdir)/elisp.texi \
|
|
$(srcdir)/errors.texi \
|
|
$(srcdir)/eval.texi \
|
|
$(srcdir)/files.texi \
|
|
$(srcdir)/frames.texi \
|
|
$(srcdir)/functions.texi \
|
|
$(srcdir)/hash.texi \
|
|
$(srcdir)/help.texi \
|
|
$(srcdir)/hooks.texi \
|
|
$(srcdir)/internals.texi \
|
|
$(srcdir)/intro.texi \
|
|
$(srcdir)/keymaps.texi \
|
|
$(srcdir)/lists.texi \
|
|
$(srcdir)/loading.texi \
|
|
$(srcdir)/locals.texi \
|
|
$(srcdir)/macros.texi \
|
|
$(srcdir)/maps.texi \
|
|
$(srcdir)/markers.texi \
|
|
$(srcdir)/minibuf.texi \
|
|
$(srcdir)/modes.texi \
|
|
$(srcdir)/nonascii.texi \
|
|
$(srcdir)/numbers.texi \
|
|
$(srcdir)/objects.texi \
|
|
$(srcdir)/os.texi \
|
|
$(srcdir)/positions.texi \
|
|
$(srcdir)/processes.texi \
|
|
$(srcdir)/searching.texi \
|
|
$(srcdir)/sequences.texi \
|
|
$(srcdir)/streams.texi \
|
|
$(srcdir)/strings.texi \
|
|
$(srcdir)/symbols.texi \
|
|
$(srcdir)/syntax.texi \
|
|
$(srcdir)/text.texi \
|
|
$(srcdir)/tips.texi \
|
|
$(srcdir)/variables.texi \
|
|
$(srcdir)/windows.texi \
|
|
$(srcdir)/index.unperm \
|
|
$(srcdir)/index.perm \
|
|
$(srcdir)/gpl.texi \
|
|
$(srcdir)/doclicense.texi
|
|
|
|
|
|
.PHONY: clean
|
|
|
|
# The info file is named `elisp'.
|
|
info: $(infodir)/elisp
|
|
|
|
$(infodir)/elisp: $(srcs) index.texi
|
|
$(MAKEINFO) -I. -I$(srcdir) $(srcdir)/elisp.texi -o $(infodir)/elisp
|
|
|
|
elisp.dvi: $(srcs) index.texi
|
|
# Avoid losing old contents of aux file entirely.
|
|
-mv elisp.aux elisp.oaux
|
|
# First shot to define xrefs.
|
|
$(texinputdir) $(TEX) $(srcdir)/elisp.texi
|
|
if [ a${permuted_index} != a ]; \
|
|
then \
|
|
$(srcdir)/permute-index; \
|
|
mv permuted.fns elisp.fns; \
|
|
texindex elisp.tp; \
|
|
else \
|
|
texindex elisp.??; \
|
|
fi
|
|
$(texinputdir) $(TEX) $(srcdir)/elisp.texi
|
|
|
|
index.texi:
|
|
if [ a${permuted_index} != a ]; \
|
|
then \
|
|
ln -s $(srcdir)/index.perm index.texi || ln $(srcdir)/index.perm index.texi || cp $(srcdir)/index.perm index.texi; \
|
|
else \
|
|
ln -s $(srcdir)/index.unperm index.texi || ln $(srcdir)/index.unperm index.texi || cp $(srcdir)/index.unperm index.texi; \
|
|
fi
|
|
|
|
install: elisp
|
|
$(srcdir)/mkinstalldirs $(infodir)
|
|
cp elisp elisp-* $(infodir)
|
|
${INSTALL_INFO} --info-dir=${infodir} ${infodir}/elisp
|
|
|
|
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 index.texi
|
|
|
|
distclean: clean
|
|
|
|
maintainer-clean: clean
|
|
rm -f elisp elisp-* elisp.dvi elisp.oaux
|
|
|
|
dist: elisp elisp.dvi
|
|
-rm -rf temp
|
|
-mkdir temp
|
|
-mkdir temp/$(manual)
|
|
-ln $(srcdir)/README $(srcdir)/configure.in $(srcdir)/configure \
|
|
$(srcdir)/Makefile.in $(srcdir)/permute-index $(srcs) \
|
|
$(srcdir)/../man/texinfo.tex \
|
|
elisp.dvi elisp.aux elisp.??s elisp elisp-[0-9] elisp-[0-9][0-9] \
|
|
temp/$(manual)
|
|
-(cd temp/$(manual); rm -f mkinstalldirs)
|
|
cp $(srcdir)/mkinstalldirs temp/$(manual)
|
|
(cd temp/$(manual); rm -f *~)
|
|
(cd temp; tar chf - $(manual)) | gzip > $(manual).tar.gz
|
|
-rm -rf temp
|