Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(67)

Side by Side Diff: build/common.gypi

Issue 11363164: Use -fsanitize=thread instead of -fthread-sanitizer to compile with TSan. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 8 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 # Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be 2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file. 3 # found in the LICENSE file.
4 4
5 # IMPORTANT: 5 # IMPORTANT:
6 # Please don't directly include this file if you are building via gyp_chromium, 6 # Please don't directly include this file if you are building via gyp_chromium,
7 # since gyp_chromium is automatically forcing its inclusion. 7 # since gyp_chromium is automatically forcing its inclusion.
8 { 8 {
9 # Variables expected to be overriden on the GYP command line (-D) or by 9 # Variables expected to be overriden on the GYP command line (-D) or by
10 # ~/.gyp/include.gypi. 10 # ~/.gyp/include.gypi.
(...skipping 230 matching lines...) Expand 10 before | Expand all | Expand 10 after
241 # Run tools/clang/scripts/update.sh to make sure they are compiled. 241 # Run tools/clang/scripts/update.sh to make sure they are compiled.
242 # This causes 'clang_chrome_plugins_flags' to be set. 242 # This causes 'clang_chrome_plugins_flags' to be set.
243 # Has no effect if 'clang' is not set as well. 243 # Has no effect if 'clang' is not set as well.
244 'clang_use_chrome_plugins%': 1, 244 'clang_use_chrome_plugins%': 1,
245 245
246 # Enable building with ASAN (Clang's -faddress-sanitizer option). 246 # Enable building with ASAN (Clang's -faddress-sanitizer option).
247 # -faddress-sanitizer only works with clang, but asan=1 implies clang=1 247 # -faddress-sanitizer only works with clang, but asan=1 implies clang=1
248 # See https://sites.google.com/a/chromium.org/dev/developers/testing/addre sssanitizer 248 # See https://sites.google.com/a/chromium.org/dev/developers/testing/addre sssanitizer
249 'asan%': 0, 249 'asan%': 0,
250 250
251 # Enable building with TSAN (Clang's -fthread-sanitizer option). 251 # Enable building with TSAN (Clang's -fsanitize=thread option).
252 # -fthread-sanitizer only works with clang, but tsan=1 implies clang=1 252 # -fsanitize=thread only works with clang, but tsan=1 implies clang=1
253 # See http://clang.llvm.org/docs/ThreadSanitizer.html 253 # See http://clang.llvm.org/docs/ThreadSanitizer.html
254 'tsan%': 0, 254 'tsan%': 0,
255 'tsan_blacklist%': '<(PRODUCT_DIR)/../../tools/valgrind/tsan_v2/ignores.tx t', 255 'tsan_blacklist%': '<(PRODUCT_DIR)/../../tools/valgrind/tsan_v2/ignores.tx t',
256 256
257 # Use a modified version of Clang to intercept allocated types and sizes 257 # Use a modified version of Clang to intercept allocated types and sizes
258 # for allocated objects. clang_type_profiler=1 implies clang=1. 258 # for allocated objects. clang_type_profiler=1 implies clang=1.
259 # See http://dev.chromium.org/developers/deep-memory-profiler/cpp-object-t ype-identifier 259 # See http://dev.chromium.org/developers/deep-memory-profiler/cpp-object-t ype-identifier
260 # TODO(dmikurube): Support mac. See http://crbug.com/123758#c11 260 # TODO(dmikurube): Support mac. See http://crbug.com/123758#c11
261 'clang_type_profiler%': 0, 261 'clang_type_profiler%': 0,
262 262
(...skipping 2339 matching lines...) Expand 10 before | Expand all | Expand 10 after
2602 'defines': [ 2602 'defines': [
2603 'ADDRESS_SANITIZER', 2603 'ADDRESS_SANITIZER',
2604 ], 2604 ],
2605 }], 2605 }],
2606 ], 2606 ],
2607 }], 2607 }],
2608 ['tsan==1', { 2608 ['tsan==1', {
2609 'target_conditions': [ 2609 'target_conditions': [
2610 ['_toolset=="target"', { 2610 ['_toolset=="target"', {
2611 'cflags': [ 2611 'cflags': [
2612 '-fthread-sanitizer', 2612 '-fsanitize=thread',
2613 '-fno-omit-frame-pointer', 2613 '-fno-omit-frame-pointer',
2614 '-fPIE', 2614 '-fPIE',
2615 '-mllvm', '-tsan-blacklist=<(tsan_blacklist)' 2615 '-mllvm', '-tsan-blacklist=<(tsan_blacklist)',
2616 # See http://crbug.com/159580
2617 '-w',
2618 ], 2616 ],
2619 'ldflags': [ 2617 'ldflags': [
2620 '-fthread-sanitizer', 2618 '-fsanitize=thread',
2621 ], 2619 ],
2622 'defines': [ 2620 'defines': [
2623 'THREAD_SANITIZER', 2621 'THREAD_SANITIZER',
2624 'DYNAMIC_ANNOTATIONS_EXTERNAL_IMPL=1', 2622 'DYNAMIC_ANNOTATIONS_EXTERNAL_IMPL=1',
2625 'WTF_USE_DYNAMIC_ANNOTATIONS_NOIMPL=1', 2623 'WTF_USE_DYNAMIC_ANNOTATIONS_NOIMPL=1',
2626 ], 2624 ],
2627 'target_conditions': [ 2625 'target_conditions': [
2628 ['_type=="executable"', { 2626 ['_type=="executable"', {
2629 'ldflags': [ 2627 'ldflags': [
2630 '-pie', 2628 '-pie',
(...skipping 1104 matching lines...) Expand 10 before | Expand all | Expand 10 after
3735 # settings in target dicts. SYMROOT is a special case, because many other 3733 # settings in target dicts. SYMROOT is a special case, because many other
3736 # Xcode variables depend on it, including variables such as 3734 # Xcode variables depend on it, including variables such as
3737 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something 3735 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something
3738 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the 3736 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the
3739 # files to appear (when present) in the UI as actual files and not red 3737 # files to appear (when present) in the UI as actual files and not red
3740 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, 3738 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR,
3741 # and therefore SYMROOT, needs to be set at the project level. 3739 # and therefore SYMROOT, needs to be set at the project level.
3742 'SYMROOT': '<(DEPTH)/xcodebuild', 3740 'SYMROOT': '<(DEPTH)/xcodebuild',
3743 }, 3741 },
3744 } 3742 }
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698