summaryrefslogtreecommitdiff
path: root/t/valgrind/valgrind.sh
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2013-04-03 09:34:44 -0700
committerJunio C Hamano <gitster@pobox.com>2013-04-03 09:34:44 -0700
commitd3ea5826e4d27dea7bebf3b3029d183ddf31567a (patch)
tree53f85ad3cb8f9f3bb1be95c32c73d92d83f5d322 /t/valgrind/valgrind.sh
parent5ab3e4c1b2db00d813b548053f3b96d57d035dd7 (diff)
parenteeb69131ed7f3cb7a191d5bf0e3ce8fdd726a539 (diff)
Merge branch 'tr/valgrind'
Let us use not just memgrind but other *grind debuggers. * tr/valgrind: tests: notice valgrind error in test_must_fail tests --valgrind: provide a mode without --track-origins tests: parameterize --valgrind option t/README: --valgrind already implies -v
Diffstat (limited to 't/valgrind/valgrind.sh')
-rwxr-xr-xt/valgrind/valgrind.sh27
1 files changed, 17 insertions, 10 deletions
diff --git a/t/valgrind/valgrind.sh b/t/valgrind/valgrind.sh
index 582b4dca94..6b87c91b60 100755
--- a/t/valgrind/valgrind.sh
+++ b/t/valgrind/valgrind.sh
@@ -2,20 +2,27 @@
base=$(basename "$0")
-TRACK_ORIGINS=
+TOOL_OPTIONS='--leak-check=no'
-VALGRIND_VERSION=$(valgrind --version)
-VALGRIND_MAJOR=$(expr "$VALGRIND_VERSION" : '[^0-9]*\([0-9]*\)')
-VALGRIND_MINOR=$(expr "$VALGRIND_VERSION" : '[^0-9]*[0-9]*\.\([0-9]*\)')
-test 3 -gt "$VALGRIND_MAJOR" ||
-test 3 -eq "$VALGRIND_MAJOR" -a 4 -gt "$VALGRIND_MINOR" ||
-TRACK_ORIGINS=--track-origins=yes
+case "$GIT_VALGRIND_MODE" in
+memcheck-fast)
+ ;;
+memcheck)
+ VALGRIND_VERSION=$(valgrind --version)
+ VALGRIND_MAJOR=$(expr "$VALGRIND_VERSION" : '[^0-9]*\([0-9]*\)')
+ VALGRIND_MINOR=$(expr "$VALGRIND_VERSION" : '[^0-9]*[0-9]*\.\([0-9]*\)')
+ test 3 -gt "$VALGRIND_MAJOR" ||
+ test 3 -eq "$VALGRIND_MAJOR" -a 4 -gt "$VALGRIND_MINOR" ||
+ TOOL_OPTIONS="$TOOL_OPTIONS --track-origins=yes"
+ ;;
+*)
+ TOOL_OPTIONS="--tool=$GIT_VALGRIND_MODE"
+esac
exec valgrind -q --error-exitcode=126 \
- --leak-check=no \
- --suppressions="$GIT_VALGRIND/default.supp" \
--gen-suppressions=all \
- $TRACK_ORIGINS \
+ --suppressions="$GIT_VALGRIND/default.supp" \
+ $TOOL_OPTIONS \
--log-fd=4 \
--input-fd=4 \
$GIT_VALGRIND_OPTIONS \