diff options
author | rnk@chromium.org <rnk@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-02-22 19:52:36 +0000 |
---|---|---|
committer | rnk@chromium.org <rnk@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-02-22 19:52:36 +0000 |
commit | ecff4ad16c217519108a36868210821cbe5e352f (patch) | |
tree | b992e1c4733ce4e107d30841acceae2f4c9d3950 /tools/valgrind/chrome_tests.sh | |
parent | ce1ce3066bfa2744d845ef29a34d976a13410bd7 (diff) | |
download | chromium_src-ecff4ad16c217519108a36868210821cbe5e352f.zip chromium_src-ecff4ad16c217519108a36868210821cbe5e352f.tar.gz chromium_src-ecff4ad16c217519108a36868210821cbe5e352f.tar.bz2 |
Make it possible to run tsan on Cygwin via chrome_tests.sh.
R=timurrrr@chromium.org
BUG=
TEST=
Review URL: https://chromiumcodereview.appspot.com/9430008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@123087 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'tools/valgrind/chrome_tests.sh')
-rwxr-xr-x | tools/valgrind/chrome_tests.sh | 32 |
1 files changed, 30 insertions, 2 deletions
diff --git a/tools/valgrind/chrome_tests.sh b/tools/valgrind/chrome_tests.sh index eaa70e0..73b7a1e 100755 --- a/tools/valgrind/chrome_tests.sh +++ b/tools/valgrind/chrome_tests.sh @@ -1,6 +1,6 @@ #!/bin/bash -# Copyright (c) 2011 The Chromium Authors. All rights reserved. +# Copyright (c) 2012 The Chromium Authors. All rights reserved. # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. @@ -36,7 +36,12 @@ case "$tool" in NEEDS_VALGRIND=1 ;; "tsan" | "tsan_rv") - NEEDS_VALGRIND=1 + if [ "`uname -s`" == CYGWIN* ] + then + NEEDS_PIN=1 + else + NEEDS_VALGRIND=1 + fi ;; "drmemory" | "drmemory_light" | "drmemory_full") NEEDS_DRMEMORY=1 @@ -80,5 +85,28 @@ then fi fi +if [ "$NEEDS_PIN" == "1" ] +then + if [ -z "$PIN_COMMAND" ] + then + # Set up PIN_COMMAND to invoke TSan. + TSAN_PATH="$THISDIR/../../third_party/tsan" + TSAN_SFX="$TSAN_PATH/tsan-x86-windows-sfx.exe" + echo "$TSAN_SFX" + if [ ! -f $TSAN_SFX ] + then + echo "Can't find ThreadSanitizer executables." + echo "See http://www.chromium.org/developers/how-tos/using-valgrind/threadsanitizer/threadsanitizer-on-windows" + echo "for the instructions on how to get them." + exit 1 + fi + + chmod +x "$TSAN_SFX" # Cygwin won't run it without +x. + "$TSAN_SFX" -o"$TSAN_PATH"/unpacked -y + export PIN_COMMAND="$TSAN_PATH/unpacked/tsan-x86-windows/tsan.bat" + fi +fi + + PYTHONPATH=$THISDIR/../python/google python \ "$THISDIR/chrome_tests.py" $ARGV_COPY |