X-Git-Url: https://git.hcoop.net/bpt/emacs.git/blobdiff_plain/b8df54ffbefc5ddf40ddcda68a2a682769c5833d..48176e8bacea7a462e28c472b6dd7a052355b33e:/Makefile.in diff --git a/Makefile.in b/Makefile.in index 2d54aa1f3a..62e98fd451 100644 --- a/Makefile.in +++ b/Makefile.in @@ -122,25 +122,15 @@ sharedstatedir=@sharedstatedir@ libexecdir=@libexecdir@ # Where to install Emacs's man pages. -# This used to allow choice of the numeric extension, but this made -# little sense since the files were always installed in man1/ -# (and they contain cross-references that expect them to be there). +# Note they contain cross-references that expect them to be in section 1. mandir=@mandir@ man1dir=$(mandir)/man1 -MAN_PAGES=ctags.1 ebrowse.1 emacs.1 emacsclient.1 etags.1 \ - grep-changelog.1 rcs-checkin.1 -# 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-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_EXT=@INFO_EXT@ +INFO_NONMISC=emacs$(INFO_EXT) eintr$(INFO_EXT) elisp$(INFO_EXT) # If no makeinfo was found and configured --without-makeinfo, "no"; else "yes". HAVE_MAKEINFO=@HAVE_MAKEINFO@ @@ -236,6 +226,11 @@ gamedir=@gamedir@ # ==================== Utility Programs for the Build ==================== # Allow the user to specify the install program. +# Note that if the system does not provide a suitable install, +# configure will use build-aux/install-sh. Annoyingly, it does +# not use an absolute path. So we must take care to always run +# INSTALL-type commands from the top-level directory. +# This explains (I think) the cd thisdir seen in several install rules. INSTALL = @INSTALL@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_DATA = @INSTALL_DATA@ @@ -616,33 +611,27 @@ 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 \ - ${INSTALL_DATA} $$f $(DESTDIR)${infodir}/$$f; \ + (cd $${thisdir}; \ + ${INSTALL_DATA} ${srcdir}/info/$$f $(DESTDIR)${infodir}/$$f); \ chmod a+r $(DESTDIR)${infodir}/$$f; \ if [ -n "${GZIP_INFO}" ] && [ -n "${GZIP_PROG}" ]; then \ rm -f $(DESTDIR)${infodir}/$$f.gz; \ ${GZIP_PROG} -9n $(DESTDIR)${infodir}/$$f; \ else true; fi; \ done; \ + (cd $${thisdir}; \ + ${INSTALL_INFO} --info-dir=$(DESTDIR)${infodir} $(DESTDIR)${infodir}/$$elt); \ done); \ else true; fi - -unset CDPATH; \ - thisdir=`/bin/pwd`; \ - if [ `(cd ${srcdir}/info && /bin/pwd)` != `(cd $(DESTDIR)${infodir} && /bin/pwd)` ]; \ - then \ - for elt in $(INFO_FILES); do \ - test "$(HAVE_MAKEINFO)" = "no" && test ! -f $$elt && continue; \ - (cd $${thisdir}; \ - ${INSTALL_INFO} --info-dir=$(DESTDIR)${infodir} $(DESTDIR)${infodir}/$$elt); \ - done; \ - else true; fi -chmod -R a+r $(DESTDIR)${datadir}/emacs/${version} ${COPYDESTS} thisdir=`/bin/pwd`; \ cd ${mansrcdir}; \ - for page in ${MAN_PAGES}; do \ + for page in *.1; do \ (cd $${thisdir}; \ ${INSTALL_DATA} ${mansrcdir}/$${page} $(DESTDIR)${man1dir}/$${page}; \ chmod a+r $(DESTDIR)${man1dir}/$${page}; \ @@ -723,19 +712,20 @@ uninstall: fi ; \ done -rm -rf $(DESTDIR)${libexecdir}/emacs/${version} - (cd $(DESTDIR)${infodir} && \ - for elt in $(INFO_FILES); do \ - $(INSTALL_INFO) --remove --info-dir=. $$elt; \ + thisdir=`/bin/pwd`; \ + (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 \ ext=.gz; else ext=; fi; \ - for f in `ls $$elt$$ext $$elt-[1-9]$$ext $$elt-[1-9][0-9]$$ext 2>/dev/null`; do \ - rm -f $$f; \ - done; \ + rm -f $$elt$$ext $$elt-[1-9]$$ext $$elt-[1-9][0-9]$$ext; \ done;) (if [ -n "${GZIP_INFO}" ] && [ -n "${GZIP_PROG}" ]; then \ ext=.gz; else ext=; fi; \ - cd $(DESTDIR)${man1dir} && for page in ${MAN_PAGES}; do \ - rm -f $$page$$ext; done ) + cd ${mansrcdir} && for page in *.1; do \ + rm -f $(DESTDIR)${man1dir}/$$page$$ext; done ) (cd $(DESTDIR)${bindir} && rm -f $(EMACSFULL) $(EMACS)) (cd $(DESTDIR)${icondir} && rm -f hicolor/*x*/apps/emacs.png hicolor/*x*/apps/emacs22.png hicolor/scalable/apps/emacs.svg hicolor/scalable/mimetypes/emacs-document.svg ) -rm -f $(DESTDIR)${desktopdir}/emacs.desktop @@ -915,6 +905,7 @@ check-info-dir: info case $${file} in \ *-[0-9]*|COPYING|dir) continue ;; \ esac ; \ + file=`echo $${file} | sed 's/\.info//'` ; \ grep -q -F ": ($${file})." dir || missing="$${missing} $${file}" ; \ done ; \ if test -n "$${missing}"; then \