Thanks, I installed the attached somewhat-more-fancier patch; does it work for 
you?
>From 59c181fa400ead71e9a28e3db9abc107f8fc9ea3 Mon Sep 17 00:00:00 2001
From: Paul Eggert <egg...@cs.ucla.edu>
Date: Sat, 5 Aug 2017 11:45:10 -0700
Subject: [PATCH] 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.
---
 ChangeLog            |  7 +++++++
 m4/valgrind-tests.m4 | 30 +++++++++++++++---------------
 2 files changed, 22 insertions(+), 15 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index caab63e..74e9831 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2017-08-05  Paul Eggert  <egg...@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  <egg...@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 00189d8..7e4bf60 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)
 ])
-- 
2.7.4

Reply via email to