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 322 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
333 | 333 |
334 # Enable building with MSAN (Clang's -fsanitize=memory option). | 334 # Enable building with MSAN (Clang's -fsanitize=memory option). |
335 # MemorySanitizer only works with clang, but msan=1 implies clang=1 | 335 # MemorySanitizer only works with clang, but msan=1 implies clang=1 |
336 # See http://clang.llvm.org/docs/MemorySanitizer.html | 336 # See http://clang.llvm.org/docs/MemorySanitizer.html |
337 'msan%': 0, | 337 'msan%': 0, |
338 | 338 |
339 # Use the dynamic libraries instrumented by one of the sanitizers | 339 # Use the dynamic libraries instrumented by one of the sanitizers |
340 # instead of the standard system libraries. | 340 # instead of the standard system libraries. |
341 'use_instrumented_libraries%': 0, | 341 'use_instrumented_libraries%': 0, |
342 | 342 |
| 343 # Use libc++ instead of stdlibc++ as standard library for final binary. |
| 344 'use_libcxx%': 0, |
| 345 |
343 # Use a modified version of Clang to intercept allocated types and sizes | 346 # Use a modified version of Clang to intercept allocated types and sizes |
344 # for allocated objects. clang_type_profiler=1 implies clang=1. | 347 # for allocated objects. clang_type_profiler=1 implies clang=1. |
345 # See http://dev.chromium.org/developers/deep-memory-profiler/cpp-object-t
ype-identifier | 348 # See http://dev.chromium.org/developers/deep-memory-profiler/cpp-object-t
ype-identifier |
346 # TODO(dmikurube): Support mac. See http://crbug.com/123758#c11 | 349 # TODO(dmikurube): Support mac. See http://crbug.com/123758#c11 |
347 'clang_type_profiler%': 0, | 350 'clang_type_profiler%': 0, |
348 | 351 |
349 # Set to true to instrument the code with function call logger. | 352 # Set to true to instrument the code with function call logger. |
350 # See src/third_party/cygprofile/cyg-profile.cc for details. | 353 # See src/third_party/cygprofile/cyg-profile.cc for details. |
351 'order_profiling%': 0, | 354 'order_profiling%': 0, |
352 | 355 |
(...skipping 548 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
901 'input_speech%': '<(input_speech)', | 904 'input_speech%': '<(input_speech)', |
902 'notifications%': '<(notifications)', | 905 'notifications%': '<(notifications)', |
903 'clang_use_chrome_plugins%': '<(clang_use_chrome_plugins)', | 906 'clang_use_chrome_plugins%': '<(clang_use_chrome_plugins)', |
904 'mac_want_real_dsym%': '<(mac_want_real_dsym)', | 907 'mac_want_real_dsym%': '<(mac_want_real_dsym)', |
905 'asan%': '<(asan)', | 908 'asan%': '<(asan)', |
906 'lsan%': '<(lsan)', | 909 'lsan%': '<(lsan)', |
907 'msan%': '<(msan)', | 910 'msan%': '<(msan)', |
908 'tsan%': '<(tsan)', | 911 'tsan%': '<(tsan)', |
909 'tsan_blacklist%': '<(tsan_blacklist)', | 912 'tsan_blacklist%': '<(tsan_blacklist)', |
910 'use_instrumented_libraries%': '<(use_instrumented_libraries)', | 913 'use_instrumented_libraries%': '<(use_instrumented_libraries)', |
| 914 'use_libcxx%': '<(use_libcxx)', |
911 'clang_type_profiler%': '<(clang_type_profiler)', | 915 'clang_type_profiler%': '<(clang_type_profiler)', |
912 'order_profiling%': '<(order_profiling)', | 916 'order_profiling%': '<(order_profiling)', |
913 'order_text_section%': '<(order_text_section)', | 917 'order_text_section%': '<(order_text_section)', |
914 'enable_extensions%': '<(enable_extensions)', | 918 'enable_extensions%': '<(enable_extensions)', |
915 'enable_plugin_installation%': '<(enable_plugin_installation)', | 919 'enable_plugin_installation%': '<(enable_plugin_installation)', |
916 'enable_plugins%': '<(enable_plugins)', | 920 'enable_plugins%': '<(enable_plugins)', |
917 'enable_session_service%': '<(enable_session_service)', | 921 'enable_session_service%': '<(enable_session_service)', |
918 'enable_themes%': '<(enable_themes)', | 922 'enable_themes%': '<(enable_themes)', |
919 'enable_autofill_dialog%': '<(enable_autofill_dialog)', | 923 'enable_autofill_dialog%': '<(enable_autofill_dialog)', |
920 'enable_background%': '<(enable_background)', | 924 'enable_background%': '<(enable_background)', |
(...skipping 2526 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3447 'ldflags': [ | 3451 'ldflags': [ |
3448 # Add RPATH to result binary to make it linking instrument
ed libraries ($ORIGIN means relative RPATH) | 3452 # Add RPATH to result binary to make it linking instrument
ed libraries ($ORIGIN means relative RPATH) |
3449 '-Wl,-R,\$$ORIGIN/instrumented_libraries/asan/lib/:\$$ORIG
IN/instrumented_libraries/asan/usr/lib/x86_64-linux-gnu/', | 3453 '-Wl,-R,\$$ORIGIN/instrumented_libraries/asan/lib/:\$$ORIG
IN/instrumented_libraries/asan/usr/lib/x86_64-linux-gnu/', |
3450 '-Wl,-z,origin', | 3454 '-Wl,-z,origin', |
3451 ], | 3455 ], |
3452 }], | 3456 }], |
3453 ], | 3457 ], |
3454 }], | 3458 }], |
3455 ], | 3459 ], |
3456 }], | 3460 }], |
| 3461 ['use_libcxx==1', { |
| 3462 'dependencies': [ |
| 3463 '<(DEPTH)/third_party/libc++/libc++.gyp:libc++', |
| 3464 '<(DEPTH)/third_party/libc++abi/libc++abi.gyp:libc++abi', |
| 3465 ], |
| 3466 }], |
3457 ['order_profiling!=0 and (chromeos==1 or OS=="linux" or OS=="android")
', { | 3467 ['order_profiling!=0 and (chromeos==1 or OS=="linux" or OS=="android")
', { |
3458 'target_conditions' : [ | 3468 'target_conditions' : [ |
3459 ['_toolset=="target"', { | 3469 ['_toolset=="target"', { |
3460 'cflags': [ | 3470 'cflags': [ |
3461 '-finstrument-functions', | 3471 '-finstrument-functions', |
3462 # Allow mmx intrinsics to inline, so that the | 3472 # Allow mmx intrinsics to inline, so that the |
3463 #0 compiler can expand the intrinsics. | 3473 #0 compiler can expand the intrinsics. |
3464 '-finstrument-functions-exclude-file-list=mmintrin.h', | 3474 '-finstrument-functions-exclude-file-list=mmintrin.h', |
3465 ], | 3475 ], |
3466 }], | 3476 }], |
(...skipping 1278 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4745 # settings in target dicts. SYMROOT is a special case, because many other | 4755 # settings in target dicts. SYMROOT is a special case, because many other |
4746 # Xcode variables depend on it, including variables such as | 4756 # Xcode variables depend on it, including variables such as |
4747 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something | 4757 # 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 | 4758 # 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 | 4759 # 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, | 4760 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, |
4751 # and therefore SYMROOT, needs to be set at the project level. | 4761 # and therefore SYMROOT, needs to be set at the project level. |
4752 'SYMROOT': '<(DEPTH)/xcodebuild', | 4762 'SYMROOT': '<(DEPTH)/xcodebuild', |
4753 }, | 4763 }, |
4754 } | 4764 } |
OLD | NEW |