diff options
author | Stefano Lattarini <stefano.lattarini@gmail.com> | 2012-03-04 17:14:14 +0100 |
---|---|---|
committer | Stefano Lattarini <stefano.lattarini@gmail.com> | 2012-03-04 17:14:14 +0100 |
commit | 43814d248d030849c366e83e550f90a88596461d (patch) | |
tree | 9c190035a148bd151a73b60c4c184d35727968d3 | |
parent | 6e7264cf45b61cf40e0cc91b63ae8365d4f2d1f1 (diff) | |
download | autoconf-43814d248d030849c366e83e550f90a88596461d.tar.gz |
tests: fix spurious failure due to Solaris XPG4 sh bug
On Solaris 10, the /usr/xpg4/bin/sh shell seems unable to execute
a shell script named 'script':
$ touch script
$ /bin/sh script; echo status: $? # As expected.
status: 0
$ /usr/xpg4/bin/sh script; echo status: $? # Weirdness follows.
/usr/xpg4/bin/sh: script: cannot execute
status: 1
This was causing a spurious testsuite failure for users which have
/usr/xpg4/bin in $PATH before /bin and /usr/bin. Fix that.
* tests/m4sh.at (Configure re-execs self with CONFIG_SHELL): Rename
the m4sh-produced script to 'script2', to avoid the just-described
issue.
-rw-r--r-- | tests/m4sh.at | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/tests/m4sh.at b/tests/m4sh.at index 78fe9674..4e4da5d1 100644 --- a/tests/m4sh.at +++ b/tests/m4sh.at @@ -49,6 +49,10 @@ echo foo > sentinel ]]) AT_CHECK_M4SH +# Calling the script simply 'script' could cause problems with +# Solaris /usr/xpg4/bin/sh in the invocation 'sh script' below. +mv -f script script2 + AT_DATA([fake-shell], [[#!/bin/sh echo 'Fake shell executed.' @@ -61,7 +65,7 @@ done ]]) chmod a+x fake-shell -AT_CHECK([CONFIG_SHELL=./fake-shell ./script 1 2 4 8], [0], +AT_CHECK([CONFIG_SHELL=./fake-shell ./script2 1 2 4 8], [0], [Fake shell executed. nargs = 4 :1: @@ -73,7 +77,7 @@ AT_CHECK([test ! -f sentinel], [0]) test ! -f sentinel || rm -f sentinel # Cleanup for next test. AT_CHECK( -[CONFIG_SHELL=`pwd`/fake-shell sh script a 'b c' ' d e '], +[CONFIG_SHELL=`pwd`/fake-shell sh script2 a 'b c' ' d e '], [0], [Fake shell executed. nargs = 3 @@ -85,7 +89,7 @@ AT_CHECK([test ! -f sentinel], [0]) test ! -f sentinel || rm -f sentinel # Cleanup for next test. AT_CHECK([(PATH=`pwd`:$PATH; export PATH; -CONFIG_SHELL=fake-shell script '' '&' '!;*' '<($[]@%:@)>,' 'x +CONFIG_SHELL=fake-shell script2 '' '&' '!;*' '<($[]@%:@)>,' 'x y z 1 2 3')], [0], [Fake shell executed. |