Merge changes made in Gnus trunk.
[bpt/emacs.git] / Makefile.in
index 798b128..5466193 100644 (file)
@@ -125,7 +125,7 @@ libexecdir=@libexecdir@
 # (and they contain cross-references that expect them to be there).
 mandir=@mandir@
 man1dir=$(mandir)/man1
-MAN_PAGES=b2m.1 ctags.1 ebrowse.1 emacs.1 emacsclient.1 etags.1 \
+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
@@ -243,6 +243,8 @@ INSTALL_STRIP =
 
 # We use gzip to compress installed .el files.
 GZIP_PROG = @GZIP_PROG@
+# If non-nil, gzip the installed Info and man pages.
+GZIP_INFO = @GZIP_INFO@
 
 # ============================= Targets ==============================
 
@@ -279,6 +281,9 @@ all: ${SUBDIR} leim
 removenullpaths=sed -e 's/^://g' -e 's/:$$//g' -e 's/::/:/g'
 
 # Generate epaths.h from epaths.in.  This target is invoked by `configure'.
+# See comments in configure.in for why it is done this way, as opposed
+# to just letting configure generate epaths.h from epaths.in in a
+# similar way to how Makefile is made from Makefile.in.
 epaths-force: FRC
        @(lisppath=`echo ${lisppath} | ${removenullpaths}` ;            \
          buildlisppath=`echo ${buildlisppath} | ${removenullpaths}` ;  \
@@ -335,9 +340,13 @@ src: Makefile FRC
              CC='${CC}' CFLAGS='${CFLAGS}' CPPFLAGS='${CPPFLAGS}'         \
              LDFLAGS='${LDFLAGS}' MAKE='${MAKE}' BOOTSTRAPEMACS="$$boot"; \
        fi;
+       if [ -r .bzr/checkout/dirstate ]; then                  \
+           vcswitness="$$(pwd)/.bzr/checkout/dirstate";        \
+       fi;                                                     \
        cd $@; $(MAKE) all $(MFLAGS)                           \
          CC='${CC}' CFLAGS='${CFLAGS}' CPPFLAGS='${CPPFLAGS}' \
-         LDFLAGS='${LDFLAGS}' MAKE='${MAKE}' BOOTSTRAPEMACS=""
+         LDFLAGS='${LDFLAGS}' MAKE='${MAKE}' BOOTSTRAPEMACS="" \
+         VCSWITNESS="$$vcswitness"
 
 blessmail: Makefile src FRC
        cd lib-src; $(MAKE) maybe-blessmail $(MFLAGS) \
@@ -369,7 +378,11 @@ $(srcdir)/configure: $(AUTOCONF_INPUTS)
        cd ${srcdir} && autoconf
 
 $(srcdir)/src/config.in: $(srcdir)/src/stamp-h.in
-       @true
+       @ # Usually, there's no need to rebuild src/config.in just
+       @ # because stamp-h.in has changed (since building stamp-h.in
+       @ # refreshes config.in as well), but if config.in is missing
+       @ # then we really need to do something more.
+       [ -r "$@" ] || ( cd ${srcdir} && autoheader )
 $(srcdir)/src/stamp-h.in: $(AUTOCONF_INPUTS)
        cd ${srcdir} && autoheader
        rm -f $(srcdir)/src/stamp-h.in
@@ -422,9 +435,9 @@ install-arch-dep: mkdir
            if test -d share/emacs ; then dir=share/emacs/*/*; $(MV_DIRS); fi;\
            if test -d share/info ; then dir=share/info; $(MV_DIRS) ; fi ; \
            rm -fr share ) ; \
-         ( cd ${ns_appbindir}/libexec ; dir=emacs/*/*/* ; $(MV_DIRS); \
+         ( cd ${ns_appbindir}libexec ; dir=emacs/*/*/* ; $(MV_DIRS); \
            rm -fr emacs ) ; \
-         ( cd ${ns_appbindir}/bin ; rm -f emacs emacs-24* ; \
+         ( cd ${ns_appbindir}bin ; rm -f emacs emacs-24* ; \
            ln -sf ../libexec/* .) ; \
        else true ; fi
 
@@ -569,6 +582,10 @@ install-arch-indep: mkdir info install-etc
              for f in `ls $$elt $$elt-[1-9] $$elt-[1-9][0-9] 2>/dev/null`; do \
                ${INSTALL_DATA} $$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; \
           done); \
        else true; fi
@@ -588,7 +605,11 @@ install-arch-indep: mkdir info install-etc
        for page in ${MAN_PAGES}; do \
          (cd $${thisdir}; \
           ${INSTALL_DATA} ${mansrcdir}/$${page} $(DESTDIR)${man1dir}/$${page}; \
-          chmod a+r $(DESTDIR)${man1dir}/$${page}); \
+          chmod a+r $(DESTDIR)${man1dir}/$${page}; \
+          if [ -n "${GZIP_INFO}" ] && [ -n "${GZIP_PROG}" ]; then \
+            rm -f $(DESTDIR)${man1dir}/$${page}.gz; \
+            ${GZIP_PROG} -9n $(DESTDIR)${man1dir}/$${page}; \
+          else true; fi ); \
        done
 
 ## Install those items from etc/ that need to end up elsewhere.