travis: Run the "all" test case with leak detective enabled
authorTobias Brunner <tobias@strongswan.org>
Tue, 25 Mar 2014 10:46:17 +0000 (11:46 +0100)
committerTobias Brunner <tobias@strongswan.org>
Thu, 27 Mar 2014 09:52:45 +0000 (10:52 +0100)
But disable the gcrypt plugin, as it causes leaks.

Also disable the backtraces by libunwind as they seem to cause
threads to get cleaned up after the leak detective already has been
disabled, which leads to invalid free()s.

.travis.yml
scripts/test.sh

index e7b0f7e..2a23fea 100644 (file)
@@ -31,6 +31,7 @@ env:
     - TEST=printf-builtin LEAK_DETECTIVE=yes
     - TEST=all
     - TEST=all MONOLITHIC=yes
+    - TEST=all LEAK_DETECTIVE=yes
 
 matrix:
   include:
index 4785d06..5e95faa 100755 (executable)
@@ -32,6 +32,12 @@ all)
                        --disable-dumm --disable-kernel-pfroute --disable-keychain
                        --disable-lock-profiler --disable-maemo --disable-padlock
                        --disable-osx-attr --disable-tkm --disable-uci"
+       if test "$LEAK_DETECTIVE" = "yes"; then
+               # libgcrypt can't be deinitialized
+               CONFIG="$CONFIG --disable-gcrypt"
+               # libunwind causes threads to be cleaned up after LD is disabled
+               CONFIG="$CONFIG --disable-unwind-backtraces"
+       fi
        # not enabled on the build server
        CONFIG="$CONFIG --disable-af-alg"
        # TODO: enable? perhaps via coveralls.io (cpp-coveralls)?