]> err.no Git - yubikey-personalization.old/commitdiff
Use valgrind for self checks.
authorSimon Josefsson <simon@josefsson.org>
Mon, 11 Apr 2011 12:30:01 +0000 (14:30 +0200)
committerSimon Josefsson <simon@josefsson.org>
Mon, 11 Apr 2011 12:31:10 +0000 (14:31 +0200)
.gitignore
configure.ac
m4/valgrind-tests.m4 [new file with mode: 0644]
tests/Makefile.am

index 4e5bdfec23c6fb3be3610ed1f79f3b2633cfe217..e8ca3e5d759dc0a23ad94289ff061b36197af4cd 100644 (file)
@@ -1,7 +1,6 @@
 Makefile.in
 configure
 build-aux
-m4
 autom4te.cache
 aclocal.m4
 INSTALL
index c9d02cda669ccc240359c55212a692ba95e662d0..4e82911eb009bfe555cdb39c8fab94d9c48bc7db 100644 (file)
@@ -121,6 +121,7 @@ AM_CONDITIONAL([BACKEND_OSX], test x$with_backend = xosx)
 AM_CONDITIONAL([BACKEND_WINDOWS], test x$with_backend = xwindows)
 
 gl_LD_VERSION_SCRIPT
+gl_VALGRIND_TESTS
 
 AC_CONFIG_FILES([
   Makefile
diff --git a/m4/valgrind-tests.m4 b/m4/valgrind-tests.m4
new file mode 100644 (file)
index 0000000..ab9e25a
--- /dev/null
@@ -0,0 +1,34 @@
+# valgrind-tests.m4 serial 2
+dnl Copyright (C) 2008-2011 Free Software Foundation, Inc.
+dnl This file is free software; the Free Software Foundation
+dnl gives unlimited permission to copy and/or distribute it,
+dnl with or without modifications, as long as this notice is preserved.
+
+dnl From Simon Josefsson
+
+# gl_VALGRIND_TESTS()
+# -------------------
+# Check if valgrind is available, and set VALGRIND to it if available.
+AC_DEFUN([gl_VALGRIND_TESTS],
+[
+  AC_ARG_ENABLE(valgrind-tests,
+    AS_HELP_STRING([--enable-valgrind-tests],
+                   [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
+
+  if test -n "$VALGRIND" && $VALGRIND -q true > /dev/null 2>&1; then
+    opt_valgrind_tests=yes
+    VALGRIND="$VALGRIND -q --error-exitcode=1 --leak-check=full"
+  else
+    opt_valgrind_tests=no
+    VALGRIND=
+  fi
+
+  AC_MSG_CHECKING([whether self tests are run under valgrind])
+  AC_MSG_RESULT($opt_valgrind_tests)
+])
index c16ebb95dad49a2e978e70c31786889ff1a478c5..29dd782707f5284edbd34ffd68683aaa3a815432 100644 (file)
@@ -39,3 +39,5 @@ TESTS = $(ctests)
 
 test_args_to_config_LDADD = ../ykpersonalize.o $(LDADD) $(ykpersonalize_LDADD)
 test_args_to_config_LDFLAGS = -z muldefs
+
+TESTS_ENVIRONMENT = $(VALGRIND)