From 9aa071dfb9739328b39b9cbb4130b39b5ed30c85 Mon Sep 17 00:00:00 2001 From: Glenn Morris Date: Wed, 2 May 2012 00:45:16 -0700 Subject: [PATCH] Don't hard-code the list of info files in the top-level Makefile The sed '/ing directory/d' piece is to remove the annoying "entering/leaving directory" messages that GNU make insists on printing when called recursively. --no-print-directory isn't portable. * Makefile.in (INFO_FILES): Remove variable. (INFO_NONMISC): New variable. (install-arch-indep, uninstall): Don't use $INFO_FILES. * doc/misc/Makefile.in (echo-info): New phony target, used by top-level. --- ChangeLog | 4 ++++ Makefile.in | 21 ++++++++------------- doc/misc/ChangeLog | 2 ++ doc/misc/Makefile.in | 7 +++++-- 4 files changed, 19 insertions(+), 15 deletions(-) diff --git a/ChangeLog b/ChangeLog index 5836ea1276b..bf4d53edf4b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,9 @@ 2012-05-02 Glenn Morris + * Makefile.in (INFO_FILES): Remove variable. + (INFO_NONMISC): New variable. + (install-arch-indep, uninstall): Don't use $INFO_FILES. + * Makefile.in (uninstall): Remove useless-use-of-for; that for some reason caused problems on an old Solaris. diff --git a/Makefile.in b/Makefile.in index 4b225fffd58..ef1f3c90c6f 100644 --- a/Makefile.in +++ b/Makefile.in @@ -126,17 +126,10 @@ libexecdir=@libexecdir@ mandir=@mandir@ man1dir=$(mandir)/man1 -# Where to install and expect the info files describing Emacs. In the -# past, this defaulted to a subdirectory of ${prefix}/lib/emacs, but -# since there are now many packages documented with the texinfo -# system, it is inappropriate to imply that it is part of Emacs. +# Where to install and expect the info files describing Emacs. infodir=@infodir@ -INFO_FILES=ada-mode auth autotype calc ccmode cl dbus dired-x ebrowse \ - ede ediff edt eieio efaq eintr elisp emacs emacs-gnutls \ - emacs-mime epa erc ert eshell eudc flymake forms gnus \ - idlwave info mairix-el message mh-e newsticker nxml-mode \ - org pcl-cvs pgg rcirc reftex remember sasl sc semantic ses \ - sieve smtpmail speedbar tramp url vip viper widget woman +# Info files not in the doc/misc directory (we get those via make echo-info). +INFO_NONMISC=emacs eintr elisp # If no makeinfo was found and configured --without-makeinfo, "no"; else "yes". HAVE_MAKEINFO=@HAVE_MAKEINFO@ @@ -617,8 +610,9 @@ install-arch-indep: mkdir info install-etc ${INSTALL_DATA} ${srcdir}/info/dir $(DESTDIR)${infodir}/dir; \ chmod a+r $(DESTDIR)${infodir}/dir); \ fi; \ + info_misc=`cd $${thisdir}/doc/misc; ${MAKE} echo-info | sed '/ing directory/d'`; \ cd ${srcdir}/info ; \ - for elt in $(INFO_FILES); do \ + for elt in ${INFO_NONMISC} $${info_misc}; do \ test "$(HAVE_MAKEINFO)" = "no" && test ! -f $$elt && continue; \ for f in `ls $$elt $$elt-[1-9] $$elt-[1-9][0-9] 2>/dev/null`; do \ (cd $${thisdir}; \ @@ -718,8 +712,9 @@ uninstall: done -rm -rf $(DESTDIR)${libexecdir}/emacs/${version} thisdir=`/bin/pwd`; \ - (cd $(DESTDIR)${infodir} && \ - for elt in $(INFO_FILES); do \ + (info_misc=`cd doc/misc; ${MAKE} echo-info | sed '/ing directory/d'`; \ + cd $(DESTDIR)${infodir} && \ + for elt in ${INFO_NONMISC} $${info_misc}; do \ (cd $${thisdir}; \ $(INSTALL_INFO) --remove --info-dir=$(DESTDIR)${infodir} $(DESTDIR)${infodir}/$$elt); \ if [ -n "${GZIP_INFO}" ] && [ -n "${GZIP_PROG}" ]; then \ diff --git a/doc/misc/ChangeLog b/doc/misc/ChangeLog index e8ebe45e8ba..0d6300a1b82 100644 --- a/doc/misc/ChangeLog +++ b/doc/misc/ChangeLog @@ -1,5 +1,7 @@ 2012-05-02 Glenn Morris + * Makefile.in (echo-info): New phony target, used by top-level. + * viper.texi: Make direntry shorter (also it is no longer "newest"). * emacs-gnutls.texi, ert.texi, org.texi: diff --git a/doc/misc/Makefile.in b/doc/misc/Makefile.in index 390b077bbb0..383ec3a9db9 100644 --- a/doc/misc/Makefile.in +++ b/doc/misc/Makefile.in @@ -43,7 +43,6 @@ emacsdir = $(srcdir)/../emacs MAKEINFO = @MAKEINFO@ MAKEINFO_OPTS = --force -I$(emacsdir) -# Also add new entries to INFO_FILES in the top-level Makefile.in. INFO_TARGETS = \ $(infodir)/ada-mode \ $(infodir)/auth \ @@ -210,7 +209,11 @@ ENVADD = TEXINPUTS="$(srcdir):$(emacsdir):$(TEXINPUTS)" \ mkinfodir = @cd ${srcdir}; test -d ${infodir} || mkdir ${infodir} || test -d ${infodir} -.PHONY: info dvi pdf +.PHONY: info dvi pdf echo-info + +## Used by top-level Makefile. +echo-info: + @echo $(INFO_TARGETS) | sed 's|[^ ]*/||g' info: $(INFO_TARGETS) -- 2.39.2