]> git.eshelyaron.com Git - emacs.git/commitdiff
Avoid non-portable "` ... \"...\" ... `" nesting
authorGlenn Morris <rgm@gnu.org>
Thu, 24 Oct 2013 23:04:33 +0000 (19:04 -0400)
committerGlenn Morris <rgm@gnu.org>
Thu, 24 Oct 2013 23:04:33 +0000 (19:04 -0400)
* configure.ac:
* Makefile.in (install-arch-indep, install-etcdoc, install-info):
* lib-src/Makefile.in ($(DESTDIR)${archlibdir}):
* nt/Makefile.in ($(DESTDIR)${archlibdir}):
Avoid non-portable "`\" nesting.

ChangeLog
Makefile.in
configure.ac
lib-src/ChangeLog
lib-src/Makefile.in
nt/ChangeLog
nt/Makefile.in

index af9025c1080d51ff05d992081b6e4be7e68ec60a..4382f9dcabd63e5f44149c409a5069af1abbb5aa 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
 2013-10-24  Glenn Morris  <rgm@gnu.org>
 
+       * configure.ac:
+       * Makefile.in (install-arch-indep, install-etcdoc, install-info):
+       Avoid non-portable "`\" nesting.
+
        * configure.ac (CPPFLAGS) [mingw32]: Use abs_top_srcdir.
 
        * Makefile.in (abs_top_srcdir): New, set by configure.
index 1a92ca8aaf34703f9ad28919065fb18b78ae9ed8..2c854fd9ae0bcbee390f9ce36d17826ddfc9248e 100644 (file)
@@ -571,9 +571,11 @@ install-arch-indep: lisp leim install-info install-man ${INSTALL_ARCH_INDEP_EXTR
        for dir in ${COPYDIR} ; do \
          [ -d $${dir} ] || exit 1 ; \
          dest="$$1" ; shift ; \
-         [ -d "$${dest}" ] && \
-           [ "`cd \"$${dest}\" && /bin/pwd`" = "`cd $${dir} && /bin/pwd`" ] && \
-           continue ; \
+         if [ -d "$${dest}" ]; then \
+           exp_dest=`cd "$${dest}" && /bin/pwd`; \
+           [ "$$exp_dest" = "`cd $${dir} && /bin/pwd`" ] && continue ; \
+         else true; \
+         fi; \
          if [ "$${dir}" = "leim/quail" ]; then \
            [ "`cd $${dir} && /bin/pwd`" = "`cd ${srcdir}/leim/quail && /bin/pwd`" ] && \
              continue ; \
@@ -623,7 +625,8 @@ install-arch-indep: lisp leim install-info install-man ${INSTALL_ARCH_INDEP_EXTR
              cd "$${thisdir}" ; \
              cd "$${dir}" || exit 1 ; \
              for f in `find . -name "*.elc" -print`; do \
-               ${GZIP_PROG} -9n "`echo \"$$f\" | sed 's/.elc$$/.el/'`" ; \
+               f_el=`echo "$$f" | sed 's/.elc$$/.el/'`; \
+               ${GZIP_PROG} -9n "$$f_el" ; \
              done ; \
            done )
        -chmod -R a+r "$(DESTDIR)${datadir}/emacs/${version}" ${COPYDESTS}
@@ -637,7 +640,8 @@ install-arch-indep: lisp leim install-info install-man ${INSTALL_ARCH_INDEP_EXTR
 install-etcdoc: src install-arch-indep
        -unset CDPATH; \
        umask 022; ${MKDIR_P} "$(DESTDIR)${etcdocdir}" ; \
-       if [ "`cd ./etc; /bin/pwd`" != "`cd \"$(DESTDIR)${etcdocdir}\"; /bin/pwd`" ]; \
+       exp_etcdocdir=`cd "$(DESTDIR)${etcdocdir}"; /bin/pwd`; \
+       if [ "`cd ./etc; /bin/pwd`" != "$$exp_etcdocdir" ]; \
        then \
           docfile="DOC"; \
           echo "Copying etc/$${docfile} to $(DESTDIR)${etcdocdir} ..." ; \
@@ -650,7 +654,8 @@ install-info: info
        umask 022; ${MKDIR_P} "$(DESTDIR)${infodir}"
        -unset CDPATH; \
        thisdir=`/bin/pwd`; \
-       if [ "`cd ${srcdir}/info && /bin/pwd`" = "`cd \"$(DESTDIR)${infodir}\" && /bin/pwd`" ]; then \
+       exp_infodir=`cd "$(DESTDIR)${infodir}" && /bin/pwd`; \
+       if [ "`cd ${srcdir}/info && /bin/pwd`" = "$$exp_infodir" ]; then \
          true; \
        else \
          (cd "$(DESTDIR)${infodir}"; \
index e73775e69a799e3499651e0c6d70c6347d0196ad..7d8cb8815fd3f6e8a8c05c3e584ceb22ae031e1b 100644 (file)
@@ -78,7 +78,14 @@ dnl I think we have to check, eg, both exec_prefix and bindir,
 dnl because the latter by default is not yet expanded, but the user
 dnl may have specified a value for it via --bindir.
 dnl Note that abs_srcdir and abs_builddir are not yet defined. :(
-for var in "`pwd`" "`cd \"$srcdir\"; pwd`" "$prefix" "$exec_prefix" \
+
+dnl "`cd \"$srcdir\" is not portable.
+dnl See autoconf manual "Shell Substitutions":
+dnl "There is just no portable way to use double-quoted strings inside
+dnl double-quoted back-quoted expressions (pfew!)."
+temp_srcdir=`cd "$srcdir"; pwd`
+
+for var in "`pwd`" "$temp_srcdir" "$prefix" "$exec_prefix" \
     "$datarootdir" "$bindir" "$datadir" "$sharedstatedir" "$libexecdir"; do
 
   dnl configure sets LC_ALL=C early on, so this range should work.
index 35672f22d6428e53c45007bc1ba8f9e5a55be8a4..44d7260deaddbea8a2668ede39f9412b4634c5fb 100644 (file)
@@ -1,5 +1,8 @@
 2013-10-24  Glenn Morris  <rgm@gnu.org>
 
+       * Makefile.in ($(DESTDIR)${archlibdir}):
+       Avoid non-portable "`\" nesting.
+
        * Makefile.in (abs_top_srcdir): New, set by configure.
 
 2013-10-23  Glenn Morris  <rgm@gnu.org>
index 3843f54967918f5ace9982daf7ea54db82a8e6c3..b765668aebca4978578db9bcbe018b34500cb934 100644 (file)
@@ -234,7 +234,8 @@ $(DESTDIR)${archlibdir}: all
        @echo
        @echo "Installing utilities run internally by Emacs."
        umask 022; ${MKDIR_P} "$(DESTDIR)${archlibdir}"
-       if [ "`cd \"$(DESTDIR)${archlibdir}\" && /bin/pwd`" != "`/bin/pwd`" ]; then \
+       exp_archlibdir=`cd "$(DESTDIR)${archlibdir}" && /bin/pwd`; \
+       if [ "$$exp_archlibdir" != "`/bin/pwd`" ]; then \
          for file in ${UTILITIES}; do \
            $(INSTALL_PROGRAM) $(INSTALL_STRIP) $$file "$(DESTDIR)${archlibdir}/$$file" ; \
          done ; \
index 123896076270efae503fb04689d9f2d75ea6d08e..a1cac150cac06b448f7ba0aca9f670bcac9e9c46 100644 (file)
@@ -1,5 +1,8 @@
 2013-10-24  Glenn Morris  <rgm@gnu.org>
 
+       * Makefile.in ($(DESTDIR)${archlibdir}):
+       Avoid non-portable "`\" nesting.
+
        * Makefile.in (abs_top_srcdir): New, set by configure.
 
 2013-10-23  Glenn Morris  <rgm@gnu.org>
index 8bd37e7983ccb6e907b1d093278b7a6d8315818d..17fef43e26d81f7df55c437c0fbcf41c7c36db69 100644 (file)
@@ -144,7 +144,8 @@ $(DESTDIR)${archlibdir}: all
        @echo
        @echo "Installing utilities run internally by Emacs."
        umask 022; ${MKDIR_P} "$(DESTDIR)${archlibdir}"
-       if [ "`cd \"$(DESTDIR)${archlibdir}\" && /bin/pwd`" != "`/bin/pwd`" ]; then \
+       exp_archlibdir=`cd "$(DESTDIR)${archlibdir}" && /bin/pwd`; \
+       if [ "$$exp_archlibdir" != "`/bin/pwd`" ]; then \
          for file in ${UTILITIES}; do \
            $(INSTALL_PROGRAM) $(INSTALL_STRIP) $$file "$(DESTDIR)${archlibdir}/$$file" ; \
          done ; \