automake-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[FYI] {maint} tests: avoid spurious failure of libtool and gettext tests


From: Stefano Lattarini
Subject: [FYI] {maint} tests: avoid spurious failure of libtool and gettext tests
Date: Fri, 23 Dec 2011 01:00:59 +0100

On Solaris 10 (and presumably earlier), /bin/sh trips up on
here-documents that contains a command substitution *and* are
fed to a shell function:

  # All as expected.
  $ cat <<END
  `pwd`
  END
  /home/stefano
  $ echo status = $?
  status = 0

  # An apparently innocuous function ...
  $ kitty () { cat; }
  # ... but hilarity ensues!
  $ kitty <<END
  `pwd`
  END
  /tmp/sh137723: cannot open
  $ echo status = $?
  status = 1

We need to work around this misbehaviour in a couple of our
tests (whose failures where causing cascading failures in a
lot of other tests).

* tests/gettext-macros.test: Avoid the use of command substitution
in a here-document passed to the `indent' function, by using the
`echo' builtin instead.
* tests/libtool-macros.test: Likewise.

See also:
<http://lists.gnu.org/archive/html/bug-autoconf/2011-12/msg00001.html>
---
 ChangeLog                 |   38 ++++++++++++++++++++++++++++++++++++++
 tests/gettext-macros.test |    6 ++----
 tests/libtool-macros.test |    6 ++----
 3 files changed, 42 insertions(+), 8 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index d97d461..94b1b44 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,41 @@
+2011-12-23  Stefano Lattarini  <address@hidden>
+
+       tests: avoid spurious failure of libtool and gettext tests
+
+       On Solaris 10 (and presumably earlier), /bin/sh trips up on
+       here-documents that contains a command substitution *and* are
+       fed to a shell function:
+
+         # All as expected.
+         $ cat <<END
+         `pwd`
+         END
+         /home/stefano
+         $ echo status = $?
+         status = 0
+
+         # An apparently innocuous function ...
+         $ kitty () { cat; }
+         # ... but hilarity ensues!
+         $ kitty <<END
+         `pwd`
+         END
+         /tmp/sh137723: cannot open
+         $ echo status = $?
+         status = 1
+
+       We need to work around this misbehaviour in a couple of our
+       tests (whose failures where causing cascading failures in a
+       lot of other tests).
+
+       * tests/gettext-macros.test: Avoid the use of command substitution
+       in a here-document passed to the `indent' function, by using the
+       `echo' builtin instead.
+       * tests/libtool-macros.test: Likewise.
+
+       See also:
+       <http://lists.gnu.org/archive/html/bug-autoconf/2011-12/msg00001.html>
+
 2011-12-14  Stefano Lattarini  <address@hidden>
 
        tests: better handling of gettext and libtool requirements
diff --git a/tests/gettext-macros.test b/tests/gettext-macros.test
index 7fe1274..5dd3a79 100755
--- a/tests/gettext-macros.test
+++ b/tests/gettext-macros.test
@@ -46,10 +46,8 @@ else
 fi
 
 if $am_gettextize_command --force && test -f m4/gettext.m4; then
-  unindent >> get.sh <<END
-    ACLOCAL_PATH="`pwd`/m4":\$ACLOCAL_PATH
-    export ACLOCAL_PATH
-END
+  echo "ACLOCAL_PATH='`pwd`/m4':\$ACLOCAL_PATH" >> get.sh
+  echo "export ACLOCAL_PATH" >> get.sh
 else
   # Older versions of gettext might not have a gettextize program
   # available, but this doesn't mean the user hasn't made the gettext
diff --git a/tests/libtool-macros.test b/tests/libtool-macros.test
index 31e5019..06a35d9 100755
--- a/tests/libtool-macros.test
+++ b/tests/libtool-macros.test
@@ -27,10 +27,8 @@ echo : >> get.sh
 echo ACLOCAL_AMFLAGS = -I m4 > Makefile.am
 
 if libtoolize --copy --install && test -f m4/libtool.m4; then
-  unindent >> get.sh <<END
-    ACLOCAL_PATH="`pwd`/m4":\$ACLOCAL_PATH
-    export ACLOCAL_PATH
-END
+  echo "ACLOCAL_PATH='`pwd`/m4':\$ACLOCAL_PATH" >> get.sh
+  echo "export ACLOCAL_PATH" >> get.sh
 else
   # Libtoolize from libtool < 2.0 didn't support the `--install' option,
   # but this doesn't mean the user hasn't made the libtool macros
-- 
1.7.7.3




reply via email to

[Prev in Thread] Current Thread [Next in Thread]