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

Side by Side Diff: build/common.gypi

Issue 50423003: Adds a flag "use_instrumented_libraries" and corresponding target with 2 simple libs (Closed) Base URL: https://src.chromium.org/chrome/trunk/src/
Patch Set: Created 7 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
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 291 matching lines...) Expand 10 before | Expand all | Expand 10 after
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
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
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
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 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698