Per Åhgren cc73ed3e70 APM: Add build flag to allow building WebRTC without APM
This CL adds a build flag to allow building the non-test parts
of WebRTC without the audio processing module.
The CL also ensures that the WebRTC code correctly handles
the case when no APM is available.

Bug: webrtc:5298
Change-Id: I5c8b5d1f7115e5cce2af4c2b5ff701fa1c54e49e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/171509
Commit-Queue: Per Åhgren <peah@webrtc.org>
Reviewed-by: Sam Zackrisson <saza@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31133}
2020-04-26 23:06:44 +00:00

110 lines
2.6 KiB
Plaintext

# Copyright (c) 2017 The WebRTC project authors. All Rights Reserved.
#
# Use of this source code is governed by a BSD-style license
# that can be found in the LICENSE file in the root of the source
# tree. An additional intellectual property rights grant can be found
# in the file PATENTS. All contributing project authors may
# be found in the AUTHORS file in the root of the source tree.
import("../../../webrtc.gni") # This contains def of 'rtc_enable_protobuf'
rtc_source_set("aec_dump") {
visibility = [ "*" ]
sources = [ "aec_dump_factory.h" ]
deps = [
"../",
"../../../rtc_base:rtc_base_approved",
"../../../rtc_base/system:file_wrapper",
"../../../rtc_base/system:rtc_export",
]
}
if (rtc_include_tests) {
rtc_library("mock_aec_dump") {
testonly = true
sources = [
"mock_aec_dump.cc",
"mock_aec_dump.h",
]
deps = [
"..:audioproc_test_utils",
"../",
"../../../test:test_support",
]
}
rtc_library("mock_aec_dump_unittests") {
testonly = true
configs += [ "..:apm_debug_dump" ]
sources = [ "aec_dump_integration_test.cc" ]
deps = [
":mock_aec_dump",
"..:api",
"..:audioproc_test_utils",
"../",
"../../../rtc_base:rtc_base_approved",
"//testing/gtest",
]
}
}
if (rtc_enable_protobuf) {
rtc_library("aec_dump_impl") {
sources = [
"aec_dump_impl.cc",
"aec_dump_impl.h",
"capture_stream_info.cc",
"capture_stream_info.h",
"write_to_file_task.cc",
"write_to_file_task.h",
]
deps = [
":aec_dump",
"../",
"../../../api/audio:audio_frame_api",
"../../../api/task_queue",
"../../../rtc_base:checks",
"../../../rtc_base:ignore_wundef",
"../../../rtc_base:protobuf_utils",
"../../../rtc_base:rtc_base_approved",
"../../../rtc_base:rtc_task_queue",
"../../../rtc_base/system:file_wrapper",
"../../../system_wrappers",
]
deps += [ "../:audioproc_debug_proto" ]
}
if (rtc_include_tests) {
rtc_library("aec_dump_unittests") {
testonly = true
defines = []
deps = [
":aec_dump",
":aec_dump_impl",
"..:audioproc_debug_proto",
"../",
"../../../rtc_base:task_queue_for_test",
"../../../test:fileutils",
"../../../test:test_support",
"//testing/gtest",
]
sources = [ "aec_dump_unittest.cc" ]
}
}
}
rtc_library("null_aec_dump_factory") {
assert_no_deps = [ ":aec_dump_impl" ]
sources = [ "null_aec_dump_factory.cc" ]
deps = [
":aec_dump",
"../",
]
}