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 596 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
607 'enable_service_discovery%': 0, | 607 'enable_service_discovery%': 0, |
608 'enable_wifi_bootstrapping%': 0, | 608 'enable_wifi_bootstrapping%': 0, |
609 'enable_hangout_services_extension%': 0, | 609 'enable_hangout_services_extension%': 0, |
610 | 610 |
611 # Enable the Syzygy optimization step. | 611 # Enable the Syzygy optimization step. |
612 'syzygy_optimize%': 0, | 612 'syzygy_optimize%': 0, |
613 | 613 |
614 # Enable hole punching for the protected video. | 614 # Enable hole punching for the protected video. |
615 'video_hole%': 0, | 615 'video_hole%': 0, |
616 | 616 |
617 # Temporary hack to allow us to unify blink's definitions of load | |
618 # completion. blink uses a crazy set of constraints to determine load | |
619 # completion, but only actually requires them for layout tests. However, | |
620 # we need to maintain all the old behaviors while the plumbing is put in | |
621 # place on both sides of the repo boundary. | |
622 'enable_load_completion_hacks%': 0, | |
623 | |
624 # Automatically select platforms under ozone. Turn this off to | 617 # Automatically select platforms under ozone. Turn this off to |
625 # build only explicitly selected platforms. | 618 # build only explicitly selected platforms. |
626 'ozone_auto_platforms%': 1, | 619 'ozone_auto_platforms%': 1, |
627 | 620 |
628 # If this is set clang is used as host compiler, but not as target | 621 # If this is set clang is used as host compiler, but not as target |
629 # compiler. Always do this by default. | 622 # compiler. Always do this by default. |
630 'host_clang%': 1, | 623 'host_clang%': 1, |
631 | 624 |
632 # Variables to control Link-Time Optimizations (LTO). | 625 # Variables to control Link-Time Optimizations (LTO). |
633 # Note: the variables must *not* be enabled at the same time. | 626 # Note: the variables must *not* be enabled at the same time. |
(...skipping 568 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1202 'enable_service_discovery%' : '<(enable_service_discovery)', | 1195 'enable_service_discovery%' : '<(enable_service_discovery)', |
1203 'enable_wifi_bootstrapping%': '<(enable_wifi_bootstrapping)', | 1196 'enable_wifi_bootstrapping%': '<(enable_wifi_bootstrapping)', |
1204 'enable_hangout_services_extension%' : '<(enable_hangout_services_extension)
', | 1197 'enable_hangout_services_extension%' : '<(enable_hangout_services_extension)
', |
1205 'v8_optimized_debug%': '<(v8_optimized_debug)', | 1198 'v8_optimized_debug%': '<(v8_optimized_debug)', |
1206 'proprietary_codecs%': '<(proprietary_codecs)', | 1199 'proprietary_codecs%': '<(proprietary_codecs)', |
1207 'use_goma%': '<(use_goma)', | 1200 'use_goma%': '<(use_goma)', |
1208 'gomadir%': '<(gomadir)', | 1201 'gomadir%': '<(gomadir)', |
1209 'use_lto%': '<(use_lto)', | 1202 'use_lto%': '<(use_lto)', |
1210 'use_lto_o2%': '<(use_lto_o2)', | 1203 'use_lto_o2%': '<(use_lto_o2)', |
1211 'video_hole%': '<(video_hole)', | 1204 'video_hole%': '<(video_hole)', |
1212 'enable_load_completion_hacks%': '<(enable_load_completion_hacks)', | |
1213 'support_pre_M6_history_database%': '<(support_pre_M6_history_database)', | 1205 'support_pre_M6_history_database%': '<(support_pre_M6_history_database)', |
1214 'v8_use_external_startup_data%': '<(v8_use_external_startup_data)', | 1206 'v8_use_external_startup_data%': '<(v8_use_external_startup_data)', |
1215 | 1207 |
1216 # Whether or not we are building the Athena shell. | 1208 # Whether or not we are building the Athena shell. |
1217 'use_athena%': '0', | 1209 'use_athena%': '0', |
1218 | 1210 |
1219 # Use system protobuf instead of bundled one. | 1211 # Use system protobuf instead of bundled one. |
1220 'use_system_protobuf%': 0, | 1212 'use_system_protobuf%': 0, |
1221 | 1213 |
1222 # Use system yasm instead of bundled one. | 1214 # Use system yasm instead of bundled one. |
(...skipping 931 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2154 ['asan==1 and OS=="linux" and chromeos==0', { | 2146 ['asan==1 and OS=="linux" and chromeos==0', { |
2155 'use_custom_libcxx%': 1, | 2147 'use_custom_libcxx%': 1, |
2156 }], | 2148 }], |
2157 ['ubsan==1', { | 2149 ['ubsan==1', { |
2158 'clang%': 1, | 2150 'clang%': 1, |
2159 }], | 2151 }], |
2160 ['ubsan_vptr==1', { | 2152 ['ubsan_vptr==1', { |
2161 'clang%': 1, | 2153 'clang%': 1, |
2162 }], | 2154 }], |
2163 ['asan==1 and OS=="mac"', { | 2155 ['asan==1 and OS=="mac"', { |
2164 # TODO(glider): we do not strip ASan binaries until the dynamic ASan | 2156 'mac_strip_release': 1, |
2165 # runtime is fully adopted. See http://crbug.com/242503. | |
2166 'mac_strip_release': 0, | |
2167 }], | 2157 }], |
2168 ['tsan==1', { | 2158 ['tsan==1', { |
2169 'use_custom_libcxx%': 1, | 2159 'use_custom_libcxx%': 1, |
2170 }], | 2160 }], |
2171 ['msan==1', { | 2161 ['msan==1', { |
2172 # Use a just-built, MSan-instrumented libc++ instead of the system-wide | 2162 # Use a just-built, MSan-instrumented libc++ instead of the system-wide |
2173 # libstdc++. This is required to avoid false positive reports whenever | 2163 # libstdc++. This is required to avoid false positive reports whenever |
2174 # the C++ standard library is used. | 2164 # the C++ standard library is used. |
2175 'use_custom_libcxx%': 1, | 2165 'use_custom_libcxx%': 1, |
2176 # Running the V8-generated code on an ARM simulator is a powerful hack | 2166 # Running the V8-generated code on an ARM simulator is a powerful hack |
(...skipping 797 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2974 }], | 2964 }], |
2975 ['enable_hangout_services_extension==1', { | 2965 ['enable_hangout_services_extension==1', { |
2976 'defines': ['ENABLE_HANGOUT_SERVICES_EXTENSION=1'], | 2966 'defines': ['ENABLE_HANGOUT_SERVICES_EXTENSION=1'], |
2977 }], | 2967 }], |
2978 ['enable_ipc_fuzzer==1', { | 2968 ['enable_ipc_fuzzer==1', { |
2979 'defines': ['ENABLE_IPC_FUZZER=1'], | 2969 'defines': ['ENABLE_IPC_FUZZER=1'], |
2980 }], | 2970 }], |
2981 ['video_hole==1', { | 2971 ['video_hole==1', { |
2982 'defines': ['VIDEO_HOLE=1'], | 2972 'defines': ['VIDEO_HOLE=1'], |
2983 }], | 2973 }], |
2984 ['enable_load_completion_hacks==1', { | |
2985 'defines': ['ENABLE_LOAD_COMPLETION_HACKS=1'], | |
2986 }], | |
2987 ['v8_use_external_startup_data==1', { | 2974 ['v8_use_external_startup_data==1', { |
2988 'defines': ['V8_USE_EXTERNAL_STARTUP_DATA'], | 2975 'defines': ['V8_USE_EXTERNAL_STARTUP_DATA'], |
2989 }], | 2976 }], |
2990 ], # conditions for 'target_defaults' | 2977 ], # conditions for 'target_defaults' |
2991 'target_conditions': [ | 2978 'target_conditions': [ |
2992 ['<(use_libpci)==1', { | 2979 ['<(use_libpci)==1', { |
2993 'defines': ['USE_LIBPCI=1'], | 2980 'defines': ['USE_LIBPCI=1'], |
2994 }], | 2981 }], |
2995 ['<(use_openssl)==1', { | 2982 ['<(use_openssl)==1', { |
2996 'defines': ['USE_OPENSSL=1'], | 2983 'defines': ['USE_OPENSSL=1'], |
(...skipping 385 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3382 # simply eliminates an explicit "/Oy", but both /O2 and /Ox | 3369 # simply eliminates an explicit "/Oy", but both /O2 and /Ox |
3383 # perform FPO regardless, so we must explicitly disable. | 3370 # perform FPO regardless, so we must explicitly disable. |
3384 # We still want the false setting above to avoid having | 3371 # We still want the false setting above to avoid having |
3385 # "/Oy /Oy-" and warnings about overriding. | 3372 # "/Oy /Oy-" and warnings about overriding. |
3386 'AdditionalOptions': ['/Oy-'], | 3373 'AdditionalOptions': ['/Oy-'], |
3387 }], | 3374 }], |
3388 ], | 3375 ], |
3389 'AdditionalOptions': [ | 3376 'AdditionalOptions': [ |
3390 '/d2Zi+', # Improve debugging of Release builds. | 3377 '/d2Zi+', # Improve debugging of Release builds. |
3391 '/Zc:inline', # Remove unreferenced COMDAT (faster links). | 3378 '/Zc:inline', # Remove unreferenced COMDAT (faster links). |
| 3379 '/Gw', # Put data in separate COMDATs. |
3392 '<@(win_release_extra_cflags)', | 3380 '<@(win_release_extra_cflags)', |
3393 ], | 3381 ], |
3394 }, | 3382 }, |
3395 'VCLinkerTool': { | 3383 'VCLinkerTool': { |
3396 # LinkIncremental is a tri-state boolean, where 0 means default | 3384 # LinkIncremental is a tri-state boolean, where 0 means default |
3397 # (i.e., inherit from parent solution), 1 means false, and | 3385 # (i.e., inherit from parent solution), 1 means false, and |
3398 # 2 means true. | 3386 # 2 means true. |
3399 'LinkIncremental': '1', | 3387 'LinkIncremental': '1', |
3400 # This corresponds to the /PROFILE flag which ensures the PDB | 3388 # This corresponds to the /PROFILE flag which ensures the PDB |
3401 # file contains FIXUP information (growing the PDB file by about | 3389 # file contains FIXUP information (growing the PDB file by about |
(...skipping 1649 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5051 }], | 5039 }], |
5052 ], | 5040 ], |
5053 }, | 5041 }, |
5054 'postbuild_name': 'Change Mach-O Flags', | 5042 'postbuild_name': 'Change Mach-O Flags', |
5055 'action': [ | 5043 'action': [ |
5056 '<(change_mach_o_flags_path)', | 5044 '<(change_mach_o_flags_path)', |
5057 '>@(change_mach_o_flags_options)', | 5045 '>@(change_mach_o_flags_options)', |
5058 ], | 5046 ], |
5059 }, | 5047 }, |
5060 ], | 5048 ], |
5061 'conditions': [ | |
5062 ['asan==1', { | |
5063 'variables': { | |
5064 'asan_saves_file': 'asan.saves', | |
5065 }, | |
5066 'xcode_settings': { | |
5067 'CHROMIUM_STRIP_SAVE_FILE': '<(asan_saves_file)', | |
5068 }, | |
5069 }], | |
5070 ], | |
5071 'target_conditions': [ | 5049 'target_conditions': [ |
5072 ['mac_pie==1 and release_valgrind_build==0', { | 5050 ['mac_pie==1 and release_valgrind_build==0', { |
5073 # Turn on position-independence (ASLR) for executables. When | 5051 # Turn on position-independence (ASLR) for executables. When |
5074 # PIE is on for the Chrome executables, the framework will | 5052 # PIE is on for the Chrome executables, the framework will |
5075 # also be subject to ASLR. | 5053 # also be subject to ASLR. |
5076 # Don't do this when building for Valgrind, because Valgrind | 5054 # Don't do this when building for Valgrind, because Valgrind |
5077 # doesn't understand slide. TODO: Make Valgrind on Mac OS X | 5055 # doesn't understand slide. TODO: Make Valgrind on Mac OS X |
5078 # understand slide, and get rid of the Valgrind check. | 5056 # understand slide, and get rid of the Valgrind check. |
5079 'xcode_settings': { | 5057 'xcode_settings': { |
5080 'OTHER_LDFLAGS': [ | 5058 'OTHER_LDFLAGS': [ |
(...skipping 10 matching lines...) Expand all Loading... |
5091 # To get a real .dSYM bundle produced by dsymutil, set the | 5069 # To get a real .dSYM bundle produced by dsymutil, set the |
5092 # debug information format to dwarf-with-dsym. Since | 5070 # debug information format to dwarf-with-dsym. Since |
5093 # strip_from_xcode will not be used, set Xcode to do the | 5071 # strip_from_xcode will not be used, set Xcode to do the |
5094 # stripping as well. | 5072 # stripping as well. |
5095 'configurations': { | 5073 'configurations': { |
5096 'Release_Base': { | 5074 'Release_Base': { |
5097 'xcode_settings': { | 5075 'xcode_settings': { |
5098 'DEBUG_INFORMATION_FORMAT': 'dwarf-with-dsym', | 5076 'DEBUG_INFORMATION_FORMAT': 'dwarf-with-dsym', |
5099 'DEPLOYMENT_POSTPROCESSING': 'YES', | 5077 'DEPLOYMENT_POSTPROCESSING': 'YES', |
5100 'STRIP_INSTALLED_PRODUCT': 'YES', | 5078 'STRIP_INSTALLED_PRODUCT': 'YES', |
5101 'target_conditions': [ | 5079 'conditions': [ |
5102 ['_type=="shared_library" or _type=="loadable_module"',
{ | 5080 # Only strip non-ASan builds. |
5103 # The Xcode default is to strip debugging symbols | 5081 ['asan==0', { |
5104 # only (-S). Local symbols should be stripped as | 5082 'target_conditions': [ |
5105 # well, which will be handled by -x. Xcode will | 5083 ['_type=="shared_library" or _type=="loadable_module
"', { |
5106 # continue to insert -S when stripping even when | 5084 # The Xcode default is to strip debugging symbols |
5107 # additional flags are added with STRIPFLAGS. | 5085 # only (-S). Local symbols should be stripped as |
5108 'STRIPFLAGS': '-x', | 5086 # well, which will be handled by -x. Xcode will |
5109 }], # _type=="shared_library" or _type=="loadable_modul
e" | 5087 # continue to insert -S when stripping even when |
5110 ['_type=="executable"', { | 5088 # additional flags are added with STRIPFLAGS. |
5111 'conditions': [ | 5089 'STRIPFLAGS': '-x', |
5112 ['asan==1', { | 5090 }], # _type=="shared_library" or _type=="loadable_m
odule" |
5113 'STRIPFLAGS': '-s $(CHROMIUM_STRIP_SAVE_FILE)', | 5091 ], # target_conditions |
5114 }] | 5092 }, { # asan != 0 |
5115 ], | 5093 'STRIPFLAGS': '-S', |
5116 }], # _type=="executable" and asan==1 | 5094 }], |
5117 ], # target_conditions | 5095 ], |
5118 }, # xcode_settings | 5096 }, # xcode_settings |
5119 }, # configuration "Release" | 5097 }, # configuration "Release" |
5120 }, # configurations | 5098 }, # configurations |
5121 }, { # mac_real_dsym != 1 | 5099 }, { # mac_real_dsym != 1 |
5122 # To get a fast fake .dSYM bundle, use a post-build step to | 5100 # To get a fast fake .dSYM bundle, use a post-build step to |
5123 # produce the .dSYM and strip the executable. strip_from_xcode | 5101 # produce the .dSYM and strip the executable. strip_from_xcode |
5124 # only operates in the Release configuration. | 5102 # only operates in the Release configuration. |
5125 'postbuilds': [ | 5103 'postbuilds': [ |
5126 { | 5104 { |
5127 'variables': { | 5105 'variables': { |
(...skipping 714 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5842 # settings in target dicts. SYMROOT is a special case, because many other | 5820 # settings in target dicts. SYMROOT is a special case, because many other |
5843 # Xcode variables depend on it, including variables such as | 5821 # Xcode variables depend on it, including variables such as |
5844 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something | 5822 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something |
5845 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the | 5823 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the |
5846 # files to appear (when present) in the UI as actual files and not red | 5824 # files to appear (when present) in the UI as actual files and not red |
5847 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, | 5825 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, |
5848 # and therefore SYMROOT, needs to be set at the project level. | 5826 # and therefore SYMROOT, needs to be set at the project level. |
5849 'SYMROOT': '<(DEPTH)/xcodebuild', | 5827 'SYMROOT': '<(DEPTH)/xcodebuild', |
5850 }, | 5828 }, |
5851 } | 5829 } |
OLD | NEW |