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 291 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
302 # -fsanitize=thread only works with clang, but tsan=1 implies clang=1 | 302 # -fsanitize=thread only works with clang, but tsan=1 implies clang=1 |
303 # See http://clang.llvm.org/docs/ThreadSanitizer.html | 303 # See http://clang.llvm.org/docs/ThreadSanitizer.html |
304 'tsan%': 0, | 304 'tsan%': 0, |
305 'tsan_blacklist%': '<(PRODUCT_DIR)/../../tools/valgrind/tsan_v2/ignores.tx t', | 305 'tsan_blacklist%': '<(PRODUCT_DIR)/../../tools/valgrind/tsan_v2/ignores.tx t', |
306 | 306 |
307 # Enable building with MSAN (Clang's -fsanitize=memory option). | 307 # Enable building with MSAN (Clang's -fsanitize=memory option). |
308 # MemorySanitizer only works with clang, but msan=1 implies clang=1 | 308 # MemorySanitizer only works with clang, but msan=1 implies clang=1 |
309 # See http://clang.llvm.org/docs/MemorySanitizer.html | 309 # See http://clang.llvm.org/docs/MemorySanitizer.html |
310 'msan%': 0, | 310 'msan%': 0, |
311 | 311 |
312 # Use the dynamic libraries instrumented by one of the sanitizers | |
313 # instead of the standard system libraries. | |
314 'use_instrumented_libraries%': 0, | |
315 | |
312 # Use a modified version of Clang to intercept allocated types and sizes | 316 # Use a modified version of Clang to intercept allocated types and sizes |
313 # for allocated objects. clang_type_profiler=1 implies clang=1. | 317 # for allocated objects. clang_type_profiler=1 implies clang=1. |
314 # See http://dev.chromium.org/developers/deep-memory-profiler/cpp-object-t ype-identifier | 318 # See http://dev.chromium.org/developers/deep-memory-profiler/cpp-object-t ype-identifier |
315 # TODO(dmikurube): Support mac. See http://crbug.com/123758#c11 | 319 # TODO(dmikurube): Support mac. See http://crbug.com/123758#c11 |
316 'clang_type_profiler%': 0, | 320 'clang_type_profiler%': 0, |
317 | 321 |
318 # Set to true to instrument the code with function call logger. | 322 # Set to true to instrument the code with function call logger. |
319 # See src/third_party/cygprofile/cyg-profile.cc for details. | 323 # See src/third_party/cygprofile/cyg-profile.cc for details. |
320 'order_profiling%': 0, | 324 'order_profiling%': 0, |
321 | 325 |
(...skipping 511 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
833 'safe_browsing%': '<(safe_browsing)', | 837 'safe_browsing%': '<(safe_browsing)', |
834 'input_speech%': '<(input_speech)', | 838 'input_speech%': '<(input_speech)', |
835 'notifications%': '<(notifications)', | 839 'notifications%': '<(notifications)', |
836 'clang_use_chrome_plugins%': '<(clang_use_chrome_plugins)', | 840 'clang_use_chrome_plugins%': '<(clang_use_chrome_plugins)', |
837 'mac_want_real_dsym%': '<(mac_want_real_dsym)', | 841 'mac_want_real_dsym%': '<(mac_want_real_dsym)', |
838 'asan%': '<(asan)', | 842 'asan%': '<(asan)', |
839 'lsan%': '<(lsan)', | 843 'lsan%': '<(lsan)', |
840 'msan%': '<(msan)', | 844 'msan%': '<(msan)', |
841 'tsan%': '<(tsan)', | 845 'tsan%': '<(tsan)', |
842 'tsan_blacklist%': '<(tsan_blacklist)', | 846 'tsan_blacklist%': '<(tsan_blacklist)', |
847 'use_instrumented_libraries%': '<(use_instrumented_libraries)', | |
843 'clang_type_profiler%': '<(clang_type_profiler)', | 848 'clang_type_profiler%': '<(clang_type_profiler)', |
844 'order_profiling%': '<(order_profiling)', | 849 'order_profiling%': '<(order_profiling)', |
845 'order_text_section%': '<(order_text_section)', | 850 'order_text_section%': '<(order_text_section)', |
846 'enable_extensions%': '<(enable_extensions)', | 851 'enable_extensions%': '<(enable_extensions)', |
847 'enable_plugin_installation%': '<(enable_plugin_installation)', | 852 'enable_plugin_installation%': '<(enable_plugin_installation)', |
848 'enable_plugins%': '<(enable_plugins)', | 853 'enable_plugins%': '<(enable_plugins)', |
849 'enable_session_service%': '<(enable_session_service)', | 854 'enable_session_service%': '<(enable_session_service)', |
850 'enable_themes%': '<(enable_themes)', | 855 'enable_themes%': '<(enable_themes)', |
851 'enable_autofill_dialog%': '<(enable_autofill_dialog)', | 856 'enable_autofill_dialog%': '<(enable_autofill_dialog)', |
852 'enable_background%': '<(enable_background)', | 857 'enable_background%': '<(enable_background)', |
(...skipping 2506 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
3359 'target_conditions': [ | 3364 'target_conditions': [ |
3360 ['_type=="executable"', { | 3365 ['_type=="executable"', { |
3361 'ldflags': [ | 3366 'ldflags': [ |
3362 '-pie', | 3367 '-pie', |
3363 ], | 3368 ], |
3364 }], | 3369 }], |
3365 ], | 3370 ], |
3366 }], | 3371 }], |
3367 ], | 3372 ], |
3368 }], | 3373 }], |
3374 ['use_instrumented_libraries==1', { | |
3375 'dependencies': [ | |
Nico
2013/10/30 14:47:02
Why do you always need this but the rpath bit only
alextaran1
2013/10/30 16:08:54
We are going to have different instrumentation typ
| |
3376 '<(DEPTH)/third_party/instrumented_libraries/instrumented_librarie s.gyp:instrumented_libraries', | |
3377 ], | |
3378 'conditions': [ | |
3379 ['asan==1', { | |
3380 'target_conditions': [ | |
3381 ['_toolset=="target"', { | |
3382 'ldflags': [ | |
3383 # Add RPATH to result binary to make it linking instrument ed libraries ($ORIGIN means relative RPATH) | |
3384 '-Wl,-R,\\$$ORIGIN/instrumented_libraries/asan/lib/:\\$$OR IGIN/instrumented_libraries/asan/usr/lib/x86_64-linux-gnu/', | |
Nico
2013/10/30 14:47:02
Just one backslash in front of $ is enough (and co
alextaran1
2013/10/30 16:08:54
Done.
| |
3385 '-Wl,-z,origin', | |
3386 ], | |
3387 }], | |
3388 ], | |
3389 }], | |
3390 ], | |
3391 }], | |
3369 ['order_profiling!=0 and (chromeos==1 or OS=="linux" or OS=="android") ', { | 3392 ['order_profiling!=0 and (chromeos==1 or OS=="linux" or OS=="android") ', { |
3370 'target_conditions' : [ | 3393 'target_conditions' : [ |
3371 ['_toolset=="target"', { | 3394 ['_toolset=="target"', { |
3372 'cflags': [ | 3395 'cflags': [ |
3373 '-finstrument-functions', | 3396 '-finstrument-functions', |
3374 # Allow mmx intrinsics to inline, so that the | 3397 # Allow mmx intrinsics to inline, so that the |
3375 #0 compiler can expand the intrinsics. | 3398 #0 compiler can expand the intrinsics. |
3376 '-finstrument-functions-exclude-file-list=mmintrin.h', | 3399 '-finstrument-functions-exclude-file-list=mmintrin.h', |
3377 ], | 3400 ], |
3378 }], | 3401 }], |
(...skipping 1366 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
4745 # settings in target dicts. SYMROOT is a special case, because many other | 4768 # settings in target dicts. SYMROOT is a special case, because many other |
4746 # Xcode variables depend on it, including variables such as | 4769 # Xcode variables depend on it, including variables such as |
4747 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something | 4770 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something |
4748 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the | 4771 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the |
4749 # files to appear (when present) in the UI as actual files and not red | 4772 # files to appear (when present) in the UI as actual files and not red |
4750 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, | 4773 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, |
4751 # and therefore SYMROOT, needs to be set at the project level. | 4774 # and therefore SYMROOT, needs to be set at the project level. |
4752 'SYMROOT': '<(DEPTH)/xcodebuild', | 4775 'SYMROOT': '<(DEPTH)/xcodebuild', |
4753 }, | 4776 }, |
4754 } | 4777 } |
OLD | NEW |