From 0264072dee05ee304c3a4506df1ead13cca91668 Mon Sep 17 00:00:00 2001 From: Glenn Morris Date: Sun, 3 Oct 2010 17:49:20 -0700 Subject: [PATCH] Minor doc Makefile.in clean-up. * doc/emacs/Makefile.in (SHELL): Set it. (INFO_TARGETS, DVI_TARGETS): Remove variables. (info, dvi): Replace above variables with their expansions. (info): Move mkdir from here... ($(infodir)/emacs): ... to here (for parallel builds). (pdf): New target. ($(infodir)/emacs): Pass -o option to makeinfo. (.PHONY): Declare clean rules. (maintainer-clean): Delete dvi and pdf files. Guard against cd failures. Use a more restrictive delete. * doc/lispref/Makefile.in (dvi, pdf, $(infodir)): New targets. ($(infodir)/elisp): Ensure target directory exists. Use $@. (clean): No 'make.out' or 'core' files. (.PHONY): Declare clean rules. (maintainer-clean): Delete pdf file. Guard against cd failures. --- doc/emacs/ChangeLog | 13 +++++++++++++ doc/emacs/Makefile.in | 31 +++++++++++-------------------- doc/lispref/ChangeLog | 8 ++++++++ doc/lispref/Makefile.in | 22 ++++++++++++++-------- 4 files changed, 46 insertions(+), 28 deletions(-) diff --git a/doc/emacs/ChangeLog b/doc/emacs/ChangeLog index 2c3ce95aba5..61a7e8549b1 100644 --- a/doc/emacs/ChangeLog +++ b/doc/emacs/ChangeLog @@ -1,3 +1,16 @@ +2010-10-04 Glenn Morris + + * Makefile.in (SHELL): Set it. + (INFO_TARGETS, DVI_TARGETS): Remove variables. + (info, dvi): Replace above variables with their expansions. + (info): Move mkdir from here... + ($(infodir)/emacs): ... to here (for parallel builds). + (pdf): New target. + ($(infodir)/emacs): Pass -o option to makeinfo. + (.PHONY): Declare clean rules. + (maintainer-clean): Delete dvi and pdf files. + Guard against cd failures. Use a more restrictive delete. + 2010-10-02 Glenn Morris * misc.texi (Shell Mode): Remove reference to old function name. diff --git a/doc/emacs/Makefile.in b/doc/emacs/Makefile.in index e2eb905128e..064d7cbd6af 100644 --- a/doc/emacs/Makefile.in +++ b/doc/emacs/Makefile.in @@ -19,6 +19,7 @@ # You should have received a copy of the GNU General Public License # along with GNU Emacs. If not, see . +SHELL = /bin/sh # Where to find the source code. $(srcdir) will be the man # subdirectory of the source tree. This is @@ -38,10 +39,6 @@ texinfodir = $(srcdir)/../misc # 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 TEXI2PDF = texi2pdf @@ -111,22 +108,22 @@ EMACSSOURCES= \ ${srcdir}/kmacro.texi \ $(EMACS_XTRA) -info: $(infodir) $(INFO_TARGETS) +info: $(infodir)/emacs $(infodir): mkdir $@ -dvi: $(DVI_TARGETS) +dvi: emacs.dvi +pdf: emacs.pdf -# 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. +# 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 +$(infodir)/emacs: $(infodir) ${EMACSSOURCES} + cd $(srcdir); $(MAKEINFO) emacs.texi -o $@ emacs.dvi: ${EMACSSOURCES} $(ENVADD) $(TEXI2DVI) ${srcdir}/emacs.texi @@ -141,6 +138,7 @@ emacs-xtra.dvi: emacs-xtra.texi $(EMACS_XTRA) emacs-xtra.pdf: emacs-xtra.texi $(EMACS_XTRA) $(ENVADD) $(TEXI2PDF) ${srcdir}/emacs-xtra.texi +.PHONY: mostlyclean clean distclean maintainer-clean mostlyclean: rm -f *.log *.cp *.fn *.ky *.op *.ops *.pg *.vr core *.tp *.core @@ -153,14 +151,7 @@ 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. - + rm -f emacs.dvi emacs.pdf + -cd $(infodir) && rm -f emacs emacs-[1-9] emacs-[1-9][0-9] ### Makefile ends here diff --git a/doc/lispref/ChangeLog b/doc/lispref/ChangeLog index 284c0f2b954..54df508e13c 100644 --- a/doc/lispref/ChangeLog +++ b/doc/lispref/ChangeLog @@ -1,3 +1,11 @@ +2010-10-04 Glenn Morris + + * Makefile.in (dvi, pdf, $(infodir)): New targets. + ($(infodir)/elisp): Ensure target directory exists. Use $@. + (clean): No 'make.out' or 'core' files. + (.PHONY): Declare clean rules. + (maintainer-clean): Delete pdf file. Guard against cd failures. + 2010-10-03 Glenn Morris * files.texi (File Name Components): Remove ignored section about diff --git a/doc/lispref/Makefile.in b/doc/lispref/Makefile.in index bc13a63b1b0..472cc5b1406 100644 --- a/doc/lispref/Makefile.in +++ b/doc/lispref/Makefile.in @@ -92,14 +92,17 @@ srcs = \ $(srcdir)/gpl.texi \ $(srcdir)/doclicense.texi - -.PHONY: clean - # The info file is named `elisp'. info: $(infodir)/elisp +dvi: elisp.dvi +pdf: elisp.pdf + +$(infodir): + mkdir $@ -$(infodir)/elisp: $(srcs) - cd $(srcdir); $(MAKEINFO) -I. -I$(infodir) elisp.texi -o $(infodir)/elisp +## FIXME ? -I$infodir is that right, or should it be texinfodir? +$(infodir)/elisp: $(infodir) $(srcs) + cd $(srcdir); $(MAKEINFO) -I. -I$(infodir) elisp.texi -o $@ elisp.dvi: $(srcs) $(TEXI2DVI) -I $(srcdir) -I $(texinfodir) $(srcdir)/elisp.texi @@ -107,13 +110,16 @@ elisp.dvi: $(srcs) elisp.pdf: $(srcs) $(TEXI2PDF) -I $(srcdir) -I $(texinfodir) $(srcdir)/elisp.texi +.PHONY: clean distclean maintainer-clean + clean: rm -f *.toc *.aux *.log *.cp *.cps *.fn *.fns *.tp *.tps \ *.vr *.vrs *.pg *.pgs *.ky *.kys elisp[12]* - rm -f make.out core distclean: clean maintainer-clean: clean - rm -f elisp.dvi elisp.oaux - cd $(infodir); rm -f elisp elisp-[1-9] elisp-[1-9][0-9] + rm -f elisp.dvi elisp.pdf elisp.oaux + -cd $(infodir) && rm -f elisp elisp-[1-9] elisp-[1-9][0-9] + +### Makefile ends here -- 2.39.5