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 137 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
148 'branding%': '<(branding)', | 148 'branding%': '<(branding)', |
149 'host_arch%': '<(host_arch)', | 149 'host_arch%': '<(host_arch)', |
150 'target_arch%': '<(target_arch)', | 150 'target_arch%': '<(target_arch)', |
151 | 151 |
152 'target_subarch%': '', | 152 'target_subarch%': '', |
153 | 153 |
154 # The channel to build on Android: stable, beta, dev, canary, or | 154 # The channel to build on Android: stable, beta, dev, canary, or |
155 # default. "default" should be used on non-official builds. | 155 # default. "default" should be used on non-official builds. |
156 'android_channel%': 'default', | 156 'android_channel%': 'default', |
157 | 157 |
158 # This is set when building the Android WebView inside the Android | 158 # WebView now builds in a normal android build; don't use this. |
159 # build system, using the 'android' gyp backend. The WebView code is | 159 # TODO(torne): remove this. http://crbug.com/440793 |
160 # still built when this is unset, but builds using the normal chromium | |
161 # build system. | |
162 'android_webview_build%': 0, | 160 'android_webview_build%': 0, |
163 | 161 |
164 # Set ARM architecture version. | 162 # Set ARM architecture version. |
165 'arm_version%': 7, | 163 'arm_version%': 7, |
166 | 164 |
167 # Use aurax11 for clipboard implementation. This is true on linux_aura. | 165 # Use aurax11 for clipboard implementation. This is true on linux_aura. |
168 'use_clipboard_aurax11%': 0, | 166 'use_clipboard_aurax11%': 0, |
169 | 167 |
170 # goma settings. | 168 # goma settings. |
171 # 1 to use goma. | 169 # 1 to use goma. |
(...skipping 608 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
780 'proprietary_codecs%': 1, | 778 'proprietary_codecs%': 1, |
781 }, { | 779 }, { |
782 'proprietary_codecs%': 0, | 780 'proprietary_codecs%': 0, |
783 }], | 781 }], |
784 | 782 |
785 ['OS=="mac" or OS=="ios"', { | 783 ['OS=="mac" or OS=="ios"', { |
786 'native_memory_pressure_signals%': 1, | 784 'native_memory_pressure_signals%': 1, |
787 }], | 785 }], |
788 | 786 |
789 # Enable autofill dialog for Android, Mac and Views-enabled platforms. | 787 # Enable autofill dialog for Android, Mac and Views-enabled platforms. |
790 ['toolkit_views==1 or (OS=="android" and android_webview_build==0) or OS =="mac"', { | 788 ['toolkit_views==1 or OS=="android" or OS=="mac"', { |
791 'enable_autofill_dialog%': 1, | 789 'enable_autofill_dialog%': 1, |
792 | 790 |
793 'conditions': [ | 791 'conditions': [ |
794 ['buildtype=="Official"', { | 792 ['buildtype=="Official"', { |
795 'enable_prod_wallet_service%': 1, | 793 'enable_prod_wallet_service%': 1, |
796 }], | 794 }], |
797 ] | 795 ] |
798 }], | 796 }], |
799 | 797 |
800 ['OS=="android"', { | 798 ['OS=="android"', { |
(...skipping 208 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1009 | 1007 |
1010 # Turn on JNI generation optimizations on non-WebView builds. | 1008 # Turn on JNI generation optimizations on non-WebView builds. |
1011 ['OS=="android" and android_webview_build==0', { | 1009 ['OS=="android" and android_webview_build==0', { |
1012 'optimize_jni_generation%': 1, | 1010 'optimize_jni_generation%': 1, |
1013 }, { | 1011 }, { |
1014 'optimize_jni_generation%': 0, | 1012 'optimize_jni_generation%': 0, |
1015 }], | 1013 }], |
1016 | 1014 |
1017 # TODO(rmcilroy): Enable v8_use_external_startup_data on ChromeOS | 1015 # TODO(rmcilroy): Enable v8_use_external_startup_data on ChromeOS |
1018 # http://crbug.com/421063 | 1016 # http://crbug.com/421063 |
1019 ['android_webview_build==0 and chromecast==0 and chromeos==0 and OS!="io s"', { | 1017 ['chromecast==0 and chromeos==0 and OS!="ios"', { |
1020 'v8_use_external_startup_data%': 1, | 1018 'v8_use_external_startup_data%': 1, |
1021 }, { | 1019 }, { |
1022 'v8_use_external_startup_data%': 0, | 1020 'v8_use_external_startup_data%': 0, |
1023 }], | 1021 }], |
1024 | 1022 |
1025 # Controls whether Wallet cards can be saved to the local instance of | 1023 # Controls whether Wallet cards can be saved to the local instance of |
1026 # chrome. TODO(estade): set to 0 for Linux before M43 branch. | 1024 # chrome. TODO(estade): set to 0 for Linux before M43 branch. |
1027 ['desktop_linux==1', { | 1025 ['desktop_linux==1', { |
1028 'enable_save_wallet_cards_locally%': 1, | 1026 'enable_save_wallet_cards_locally%': 1, |
1029 }, { | 1027 }, { |
(...skipping 537 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1567 }, { | 1565 }, { |
1568 'binutils_version%': 0, | 1566 'binutils_version%': 0, |
1569 }], | 1567 }], |
1570 # The version of GCC in use, set later in platforms that use GCC and have | 1568 # The version of GCC in use, set later in platforms that use GCC and have |
1571 # not explicitly chosen to build with clang. Currently, this means all | 1569 # not explicitly chosen to build with clang. Currently, this means all |
1572 # platforms except Windows, Mac and iOS. | 1570 # platforms except Windows, Mac and iOS. |
1573 # TODO(glider): set clang to 1 earlier for ASan and TSan builds so that | 1571 # TODO(glider): set clang to 1 earlier for ASan and TSan builds so that |
1574 # it takes effect here. | 1572 # it takes effect here. |
1575 ['os_posix==1 and OS!="mac" and OS!="ios" and clang==0 and asan==0 and lsa n==0 and tsan==0 and msan==0 and ubsan_vptr==0', { | 1573 ['os_posix==1 and OS!="mac" and OS!="ios" and clang==0 and asan==0 and lsa n==0 and tsan==0 and msan==0 and ubsan_vptr==0', { |
1576 'conditions': [ | 1574 'conditions': [ |
1577 ['OS=="android" and android_webview_build==0', { | 1575 ['OS=="android"', { |
1578 'host_gcc_version%': '<!pymod_do_main(compiler_version host compiler )', | 1576 'host_gcc_version%': '<!pymod_do_main(compiler_version host compiler )', |
1579 # We directly set the gcc version since we know what we use. | 1577 # We directly set the gcc version since we know what we use. |
1580 'gcc_version%': 49, | 1578 'gcc_version%': 49, |
1581 }], | 1579 }, { |
1582 ['OS=="android" and android_webview_build==1', { | |
1583 # Android WebView uses a hermetic clang toolchain for host builds. | |
1584 'host_gcc_version%': 0, | |
1585 # Android WebView uses the GCC toolchain from the Android build. | |
1586 'gcc_version%': 48, | |
1587 }], | |
1588 ['OS!="android"', { | |
1589 'host_gcc_version%': '<!pymod_do_main(compiler_version host compiler )', | 1580 'host_gcc_version%': '<!pymod_do_main(compiler_version host compiler )', |
1590 'gcc_version%': '<!pymod_do_main(compiler_version target compiler)', | 1581 'gcc_version%': '<!pymod_do_main(compiler_version target compiler)', |
1591 }], | 1582 }], |
1592 ], | 1583 ], |
1593 }, { | 1584 }, { |
1594 'host_gcc_version%': 0, | 1585 'host_gcc_version%': 0, |
1595 'gcc_version%': 0, | 1586 'gcc_version%': 0, |
1596 }], | 1587 }], |
1597 ['OS=="win" and "<!pymod_do_main(dir_exists <(windows_sdk_default_path))"= ="True"', { | 1588 ['OS=="win" and "<!pymod_do_main(dir_exists <(windows_sdk_default_path))"= ="True"', { |
1598 'windows_sdk_path%': '<(windows_sdk_default_path)', | 1589 'windows_sdk_path%': '<(windows_sdk_default_path)', |
(...skipping 484 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
2083 'ast', 'bs', 'ca@valencia', 'en-AU', 'eo', 'eu', 'gl', 'hy', 'ia', | 2074 'ast', 'bs', 'ca@valencia', 'en-AU', 'eo', 'eu', 'gl', 'hy', 'ia', |
2084 'ka', 'ku', 'kw', 'ms', 'ug' | 2075 'ka', 'ku', 'kw', 'ms', 'ug' |
2085 ], | 2076 ], |
2086 }], | 2077 }], |
2087 ['OS=="android"', { | 2078 ['OS=="android"', { |
2088 'grit_defines': [ | 2079 'grit_defines': [ |
2089 '-t', 'android', | 2080 '-t', 'android', |
2090 '-E', 'ANDROID_JAVA_TAGGED_ONLY=true', | 2081 '-E', 'ANDROID_JAVA_TAGGED_ONLY=true', |
2091 '--no-output-all-resource-defines', | 2082 '--no-output-all-resource-defines', |
2092 ], | 2083 ], |
2093 'conditions': [ | |
2094 ['<(android_webview_build)==1', { | |
2095 'grit_defines': ['-D', 'is_android_webview_build'], | |
Nico
2015/03/30 17:55:46
You need to delete this conditional too: https://c
Torne
2015/03/31 13:50:02
Already being removed in my components change: htt
Nico
2015/03/31 15:28:03
That's not good enough. This CL here removes the i
Nico
2015/03/31 15:33:29
You're right, the grd file checks "if this isn't s
| |
2096 }], | |
2097 ], | |
2098 }], | 2084 }], |
2099 ['OS=="mac" or OS=="ios"', { | 2085 ['OS=="mac" or OS=="ios"', { |
2100 'grit_defines': ['-D', 'scale_factors=2x'], | 2086 'grit_defines': ['-D', 'scale_factors=2x'], |
2101 }], | 2087 }], |
2102 ['OS == "ios"', { | 2088 ['OS == "ios"', { |
2103 'variables': { | 2089 'variables': { |
2104 'enable_coverage%': 0, | 2090 'enable_coverage%': 0, |
2105 }, | 2091 }, |
2106 'grit_defines': [ | 2092 'grit_defines': [ |
2107 '-t', 'ios', | 2093 '-t', 'ios', |
(...skipping 200 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
2308 # Keep the code under #ifndef NVALGRIND. | 2294 # Keep the code under #ifndef NVALGRIND. |
2309 'release_valgrind_build': 1, | 2295 'release_valgrind_build': 1, |
2310 }], | 2296 }], |
2311 | 2297 |
2312 # Enable RLZ on Win, Mac, iOS and ChromeOS. | 2298 # Enable RLZ on Win, Mac, iOS and ChromeOS. |
2313 ['branding=="Chrome" and (OS=="win" or OS=="mac" or OS=="ios" or chromeos= =1)', { | 2299 ['branding=="Chrome" and (OS=="win" or OS=="mac" or OS=="ios" or chromeos= =1)', { |
2314 'enable_rlz%': 1, | 2300 'enable_rlz%': 1, |
2315 }], | 2301 }], |
2316 | 2302 |
2317 # Set default compiler flags depending on ARM version. | 2303 # Set default compiler flags depending on ARM version. |
2318 ['arm_version==6 and android_webview_build==0', { | 2304 ['arm_version==6', { |
2319 'arm_arch%': 'armv6', | 2305 'arm_arch%': 'armv6', |
2320 'arm_tune%': '', | 2306 'arm_tune%': '', |
2321 'arm_fpu%': 'vfp', | 2307 'arm_fpu%': 'vfp', |
2322 'arm_float_abi%': 'softfp', | 2308 'arm_float_abi%': 'softfp', |
2323 'arm_thumb%': 0, | 2309 'arm_thumb%': 0, |
2324 }], | 2310 }], |
2325 ['arm_version==7 and android_webview_build==0', { | 2311 ['arm_version==7', { |
2326 'arm_arch%': 'armv7-a', | 2312 'arm_arch%': 'armv7-a', |
2327 'arm_tune%': 'generic-armv7-a', | 2313 'arm_tune%': 'generic-armv7-a', |
2328 'conditions': [ | 2314 'conditions': [ |
2329 ['arm_neon==1', { | 2315 ['arm_neon==1', { |
2330 'arm_fpu%': 'neon', | 2316 'arm_fpu%': 'neon', |
2331 }, { | 2317 }, { |
2332 'arm_fpu%': 'vfpv3-d16', | 2318 'arm_fpu%': 'vfpv3-d16', |
2333 }], | 2319 }], |
2334 ], | 2320 ], |
2335 # Change the default to hard once the armhf transition is complete. | 2321 # Change the default to hard once the armhf transition is complete. |
2336 'arm_float_abi%': 'softfp', | 2322 'arm_float_abi%': 'softfp', |
2337 'arm_thumb%': 1, | 2323 'arm_thumb%': 1, |
2338 }], | 2324 }], |
2339 | 2325 |
2340 # Set default compiler flags for MIPS floating-point support. | 2326 # Set default compiler flags for MIPS floating-point support. |
2341 ['target_arch=="mipsel" and android_webview_build==0', { | 2327 ['target_arch=="mipsel"', { |
2342 'mips_float_abi%': 'hard', | 2328 'mips_float_abi%': 'hard', |
2343 }], | 2329 }], |
2344 ['target_arch=="mipsel" and mips_arch_variant=="r2" and android_webview_bu ild==0', { | 2330 ['target_arch=="mipsel" and mips_arch_variant=="r2"', { |
2345 'mips_fpu_mode%': 'fp32', | 2331 'mips_fpu_mode%': 'fp32', |
2346 }], | 2332 }], |
2347 | 2333 |
2348 ['android_webview_build==1', { | |
2349 # The WebView build gets its cpu-specific flags from the Android build s ystem. | |
2350 'arm_arch%': '', | |
2351 'arm_tune%': '', | |
2352 'arm_fpu%': '', | |
2353 'arm_float_abi%': '', | |
2354 'arm_thumb%': 0, | |
2355 'mips_float_abi%': '', | |
2356 'mips_fpu_mode%': '', | |
2357 }], | |
2358 | |
2359 # Enable brlapi by default for chromeos. | 2334 # Enable brlapi by default for chromeos. |
2360 [ 'chromeos==1', { | 2335 [ 'chromeos==1', { |
2361 'use_brlapi%': 1, | 2336 'use_brlapi%': 1, |
2362 }], | 2337 }], |
2363 | 2338 |
2364 ['use_ozone==1 and ozone_auto_platforms==1', { | 2339 ['use_ozone==1 and ozone_auto_platforms==1', { |
2365 # Use test as the default platform. | 2340 # Use test as the default platform. |
2366 'ozone_platform%': 'test', | 2341 'ozone_platform%': 'test', |
2367 | 2342 |
2368 # Build all platforms whose deps are in install-build-deps.sh. | 2343 # Build all platforms whose deps are in install-build-deps.sh. |
(...skipping 1711 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
4080 ], | 4055 ], |
4081 }], | 4056 }], |
4082 ['target_arch=="arm64"', { | 4057 ['target_arch=="arm64"', { |
4083 'target_conditions': [ | 4058 'target_conditions': [ |
4084 ['_toolset=="target"', { | 4059 ['_toolset=="target"', { |
4085 'conditions': [ | 4060 'conditions': [ |
4086 ['OS=="android"', { | 4061 ['OS=="android"', { |
4087 'cflags!': [ | 4062 'cflags!': [ |
4088 '-fstack-protector', # stack protector is always enabled on arm64. | 4063 '-fstack-protector', # stack protector is always enabled on arm64. |
4089 ], | 4064 ], |
4090 }], | |
4091 # TODO: Remove webview test once webview fully compiles from | |
4092 # Chromium. crbug.com/440793 | |
4093 ['OS=="android" and android_webview_build==0', { | |
4094 'ldflags': [ | 4065 'ldflags': [ |
4095 '-fuse-ld=gold', | 4066 '-fuse-ld=gold', |
4096 ], | 4067 ], |
4097 }], | 4068 }], |
4098 ], | 4069 ], |
4099 }], | 4070 }], |
4100 ], | 4071 ], |
4101 }], | 4072 }], |
4102 ['target_arch=="mipsel"', { | 4073 ['target_arch=="mipsel"', { |
4103 'target_conditions': [ | 4074 'target_conditions': [ |
4104 ['_toolset=="target"', { | 4075 ['_toolset=="target"', { |
4105 'conditions': [ | 4076 'conditions': [ |
4106 ['android_webview_build==0', { | 4077 ['mips_arch_variant=="r6"', { |
4107 'conditions': [ | 4078 'conditions': [ |
4108 ['mips_arch_variant=="r6"', { | 4079 ['clang==1', { |
4080 'cflags': [ '-target mipsel-linux-gnu', '-march=mips32r6 ', ], | |
4081 'ldflags': [ '-target mipsel-linux-gnu', ], | |
4082 }, { # clang==0 | |
4083 'cflags': ['-mips32r6', '-Wa,-mips32r6', ], | |
4084 }], | |
4085 ['clang==0 and OS=="android"', { | |
4086 'ldflags': ['-mips32r6', '-Wl,-melf32ltsmip',], | |
4087 }], | |
4088 ], | |
4089 }], | |
4090 ['mips_arch_variant=="r2"', { | |
4091 'conditions': [ | |
4092 ['mips_float_abi=="hard" and mips_fpu_mode!=""', { | |
4093 'cflags': ['-m<(mips_fpu_mode)'], | |
4094 }], | |
4095 ['clang==1', { | |
4096 'conditions': [ | |
4097 ['OS=="android"', { | |
4098 'cflags': [ '-target mipsel-linux-android', '-march= mipsel', '-mcpu=mips32r2'], | |
4099 'ldflags': [ '-target mipsel-linux-android', ], | |
4100 }], | |
4101 ], | |
4102 }, { # clang==0 | |
4103 'cflags': ['-mips32r2', '-Wa,-mips32r2', ], | |
4104 }], | |
4105 ], | |
4106 }], | |
4107 ['mips_arch_variant=="r1"', { | |
4108 'conditions': [ | |
4109 ['clang==1', { | |
4109 'conditions': [ | 4110 'conditions': [ |
4110 ['clang==1', { | 4111 ['OS=="android"', { |
4111 'cflags': [ '-target mipsel-linux-gnu', '-march=mips 32r6', ], | 4112 'cflags': [ '-target mipsel-linux-android', '-march= mipsel', '-mcpu=mips32'], |
4112 'ldflags': [ '-target mipsel-linux-gnu', ], | 4113 'ldflags': [ '-target mipsel-linux-android', ], |
4113 }, { # clang==0 | |
4114 'cflags': ['-mips32r6', '-Wa,-mips32r6', ], | |
4115 }], | |
4116 ['clang==0 and OS=="android"', { | |
4117 'ldflags': ['-mips32r6', '-Wl,-melf32ltsmip',], | |
4118 }], | 4114 }], |
4119 ], | 4115 ], |
4120 }], | 4116 }, { # clang==0 |
4121 ['mips_arch_variant=="r2"', { | 4117 'cflags': ['-mips32', '-Wa,-mips32', ], |
4122 'conditions': [ | |
4123 ['mips_float_abi=="hard" and mips_fpu_mode!=""', { | |
4124 'cflags': ['-m<(mips_fpu_mode)'], | |
4125 }], | |
4126 ['clang==1', { | |
4127 'conditions': [ | |
4128 ['OS=="android"', { | |
4129 'cflags': [ '-target mipsel-linux-android', '-ma rch=mipsel', '-mcpu=mips32r2'], | |
4130 'ldflags': [ '-target mipsel-linux-android', ], | |
4131 }], | |
4132 ], | |
4133 }, { # clang==0 | |
4134 'cflags': ['-mips32r2', '-Wa,-mips32r2', ], | |
4135 }], | |
4136 ], | |
4137 }], | |
4138 ['mips_arch_variant=="r1"', { | |
4139 'conditions': [ | |
4140 ['clang==1', { | |
4141 'conditions': [ | |
4142 ['OS=="android"', { | |
4143 'cflags': [ '-target mipsel-linux-android', '-ma rch=mipsel', '-mcpu=mips32'], | |
4144 'ldflags': [ '-target mipsel-linux-android', ], | |
4145 }], | |
4146 ], | |
4147 }, { # clang==0 | |
4148 'cflags': ['-mips32', '-Wa,-mips32', ], | |
4149 }], | |
4150 ], | |
4151 }], | |
4152 ['clang==1', { | |
4153 'cflags!': [ | |
4154 # Clang does not support the following options. | |
4155 '-finline-limit=64', | |
4156 ], | |
4157 'cflags': [ | |
4158 # TODO(gordanac) Enable integrated-as. | |
4159 '-no-integrated-as', | |
4160 '-B<(android_toolchain)', # Else /usr/bin/as gets pic ked up. | |
4161 ], | |
4162 'ldflags': [ | |
4163 # Let clang find the ld in the NDK. | |
4164 '--gcc-toolchain=<(android_toolchain)/..', | |
4165 ], | |
4166 }], | |
4167 ['mips_dsp_rev==1', { | |
4168 'cflags': ['-mdsp'], | |
4169 }], | |
4170 ['mips_dsp_rev==2', { | |
4171 'cflags': ['-mdspr2'], | |
4172 }], | 4118 }], |
4173 ], | 4119 ], |
4120 }], | |
4121 ['clang==1', { | |
4122 'cflags!': [ | |
4123 # Clang does not support the following options. | |
4124 '-finline-limit=64', | |
4125 ], | |
4174 'cflags': [ | 4126 'cflags': [ |
4175 '-m<(mips_float_abi)-float' | 4127 # TODO(gordanac) Enable integrated-as. |
4128 '-no-integrated-as', | |
4129 '-B<(android_toolchain)', # Else /usr/bin/as gets picked up. | |
4130 ], | |
4131 'ldflags': [ | |
4132 # Let clang find the ld in the NDK. | |
4133 '--gcc-toolchain=<(android_toolchain)/..', | |
4176 ], | 4134 ], |
4177 }], | 4135 }], |
4136 ['mips_dsp_rev==1', { | |
4137 'cflags': ['-mdsp'], | |
4138 }], | |
4139 ['mips_dsp_rev==2', { | |
4140 'cflags': ['-mdspr2'], | |
4141 }], | |
4142 ], | |
4143 'cflags': [ | |
4144 '-m<(mips_float_abi)-float' | |
4178 ], | 4145 ], |
4179 'ldflags': [ | 4146 'ldflags': [ |
4180 '-Wl,--no-keep-memory' | 4147 '-Wl,--no-keep-memory' |
4181 ], | 4148 ], |
4182 'cflags_cc': [ | 4149 'cflags_cc': [ |
4183 '-Wno-uninitialized', | 4150 '-Wno-uninitialized', |
4184 ], | 4151 ], |
4185 }], | 4152 }], |
4186 ], | 4153 ], |
4187 }], | 4154 }], |
4188 ['target_arch=="mips64el"', { | 4155 ['target_arch=="mips64el"', { |
4189 'target_conditions': [ | 4156 'target_conditions': [ |
4190 ['_toolset=="target"', { | 4157 ['_toolset=="target"', { |
4191 'conditions': [ | 4158 'conditions': [ |
4192 ['android_webview_build==0', { | 4159 ['mips_arch_variant=="r6"', { |
4193 'conditions': [ | 4160 'cflags': ['-mips64r6', '-Wa,-mips64r6'], |
4194 ['mips_arch_variant=="r6"', { | 4161 'ldflags': ['-mips64r6'], |
4195 'cflags': ['-mips64r6', '-Wa,-mips64r6'], | 4162 }], |
4196 'ldflags': ['-mips64r6'], | 4163 ['mips_arch_variant=="r2"', { |
4197 }], | 4164 'cflags': ['-mips64r2', '-Wa,-mips64r2'], |
4198 ['mips_arch_variant=="r2"', { | 4165 'ldflags': ['-mips64r2'], |
4199 'cflags': ['-mips64r2', '-Wa,-mips64r2'], | |
4200 'ldflags': ['-mips64r2'], | |
4201 }], | |
4202 ], | |
4203 }], | 4166 }], |
4204 ], | 4167 ], |
4205 'cflags_cc': [ | 4168 'cflags_cc': [ |
4206 '-Wno-uninitialized', | 4169 '-Wno-uninitialized', |
4207 ], | 4170 ], |
4208 }], | 4171 }], |
4209 ], | 4172 ], |
4210 }], | 4173 }], |
4211 ['linux_fpic==1', { | 4174 ['linux_fpic==1', { |
4212 'cflags': [ | 4175 'cflags': [ |
(...skipping 501 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
4714 ], | 4677 ], |
4715 'cflags': [ | 4678 'cflags': [ |
4716 '-ffunction-sections', | 4679 '-ffunction-sections', |
4717 '-funwind-tables', | 4680 '-funwind-tables', |
4718 '-g', | 4681 '-g', |
4719 '-fstack-protector', | 4682 '-fstack-protector', |
4720 '-fno-short-enums', | 4683 '-fno-short-enums', |
4721 '-finline-limit=64', | 4684 '-finline-limit=64', |
4722 '-Wa,--noexecstack', | 4685 '-Wa,--noexecstack', |
4723 '<@(release_extra_cflags)', | 4686 '<@(release_extra_cflags)', |
4687 '--sysroot=<(android_ndk_sysroot)', | |
4688 # NOTE: The stlport header include paths below are specified in | |
4689 # cflags rather than include_dirs because they need to come | |
4690 # after include_dirs. Think of them like system headers, but | |
4691 # don't use '-isystem' because the arm-linux-androideabi-4.4.3 | |
Nico
2015/03/30 17:55:46
hm, this comment should probably be updated, given
Torne
2015/03/31 13:50:02
Removed the obsolete part of this comment.
| |
4692 # toolchain (circa Gingerbread) will exhibit strange errors. | |
4693 # The include ordering here is important; change with caution. | |
4694 '-isystem<(android_stlport_include)', | |
4724 ], | 4695 ], |
4725 'defines': [ | 4696 'defines': [ |
4726 'ANDROID', | 4697 'ANDROID', |
4727 '__GNU_SOURCE=1', # Necessary for clone() | 4698 '__GNU_SOURCE=1', # Necessary for clone() |
4728 'USE_STLPORT=1', | 4699 'USE_STLPORT=1', |
4729 '_STLP_USE_PTR_SPECIALIZATIONS=1', | 4700 '_STLP_USE_PTR_SPECIALIZATIONS=1', |
4730 'CHROME_BUILD_ID="<(chrome_build_id)"', | 4701 'CHROME_BUILD_ID="<(chrome_build_id)"', |
4702 # The NDK has these things, but doesn't define the constants | |
4703 # to say that it does. Define them here instead. | |
4704 'HAVE_SYS_UIO_H', | |
4731 ], | 4705 ], |
4732 'ldflags!': [ | 4706 'ldflags!': [ |
4733 '-pthread', # Not supported by Android toolchain. | 4707 '-pthread', # Not supported by Android toolchain. |
4734 ], | 4708 ], |
4735 'ldflags': [ | 4709 'ldflags': [ |
4736 '-Wl,--no-undefined', | 4710 '-Wl,--no-undefined', |
4711 '--sysroot=<(android_ndk_sysroot)', | |
4712 '-nostdlib', | |
4713 '-L<(android_stlport_libs_dir)', | |
4714 # Don't allow visible symbols from libgcc or stlport to be | |
4715 # re-exported. | |
4716 '-Wl,--exclude-libs=libgcc.a', | |
4717 '-Wl,--exclude-libs=libstlport_static.a', | |
4718 # Don't allow visible symbols from libraries that contain | |
4719 # assembly code with symbols that aren't hidden properly. | |
4720 # http://crbug.com/448386 | |
4721 '-Wl,--exclude-libs=libcommon_audio.a', | |
4722 '-Wl,--exclude-libs=libcommon_audio_neon.a', | |
4723 '-Wl,--exclude-libs=libcommon_audio_sse2.a', | |
4724 '-Wl,--exclude-libs=libiSACFix.a', | |
4725 '-Wl,--exclude-libs=libisac_neon.a', | |
4726 '-Wl,--exclude-libs=libopus.a', | |
4727 '-Wl,--exclude-libs=libvpx.a', | |
4728 ], | |
4729 'libraries': [ | |
4730 '-l<(android_stlport_library)', | |
4731 # Manually link the libgcc.a that the cross compiler uses. | |
4732 '<!(<(android_toolchain)/*-gcc -print-libgcc-file-name)', | |
4733 '-lc', | |
4734 '-ldl', | |
4735 '-lm', | |
4737 ], | 4736 ], |
4738 'conditions': [ | 4737 'conditions': [ |
4739 ['component=="static_library" and android_webview_build==0', { | 4738 ['component=="static_library"', { |
4740 'target_conditions': [ | 4739 'target_conditions': [ |
4741 ['use_native_jni_exports==0', { | 4740 ['use_native_jni_exports==0', { |
4742 # Use a linker version script to strip JNI exports from | 4741 # Use a linker version script to strip JNI exports from |
4743 # binaries which have not specifically asked to use them. | 4742 # binaries which have not specifically asked to use them. |
4744 'ldflags': [ | 4743 'ldflags': [ |
4745 '-Wl,--version-script=<!(cd <(DEPTH) && pwd -P)/build/andr oid/android_no_jni_exports.lst', | 4744 '-Wl,--version-script=<!(cd <(DEPTH) && pwd -P)/build/andr oid/android_no_jni_exports.lst', |
4746 ], | 4745 ], |
4747 }], | 4746 }], |
4748 ], | 4747 ], |
4749 }], | 4748 }], |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
4785 }], | 4784 }], |
4786 ['asan==1', { | 4785 ['asan==1', { |
4787 'cflags': [ | 4786 'cflags': [ |
4788 # Android build relies on -Wl,--gc-sections removing | 4787 # Android build relies on -Wl,--gc-sections removing |
4789 # unreachable code. ASan instrumentation for globals inhibits | 4788 # unreachable code. ASan instrumentation for globals inhibits |
4790 # this and results in a library with unresolvable relocations. | 4789 # this and results in a library with unresolvable relocations. |
4791 # TODO(eugenis): find a way to reenable this. | 4790 # TODO(eugenis): find a way to reenable this. |
4792 '-mllvm -asan-globals=0', | 4791 '-mllvm -asan-globals=0', |
4793 ], | 4792 ], |
4794 }], | 4793 }], |
4795 ['android_webview_build==0', { | |
4796 'defines': [ | |
4797 # The NDK has these things, but doesn't define the constants | |
4798 # to say that it does. Define them here instead. | |
4799 'HAVE_SYS_UIO_H', | |
4800 ], | |
4801 'cflags': [ | |
4802 '--sysroot=<(android_ndk_sysroot)', | |
4803 ], | |
4804 'ldflags': [ | |
4805 '--sysroot=<(android_ndk_sysroot)', | |
4806 '-nostdlib', | |
4807 # Don't allow visible symbols from libgcc or stlport to be | |
4808 # re-exported. | |
4809 '-Wl,--exclude-libs=libgcc.a', | |
4810 '-Wl,--exclude-libs=libstlport_static.a', | |
4811 # Don't allow visible symbols from libraries that contain | |
4812 # assembly code with symbols that aren't hidden properly. | |
4813 # http://crbug.com/448386 | |
4814 '-Wl,--exclude-libs=libcommon_audio.a', | |
4815 '-Wl,--exclude-libs=libcommon_audio_neon.a', | |
4816 '-Wl,--exclude-libs=libcommon_audio_sse2.a', | |
4817 '-Wl,--exclude-libs=libiSACFix.a', | |
4818 '-Wl,--exclude-libs=libisac_neon.a', | |
4819 '-Wl,--exclude-libs=libopus.a', | |
4820 '-Wl,--exclude-libs=libvpx.a', | |
4821 ], | |
4822 'libraries': [ | |
4823 '-l<(android_stlport_library)', | |
4824 # Manually link the libgcc.a that the cross compiler uses. | |
4825 '<!(<(android_toolchain)/*-gcc -print-libgcc-file-name)', | |
4826 '-lc', | |
4827 '-ldl', | |
4828 '-lm', | |
4829 ], | |
4830 }], | |
4831 ['android_webview_build==1', { | |
4832 'cflags': [ | |
4833 # Android predefines this as 1; undefine it here so Chromium | |
4834 # can redefine it later to be 2 for chromium code and unset | |
4835 # for third party code. This works because cflags are added | |
4836 # before defines. | |
4837 '-U_FORTIFY_SOURCE', | |
4838 # Disable any additional warnings enabled by the Android build system but which | |
4839 # chromium does not build cleanly with (when treating warning as errors). | |
4840 # Things that are part of -Wextra: | |
4841 '-Wno-extra', # Enabled by -Wextra, but no specific flag | |
4842 '-Wno-ignored-qualifiers', | |
4843 '-Wno-type-limits', | |
4844 '-Wno-unused-but-set-variable', | |
4845 ], | |
4846 'cflags_cc': [ | |
4847 # Other things unrelated to -Wextra: | |
4848 '-Wno-non-virtual-dtor', | |
4849 '-Wno-sign-promo', | |
4850 ], | |
4851 'libraries': [ | |
4852 '-ldl', | |
4853 ], | |
4854 }], | |
4855 ['android_webview_build==1', { | |
4856 'target_conditions': [ | |
4857 ['chromium_code==0', { | |
4858 'cflags': [ | |
4859 # There is a class of warning which: | |
4860 # 1) Android always enables and also treats as errors | |
4861 # 2) Chromium ignores in third party code | |
4862 # So we re-enable those warnings when building Android. | |
4863 '-Wno-address', | |
4864 '-Wno-format-security', | |
4865 '-Wno-return-type', | |
4866 '-Wno-sequence-point', | |
4867 ], | |
4868 'cflags_cc': [ | |
4869 '-Wno-non-virtual-dtor', | |
4870 ], | |
4871 }], | |
4872 ], | |
4873 }], | |
4874 ['target_arch == "arm" and order_profiling==0', { | 4794 ['target_arch == "arm" and order_profiling==0', { |
4875 'ldflags': [ | 4795 'ldflags': [ |
4876 # Enable identical code folding to reduce size. | 4796 # Enable identical code folding to reduce size. |
4877 '-Wl,--icf=<(gold_icf_level)', | 4797 '-Wl,--icf=<(gold_icf_level)', |
4878 ], | 4798 ], |
4879 }], | 4799 }], |
4880 # NOTE: The stlport header include paths below are specified in | |
4881 # cflags rather than include_dirs because they need to come | |
4882 # after include_dirs. Think of them like system headers, but | |
4883 # don't use '-isystem' because the arm-linux-androideabi-4.4.3 | |
4884 # toolchain (circa Gingerbread) will exhibit strange errors. | |
4885 # The include ordering here is important; change with caution. | |
4886 ['android_webview_build==0', { | |
4887 'cflags': [ | |
4888 '-isystem<(android_stlport_include)', | |
4889 ], | |
4890 'ldflags': [ | |
4891 '-L<(android_stlport_libs_dir)', | |
4892 ], | |
4893 }, { # else: android_webview_build!=0 | |
4894 'aosp_build_settings': { | |
4895 # Specify that we want to statically link stlport from the | |
4896 # NDK. This will provide all the include and library paths | |
4897 # automatically at build time, and link the right library. | |
4898 'LOCAL_NDK_STL_VARIANT': 'stlport_static', | |
4899 }, | |
4900 }], | |
4901 ['target_arch=="ia32"', { | 4800 ['target_arch=="ia32"', { |
4902 # The x86 toolchain currently has problems with stack-protector. | 4801 # The x86 toolchain currently has problems with stack-protector. |
4903 'cflags!': [ | 4802 'cflags!': [ |
4904 '-fstack-protector', | 4803 '-fstack-protector', |
4905 ], | 4804 ], |
4906 'cflags': [ | 4805 'cflags': [ |
4907 '-fno-stack-protector', | 4806 '-fno-stack-protector', |
4908 ], | 4807 ], |
4909 }], | 4808 }], |
4910 ], | 4809 ], |
(...skipping 18 matching lines...) Expand all Loading... | |
4929 ], | 4828 ], |
4930 'libraries': [ | 4829 'libraries': [ |
4931 # crtend_android.o needs to be the last item in libraries. | 4830 # crtend_android.o needs to be the last item in libraries. |
4932 # Do not add any libraries after this! | 4831 # Do not add any libraries after this! |
4933 '<(android_ndk_lib)/crtend_android.o', | 4832 '<(android_ndk_lib)/crtend_android.o', |
4934 ], | 4833 ], |
4935 }], | 4834 }], |
4936 ['_type=="shared_library" or _type=="loadable_module"', { | 4835 ['_type=="shared_library" or _type=="loadable_module"', { |
4937 'ldflags': [ | 4836 'ldflags': [ |
4938 '-Wl,-shared,-Bsymbolic', | 4837 '-Wl,-shared,-Bsymbolic', |
4838 # crtbegin_so.o should be the last item in ldflags. | |
4839 '<(android_ndk_lib)/crtbegin_so.o', | |
4939 ], | 4840 ], |
4940 'conditions': [ | 4841 'libraries': [ |
4941 ['android_webview_build==0', { | 4842 # crtend_so.o needs to be the last item in libraries. |
4942 'ldflags': [ | 4843 # Do not add any libraries after this! |
4943 # crtbegin_so.o should be the last item in ldflags. | 4844 '<(android_ndk_lib)/crtend_so.o', |
4944 '<(android_ndk_lib)/crtbegin_so.o', | |
4945 ], | |
4946 'libraries': [ | |
4947 # crtend_so.o needs to be the last item in libraries. | |
4948 # Do not add any libraries after this! | |
4949 '<(android_ndk_lib)/crtend_so.o', | |
4950 ], | |
4951 }], | |
4952 ], | 4845 ], |
4953 }], | 4846 }], |
4954 ], | 4847 ], |
4955 }], | 4848 }], |
4956 # Settings for building host targets using the system toolchain. | 4849 # Settings for building host targets using the system toolchain. |
4957 ['_toolset=="host"', { | 4850 ['_toolset=="host"', { |
4958 'cflags!': [ | 4851 'cflags!': [ |
4959 # Due to issues in Clang build system, using ASan on 32-bit | 4852 # Due to issues in Clang build system, using ASan on 32-bit |
4960 # binaries on x86_64 host is problematic. | 4853 # binaries on x86_64 host is problematic. |
4961 # TODO(eugenis): re-enable. | 4854 # TODO(eugenis): re-enable. |
(...skipping 895 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
5857 ], | 5750 ], |
5858 }, | 5751 }, |
5859 }], | 5752 }], |
5860 ['gcc_version>=48 and clang==0 and host_clang==1', { | 5753 ['gcc_version>=48 and clang==0 and host_clang==1', { |
5861 'target_defaults': { | 5754 'target_defaults': { |
5862 'target_conditions': [ | 5755 'target_conditions': [ |
5863 ['_toolset=="host"', { 'cflags!': [ '-Wno-unused-local-typedefs' ]}], | 5756 ['_toolset=="host"', { 'cflags!': [ '-Wno-unused-local-typedefs' ]}], |
5864 ], | 5757 ], |
5865 }, | 5758 }, |
5866 }], | 5759 }], |
5867 # In the android webview build, force host targets to be compiled with clang | |
5868 # as the hermetic host gcc is very old on some platforms. This is already | |
5869 # the default on the current development version of AOSP but we force it | |
5870 # here in case we need to compile against an older release version. We also | |
5871 # explicitly set it to false for target binaries to avoid causing problems | |
5872 # for the work to enable clang by default in AOSP. We also force the use of | |
5873 # libstdc++ on host as peculiarities of the android gyp backend mean that | |
5874 # using libc++ doesn't work, and Chromium doesn't yet require a more modern | |
5875 # C++ library. | |
5876 ['android_webview_build==1', { | |
5877 'target_defaults': { | |
5878 'target_conditions': [ | |
5879 ['_toolset=="host"', { | |
5880 'aosp_build_settings': { | |
5881 'LOCAL_CLANG': 'true', | |
5882 'LOCAL_CXX_STL': 'libstdc++', | |
5883 }, | |
5884 }, { # else: _toolset != "host" | |
5885 'aosp_build_settings': { | |
5886 'LOCAL_CLANG': 'false', | |
5887 }, | |
5888 }], | |
5889 ], | |
5890 }, | |
5891 }], | |
5892 # We need a special case to handle the android webview build on mac because | |
5893 # the host gcc there doesn't accept this flag, but the target gcc may | |
5894 # require it. | |
5895 ['gcc_version>=48 and android_webview_build==1 and host_os=="mac"', { | |
5896 'target_defaults': { | |
5897 'target_conditions': [ | |
5898 ['_toolset=="host"', { | |
5899 'cflags!': [ | |
5900 '-Wno-unused-local-typedefs', | |
5901 ], | |
5902 }], | |
5903 ], | |
5904 }, | |
5905 }], | |
5906 ['clang==1 and ((OS!="mac" and OS!="ios") or clang_xcode==0) ' | 5760 ['clang==1 and ((OS!="mac" and OS!="ios") or clang_xcode==0) ' |
5907 'and OS!="win"', { | 5761 'and OS!="win"', { |
5908 'make_global_settings': [ | 5762 'make_global_settings': [ |
5909 ['CC', '<(make_clang_dir)/bin/clang'], | 5763 ['CC', '<(make_clang_dir)/bin/clang'], |
5910 ['CXX', '<(make_clang_dir)/bin/clang++'], | 5764 ['CXX', '<(make_clang_dir)/bin/clang++'], |
5911 ['CC.host', '$(CC)'], | 5765 ['CC.host', '$(CC)'], |
5912 ['CXX.host', '$(CXX)'], | 5766 ['CXX.host', '$(CXX)'], |
5913 ], | 5767 ], |
5914 }], | 5768 }], |
5915 ['clang==1 and OS=="win"', { | 5769 ['clang==1 and OS=="win"', { |
(...skipping 228 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
6144 # settings in target dicts. SYMROOT is a special case, because many other | 5998 # settings in target dicts. SYMROOT is a special case, because many other |
6145 # Xcode variables depend on it, including variables such as | 5999 # Xcode variables depend on it, including variables such as |
6146 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something | 6000 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something |
6147 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the | 6001 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the |
6148 # files to appear (when present) in the UI as actual files and not red | 6002 # files to appear (when present) in the UI as actual files and not red |
6149 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, | 6003 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, |
6150 # and therefore SYMROOT, needs to be set at the project level. | 6004 # and therefore SYMROOT, needs to be set at the project level. |
6151 'SYMROOT': '<(DEPTH)/xcodebuild', | 6005 'SYMROOT': '<(DEPTH)/xcodebuild', |
6152 }, | 6006 }, |
6153 } | 6007 } |
OLD | NEW |