Split up audio_device build target
We currently have one build target containing everything for audio_device: the interfaces, the "fine" audio buffer, and the actual implementations for each platform. Since we are planning to move the Android implementation to the sdk/android folder, we only want to depend on the interfaces and the "fine" audio buffer, not the other platform specific implementations. This CL splits the audio_device target into three different targets: the interfaces, the fine audio buffer, and the platform specific implementations. The default audio_device target now points to the interfaces instead. Bug: webrtc:7452 Change-Id: I57e849cc6f4087d950fa02d969ecc682934839cd Reviewed-on: https://webrtc-review.googlesource.com/61321 Commit-Queue: Magnus Jedvert <magjed@webrtc.org> Reviewed-by: Patrik Höglund <phoglund@webrtc.org> Reviewed-by: Fredrik Solenberg <solenberg@webrtc.org> Reviewed-by: Magnus Jedvert <magjed@webrtc.org> Cr-Commit-Position: refs/heads/master@{#22452}
This commit is contained in:
parent
5f1a31c565
commit
7bd79a0089
@ -316,6 +316,7 @@ if (rtc_include_tests) {
|
||||
"../logging:rtc_event_log_api",
|
||||
"../modules/audio_coding",
|
||||
"../modules/audio_device",
|
||||
"../modules/audio_device:audio_device_impl",
|
||||
"../modules/audio_mixer:audio_mixer_impl",
|
||||
"../modules/rtp_rtcp",
|
||||
"../rtc_base:checks",
|
||||
|
||||
@ -348,6 +348,7 @@ rtc_static_library("rtc_audio_video") {
|
||||
"../call:video_stream_api",
|
||||
"../common_video:common_video",
|
||||
"../modules/audio_device:audio_device",
|
||||
"../modules/audio_device:audio_device_impl",
|
||||
"../modules/audio_mixer:audio_mixer_impl",
|
||||
"../modules/audio_processing:audio_processing",
|
||||
"../modules/video_capture:video_capture_module",
|
||||
|
||||
@ -48,16 +48,21 @@ config("audio_device_warnings_config") {
|
||||
rtc_source_set("audio_device") {
|
||||
visibility = [ "*" ]
|
||||
public_deps = [
|
||||
":audio_device_generic",
|
||||
":audio_device_api",
|
||||
|
||||
# Deprecated.
|
||||
# TODO(webrtc:7452): Remove this public dep. audio_device_impl should
|
||||
# be depended on directly if needed.
|
||||
":audio_device_impl",
|
||||
]
|
||||
if (rtc_include_internal_audio_device && is_ios) {
|
||||
public_deps += [ ":audio_device_ios_objc" ]
|
||||
}
|
||||
}
|
||||
|
||||
if (rtc_include_internal_audio_device && is_ios) {
|
||||
rtc_source_set("audio_device_ios_objc") {
|
||||
visibility = [ ":audio_device" ]
|
||||
visibility = [
|
||||
":audio_device_impl",
|
||||
":audio_device_ios_objc_unittests",
|
||||
]
|
||||
sources = [
|
||||
"ios/audio_device_ios.h",
|
||||
"ios/audio_device_ios.mm",
|
||||
@ -77,6 +82,8 @@ if (rtc_include_internal_audio_device && is_ios) {
|
||||
"UIKit.framework",
|
||||
]
|
||||
deps = [
|
||||
":audio_device_api",
|
||||
":audio_device_buffer",
|
||||
":audio_device_generic",
|
||||
"../../api:array_view",
|
||||
"../../rtc_base:checks",
|
||||
@ -94,14 +101,81 @@ if (rtc_include_internal_audio_device && is_ios) {
|
||||
}
|
||||
}
|
||||
|
||||
rtc_source_set("audio_device_generic") {
|
||||
rtc_source_set("audio_device_api") {
|
||||
visibility = [
|
||||
":audio_device",
|
||||
":audio_device_buffer",
|
||||
":audio_device_impl",
|
||||
":audio_device_ios_objc",
|
||||
":audio_device_generic",
|
||||
]
|
||||
sources = [
|
||||
"include/audio_device.h",
|
||||
"include/audio_device_defines.h",
|
||||
]
|
||||
deps = [
|
||||
"../../:typedefs",
|
||||
"../../rtc_base:checks",
|
||||
"../../rtc_base:deprecation",
|
||||
"../../rtc_base:rtc_base_approved",
|
||||
]
|
||||
if (!build_with_chromium && is_clang) {
|
||||
# Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163).
|
||||
suppressed_configs += [ "//build/config/clang:find_bad_constructs" ]
|
||||
}
|
||||
}
|
||||
|
||||
rtc_source_set("audio_device_buffer") {
|
||||
sources = [
|
||||
"audio_device_buffer.cc",
|
||||
"audio_device_buffer.h",
|
||||
"audio_device_config.h",
|
||||
"fine_audio_buffer.cc",
|
||||
"fine_audio_buffer.h",
|
||||
]
|
||||
deps = [
|
||||
":audio_device_api",
|
||||
"../../:typedefs",
|
||||
"../../api:array_view",
|
||||
"../../common_audio:common_audio_c",
|
||||
"../../rtc_base:checks",
|
||||
"../../rtc_base:rtc_base_approved",
|
||||
"../../rtc_base:rtc_task_queue",
|
||||
"../../system_wrappers",
|
||||
"../../system_wrappers:metrics_api",
|
||||
]
|
||||
if (!build_with_chromium && is_clang) {
|
||||
# Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163).
|
||||
suppressed_configs += [ "//build/config/clang:find_bad_constructs" ]
|
||||
}
|
||||
}
|
||||
|
||||
rtc_source_set("audio_device_generic") {
|
||||
sources = [
|
||||
"audio_device_generic.cc",
|
||||
"audio_device_generic.h",
|
||||
]
|
||||
deps = [
|
||||
":audio_device_api",
|
||||
":audio_device_buffer",
|
||||
"../../rtc_base:rtc_base_approved",
|
||||
]
|
||||
if (!build_with_chromium && is_clang) {
|
||||
# Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163).
|
||||
suppressed_configs += [ "//build/config/clang:find_bad_constructs" ]
|
||||
}
|
||||
}
|
||||
|
||||
# Contains default implementations of webrtc::AudioDeviceModule for Windows,
|
||||
# Linux, Mac, iOS and Android.
|
||||
rtc_source_set("audio_device_impl") {
|
||||
visibility = [ "*" ]
|
||||
public_configs = [ ":audio_device_config" ]
|
||||
|
||||
deps = [
|
||||
":audio_device_api",
|
||||
":audio_device_buffer",
|
||||
":audio_device_generic",
|
||||
"..:module_api",
|
||||
"../..:webrtc_common",
|
||||
"../../:typedefs",
|
||||
@ -116,22 +190,15 @@ rtc_source_set("audio_device_generic") {
|
||||
"../../system_wrappers:metrics_api",
|
||||
"../utility",
|
||||
]
|
||||
if (rtc_include_internal_audio_device && is_ios) {
|
||||
deps += [ ":audio_device_ios_objc" ]
|
||||
}
|
||||
|
||||
sources = [
|
||||
"audio_device_buffer.cc",
|
||||
"audio_device_buffer.h",
|
||||
"audio_device_config.h",
|
||||
"audio_device_generic.cc",
|
||||
"audio_device_generic.h",
|
||||
"dummy/audio_device_dummy.cc",
|
||||
"dummy/audio_device_dummy.h",
|
||||
"dummy/file_audio_device.cc",
|
||||
"dummy/file_audio_device.h",
|
||||
"fine_audio_buffer.cc",
|
||||
"fine_audio_buffer.h",
|
||||
"include/audio_device.h",
|
||||
"include/audio_device_default.h",
|
||||
"include/audio_device_defines.h",
|
||||
"include/fake_audio_device.h",
|
||||
"include/test_audio_device.cc",
|
||||
"include/test_audio_device.h",
|
||||
@ -308,6 +375,8 @@ rtc_source_set("mock_audio_device") {
|
||||
]
|
||||
deps = [
|
||||
":audio_device",
|
||||
":audio_device_buffer",
|
||||
":audio_device_impl",
|
||||
"../../test:test_support",
|
||||
]
|
||||
}
|
||||
@ -324,6 +393,9 @@ if (rtc_include_tests) {
|
||||
]
|
||||
deps = [
|
||||
":audio_device",
|
||||
":audio_device_buffer",
|
||||
":audio_device_impl",
|
||||
":audio_device_ios_objc",
|
||||
":mock_audio_device",
|
||||
"../../rtc_base:rtc_base_approved",
|
||||
"../../sdk:audio_objc",
|
||||
@ -347,6 +419,8 @@ if (rtc_include_tests) {
|
||||
]
|
||||
deps = [
|
||||
":audio_device",
|
||||
":audio_device_buffer",
|
||||
":audio_device_impl",
|
||||
":mock_audio_device",
|
||||
"../../api:array_view",
|
||||
"../../api:optional",
|
||||
|
||||
@ -186,6 +186,7 @@ if (!build_with_chromium) {
|
||||
|
||||
deps = [
|
||||
"../modules/audio_device",
|
||||
"../modules/audio_device:audio_device_impl",
|
||||
"../system_wrappers:system_wrappers_default",
|
||||
"//build/win:default_exe_manifest",
|
||||
]
|
||||
|
||||
@ -584,6 +584,7 @@ rtc_source_set("test_common") {
|
||||
"../media:rtc_internal_video_codecs",
|
||||
"../media:rtc_media_base",
|
||||
"../modules/audio_device",
|
||||
"../modules/audio_device:audio_device_impl",
|
||||
"../modules/audio_device:mock_audio_device",
|
||||
"../modules/audio_mixer:audio_mixer_impl",
|
||||
"../modules/audio_processing",
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user