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

Side by Side Diff: build/common.gypi

Issue 339663009: MSan: introduce a GYP flag to control origin tracking. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 6 months 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 | « base/base.gyp ('k') | 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 335 matching lines...) Expand 10 before | Expand all | Expand 10 after
346 # Run tools/clang/scripts/update.sh to make sure they are compiled. 346 # Run tools/clang/scripts/update.sh to make sure they are compiled.
347 # This causes 'clang_chrome_plugins_flags' to be set. 347 # This causes 'clang_chrome_plugins_flags' to be set.
348 # Has no effect if 'clang' is not set as well. 348 # Has no effect if 'clang' is not set as well.
349 'clang_use_chrome_plugins%': 1, 349 'clang_use_chrome_plugins%': 1,
350 350
351 # Enable building with ASAN (Clang's -fsanitize=address option). 351 # Enable building with ASAN (Clang's -fsanitize=address option).
352 # -fsanitize=address only works with clang, but asan=1 implies clang=1 352 # -fsanitize=address only works with clang, but asan=1 implies clang=1
353 # See https://sites.google.com/a/chromium.org/dev/developers/testing/addre sssanitizer 353 # See https://sites.google.com/a/chromium.org/dev/developers/testing/addre sssanitizer
354 'asan%': 0, 354 'asan%': 0,
355 # Enable coverage gathering instrumentation in ASan. This flag also 355 # Enable coverage gathering instrumentation in ASan. This flag also
356 # controls coverage granularity (experimental). 356 # controls coverage granularity (1 for function-level coverage, 2 for
357 # block-level coverage).
357 'asan_coverage%': 0, 358 'asan_coverage%': 0,
358 359
359 # Enable Chromium overrides of the default configurations for various 360 # Enable Chromium overrides of the default configurations for various
360 # dynamic tools (like ASan). 361 # dynamic tools (like ASan).
361 'use_sanitizer_options%': 1, 362 'use_sanitizer_options%': 1,
362 363
363 # Enable building with SyzyAsan. 364 # Enable building with SyzyAsan.
364 # See https://code.google.com/p/sawbuck/wiki/SyzyASanHowTo 365 # See https://code.google.com/p/sawbuck/wiki/SyzyASanHowTo
365 'syzyasan%': 0, 366 'syzyasan%': 0,
366 367
367 # Enable building with LSan (Clang's -fsanitize=leak option). 368 # Enable building with LSan (Clang's -fsanitize=leak option).
368 # -fsanitize=leak only works with clang, but lsan=1 implies clang=1 369 # -fsanitize=leak only works with clang, but lsan=1 implies clang=1
369 # See https://sites.google.com/a/chromium.org/dev/developers/testing/leaks anitizer 370 # See https://sites.google.com/a/chromium.org/dev/developers/testing/leaks anitizer
370 'lsan%': 0, 371 'lsan%': 0,
371 372
372 # Enable building with TSan (Clang's -fsanitize=thread option). 373 # Enable building with TSan (Clang's -fsanitize=thread option).
373 # -fsanitize=thread only works with clang, but tsan=1 implies clang=1 374 # -fsanitize=thread only works with clang, but tsan=1 implies clang=1
374 # See http://clang.llvm.org/docs/ThreadSanitizer.html 375 # See http://clang.llvm.org/docs/ThreadSanitizer.html
375 'tsan%': 0, 376 'tsan%': 0,
376 'tsan_blacklist%': '<(PRODUCT_DIR)/../../tools/valgrind/tsan_v2/ignores.tx t', 377 'tsan_blacklist%': '<(PRODUCT_DIR)/../../tools/valgrind/tsan_v2/ignores.tx t',
377 378
378 # Enable building with MSan (Clang's -fsanitize=memory option). 379 # Enable building with MSan (Clang's -fsanitize=memory option).
379 # MemorySanitizer only works with clang, but msan=1 implies clang=1 380 # MemorySanitizer only works with clang, but msan=1 implies clang=1
380 # See http://clang.llvm.org/docs/MemorySanitizer.html 381 # See http://clang.llvm.org/docs/MemorySanitizer.html
381 'msan%': 0, 382 'msan%': 0,
382 'msan_blacklist%': '<(PRODUCT_DIR)/../../tools/msan/blacklist.txt', 383 'msan_blacklist%': '<(PRODUCT_DIR)/../../tools/msan/blacklist.txt',
384 # Track where uninitialized memory originates from. From fastest to
385 # slowest: 0 - no tracking, 1 - track only the initial allocation site, 2
386 # - track the chain of stores leading from allocation site to use site.
387 'msan_track_origins%': 1,
383 388
384 # Enable building with UBSan (Clang's -fsanitize=undefined option). 389 # Enable building with UBSan (Clang's -fsanitize=undefined option).
385 # -fsanitize=undefined only works with clang, but ubsan=1 implies clang=1 390 # -fsanitize=undefined only works with clang, but ubsan=1 implies clang=1
386 # See http://clang.llvm.org/docs/UsersManual.html 391 # See http://clang.llvm.org/docs/UsersManual.html
387 'ubsan%': 0, 392 'ubsan%': 0,
388 393
389 # Use the dynamic libraries instrumented by one of the sanitizers 394 # Use the dynamic libraries instrumented by one of the sanitizers
390 # instead of the standard system libraries. 395 # instead of the standard system libraries.
391 'use_instrumented_libraries%': 0, 396 'use_instrumented_libraries%': 0,
392 397
(...skipping 666 matching lines...) Expand 10 before | Expand all | Expand 10 after
1059 'clang_use_chrome_plugins%': '<(clang_use_chrome_plugins)', 1064 'clang_use_chrome_plugins%': '<(clang_use_chrome_plugins)',
1060 'mac_want_real_dsym%': '<(mac_want_real_dsym)', 1065 'mac_want_real_dsym%': '<(mac_want_real_dsym)',
1061 'asan%': '<(asan)', 1066 'asan%': '<(asan)',
1062 'asan_coverage%': '<(asan_coverage)', 1067 'asan_coverage%': '<(asan_coverage)',
1063 'use_sanitizer_options%': '<(use_sanitizer_options)', 1068 'use_sanitizer_options%': '<(use_sanitizer_options)',
1064 'syzyasan%': '<(syzyasan)', 1069 'syzyasan%': '<(syzyasan)',
1065 'syzygy_optimize%': '<(syzygy_optimize)', 1070 'syzygy_optimize%': '<(syzygy_optimize)',
1066 'lsan%': '<(lsan)', 1071 'lsan%': '<(lsan)',
1067 'msan%': '<(msan)', 1072 'msan%': '<(msan)',
1068 'msan_blacklist%': '<(msan_blacklist)', 1073 'msan_blacklist%': '<(msan_blacklist)',
1074 'msan_track_origins%': '<(msan_track_origins)',
1069 'tsan%': '<(tsan)', 1075 'tsan%': '<(tsan)',
1070 'tsan_blacklist%': '<(tsan_blacklist)', 1076 'tsan_blacklist%': '<(tsan_blacklist)',
1071 'ubsan%': '<(ubsan)', 1077 'ubsan%': '<(ubsan)',
1072 'use_instrumented_libraries%': '<(use_instrumented_libraries)', 1078 'use_instrumented_libraries%': '<(use_instrumented_libraries)',
1073 'use_custom_libcxx%': '<(use_custom_libcxx)', 1079 'use_custom_libcxx%': '<(use_custom_libcxx)',
1074 'clang_type_profiler%': '<(clang_type_profiler)', 1080 'clang_type_profiler%': '<(clang_type_profiler)',
1075 'order_profiling%': '<(order_profiling)', 1081 'order_profiling%': '<(order_profiling)',
1076 'order_text_section%': '<(order_text_section)', 1082 'order_text_section%': '<(order_text_section)',
1077 'enable_extensions%': '<(enable_extensions)', 1083 'enable_extensions%': '<(enable_extensions)',
1078 'enable_plugin_installation%': '<(enable_plugin_installation)', 1084 'enable_plugin_installation%': '<(enable_plugin_installation)',
(...skipping 2891 matching lines...) Expand 10 before | Expand all | Expand 10 after
3970 }], 3976 }],
3971 ], 3977 ],
3972 }], 3978 }],
3973 ], 3979 ],
3974 }], 3980 }],
3975 ['msan==1', { 3981 ['msan==1', {
3976 'target_conditions': [ 3982 'target_conditions': [
3977 ['_toolset=="target"', { 3983 ['_toolset=="target"', {
3978 'cflags': [ 3984 'cflags': [
3979 '-fsanitize=memory', 3985 '-fsanitize=memory',
3980 '-fsanitize-memory-track-origins', 3986 '-fsanitize-memory-track-origins=<(msan_track_origins)',
3981 '-fPIC', 3987 '-fPIC',
3982 '-fsanitize-blacklist=<(msan_blacklist)', 3988 '-fsanitize-blacklist=<(msan_blacklist)',
3983 ], 3989 ],
3984 'ldflags': [ 3990 'ldflags': [
3985 '-fsanitize=memory', 3991 '-fsanitize=memory',
3986 ], 3992 ],
3987 'defines': [ 3993 'defines': [
3988 'MEMORY_SANITIZER', 3994 'MEMORY_SANITIZER',
3989 ], 3995 ],
3990 'target_conditions': [ 3996 'target_conditions': [
(...skipping 1490 matching lines...) Expand 10 before | Expand all | Expand 10 after
5481 # settings in target dicts. SYMROOT is a special case, because many other 5487 # settings in target dicts. SYMROOT is a special case, because many other
5482 # Xcode variables depend on it, including variables such as 5488 # Xcode variables depend on it, including variables such as
5483 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something 5489 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something
5484 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the 5490 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the
5485 # files to appear (when present) in the UI as actual files and not red 5491 # files to appear (when present) in the UI as actual files and not red
5486 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, 5492 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR,
5487 # and therefore SYMROOT, needs to be set at the project level. 5493 # and therefore SYMROOT, needs to be set at the project level.
5488 'SYMROOT': '<(DEPTH)/xcodebuild', 5494 'SYMROOT': '<(DEPTH)/xcodebuild',
5489 }, 5495 },
5490 } 5496 }
OLDNEW
« no previous file with comments | « base/base.gyp ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698