OLD | NEW |
1 # Copyright 2015 The Chromium Authors. All rights reserved. | 1 # Copyright 2015 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 import("//build/config/arm.gni") | 6 import("//build/config/arm.gni") |
7 import("//build/config/chrome_build.gni") | 7 import("//build/config/chrome_build.gni") |
8 import("//build/config/chromecast_build.gni") | 8 import("//build/config/chromecast_build.gni") |
9 import("//build/config/compiler/pgo/pgo.gni") | 9 import("//build/config/compiler/pgo/pgo.gni") |
10 import("//build/config/sanitizers/sanitizers.gni") | 10 import("//build/config/sanitizers/sanitizers.gni") |
(...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
113 # Whether or not the official builds should be built with full WPO. Enabled by | 113 # Whether or not the official builds should be built with full WPO. Enabled by |
114 # default for the PGO and the x64 builds. | 114 # default for the PGO and the x64 builds. |
115 if (chrome_pgo_phase > 0) { | 115 if (chrome_pgo_phase > 0) { |
116 full_wpo_on_official = true | 116 full_wpo_on_official = true |
117 } else { | 117 } else { |
118 full_wpo_on_official = false | 118 full_wpo_on_official = false |
119 } | 119 } |
120 } | 120 } |
121 | 121 |
122 declare_args() { | 122 declare_args() { |
123 # Set to true to use lld, the LLVM linker. This flag may be used on Windows, | |
124 # Linux or Fuchsia. | |
125 use_lld = (is_win && host_os != "win") || is_fuchsia || | |
126 ((allow_posix_link_time_opt || is_cfi) && target_os == "linux" && | |
127 !is_chromeos && target_cpu == "x64") | |
128 } | |
129 | |
130 declare_args() { | |
131 # Whether to use the gold linker from binutils instead of lld or bfd. | 123 # Whether to use the gold linker from binutils instead of lld or bfd. |
132 use_gold = | 124 use_gold = |
133 (!use_lld && !(is_chromecast && is_linux && | 125 (!use_lld && !(is_chromecast && is_linux && |
134 (current_cpu == "arm" || current_cpu == "mipsel")) && | 126 (current_cpu == "arm" || current_cpu == "mipsel")) && |
135 (is_linux && (current_cpu == "x64" || current_cpu == "x86" || | 127 (is_linux && (current_cpu == "x64" || current_cpu == "x86" || |
136 current_cpu == "arm" || current_cpu == "mipsel"))) || | 128 current_cpu == "arm" || current_cpu == "mipsel"))) || |
137 (is_android && (current_cpu == "x86" || current_cpu == "x64" || | 129 (is_android && (current_cpu == "x86" || current_cpu == "x64" || |
138 current_cpu == "arm" || current_cpu == "arm64")) | 130 current_cpu == "arm" || current_cpu == "arm64")) |
139 } | 131 } |
140 | 132 |
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
180 } | 172 } |
181 | 173 |
182 # Assert that the configuration isn't going to hit https://crbug.com/648948. | 174 # Assert that the configuration isn't going to hit https://crbug.com/648948. |
183 assert(ignore_elf32_limitations || !is_android || | 175 assert(ignore_elf32_limitations || !is_android || |
184 (android_64bit_target_cpu && !build_apk_secondary_abi) || | 176 (android_64bit_target_cpu && !build_apk_secondary_abi) || |
185 is_component_build || symbol_level < 2, | 177 is_component_build || symbol_level < 2, |
186 "Android 32-bit non-component builds cannot have symbol_level=2 " + | 178 "Android 32-bit non-component builds cannot have symbol_level=2 " + |
187 "due to 4GiB file size limit, see https://crbug.com/648948. " + | 179 "due to 4GiB file size limit, see https://crbug.com/648948. " + |
188 "If you really want to try this out, " + | 180 "If you really want to try this out, " + |
189 "set ignore_elf32_limitations=true.") | 181 "set ignore_elf32_limitations=true.") |
OLD | NEW |