# HG changeset patch # User Richard M. Stallman # Date 770026666 0 # Node ID 022727dbe5f3856ed8e47a949ae69695f5724e52 # Parent 2b7b11a5e1e64df214bfab09d51c6112756b8c14 (install-arch-indep): Use /bin/pwd uniformly, not pwd. (uninstall): Use /bin/pwd. (blessmail): Depend on src. (all): Don't depend on blessmail. (src/paths.h): Don't force recomputation. (paths-force): New target; force recomputation of paths.h. (all): Depend on paths-force. (src, lib-src): Depend on src/paths.h. diff -r 2b7b11a5e1e6 -r 022727dbe5f3 Makefile.in --- a/Makefile.in Fri May 27 08:00:46 1994 +0000 +++ b/Makefile.in Fri May 27 08:17:46 1994 +0000 @@ -195,17 +195,12 @@ COPYDIR = ${srcdir}/etc ${srcdir}/lisp COPYDESTS = ${etcdir} ${lispdir} -all: src/paths.h ${SUBDIR} blessmail +all: paths-force ${SUBDIR} removenullpaths=sed -e 's/^://' -e 's/:$$//' -e 's/::/:/' -# We force the rebuilding of src/paths.h because the user might give -# make different values for the various directories. Since we use -# move-if-change, src/paths.h only actually changes if the user did -# something notable, so the only unnecessary work we do is in building -# src/paths.h.tmp, which isn't much. # Note that sed is not in /bin on 386bsd. -src/paths.h: Makefile ${srcdir}/src/paths.h.in FRC.src.paths.h +src/paths.h: Makefile ${srcdir}/src/paths.h.in @echo "Producing \`src/paths.h' from \`src/paths.h.in'." @(lisppath=`echo ${lisppath} | ${removenullpaths}` ; \ buildlisppath=`echo ${buildlisppath} | ${removenullpaths}` ; \ @@ -219,13 +214,34 @@ -e 's;\(#.*PATH_LOCK\).*$$;\1 "${lockdir}/";') @${srcdir}/move-if-change src/paths.h.tmp src/paths.h -src: lib-src FRC.src +# For `make all', +# we force the rebuilding of src/paths.h because the user might give +# make different values for the various directories. Since we use +# move-if-change, src/paths.h only actually changes if the user did +# something notable, so the only unnecessary work we do is in building +# src/paths.h.tmp, which isn't much. +# Note that sed is not in /bin on 386bsd. +paths-force: FRC.src.paths.h + @echo "Producing \`src/paths.h' from \`src/paths.h.in'." + @(lisppath=`echo ${lisppath} | ${removenullpaths}` ; \ + buildlisppath=`echo ${buildlisppath} | ${removenullpaths}` ; \ + sed < ${srcdir}/src/paths.h.in > src/paths.h.tmp \ + -e 's;\(#.*PATH_LOADSEARCH\).*$$;\1 "'$${lisppath}'";' \ + -e 's;\(#.*PATH_DUMPLOADSEARCH\).*$$;\1 "'$${buildlisppath}'";' \ + -e 's;\(#.*PATH_EXEC\).*$$;\1 "${archlibdir}";' \ + -e 's;\(#.*PATH_INFO\).*$$;\1 "${infodir}";' \ + -e 's;\(#.*PATH_DATA\).*$$;\1 "${etcdir}";' \ + -e 's;\(#.*PATH_DOC\).*$$;\1 "${docdir}";' \ + -e 's;\(#.*PATH_LOCK\).*$$;\1 "${lockdir}/";') + @${srcdir}/move-if-change src/paths.h.tmp src/paths.h + +src: lib-src FRC.src src/paths.h # This ought to depend on src/paths.h, so that in parallel make # src/paths.h will be available for the compilations in lib-src. # But that causes trouble in `make install' if a different prefix # is specified at that time. -lib-src: FRC.lib-src +lib-src: FRC.lib-src src/paths.h .RECURSIVE: ${SUBDIR} @@ -234,7 +250,7 @@ CC='${CC}' CFLAGS='${CFLAGS}' CPPFLAGS='${CPPFLAGS}' \ LDFLAGS='${LDFLAGS}' MAKE='${MAKE}' -blessmail: ${SUBDIR_MAKEFILES} FRC +blessmail: ${SUBDIR_MAKEFILES} src FRC cd lib-src; $(MAKE) maybe-blessmail $(MFLAGS) MAKE='${MAKE}' Makefile: Makefile.in config.status @@ -289,7 +305,7 @@ install-arch-indep: mkdir -set ${COPYDESTS} ; \ for dir in ${COPYDIR} ; do \ - if [ `(cd $$1 && pwd)` != `(cd $${dir} && pwd)` ] ; then \ + if [ `(cd $$1 && /bin/pwd)` != `(cd $${dir} && /bin/pwd)` ] ; then \ rm -rf $$1 ; \ fi ; \ shift ; \ @@ -314,7 +330,7 @@ echo "Copying etc/DOC* ..." ; \ (cd etc; tar -cf - DOC*)|(cd ${docdir}; umask 0; tar -xvf - ); \ else true; fi - thisdir=`pwd`; \ + thisdir=`/bin/pwd`; \ if [ `(cd ${srcdir}/info && /bin/pwd)` != `(cd ${infodir} && /bin/pwd)` ]; \ then \ (cd ${srcdir}/info ; \ @@ -325,7 +341,7 @@ (cd $${thisdir}; ${INSTALL_DATA} ${srcdir}/info/$$f ${infodir}/$$f); \ done); \ else true; fi - thisdir=`pwd`; cd ${srcdir}/etc; for page in emacs etags ctags ; do \ + thisdir=`/bin/pwd`; cd ${srcdir}/etc; for page in emacs etags ctags ; do \ (cd $${thisdir}; ${INSTALL_DATA} ${srcdir}/etc/$${page}.1 ${mandir}/$${page}${manext}); \ done @@ -351,8 +367,8 @@ bindir=${bindir} libdir=${libdir} archlibdir=${archlibdir}) for dir in ${lispdir} ${etcdir} ; do \ if [ -d $${dir} ]; then \ - case `(cd $${dir} ; pwd)` in \ - `(cd ${srcdir} ; pwd)`* ) ;; \ + case `(cd $${dir} ; /bin/pwd)` in \ + `(cd ${srcdir} ; /bin/pwd)`* ) ;; \ * ) rm -rf $${dir} ;; \ esac ; \ case $${dir} in \