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

Unified Diff: webrtc/media/BUILD.gn

Issue 2854123003: Build WebRTC with data channel only. (Closed)
Patch Set: Fix the issues. Make it ready for another round of review. Add a test. Created 3 years, 7 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 side-by-side diff with in-line comments
Download patch
Index: webrtc/media/BUILD.gn
diff --git a/webrtc/media/BUILD.gn b/webrtc/media/BUILD.gn
index cc775984398c50f7ab14e399d9f024923def7a90..238b059ec4745a02806220f121afb93af632f187 100644
--- a/webrtc/media/BUILD.gn
+++ b/webrtc/media/BUILD.gn
@@ -32,7 +32,20 @@ config("rtc_media_warnings_config") {
}
}
-rtc_static_library("rtc_media_base") {
+rtc_source_set("rtc_media_audio_base") {
+ deps = [
+ "../api/audio_codecs:audio_codecs_api",
+ ]
+}
+
+rtc_source_set("rtc_media_video_base") {
+ deps = [
+ "../api:video_frame_api",
+ "../common_video:common_video",
+ ]
+}
+
+rtc_source_set("rtc_media_data_base") {
# TODO(kjellander): Remove (bugs.webrtc.org/6828)
# Enabling GN check triggers cyclic dependency error:
# //webrtc/media:rtc_media_base ->
@@ -51,6 +64,8 @@ rtc_static_library("rtc_media_base") {
"base/codec.h",
"base/cryptoparams.h",
"base/device.h",
+ "base/h264_profile_level_id.cc",
+ "base/h264_profile_level_id.h",
"base/mediachannel.h",
"base/mediaconstants.cc",
"base/mediaconstants.h",
@@ -98,13 +113,9 @@ rtc_static_library("rtc_media_base") {
deps += [
"..:webrtc_common",
"../api:libjingle_peerconnection_api",
- "../api:video_frame_api",
- "../api/audio_codecs:audio_codecs_api",
- "../api/audio_codecs:builtin_audio_encoder_factory",
"../base:rtc_base",
"../base:rtc_base_approved",
"../call:call_interfaces",
- "../common_video:common_video",
"../p2p",
]
@@ -113,7 +124,15 @@ rtc_static_library("rtc_media_base") {
}
}
-rtc_static_library("rtc_media") {
+rtc_static_library("rtc_media_base") {
+ public_deps = [
+ ":rtc_media_audio_base",
+ ":rtc_media_data_base",
+ ":rtc_media_video_base",
+ ]
+}
+
+rtc_static_library("rtc_audio_video") {
# TODO(kjellander): Remove (bugs.webrtc.org/6828)
# Enabling GN check triggers cyclic dependency error:
# //webrtc/media:media ->
@@ -156,16 +175,8 @@ rtc_static_library("rtc_media") {
"engine/webrtcvoe.h",
"engine/webrtcvoiceengine.cc",
"engine/webrtcvoiceengine.h",
- "sctp/sctptransportinternal.h",
]
- if (rtc_enable_sctp) {
- sources += [
- "sctp/sctptransport.cc",
- "sctp/sctptransport.h",
- ]
- }
-
configs += [ ":rtc_media_warnings_config" ]
if (!build_with_chromium && is_clang) {
@@ -204,15 +215,6 @@ rtc_static_library("rtc_media") {
include_dirs += [ "$rtc_libyuv_dir/include" ]
}
- if (rtc_enable_sctp && rtc_build_usrsctp) {
- include_dirs += [
- # TODO(jiayl): move this into the public_configs of
- # //third_party/usrsctp/BUILD.gn.
- "//third_party/usrsctp/usrsctplib",
- ]
- deps += [ "//third_party/usrsctp" ]
- }
-
public_configs = []
if (build_with_chromium) {
deps += [ "../modules/video_capture:video_capture" ]
@@ -221,7 +223,9 @@ rtc_static_library("rtc_media") {
deps += [ "../modules/video_capture:video_capture_internal_impl" ]
}
deps += [
- ":rtc_media_base",
+ ":rtc_media_audio_base",
+ ":rtc_media_data_base",
+ ":rtc_media_video_base",
"..:webrtc_common",
"../api:call_api",
"../api:transport_api",
@@ -249,6 +253,75 @@ rtc_static_library("rtc_media") {
]
}
+rtc_static_library("rtc_data") {
+ # TODO(kjellander): Remove (bugs.webrtc.org/6828)
+ # Enabling GN check triggers cyclic dependency error:
+ # //webrtc/media:media ->
+ # //webrtc/media:rtc_media ->
+ # //webrtc/pc:rtc_pc ->
+ # //webrtc/media:media
+ check_includes = false
+ defines = []
+ deps = []
+
+ if (rtc_enable_sctp) {
+ sources = [
+ "sctp/sctptransport.cc",
+ "sctp/sctptransport.h",
+ "sctp/sctptransportinternal.h",
+ ]
+ }
+
+ configs += [ ":rtc_media_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" ]
+ }
+
+ if (is_win) {
+ cflags = [
+ "/wd4245", # conversion from "int" to "size_t", signed/unsigned mismatch.
+ "/wd4267", # conversion from "size_t" to "int", possible loss of data.
+ "/wd4389", # signed/unsigned mismatch.
+ ]
+ }
+
+ if (rtc_enable_sctp && rtc_build_usrsctp) {
+ include_dirs = [
+ # TODO(jiayl): move this into the public_configs of
+ # //third_party/usrsctp/BUILD.gn.
+ "//third_party/usrsctp/usrsctplib",
+ ]
+ deps += [ "//third_party/usrsctp" ]
+ }
+
+ deps += [
+ ":rtc_media_data_base",
+ "..:webrtc_common",
+ "../api:call_api",
+ "../api:transport_api",
+ "../base:rtc_base",
+ "../base:rtc_base_approved",
+ "../p2p:rtc_p2p",
+ "../system_wrappers",
+ ]
+}
+
+rtc_static_library("rtc_media") {
+ # TODO(kjellander): Remove (bugs.webrtc.org/6828)
+ # Enabling GN check triggers cyclic dependency error:
+ # //webrtc/media:media ->
+ # //webrtc/media:rtc_media ->
+ # //webrtc/pc:rtc_pc ->
+ # //webrtc/media:media
+ check_includes = false
+ public_deps = [
+ ":rtc_audio_video",
+ ":rtc_data",
+ ]
+}
+
if (rtc_include_tests) {
config("rtc_unittest_main_config") {
# GN orders flags on a target before flags from configs. The default config

Powered by Google App Engine
This is Rietveld 408576698