OLD | NEW |
---|---|
1 # Copyright (c) 2014 The WebRTC project authors. All Rights Reserved. | 1 # Copyright (c) 2014 The WebRTC project authors. All Rights Reserved. |
2 # | 2 # |
3 # Use of this source code is governed by a BSD-style license | 3 # Use of this source code is governed by a BSD-style license |
4 # that can be found in the LICENSE file in the root of the source | 4 # that can be found in the LICENSE file in the root of the source |
5 # tree. An additional intellectual property rights grant can be found | 5 # tree. An additional intellectual property rights grant can be found |
6 # in the file PATENTS. All contributing project authors may | 6 # in the file PATENTS. All contributing project authors may |
7 # be found in the AUTHORS file in the root of the source tree. | 7 # be found in the AUTHORS file in the root of the source tree. |
8 | 8 |
9 import("//build/config/arm.gni") | 9 import("//build/config/arm.gni") |
10 import("//third_party/protobuf/proto_library.gni") | 10 import("//third_party/protobuf/proto_library.gni") |
(...skipping 158 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
169 "ns/ns_core.c", | 169 "ns/ns_core.c", |
170 "ns/ns_core.h", | 170 "ns/ns_core.h", |
171 "ns/windows_private.h", | 171 "ns/windows_private.h", |
172 ] | 172 ] |
173 } | 173 } |
174 | 174 |
175 if (current_cpu == "x86" || current_cpu == "x64") { | 175 if (current_cpu == "x86" || current_cpu == "x64") { |
176 deps += [ ":audio_processing_sse2" ] | 176 deps += [ ":audio_processing_sse2" ] |
177 } | 177 } |
178 | 178 |
179 if (rtc_build_armv7_neon || current_cpu == "arm64") { | 179 if (rtc_build_with_neon) { |
180 deps += [ ":audio_processing_neon" ] | 180 deps += [ ":audio_processing_neon" ] |
181 } | 181 } |
182 | 182 |
183 if (current_cpu == "mipsel") { | 183 if (current_cpu == "mipsel") { |
184 sources += [ "aecm/aecm_core_mips.c" ] | 184 sources += [ "aecm/aecm_core_mips.c" ] |
185 if (mips_float_abi == "hard") { | 185 if (mips_float_abi == "hard") { |
186 sources += [ | 186 sources += [ |
187 "aec/aec_core_mips.c", | 187 "aec/aec_core_mips.c", |
188 "aec/aec_rdft_mips.c", | 188 "aec/aec_rdft_mips.c", |
189 ] | 189 ] |
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
231 | 231 |
232 if (is_posix) { | 232 if (is_posix) { |
233 cflags = [ "-msse2" ] | 233 cflags = [ "-msse2" ] |
234 } | 234 } |
235 | 235 |
236 configs += [ "../..:common_config" ] | 236 configs += [ "../..:common_config" ] |
237 public_configs = [ "../..:common_inherited_config" ] | 237 public_configs = [ "../..:common_inherited_config" ] |
238 } | 238 } |
239 } | 239 } |
240 | 240 |
241 if (rtc_build_armv7_neon || current_cpu == "arm64") { | 241 if (rtc_build_with_neon) { |
242 source_set("audio_processing_neon") { | 242 source_set("audio_processing_neon") { |
243 sources = [ | 243 sources = [ |
244 "aec/aec_core_neon.c", | 244 "aec/aec_core_neon.c", |
245 "aec/aec_rdft_neon.c", | 245 "aec/aec_rdft_neon.c", |
246 "aecm/aecm_core_neon.c", | 246 "aecm/aecm_core_neon.c", |
247 "ns/nsx_core_neon.c", | 247 "ns/nsx_core_neon.c", |
248 ] | 248 ] |
249 | 249 |
250 if (current_cpu != "arm64") { | |
251 # Enable compilation for the NEON instruction set. This is needed | |
252 # since //build/config/arm.gni only enables NEON for iOS, not Android. | |
253 # This provides the same functionality as webrtc/build/arm_neon.gypi. | |
254 configs -= [ "//build/config/compiler:compiler_arm_fpu" ] | |
255 cflags = [ "-mfpu=neon" ] | |
256 } | |
257 | |
258 # Disable LTO due to compiler bug. | |
kjellander_webrtc
2015/06/18 09:06:23
Add link to the bug as previous comment.
Andrew MacDonald
2015/06/25 01:09:09
Done.
| |
259 if (rtc_use_lto) { | |
260 cflags -= [ | |
261 "-flto", | |
262 "-ffat-lto-objects", | |
263 ] | |
264 } | |
265 | |
250 configs += [ "../..:common_config" ] | 266 configs += [ "../..:common_config" ] |
251 public_configs = [ "../..:common_inherited_config" ] | 267 public_configs = [ "../..:common_inherited_config" ] |
252 | 268 |
253 deps = [ | 269 deps = [ |
254 "../../common_audio", | 270 "../../common_audio", |
255 ] | 271 ] |
256 | |
257 # Enable compilation for the ARM v7 Neon instruction set. This is needed | |
258 # since //build/config/arm.gni only enables Neon for iOS, not Android. | |
259 # This provides the same functionality as webrtc/build/arm_neon.gypi. | |
260 # TODO(kjellander): Investigate if this can be moved into webrtc.gni or | |
261 # //build/config/arm.gni instead, to reduce code duplication. | |
262 # Remove the -mfpu=vfpv3-d16 cflag. | |
263 configs -= [ "//build/config/compiler:compiler_arm_fpu" ] | |
264 | |
265 # "-mfpu=neon" is not requried for arm64 in GCC. | |
266 if (current_cpu != "arm64") { | |
267 cflags = [ "-mfpu=neon" ] | |
268 } | |
269 | |
270 # Disable LTO in audio_processing_neon target due to compiler bug. | |
271 if (rtc_use_lto) { | |
272 cflags -= [ | |
273 "-flto", | |
274 "-ffat-lto-objects", | |
275 ] | |
276 } | |
277 } | 272 } |
278 } | 273 } |
OLD | NEW |