OLD | NEW |
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 Loading... |
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 Loading... |
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 Loading... |
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 Loading... |
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 } |
OLD | NEW |