#### Makefile for the Emacs Manual # Copyright (C) 1994, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, # 2004, 2005, 2006, 2007, 2008 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 3, 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., 51 Franklin Street, Fifth Floor, # Boston, MA 02110-1301, USA. # Where to find the source code. $(srcdir) will be the man # subdirectory of the source tree. This is # set by the configure script's `--srcdir' option. srcdir=@srcdir@ top_srcdir=@top_srcdir@ # Tell make where to find source files; this is needed for the makefiles. VPATH=@srcdir@ ## Where the output files go. ## Note that the setfilename command in the .texi files assumes this. infodir=../../info # The makeinfo program is part of the Texinfo distribution. # Use --force so that it generates output even if there are errors. MAKEINFO = makeinfo --force INFO_TARGETS = $(infodir)/emacs DVI_TARGETS = emacs.dvi TEXI2DVI = texi2dvi # The following rule does not work with all versions of `make'. .SUFFIXES: .texi .dvi .texi.dvi: $(TEXI2DVI) $< ENVADD = TEXINPUTS="$(srcdir):$(TEXINPUTS)" MAKEINFO="$(MAKEINFO) -I$(srcdir)" EMACS_XTRA=\ $(srcdir)/arevert-xtra.texi \ $(srcdir)/cal-xtra.texi \ $(srcdir)/dired-xtra.texi \ $(srcdir)/picture-xtra.texi \ $(srcdir)/emerge-xtra.texi \ $(srcdir)/vc-xtra.texi \ $(srcdir)/vc1-xtra.texi \ $(srcdir)/vc2-xtra.texi \ $(srcdir)/fortran-xtra.texi \ $(srcdir)/msdog-xtra.texi EMACSSOURCES= \ ${srcdir}/emacs.texi \ ${srcdir}/doclicense.texi \ ${srcdir}/gpl.texi \ ${srcdir}/screen.texi \ ${srcdir}/commands.texi \ ${srcdir}/entering.texi \ ${srcdir}/basic.texi \ ${srcdir}/mini.texi \ ${srcdir}/m-x.texi \ ${srcdir}/help.texi \ ${srcdir}/mark.texi \ ${srcdir}/killing.texi \ ${srcdir}/regs.texi \ ${srcdir}/display.texi \ ${srcdir}/search.texi \ ${srcdir}/fixit.texi \ ${srcdir}/files.texi \ ${srcdir}/buffers.texi \ ${srcdir}/windows.texi \ ${srcdir}/frames.texi \ ${srcdir}/mule.texi \ ${srcdir}/major.texi \ ${srcdir}/indent.texi \ ${srcdir}/text.texi \ ${srcdir}/programs.texi \ ${srcdir}/building.texi \ ${srcdir}/maintaining.texi \ ${srcdir}/abbrevs.texi \ ${srcdir}/sending.texi \ ${srcdir}/rmail.texi \ ${srcdir}/dired.texi \ ${srcdir}/calendar.texi \ ${srcdir}/misc.texi \ ${srcdir}/custom.texi \ ${srcdir}/trouble.texi \ ${srcdir}/cmdargs.texi \ ${srcdir}/xresources.texi \ ${srcdir}/anti.texi \ ${srcdir}/macos.texi \ ${srcdir}/msdog.texi \ ${srcdir}/gnu.texi \ ${srcdir}/glossary.texi \ ${srcdir}/ack.texi \ ${srcdir}/kmacro.texi \ $(EMACS_XTRA) info: $(infodir) $(INFO_TARGETS) $(infodir): mkdir $@ dvi: $(DVI_TARGETS) # Note that all the Info targets build the Info files # in srcdir. There is no provision for Info files # to exist in the build directory. # In a distribution of Emacs, the Info files should be up to date. emacs : $(infodir)/emacs $(infodir)/emacs: ${EMACSSOURCES} cd $(srcdir); $(MAKEINFO) emacs.texi emacs.dvi: ${EMACSSOURCES} $(ENVADD) $(TEXI2DVI) ${srcdir}/emacs.texi emacs-xtra.dvi: emacs-xtra.texi $(EMACS_XTRA) $(ENVADD) $(TEXI2DVI) ${srcdir}/emacs-xtra.texi mostlyclean: rm -f *.log *.cp *.fn *.ky *.op *.ops *.pg *.vr core *.tp *.core rm -f *.aux *.cps *.fns *.kys *.pgs *.vrs *.toc clean: mostlyclean rm -f *.dvi distclean: clean # rm -f Makefile maintainer-clean: distclean for file in $(INFO_TARGETS); do rm -f $${file}*; done # Formerly this directory had texindex.c and getopt.c in it # and this makefile built them to make texindex. # That caused trouble because this is run entirely in the source directory. # Since we expect to get texi2dvi from elsewhere, # it is ok to expect texindex from elsewhere also. ### Makefile ends here