dash immediately exits a script with status 2 when a source'd '.' file has a syntax error, and doesn't return to the sourcing script. That's fine as per Posix, I guess, so normalize the exit status in the test, and if we don't find the error message, at least ensure the script didn't configure.
OK? Thanks, Ralf tests: avoid AC_CACHE_CHECK test failure with dash. * tests/base.at (AC_CACHE_CHECK): Normalize configure exit status in presence of syntax error in sourced site file. Do not error out if configure is aborted at this point. Fixes testsuite failure with dash 0.5.5.1. diff --git a/tests/base.at b/tests/base.at index cf12099..0973fc4 100644 --- a/tests/base.at +++ b/tests/base.at @@ -493,8 +493,9 @@ AT_DATA([bad.site], [[fi ]]) CONFIG_SITE=$PWD/bad.site -AT_CHECK_CONFIGURE([], [1], [ignore], [stderr]) -AT_CHECK([grep 'failed to load site script' stderr], [], [ignore]) +AT_CHECK_CONFIGURE([ || exit 1], [1], [stdout], [stderr]) +AT_CHECK([grep 'failed to load site script' stderr], [], [ignore], [ignore], + [AT_CHECK([grep 'whether true' stdout], [1])]) # However, a missing file is ignored. CONFIG_SITE=./no-such-file