Chromium Code Reviews| Index: build/common.gypi |
| diff --git a/build/common.gypi b/build/common.gypi |
| index be6e7797822f7fb52c246069e677a5113bcfdeb9..dd4f28faa376d9377b0fb846ce8fa4761d9b0d9a 100644 |
| --- a/build/common.gypi |
| +++ b/build/common.gypi |
| @@ -1546,17 +1546,20 @@ |
| # it takes effect here. |
| ['os_posix==1 and OS!="mac" and OS!="ios" and clang==0 and asan==0 and lsan==0 and tsan==0 and msan==0 and ubsan_vptr==0', { |
| 'conditions': [ |
| - ['OS=="android"', { |
| - # We directly set the gcc versions since we know what we use. |
| - 'gcc_version%': 48, |
| - }, { |
| - 'gcc_version%': '<!pymod_do_main(compiler_version target compiler)', |
| + ['OS=="android" and android_webview_build==0', { |
| + 'host_gcc_version%': '<!pymod_do_main(compiler_version host compiler)', |
| + # We directly set the gcc version since we know what we use. |
| + 'gcc_version%': 49, |
| }], |
| - ['android_webview_build==1', { |
| + ['OS=="android" and android_webview_build==1', { |
| # Android WebView uses a hermetic clang toolchain for host builds. |
| 'host_gcc_version%': 0, |
| - }, { # android_webview_build!=1 |
| + # Android WebView uses the GCC toolchain from the Android build. |
| + 'gcc_version%': 48, |
| + }], |
| + ['OS!="android"', { |
| 'host_gcc_version%': '<!pymod_do_main(compiler_version host compiler)', |
| + 'gcc_version%': '<!pymod_do_main(compiler_version target compiler)', |
| }], |
| ], |
| }, { |
| @@ -1687,7 +1690,7 @@ |
| 'android_gdbserver%': '<(android_ndk_root)/prebuilt/android-x86/gdbserver/gdbserver', |
| 'android_ndk_sysroot%': '<(android_ndk_root)/platforms/android-14/arch-x86', |
| 'android_ndk_lib_dir%': 'usr/lib', |
| - 'android_toolchain%': '<(android_ndk_root)/toolchains/x86-4.8/prebuilt/<(host_os)-<(android_host_arch)/bin', |
| + 'android_toolchain%': '<(android_ndk_root)/toolchains/x86-4.9/prebuilt/<(host_os)-<(android_host_arch)/bin', |
| }], |
| ['target_arch == "x64"', { |
| 'android_app_abi%': 'x86_64', |
| @@ -1707,7 +1710,7 @@ |
| 'android_gdbserver%': '<(android_ndk_root)/prebuilt/android-arm/gdbserver/gdbserver', |
| 'android_ndk_sysroot%': '<(android_ndk_root)/platforms/android-14/arch-arm', |
| 'android_ndk_lib_dir%': 'usr/lib', |
| - 'android_toolchain%': '<(android_ndk_root)/toolchains/arm-linux-androideabi-4.8/prebuilt/<(host_os)-<(android_host_arch)/bin', |
| + 'android_toolchain%': '<(android_ndk_root)/toolchains/arm-linux-androideabi-4.9/prebuilt/<(host_os)-<(android_host_arch)/bin', |
| }], |
| ['target_arch == "arm64"', { |
| 'android_app_abi%': 'arm64-v8a', |
| @@ -1721,7 +1724,7 @@ |
| 'android_gdbserver%': '<(android_ndk_root)/prebuilt/android-mips/gdbserver/gdbserver', |
| 'android_ndk_sysroot%': '<(android_ndk_root)/platforms/android-14/arch-mips', |
| 'android_ndk_lib_dir%': 'usr/lib', |
| - 'android_toolchain%': '<(android_ndk_root)/toolchains/mipsel-linux-android-4.8/prebuilt/<(host_os)-<(android_host_arch)/bin', |
| + 'android_toolchain%': '<(android_ndk_root)/toolchains/mipsel-linux-android-4.9/prebuilt/<(host_os)-<(android_host_arch)/bin', |
| }], |
| ['target_arch == "mips64el"', { |
| 'android_app_abi%': 'mips64', |
| @@ -3813,14 +3816,14 @@ |
| }], |
| ['arm_thumb==1', { |
| 'cflags': [ |
| - '-mthumb', |
| - ] |
| + '-mthumb', |
| + ], |
| }], |
| ['OS=="android"', { |
| # Most of the following flags are derived from what Android |
| # uses by default when building for arm, reference for which |
| # can be found in the following file in the Android NDK: |
| - # toolchains/arm-linux-androideabi-4.8/setup.mk |
| + # toolchains/arm-linux-androideabi-4.9/setup.mk |
| 'cflags': [ |
| # The tree-sra optimization (scalar replacement for |
| # aggregates enabling subsequent optimizations) leads to |
| @@ -3828,14 +3831,8 @@ |
| # compiler (r5-r7). This can be verified using |
| # webkit_unit_tests' WTF.Checked_int8_t test. |
| '-fno-tree-sra', |
| - # The following 6 options are disabled to save on |
| - # binary size in gcc 4.8. |
| - # TODO(fdegans) Reevaluate when we upgrade GCC. |
| - '-fno-partial-inlining', |
| - '-fno-early-inlining', |
| - '-fno-tree-copy-prop', |
| - '-fno-tree-loop-optimize', |
| - '-fno-move-loop-invariants', |
| + # The following option is disabled to improve binary |
| + # size and performance in gcc 4.9. |
|
Torne
2014/09/09 11:58:13
Removing all these -fno-* flags appears to have br
|
| '-fno-caller-saves', |
| '-Wno-psabi', |
| ], |
| @@ -3872,11 +3869,6 @@ |
| '-mthumb-interwork', |
| '-finline-limit=64', |
| '-fno-tree-sra', |
| - '-fno-partial-inlining', |
| - '-fno-early-inlining', |
| - '-fno-tree-copy-prop', |
| - '-fno-tree-loop-optimize', |
| - '-fno-move-loop-invariants', |
| '-fno-caller-saves', |
| '-Wno-psabi', |
| ], |
| @@ -5624,7 +5616,7 @@ |
| }, |
| }], |
| # Don't warn about the "typedef 'foo' locally defined but not used" |
| - # for gcc 4.8. |
| + # for gcc 4.8 and higher. |
| # TODO: remove this flag once all builds work. See crbug.com/227506 |
| ['gcc_version>=48 and clang==0', { |
| 'target_defaults': { |