| OLD | NEW |
| 1 # Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2013 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 import("//build/config/android/config.gni") | 5 import("//build/config/android/config.gni") |
| 6 if (cpu_arch == "arm") { | 6 if (cpu_arch == "arm") { |
| 7 import("//build/config/arm.gni") | 7 import("//build/config/arm.gni") |
| 8 } | 8 } |
| 9 if (is_posix) { | 9 if (is_posix) { |
| 10 import("//build/config/gcc/gcc_version.gni") | 10 import("//build/config/gcc/gcc_version.gni") |
| (...skipping 142 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 153 ] | 153 ] |
| 154 if (arm_tune != "") { | 154 if (arm_tune != "") { |
| 155 cflags += [ "-mtune=$arm_tune" ] | 155 cflags += [ "-mtune=$arm_tune" ] |
| 156 } | 156 } |
| 157 if (arm_use_thumb) { | 157 if (arm_use_thumb) { |
| 158 cflags += [ "-mthumb" ] | 158 cflags += [ "-mthumb" ] |
| 159 if (is_android && !is_clang) { # Clang doesn't support this option. | 159 if (is_android && !is_clang) { # Clang doesn't support this option. |
| 160 cflags += [ "-mthumb-interwork" ] | 160 cflags += [ "-mthumb-interwork" ] |
| 161 } | 161 } |
| 162 } | 162 } |
| 163 if (!is_clang) { |
| 164 # Clang doesn't support these flags. |
| 165 cflags += [ |
| 166 # The tree-sra optimization (scalar replacement for |
| 167 # aggregates enabling subsequent optimizations) leads to |
| 168 # invalid code generation when using the Android NDK's |
| 169 # compiler (r5-r7). This can be verified using |
| 170 # webkit_unit_tests' WTF.Checked_int8_t test. |
| 171 "-fno-tree-sra", |
| 172 # The following option is disabled to improve binary |
| 173 # size and performance in gcc 4.9. |
| 174 "-fno-caller-saves", |
| 175 ] |
| 176 } |
| 163 } | 177 } |
| 164 } | 178 } |
| 165 | 179 |
| 166 defines += [ "_FILE_OFFSET_BITS=64" ] | 180 defines += [ "_FILE_OFFSET_BITS=64" ] |
| 167 | 181 |
| 168 # Omit unwind support in official builds to save space. We can use breakpad | 182 # Omit unwind support in official builds to save space. We can use breakpad |
| 169 # for these builds. | 183 # for these builds. |
| 170 if (is_chrome_branded && is_official_build) { | 184 if (is_chrome_branded && is_official_build) { |
| 171 cflags += [ | 185 cflags += [ |
| 172 "-fno-unwind-tables", | 186 "-fno-unwind-tables", |
| (...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 249 if (is_android) { | 263 if (is_android) { |
| 250 cflags += [ | 264 cflags += [ |
| 251 "-ffunction-sections", | 265 "-ffunction-sections", |
| 252 "-funwind-tables", | 266 "-funwind-tables", |
| 253 "-fno-short-enums", | 267 "-fno-short-enums", |
| 254 ] | 268 ] |
| 255 if (!is_clang) { | 269 if (!is_clang) { |
| 256 # Clang doesn't support these flags. | 270 # Clang doesn't support these flags. |
| 257 cflags += [ | 271 cflags += [ |
| 258 "-finline-limit=64", | 272 "-finline-limit=64", |
| 259 # The following 6 options are disabled to save on | |
| 260 # binary size in gcc 4.8. | |
| 261 # TODO(fdegans) Reevaluate when we upgrade GCC. | |
| 262 "-fno-partial-inlining", | |
| 263 "-fno-early-inlining", | |
| 264 "-fno-tree-copy-prop", | |
| 265 "-fno-tree-loop-optimize", | |
| 266 "-fno-move-loop-invariants", | |
| 267 "-fno-caller-saves", | |
| 268 ] | 273 ] |
| 269 } | 274 } |
| 270 if (is_android_webview_build) { | 275 if (is_android_webview_build) { |
| 271 # Android predefines this as 1; undefine it here so Chromium can redefine | 276 # Android predefines this as 1; undefine it here so Chromium can redefine |
| 272 # it later to be 2 for chromium code and unset for third party code. This | 277 # it later to be 2 for chromium code and unset for third party code. This |
| 273 # works because cflags are added before defines. | 278 # works because cflags are added before defines. |
| 274 # TODO(brettw) the above comment seems incorrect. We specify defines | 279 # TODO(brettw) the above comment seems incorrect. We specify defines |
| 275 # before cflags on our compiler command lines. | 280 # before cflags on our compiler command lines. |
| 276 cflags += [ "-U_FORTIFY_SOURCE" ] | 281 cflags += [ "-U_FORTIFY_SOURCE" ] |
| 277 } | 282 } |
| (...skipping 632 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 910 cflags += [ "-gsplit-dwarf" ] | 915 cflags += [ "-gsplit-dwarf" ] |
| 911 } | 916 } |
| 912 } | 917 } |
| 913 } | 918 } |
| 914 | 919 |
| 915 config("no_symbols") { | 920 config("no_symbols") { |
| 916 if (!is_win) { | 921 if (!is_win) { |
| 917 cflags = [ "-g0" ] | 922 cflags = [ "-g0" ] |
| 918 } | 923 } |
| 919 } | 924 } |
| OLD | NEW |