diff options
author | Paul Eggert <eggert@cs.ucla.edu> | 2017-08-05 11:45:10 -0700 |
---|---|---|
committer | Paul Eggert <eggert@cs.ucla.edu> | 2017-08-05 11:45:42 -0700 |
commit | 124b93cd248fa2b93705a311f326a5436f8cc55f (patch) | |
tree | 19394a6dba3b00aac576c3a598aa7d280d56798b | |
parent | 9cfe2a3983e5eb92aa9bd2c033cd3f1579a9c225 (diff) | |
download | gnulib-124b93cd248fa2b93705a311f326a5436f8cc55f.tar.gz |
valgrind-tests: use ls, and cache
* m4/valgrind-tests.m4: Test ls, not bash.
Problem reported by Reuben Thomas.
Also, cache the result so that it can be overridden.
-rw-r--r-- | ChangeLog | 7 | ||||
-rw-r--r-- | m4/valgrind-tests.m4 | 30 |
2 files changed, 22 insertions, 15 deletions
@@ -1,3 +1,10 @@ +2017-08-05 Paul Eggert <eggert@cs.ucla.edu> + + valgrind-tests: use ls, and cache + * m4/valgrind-tests.m4: Test ls, not bash. + Problem reported by Reuben Thomas. + Also, cache the result so that it can be overridden. + 2017-08-04 Paul Eggert <eggert@cs.ucla.edu> manywarnings: port to 64-bit GCC builds of Emacs diff --git a/m4/valgrind-tests.m4 b/m4/valgrind-tests.m4 index 00189d8bcc..7e4bf60bd9 100644 --- a/m4/valgrind-tests.m4 +++ b/m4/valgrind-tests.m4 @@ -1,4 +1,4 @@ -# valgrind-tests.m4 serial 3 +# valgrind-tests.m4 serial 4 dnl Copyright (C) 2008-2017 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -11,27 +11,27 @@ dnl From Simon Josefsson # Check if valgrind is available, and set VALGRIND to it if available. AC_DEFUN([gl_VALGRIND_TESTS], [ - AC_ARG_ENABLE(valgrind-tests, + AC_ARG_ENABLE([valgrind-tests], AS_HELP_STRING([--disable-valgrind-tests], [don't try to run self tests under valgrind]), [opt_valgrind_tests=$enableval], [opt_valgrind_tests=yes]) # Run self-tests under valgrind? if test "$opt_valgrind_tests" = "yes" && test "$cross_compiling" = no; then - AC_CHECK_PROGS(VALGRIND, valgrind) - fi + AC_CHECK_PROGS([VALGRIND], [valgrind]) - OPTS="-q --error-exitcode=1 --leak-check=full" + if test "$VALGRIND"; then + AC_CACHE_CHECK([for valgrind options for tests], + [gl_cv_opt_valgrind_tests], + [gl_cv_opt_valgrind_tests="-q --error-exitcode=1 --leak-check=full" + $VALGRIND $gl_valgrind_opts ls > /dev/null 2>&1 || + gl_cv_opt_valgrind_tests=no]) - if test -n "$VALGRIND" \ - && $VALGRIND $OPTS $SHELL -c 'exit 0' > /dev/null 2>&1; then - opt_valgrind_tests=yes - VALGRIND="$VALGRIND $OPTS" - else - opt_valgrind_tests=no - VALGRIND= + if test "$gl_cv_opt_valgrind_tests" != no; then + VALGRIND="$VALGRIND $gl_cv_opt_valgrind_tests" + else + VALGRIND= + fi + fi fi - - AC_MSG_CHECKING([whether self tests are run under valgrind]) - AC_MSG_RESULT($opt_valgrind_tests) ]) |