+2010-01-19 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ config.status: consistent exit status with nonexistent config file input.
+ * lib/autoconf/status.m4 (_AC_OUTPUT_MAIN_LOOP): Ensure we
+ exit with status 1 rather than with that of 'false', for
+ reproducibility.
+ (AC_OUTPUT): Ensure to exit 1 in case of config.status failure.
+ * tests/torture.at (Missing templates): Also test code path
+ for $srcdir != '.'.
+ Report by Tim Rice.
+
2010-01-13 Eric Blake <ebb9@byu.net>
Fix previous example.
exec AS_MESSAGE_LOG_FD>>config.log
# Use ||, not &&, to avoid exiting from the if with $? = 1, which
# would make configure fail if this is the last instruction.
- $ac_cs_success || AS_EXIT
+ $ac_cs_success || AS_EXIT([1])
fi
dnl config.status should not do recursion.
AC_PROVIDE_IFELSE([AC_CONFIG_SUBDIRS], [_AC_OUTPUT_SUBDIRS()])dnl
[[\\/$]]*) false;;
*) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";;
esac ||
- AC_MSG_ERROR([cannot find input file: `$ac_f']);;
+ AC_MSG_ERROR([cannot find input file: `$ac_f'], [1]);;
esac
case $ac_f in *\'*) ac_f=`AS_ECHO(["$ac_f"]) | sed "s/'/'\\\\\\\\''/g"`;; esac
AS_VAR_APPEND([ac_file_inputs], [" '$ac_f'"])
]])
AT_CHECK_AUTOCONF
+mkdir build
+AT_CAPTURE_FILE([build/config.log])[]dnl
+cd build
+AT_CHECK([../configure], [1], [ignore],
+[[config.status: error: cannot find input file: `nonexistent.in'
+]])
+# Make sure that the output file doesn't exist
+AT_CHECK([test -f nonexistent], 1)
+cd ..
AT_CHECK_CONFIGURE([], [1], [],
[[config.status: error: cannot find input file: `nonexistent.in'
]])