Chromium Code Reviews| Index: webrtc/pc/BUILD.gn |
| diff --git a/webrtc/pc/BUILD.gn b/webrtc/pc/BUILD.gn |
| index 483485012da481803fe641f220ef643832af61bb..d3e3a1986ef86f742042ec35ec2853c3b1df6878 100644 |
| --- a/webrtc/pc/BUILD.gn |
| +++ b/webrtc/pc/BUILD.gn |
| @@ -25,7 +25,23 @@ config("rtc_pc_config") { |
| } |
| } |
| -rtc_static_library("rtc_pc") { |
| +rtc_static_library("rtc_pc_audio") { |
| + sources = [ |
| + "channel_audio.cc", |
| + ] |
| + |
| + deps = [ |
| + "../media:rtc_audio_video", |
| + ] |
| +} |
| + |
| +rtc_static_library("rtc_pc_audio_nullimpl") { |
| + sources = [ |
| + "channel_audio_nullimpl.cc", |
| + ] |
| +} |
| + |
| +rtc_static_library("rtc_pc_base") { |
| defines = [] |
| sources = [ |
| "audiomonitor.cc", |
| @@ -56,7 +72,7 @@ rtc_static_library("rtc_pc") { |
| deps = [ |
| "../api:call_api", |
| "../base:rtc_base", |
| - "../media", |
| + "../media:rtc_media", |
| ] |
| if (rtc_build_libsrtp) { |
| @@ -71,6 +87,15 @@ rtc_static_library("rtc_pc") { |
| } |
| } |
| +# TODO(zhihuang): Remove this once the downstream dependencies start using the |
| +# modular targets. |
| +rtc_static_library("rtc_pc") { |
| + deps = [ |
| + ":rtc_pc_audio", |
| + ":rtc_pc_base", |
| + ] |
| +} |
| + |
| config("libjingle_peerconnection_warnings_config") { |
| # GN orders flags on a target before flags from configs. The default config |
| # adds these flags so to cancel them out they need to come from a config and |
| @@ -80,6 +105,120 @@ config("libjingle_peerconnection_warnings_config") { |
| } |
| } |
| +rtc_static_library("libjingle_peerconnection_audio") { |
|
Zhi Huang
2017/05/18 03:55:38
Use this when building with audio.
pthatcher
2017/05/18 17:50:26
Perhaps a better name would be "audio".
Zhi Huang
2017/05/23 03:40:35
We already have a target named "audio" and I'll na
|
| + sources = [ |
| + "peerconnectionfactory_audio.cc", |
| + ] |
| + |
| + public_deps = [ |
| + ":rtc_pc_audio", |
| + ] |
| +} |
| + |
| +rtc_static_library("libjingle_peerconnection_audio_nullimpl") { |
| + sources = [ |
| + "peerconnectionfactory_audio_nullimpl.cc", |
| + ] |
| + |
| + public_deps = [ |
| + ":rtc_pc_audio_nullimpl", |
| + ] |
| +} |
| + |
|
pthatcher
2017/05/18 17:50:26
And "null_audio"
|
| +rtc_static_library("libjingle_peerconnection_media_nullimpl") { |
| + sources = [ |
| + "peerconnection_media_nullimpl.cc", |
| + "peerconnectionfactory_media_nullimpl.cc", |
| + ] |
| +} |
| + |
| +rtc_static_library("libjingle_peerconnection_media") { |
|
Zhi Huang
2017/05/18 03:55:38
Use this when build with either audio or video.
|
| + sources = [ |
| + "peerconnection_media.cc", |
| + "peerconnectionfactory_media.cc", |
| + ] |
| + |
| + deps = [ |
| + "../call", |
| + ] |
| +} |
| + |
| +rtc_static_library("libjingle_peerconnection_base") { |
|
Zhi Huang
2017/05/18 03:55:38
The target without audio and video.
pthatcher
2017/05/18 17:50:26
This could be just "base"
|
| + cflags = [] |
| + sources = [ |
| + "audiotrack.cc", |
| + "audiotrack.h", |
| + "datachannel.cc", |
| + "datachannel.h", |
| + "dtmfsender.cc", |
| + "dtmfsender.h", |
| + "iceserverparsing.cc", |
| + "iceserverparsing.h", |
| + "jsepicecandidate.cc", |
| + "jsepsessiondescription.cc", |
| + "localaudiosource.cc", |
| + "localaudiosource.h", |
| + "mediastream.cc", |
| + "mediastream.h", |
| + "mediastreamobserver.cc", |
| + "mediastreamobserver.h", |
| + "mediastreamtrack.h", |
| + "peerconnection.cc", |
| + "peerconnection.h", |
| + "peerconnectionfactory.cc", |
| + "peerconnectionfactory.h", |
| + "remoteaudiosource.cc", |
| + "remoteaudiosource.h", |
| + "rtcstatscollector.cc", |
| + "rtcstatscollector.h", |
| + "rtpreceiver.cc", |
| + "rtpreceiver.h", |
| + "rtpsender.cc", |
| + "rtpsender.h", |
| + "sctputils.cc", |
| + "sctputils.h", |
| + "statscollector.cc", |
| + "statscollector.h", |
| + "streamcollection.h", |
| + "trackmediainfomap.cc", |
| + "trackmediainfomap.h", |
| + "videocapturertracksource.cc", |
| + "videocapturertracksource.h", |
| + "videotrack.cc", |
| + "videotrack.h", |
| + "videotracksource.cc", |
| + "videotracksource.h", |
| + "webrtcsdp.cc", |
| + "webrtcsdp.h", |
| + "webrtcsession.cc", |
| + "webrtcsession.h", |
| + "webrtcsessiondescriptionfactory.cc", |
| + "webrtcsessiondescriptionfactory.h", |
| + ] |
| + |
| + configs += [ ":libjingle_peerconnection_warnings_config" ] |
| + |
| + 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" ] |
| + } |
| + |
| + deps = [ |
| + ":rtc_pc_base", |
| + "../api:call_api", |
| + "../api:rtc_stats_api", |
| + "../api/video_codecs:video_codecs_api", |
| + "../logging:rtc_event_log_api", |
| + "../stats", |
| + ] |
| + |
| + public_deps = [ |
| + "../api:libjingle_peerconnection_api", |
| + ] |
| +} |
| + |
| +# TODO(zhihuang): Remove this once the downstream dependencies start using the |
| +# modular targets. |
|
Taylor Brandstetter
2017/05/18 17:57:05
Couldn't this target just be defined in terms of t
Zhi Huang
2017/05/23 03:40:35
Done.
|
| rtc_static_library("libjingle_peerconnection") { |
| cflags = [] |
| sources = [ |