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

Side by Side Diff: webrtc/pc/BUILD.gn

Issue 2854123003: Build WebRTC with data channel only. (Closed)
Patch Set: Rebase. Created 3 years, 6 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 unified diff | Download patch
« no previous file with comments | « webrtc/media/engine/webrtcvoiceengine.h ('k') | webrtc/pc/channel.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # Copyright (c) 2016 The WebRTC project authors. All Rights Reserved. 1 # Copyright (c) 2016 The WebRTC project authors. All Rights Reserved.
2 # 2 #
3 # Use of this source code is governed by a BSD-style license 3 # Use of this source code is governed by a BSD-style license
4 # that can be found in the LICENSE file in the root of the source 4 # that can be found in the LICENSE file in the root of the source
5 # tree. An additional intellectual property rights grant can be found 5 # tree. An additional intellectual property rights grant can be found
6 # in the file PATENTS. All contributing project authors may 6 # in the file PATENTS. All contributing project authors may
7 # be found in the AUTHORS file in the root of the source tree. 7 # be found in the AUTHORS file in the root of the source tree.
8 8
9 import("../webrtc.gni") 9 import("../webrtc.gni")
10 if (is_android) { 10 if (is_android) {
11 import("//build/config/android/config.gni") 11 import("//build/config/android/config.gni")
12 import("//build/config/android/rules.gni") 12 import("//build/config/android/rules.gni")
13 } 13 }
14 14
15 group("pc") { 15 group("pc") {
16 public_deps = [ 16 public_deps = [
17 ":rtc_pc", 17 ":rtc_pc",
18 ] 18 ]
19 } 19 }
20 20
21 config("rtc_pc_config") { 21 config("rtc_pc_config") {
22 defines = [] 22 defines = []
23 if (rtc_enable_sctp) { 23 if (rtc_enable_sctp) {
24 defines += [ "HAVE_SCTP" ] 24 defines += [ "HAVE_SCTP" ]
25 } 25 }
26 } 26 }
27 27
28 rtc_static_library("rtc_pc") { 28 rtc_static_library("rtc_pc_base") {
29 defines = [] 29 defines = []
30 sources = [ 30 sources = [
31 "audiomonitor.cc", 31 "audiomonitor.cc",
32 "audiomonitor.h", 32 "audiomonitor.h",
33 "bundlefilter.cc", 33 "bundlefilter.cc",
34 "bundlefilter.h", 34 "bundlefilter.h",
35 "channel.cc", 35 "channel.cc",
36 "channel.h", 36 "channel.h",
37 "channelmanager.cc", 37 "channelmanager.cc",
38 "channelmanager.h", 38 "channelmanager.h",
(...skipping 13 matching lines...) Expand all
52 "srtpfilter.h", 52 "srtpfilter.h",
53 "voicechannel.h", 53 "voicechannel.h",
54 ] 54 ]
55 55
56 deps = [ 56 deps = [
57 "..:webrtc_common", 57 "..:webrtc_common",
58 "../api:call_api", 58 "../api:call_api",
59 "../api:libjingle_peerconnection_api", 59 "../api:libjingle_peerconnection_api",
60 "../api:ortc_api", 60 "../api:ortc_api",
61 "../base:rtc_base", 61 "../base:rtc_base",
62 "../common_video:common_video", 62 "../base:rtc_task_queue",
63 "../media", 63 "../media:rtc_data",
64 "../media:rtc_media_base",
64 "../p2p:rtc_p2p", 65 "../p2p:rtc_p2p",
65 ] 66 ]
66 67
67 if (rtc_build_libsrtp) { 68 if (rtc_build_libsrtp) {
68 deps += [ "//third_party/libsrtp" ] 69 deps += [ "//third_party/libsrtp" ]
69 } 70 }
70 71
71 public_configs = [ ":rtc_pc_config" ] 72 public_configs = [ ":rtc_pc_config" ]
72 73
73 if (!build_with_chromium && is_clang) { 74 if (!build_with_chromium && is_clang) {
74 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163). 75 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163).
75 suppressed_configs += [ "//build/config/clang:find_bad_constructs" ] 76 suppressed_configs += [ "//build/config/clang:find_bad_constructs" ]
76 } 77 }
77 } 78 }
78 79
80 rtc_source_set("rtc_pc") {
81 public_deps = [
82 ":rtc_pc_base",
83 ]
84
85 deps = [
86 "../media:rtc_audio_video",
87 ]
88 }
89
79 config("libjingle_peerconnection_warnings_config") { 90 config("libjingle_peerconnection_warnings_config") {
80 # GN orders flags on a target before flags from configs. The default config 91 # GN orders flags on a target before flags from configs. The default config
81 # adds these flags so to cancel them out they need to come from a config and 92 # adds these flags so to cancel them out they need to come from a config and
82 # cannot be on the target directly. 93 # cannot be on the target directly.
83 if (!is_win && !is_clang) { 94 if (!is_win && !is_clang) {
84 cflags = [ "-Wno-maybe-uninitialized" ] # Only exists for GCC. 95 cflags = [ "-Wno-maybe-uninitialized" ] # Only exists for GCC.
85 } 96 }
86 } 97 }
87 98
88 rtc_static_library("libjingle_peerconnection") { 99 rtc_static_library("peerconnection") {
89 cflags = [] 100 cflags = []
90 sources = [ 101 sources = [
91 "audiotrack.cc", 102 "audiotrack.cc",
92 "audiotrack.h", 103 "audiotrack.h",
93 "datachannel.cc", 104 "datachannel.cc",
94 "datachannel.h", 105 "datachannel.h",
95 "dtmfsender.cc", 106 "dtmfsender.cc",
96 "dtmfsender.h", 107 "dtmfsender.h",
97 "iceserverparsing.cc", 108 "iceserverparsing.cc",
98 "iceserverparsing.h", 109 "iceserverparsing.h",
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
139 ] 150 ]
140 151
141 configs += [ ":libjingle_peerconnection_warnings_config" ] 152 configs += [ ":libjingle_peerconnection_warnings_config" ]
142 153
143 if (!build_with_chromium && is_clang) { 154 if (!build_with_chromium && is_clang) {
144 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163). 155 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163).
145 suppressed_configs += [ "//build/config/clang:find_bad_constructs" ] 156 suppressed_configs += [ "//build/config/clang:find_bad_constructs" ]
146 } 157 }
147 158
148 deps = [ 159 deps = [
149 ":rtc_pc", 160 ":rtc_pc_base",
150 "..:webrtc_common", 161 "..:webrtc_common",
151 "../api:call_api", 162 "../api:call_api",
152 "../api:rtc_stats_api", 163 "../api:rtc_stats_api",
153 "../api/audio_codecs:builtin_audio_decoder_factory",
154 "../api/audio_codecs:builtin_audio_encoder_factory",
155 "../api/video_codecs:video_codecs_api", 164 "../api/video_codecs:video_codecs_api",
156 "../base:rtc_base", 165 "../base:rtc_base",
157 "../base:rtc_base_approved", 166 "../base:rtc_base_approved",
158 "../call", 167 "../call:call_interfaces",
159 "../logging:rtc_event_log_api", 168 "../logging:rtc_event_log_api",
160 "../media", 169 "../media:rtc_data",
161 "../modules/audio_device:audio_device", 170 "../media:rtc_media_base",
162 "../p2p:rtc_p2p", 171 "../p2p:rtc_p2p",
163 "../stats", 172 "../stats",
164 "../system_wrappers:system_wrappers", 173 "../system_wrappers:system_wrappers",
165 ] 174 ]
166 175
167 public_deps = [ 176 public_deps = [
168 "../api:libjingle_peerconnection_api", 177 "../api:libjingle_peerconnection_api",
169 ] 178 ]
179 }
180
181 # This target implements CreatePeerConnectionFactory methods that will create a
182 # PeerConnection will full functionality (audio, video and data). Applications
183 # that wish to reduce their binary size by ommitting functionality they don't
184 # need should use CreateModularCreatePeerConnectionFactory instead, using the
185 # "peerconnection" build target and other targets specific to their
186 # requrements. See comment in peerconnectionfactoryinterface.h.
187 rtc_source_set("create_pc_factory") {
188 sources = [
189 "createpeerconnectionfactory.cc",
190 ]
191
192 deps = [
193 "../api:audio_mixer_api",
194 "../api:libjingle_peerconnection_api",
195 "../api/audio_codecs:audio_codecs_api",
196 "../api/audio_codecs:builtin_audio_decoder_factory",
197 "../api/audio_codecs:builtin_audio_encoder_factory",
198 "../base:rtc_base",
199 "../base:rtc_base_approved",
200 "../call",
201 "../call:call_interfaces",
202 "../logging:rtc_event_log_api",
203 "../media:rtc_audio_video",
204 "../modules/audio_device:audio_device",
205 ]
206
207 configs += [ ":libjingle_peerconnection_warnings_config" ]
208
209 if (!build_with_chromium && is_clang) {
210 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163).
211 suppressed_configs += [ "//build/config/clang:find_bad_constructs" ]
212 }
213 }
214
215 rtc_source_set("libjingle_peerconnection") {
216 public_deps = [
217 ":create_pc_factory",
218 ":peerconnection",
219 "../api:libjingle_peerconnection_api",
220 ]
170 221
171 if (rtc_use_quic) { 222 if (rtc_use_quic) {
172 sources += [ 223 sources += [
173 "quicdatachannel.cc", 224 "quicdatachannel.cc",
174 "quicdatachannel.h", 225 "quicdatachannel.h",
175 "quicdatatransport.cc", 226 "quicdatatransport.cc",
176 "quicdatatransport.h", 227 "quicdatatransport.h",
177 ] 228 ]
178 deps += [ "//third_party/libquic" ] 229 deps += [ "//third_party/libquic" ]
179 public_deps = [ 230 public_deps = [
(...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after
264 ] 315 ]
265 316
266 deps = [ 317 deps = [
267 ":libjingle_peerconnection", 318 ":libjingle_peerconnection",
268 "..:webrtc_common", 319 "..:webrtc_common",
269 "../api:libjingle_peerconnection_test_api", 320 "../api:libjingle_peerconnection_test_api",
270 "../api:rtc_stats_api", 321 "../api:rtc_stats_api",
271 "../base:rtc_base", 322 "../base:rtc_base",
272 "../base:rtc_base_approved", 323 "../base:rtc_base_approved",
273 "../base:rtc_base_tests_utils", 324 "../base:rtc_base_tests_utils",
325 "../call:call_interfaces",
326 "../logging:rtc_event_log_api",
274 "../media:rtc_media", 327 "../media:rtc_media",
275 "../media:rtc_media_tests_utils", 328 "../media:rtc_media_tests_utils",
276 "../modules/audio_device:audio_device", 329 "../modules/audio_device:audio_device",
277 "../p2p:p2p_test_utils", 330 "../p2p:p2p_test_utils",
278 "../test:test_support", 331 "../test:test_support",
279 "//testing/gmock", 332 "//testing/gmock",
280 ] 333 ]
281 334
282 if (!build_with_chromium && is_clang) { 335 if (!build_with_chromium && is_clang) {
283 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163). 336 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163).
(...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after
393 "//testing/gmock", 446 "//testing/gmock",
394 ] 447 ]
395 448
396 if (is_android) { 449 if (is_android) {
397 deps += [ "//testing/android/native_test:native_test_support" ] 450 deps += [ "//testing/android/native_test:native_test_support" ]
398 451
399 shard_timeout = 900 452 shard_timeout = 900
400 } 453 }
401 } 454 }
402 } 455 }
OLDNEW
« no previous file with comments | « webrtc/media/engine/webrtcvoiceengine.h ('k') | webrtc/pc/channel.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698