Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(238)

Side by Side Diff: webrtc/modules/audio_processing/BUILD.gn

Issue 1881153003: Moved the aec_rdft*.c files to be built using C++ (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Rebase with latest master Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | webrtc/modules/audio_processing/aec/aec_core.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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")
11 import("../../build/webrtc.gni") 11 import("../../build/webrtc.gni")
12 12
13 declare_args() { 13 declare_args() {
14 # Outputs some low-level debug files. 14 # Outputs some low-level debug files.
15 aec_debug_dump = false 15 aec_debug_dump = false
16 16
17 # Disables the usual mode where we trust the reported system delay 17 # Disables the usual mode where we trust the reported system delay
18 # values the AEC receives. The corresponding define is set appropriately 18 # values the AEC receives. The corresponding define is set appropriately
19 # in the code, but it can be force-enabled here for testing. 19 # in the code, but it can be force-enabled here for testing.
20 aec_untrusted_delay_for_testing = false 20 aec_untrusted_delay_for_testing = false
21 } 21 }
22 22
23 source_set("audio_processing") { 23 source_set("audio_processing") {
24 sources = [ 24 sources = [
25 "aec/aec_core.cc", 25 "aec/aec_core.cc",
26 "aec/aec_core.h", 26 "aec/aec_core.h",
27 "aec/aec_core_internal.h", 27 "aec/aec_core_internal.h",
28 "aec/aec_rdft.c", 28 "aec/aec_rdft.cc",
29 "aec/aec_rdft.h", 29 "aec/aec_rdft.h",
30 "aec/aec_resampler.cc", 30 "aec/aec_resampler.cc",
31 "aec/aec_resampler.h", 31 "aec/aec_resampler.h",
32 "aec/echo_cancellation.cc", 32 "aec/echo_cancellation.cc",
33 "aec/echo_cancellation.h", 33 "aec/echo_cancellation.h",
34 "aec/echo_cancellation_internal.h", 34 "aec/echo_cancellation_internal.h",
35 "aecm/aecm_core.cc", 35 "aecm/aecm_core.cc",
36 "aecm/aecm_core.h", 36 "aecm/aecm_core.h",
37 "aecm/echo_control_mobile.cc", 37 "aecm/echo_control_mobile.cc",
38 "aecm/echo_control_mobile.h", 38 "aecm/echo_control_mobile.h",
(...skipping 154 matching lines...) Expand 10 before | Expand all | Expand 10 after
193 193
194 if (rtc_build_with_neon) { 194 if (rtc_build_with_neon) {
195 deps += [ ":audio_processing_neon" ] 195 deps += [ ":audio_processing_neon" ]
196 } 196 }
197 197
198 if (current_cpu == "mipsel") { 198 if (current_cpu == "mipsel") {
199 sources += [ "aecm/aecm_core_mips.cc" ] 199 sources += [ "aecm/aecm_core_mips.cc" ]
200 if (mips_float_abi == "hard") { 200 if (mips_float_abi == "hard") {
201 sources += [ 201 sources += [
202 "aec/aec_core_mips.cc", 202 "aec/aec_core_mips.cc",
203 "aec/aec_rdft_mips.c", 203 "aec/aec_rdft_mips.cc",
204 ] 204 ]
205 } 205 }
206 } else { 206 } else {
207 sources += [ "aecm/aecm_core_c.cc" ] 207 sources += [ "aecm/aecm_core_c.cc" ]
208 } 208 }
209 209
210 if (is_win) { 210 if (is_win) {
211 cflags = [ 211 cflags = [
212 # TODO(jschuh): Bug 1348: fix this warning. 212 # TODO(jschuh): Bug 1348: fix this warning.
213 "/wd4267", # size_t to int truncations 213 "/wd4267", # size_t to int truncations
(...skipping 20 matching lines...) Expand all
234 ] 234 ]
235 235
236 proto_out_dir = "webrtc/modules/audio_processing" 236 proto_out_dir = "webrtc/modules/audio_processing"
237 } 237 }
238 } 238 }
239 239
240 if (current_cpu == "x86" || current_cpu == "x64") { 240 if (current_cpu == "x86" || current_cpu == "x64") {
241 source_set("audio_processing_sse2") { 241 source_set("audio_processing_sse2") {
242 sources = [ 242 sources = [
243 "aec/aec_core_sse2.cc", 243 "aec/aec_core_sse2.cc",
244 "aec/aec_rdft_sse2.c", 244 "aec/aec_rdft_sse2.cc",
245 ] 245 ]
246 246
247 if (is_posix) { 247 if (is_posix) {
248 cflags = [ "-msse2" ] 248 cflags = [ "-msse2" ]
249 } 249 }
250 250
251 configs += [ "../..:common_config" ] 251 configs += [ "../..:common_config" ]
252 public_configs = [ "../..:common_inherited_config" ] 252 public_configs = [ "../..:common_inherited_config" ]
253 } 253 }
254 } 254 }
255 255
256 if (rtc_build_with_neon) { 256 if (rtc_build_with_neon) {
257 source_set("audio_processing_neon") { 257 source_set("audio_processing_neon") {
258 sources = [ 258 sources = [
259 "aec/aec_core_neon.cc", 259 "aec/aec_core_neon.cc",
260 "aec/aec_rdft_neon.c", 260 "aec/aec_rdft_neon.cc",
261 "aecm/aecm_core_neon.cc", 261 "aecm/aecm_core_neon.cc",
262 "ns/nsx_core_neon.c", 262 "ns/nsx_core_neon.c",
263 ] 263 ]
264 264
265 if (current_cpu != "arm64") { 265 if (current_cpu != "arm64") {
266 # Enable compilation for the NEON instruction set. This is needed 266 # Enable compilation for the NEON instruction set. This is needed
267 # since //build/config/arm.gni only enables NEON for iOS, not Android. 267 # since //build/config/arm.gni only enables NEON for iOS, not Android.
268 # This provides the same functionality as webrtc/build/arm_neon.gypi. 268 # This provides the same functionality as webrtc/build/arm_neon.gypi.
269 configs -= [ "//build/config/compiler:compiler_arm_fpu" ] 269 configs -= [ "//build/config/compiler:compiler_arm_fpu" ]
270 cflags = [ "-mfpu=neon" ] 270 cflags = [ "-mfpu=neon" ]
271 } 271 }
272 272
273 # Disable LTO on NEON targets due to compiler bug. 273 # Disable LTO on NEON targets due to compiler bug.
274 # TODO(fdegans): Enable this. See crbug.com/408997. 274 # TODO(fdegans): Enable this. See crbug.com/408997.
275 if (rtc_use_lto) { 275 if (rtc_use_lto) {
276 cflags -= [ 276 cflags -= [
277 "-flto", 277 "-flto",
278 "-ffat-lto-objects", 278 "-ffat-lto-objects",
279 ] 279 ]
280 } 280 }
281 281
282 configs += [ "../..:common_config" ] 282 configs += [ "../..:common_config" ]
283 public_configs = [ "../..:common_inherited_config" ] 283 public_configs = [ "../..:common_inherited_config" ]
284 284
285 deps = [ 285 deps = [
286 "../../common_audio", 286 "../../common_audio",
287 ] 287 ]
288 } 288 }
289 } 289 }
OLDNEW
« no previous file with comments | « no previous file | webrtc/modules/audio_processing/aec/aec_core.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698