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 = [ |