OLD | NEW |
1 #!/bin/sh | 1 #!/bin/sh |
2 | 2 |
3 # Copyright (c) 2009-2010 The Chromium Authors. All rights reserved. | 3 # Copyright (c) 2009-2010 The Chromium Authors. All rights reserved. |
4 # Use of this source code is governed by a BSD-style license that can be | 4 # Use of this source code is governed by a BSD-style license that can be |
5 # found in the LICENSE file. | 5 # found in the LICENSE file. |
6 | 6 |
7 # Script to build ThreadSanitizer binaries for use with chromium | 7 # Script to build ThreadSanitizer binaries for use with chromium |
8 source common.sh | 8 source common.sh |
9 | 9 |
10 POST_BUILD_HOOK_DEFINED=yes | 10 POST_BUILD_HOOK_DEFINED=yes |
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
43 svn co -r "$TSAN_REV" http://data-race-test.googlecode.com/svn/trunk $TSAN_DIR | 43 svn co -r "$TSAN_REV" http://data-race-test.googlecode.com/svn/trunk $TSAN_DIR |
44 | 44 |
45 # The separate .sh file defines Valgrind/VEX revisions. | 45 # The separate .sh file defines Valgrind/VEX revisions. |
46 source "tsan/third_party/valgrind_rev.sh" | 46 source "tsan/third_party/valgrind_rev.sh" |
47 | 47 |
48 VG_TSAN_DIR="$THISDIR/valgrind-tsan" # Directory to checkout Valgrind sources | 48 VG_TSAN_DIR="$THISDIR/valgrind-tsan" # Directory to checkout Valgrind sources |
49 checkout_and_patch_valgrind "$VALGRIND_REV" "$VEX_REV" "$VG_TSAN_DIR" | 49 checkout_and_patch_valgrind "$VALGRIND_REV" "$VEX_REV" "$VG_TSAN_DIR" |
50 | 50 |
51 cd "$VG_TSAN_DIR" | 51 cd "$VG_TSAN_DIR" |
52 | 52 |
53 # Apply TSan-specific patches except: | 53 # Apply TSan-specific patches except |
54 # * limits (buggy on Mac) | 54 # * limits |
55 # * guest_amd64_toIR (already applied in common.sh). | 55 # * guest_amd64_toIR |
| 56 # since they are already applied in common.sh. |
56 rm "$THISDIR"/tsan/valgrind_patches/{limits,guest_amd64_toIR}.patch | 57 rm "$THISDIR"/tsan/valgrind_patches/{limits,guest_amd64_toIR}.patch |
57 for P in "$THISDIR"/tsan/valgrind_patches/*.patch | 58 for P in "$THISDIR"/tsan/valgrind_patches/*.patch |
58 do | 59 do |
59 patch -p0 -i $P | 60 patch -p0 -i $P |
60 done | 61 done |
61 | 62 |
62 if [ `uname -s` == "Darwin" ] | 63 if [ `uname -s` == "Darwin" ] |
63 then | 64 then |
64 if ls /opt/local/bin/ | grep "^gcc-mp-4\.4" >/dev/null | 65 if ls /opt/local/bin/ | grep "^gcc-mp-4\.4" >/dev/null |
65 then | 66 then |
(...skipping 15 matching lines...) Expand all Loading... |
81 fi | 82 fi |
82 fi | 83 fi |
83 fi | 84 fi |
84 | 85 |
85 # Ugly hack! | 86 # Ugly hack! |
86 # We build Valrgind binaries in the $VG_TSAN_DIR/out and then pack | 87 # We build Valrgind binaries in the $VG_TSAN_DIR/out and then pack |
87 # them into self-contained .sh file into $ORIG_BINARIES_DIR/$PLATFORM | 88 # them into self-contained .sh file into $ORIG_BINARIES_DIR/$PLATFORM |
88 ORIG_BINARIES_DIR=$BINARIES_DIR | 89 ORIG_BINARIES_DIR=$BINARIES_DIR |
89 BINARIES_DIR="$VG_TSAN_DIR/out" | 90 BINARIES_DIR="$VG_TSAN_DIR/out" |
90 build_valgrind_for_available_platforms | 91 build_valgrind_for_available_platforms |
OLD | NEW |