]> git.ipfire.org Git - thirdparty/automake.git/commitdiff
tests: fix spurious error in 'uninstall-fail.test' on Solaris
authorStefano Lattarini <stefano.lattarini@gmail.com>
Sat, 12 Nov 2011 17:41:53 +0000 (18:41 +0100)
committerStefano Lattarini <stefano.lattarini@gmail.com>
Sat, 12 Nov 2011 17:41:53 +0000 (18:41 +0100)
* tests/uninstall-fail.test: Solaris 10 /usr/xpg4/bin/sh can add
a line number before the `:' in the error messages issued by shell
builtins.  Account for that in our grepping of make output.

ChangeLog
tests/uninstall-fail.test

index 79bcb89d69a060866f3babe94ac7c83b58be4891..89348139ec090b85f3055f445e6e3b0aaf6510af 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2011-11-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
+
+       tests: fix spurious error in 'uninstall-fail.test' on Solaris
+       * tests/uninstall-fail.test: Solaris 10 /usr/xpg4/bin/sh can add
+       a line number before the `:' in the error messages issued by shell
+       builtins.  Account for that in our grepping of make output.
+
 2011-11-12  Stefano Lattarini  <stefano.lattarini@gmail.com>
 
        tests: fix typo in 'uninstall-fail.test'
index 2fc31972bf841205ccbdaacbc33bc00040c73e80..529d8f3a8d28b670263c51dcdbe860b9ba158856 100755 (executable)
@@ -76,8 +76,23 @@ chmod a-rwx $inst/share
 
 $MAKE uninstall >output 2>&1 && { cat output; Exit 1; }
 cat output
+#
 # Some shells, like Solaris 10 /bin/sh and /bin/ksh, do not report
-# the name of the `cd' builtin upon a chdir error.
-$EGREP "(cd|sh): .*$inst/share" output
+# the name of the `cd' builtin upon a chdir error:
+#
+#   $ /bin/sh -c 'cd /none'
+#   /bin/sh: /none: does not exist
+#
+# In addition, some shells, like Solaris 10 /usr/xpg4/bin/sh, also print
+# a line number in the error message *if the command contains newlines*:
+#
+#   $ /usr/xpg4/bin/sh -c 'cd unreadable'
+#   /usr/xpg4/bin/sh: unreadable: permission denied
+#   $ /usr/xpg4/bin/sh -c '\
+#   > \
+#   > cd unreadable'
+#   /usr/xpg4/bin/sh[3]: unreadable: permission denied
+#
+$EGREP "(cd|sh)(\[[0-9]*[0-9]\])?: .*$inst/share" output
 
 :