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 2864 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
2875 ['clang==1', { | 2875 ['clang==1', { |
2876 'variables': { | 2876 'variables': { |
2877 'clang_dir': '../third_party/llvm-build/Release+Asserts/bin', | 2877 'clang_dir': '../third_party/llvm-build/Release+Asserts/bin', |
2878 }, | 2878 }, |
2879 }], | 2879 }], |
2880 ['asan==1', { | 2880 ['asan==1', { |
2881 'xcode_settings': { | 2881 'xcode_settings': { |
2882 'OTHER_CFLAGS': [ | 2882 'OTHER_CFLAGS': [ |
2883 '-faddress-sanitizer', | 2883 '-faddress-sanitizer', |
2884 ], | 2884 ], |
2885 'OTHER_LDFLAGS': [ | 2885 'target_conditions': [ |
2886 '-faddress-sanitizer', | 2886 ['_type!="static_library"', { |
2887 # The symbols below are referenced in the ASan runtime | 2887 'xcode_settings': { |
2888 # library (compiled on OS X 10.6), but may be unavailable | 2888 'OTHER_LDFLAGS': [ |
2889 # on the prior OS X versions. Because Chromium is currently | 2889 '-faddress-sanitizer', |
2890 # targeting 10.5.0, we need to explicitly mark these | 2890 # The symbols below are referenced in the ASan runtime |
2891 # symbols as dynamic_lookup. | 2891 # library (compiled on OS X 10.6), but may be unavailable |
2892 '-Wl,-U,_malloc_default_purgeable_zone', | 2892 # on the prior OS X versions. Because Chromium is |
2893 '-Wl,-U,_malloc_zone_memalign', | 2893 # currently targeting 10.5.0, we need to explicitly mark |
2894 '-Wl,-U,_dispatch_sync_f', | 2894 # these symbols as dynamic_lookup. |
2895 '-Wl,-U,_dispatch_async_f', | 2895 '-Wl,-U,_malloc_default_purgeable_zone', |
2896 '-Wl,-U,_dispatch_barrier_async_f', | 2896 '-Wl,-U,_malloc_zone_memalign', |
2897 '-Wl,-U,_dispatch_group_async_f', | 2897 '-Wl,-U,_dispatch_sync_f', |
2898 '-Wl,-U,_dispatch_after_f', | 2898 '-Wl,-U,_dispatch_async_f', |
2899 '-Wl,-U,_dispatch_barrier_async_f', | |
2900 '-Wl,-U,_dispatch_group_async_f', | |
2901 '-Wl,-U,_dispatch_after_f', | |
Nico
2012/08/24 01:44:17
glider: Can this be removed, now that we're 10.6+
| |
2902 ], | |
2903 }, | |
2904 }], | |
2899 ], | 2905 ], |
2900 }, | 2906 }, |
2901 'defines': [ | 2907 'defines': [ |
2902 'ADDRESS_SANITIZER', | 2908 'ADDRESS_SANITIZER', |
2903 ], | 2909 ], |
2904 }], | 2910 }], |
2905 ], | 2911 ], |
2906 'target_conditions': [ | 2912 'target_conditions': [ |
2907 ['_type!="static_library"', { | 2913 ['_type!="static_library"', { |
2908 'xcode_settings': {'OTHER_LDFLAGS': ['-Wl,-search_paths_first']}, | 2914 'xcode_settings': {'OTHER_LDFLAGS': ['-Wl,-search_paths_first']}, |
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
2950 'variables': { | 2956 'variables': { |
2951 'asan_saves_file': 'asan.saves', | 2957 'asan_saves_file': 'asan.saves', |
2952 }, | 2958 }, |
2953 'xcode_settings': { | 2959 'xcode_settings': { |
2954 'CHROMIUM_STRIP_SAVE_FILE': '<(asan_saves_file)', | 2960 'CHROMIUM_STRIP_SAVE_FILE': '<(asan_saves_file)', |
2955 }, | 2961 }, |
2956 }], | 2962 }], |
2957 ], | 2963 ], |
2958 'target_conditions': [ | 2964 'target_conditions': [ |
2959 ['mac_pie==1 and release_valgrind_build==0', { | 2965 ['mac_pie==1 and release_valgrind_build==0', { |
2960 # Turn on position-independence (ASLR) for executables. When | 2966 'target_conditions': [ |
2961 # PIE is on for the Chrome executables, the framework will | 2967 ['_type!="static_library"', { |
2962 # also be subject to ASLR. | 2968 'xcode_settings': { |
2963 # Don't do this when building for Valgrind, because Valgrind | 2969 # Turn on position-independence (ASLR) for executables. |
2964 # doesn't understand slide. TODO: Make Valgrind on Mac OS X | 2970 # When PIE is on for the Chrome executables, the |
2965 # understand slide, and get rid of the Valgrind check. | 2971 # framework will also be subject to ASLR. Don't do this |
2966 'xcode_settings': { | 2972 # when building for Valgrind, because Valgrind doesn't |
2967 'OTHER_LDFLAGS': [ | 2973 # understand slide. TODO: Make Valgrind on Mac OS X |
2968 '-Wl,-pie', # Position-independent executable (MH_PIE) | 2974 # understand slide, and get rid of the Valgrind check. |
2969 ], | 2975 'xcode_settings': { |
2970 }, | 2976 'OTHER_LDFLAGS': [ |
2977 '-Wl,-pie', # Position-independent executable (MH_PIE) | |
2978 ], | |
2979 }, | |
2980 }, | |
2981 }], | |
2982 ], | |
2971 }], | 2983 }], |
2972 ], | 2984 ], |
2973 }], | 2985 }], |
2974 ['(_type=="executable" or _type=="shared_library" or \ | 2986 ['(_type=="executable" or _type=="shared_library" or \ |
2975 _type=="loadable_module") and mac_strip!=0', { | 2987 _type=="loadable_module") and mac_strip!=0', { |
2976 'target_conditions': [ | 2988 'target_conditions': [ |
2977 ['mac_real_dsym == 1', { | 2989 ['mac_real_dsym == 1', { |
2978 # To get a real .dSYM bundle produced by dsymutil, set the | 2990 # To get a real .dSYM bundle produced by dsymutil, set the |
2979 # debug information format to dwarf-with-dsym. Since | 2991 # debug information format to dwarf-with-dsym. Since |
2980 # strip_from_xcode will not be used, set Xcode to do the | 2992 # strip_from_xcode will not be used, set Xcode to do the |
(...skipping 414 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
3395 # settings in target dicts. SYMROOT is a special case, because many other | 3407 # settings in target dicts. SYMROOT is a special case, because many other |
3396 # Xcode variables depend on it, including variables such as | 3408 # Xcode variables depend on it, including variables such as |
3397 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something | 3409 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something |
3398 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the | 3410 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the |
3399 # files to appear (when present) in the UI as actual files and not red | 3411 # files to appear (when present) in the UI as actual files and not red |
3400 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, | 3412 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, |
3401 # and therefore SYMROOT, needs to be set at the project level. | 3413 # and therefore SYMROOT, needs to be set at the project level. |
3402 'SYMROOT': '<(DEPTH)/xcodebuild', | 3414 'SYMROOT': '<(DEPTH)/xcodebuild', |
3403 }, | 3415 }, |
3404 } | 3416 } |
OLD | NEW |