OLD | NEW |
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 Loading... |
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 Loading... |
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 Loading... |
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 Loading... |
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 } |
OLD | NEW |