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("//build/config/linux/pkg_config.gni") | 9 import("//build/config/linux/pkg_config.gni") |
10 import("../webrtc.gni") | 10 import("../webrtc.gni") |
11 | 11 |
12 group("media") { | 12 group("media") { |
13 public_deps = [ | 13 public_deps = [ |
| 14 ":rtc_audio_video", |
14 ":rtc_media", | 15 ":rtc_media", |
15 ":rtc_media_base", | 16 ":rtc_media_base", |
16 ] | 17 ] |
17 } | 18 } |
18 | 19 |
19 config("rtc_media_defines_config") { | 20 config("rtc_media_defines_config") { |
20 defines = [ | 21 defines = [ |
21 "HAVE_WEBRTC_VIDEO", | 22 "HAVE_WEBRTC_VIDEO", |
22 "HAVE_WEBRTC_VOICE", | 23 "HAVE_WEBRTC_VOICE", |
23 ] | 24 ] |
24 } | 25 } |
25 | 26 |
26 config("rtc_media_warnings_config") { | 27 config("rtc_media_warnings_config") { |
27 # GN orders flags on a target before flags from configs. The default config | 28 # GN orders flags on a target before flags from configs. The default config |
28 # adds these flags so to cancel them out they need to come from a config and | 29 # adds these flags so to cancel them out they need to come from a config and |
29 # cannot be on the target directly. | 30 # cannot be on the target directly. |
30 if (!is_win) { | 31 if (!is_win) { |
31 cflags = [ "-Wno-deprecated-declarations" ] | 32 cflags = [ "-Wno-deprecated-declarations" ] |
32 } | 33 } |
33 } | 34 } |
34 | 35 |
| 36 rtc_static_library("rtc_media_audio_base") { |
| 37 deps = [ |
| 38 "../api/audio_codecs:audio_codecs_api", |
| 39 ] |
| 40 } |
| 41 |
| 42 rtc_static_library("rtc_media_video_base_nullimpl") { |
| 43 sources = [ |
| 44 "base/codec_video_nullimpl.cc", |
| 45 ] |
| 46 } |
| 47 |
| 48 rtc_static_library("rtc_media_video_base") { |
| 49 sources = [ |
| 50 "base/codec_video.cc", |
| 51 ] |
| 52 |
| 53 deps = [ |
| 54 "../api:video_frame_api", |
| 55 "../common_video:common_video", |
| 56 ] |
| 57 } |
| 58 |
35 rtc_static_library("rtc_media_base") { | 59 rtc_static_library("rtc_media_base") { |
36 # TODO(kjellander): Remove (bugs.webrtc.org/6828) | 60 # TODO(kjellander): Remove (bugs.webrtc.org/6828) |
37 # Enabling GN check triggers cyclic dependency error: | 61 # Enabling GN check triggers cyclic dependency error: |
38 # //webrtc/media:rtc_media_base -> | 62 # //webrtc/media:rtc_media_base -> |
39 # //webrtc/pc:rtc_pc -> | 63 # //webrtc/pc:rtc_pc -> |
40 # //webrtc/media:media -> | 64 # //webrtc/media:media -> |
41 # //webrtc/media:rtc_media_base | 65 # //webrtc/media:rtc_media_base |
42 check_includes = false | 66 check_includes = false |
43 defines = [] | 67 defines = [] |
44 libs = [] | 68 libs = [] |
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
91 "$rtc_libyuv_dir", | 115 "$rtc_libyuv_dir", |
92 ] | 116 ] |
93 } else { | 117 } else { |
94 # Need to add a directory normally exported by libyuv. | 118 # Need to add a directory normally exported by libyuv. |
95 include_dirs += [ "$rtc_libyuv_dir/include" ] | 119 include_dirs += [ "$rtc_libyuv_dir/include" ] |
96 } | 120 } |
97 | 121 |
98 deps += [ | 122 deps += [ |
99 "..:webrtc_common", | 123 "..:webrtc_common", |
100 "../api:libjingle_peerconnection_api", | 124 "../api:libjingle_peerconnection_api", |
101 "../api:video_frame_api", | |
102 "../api/audio_codecs:audio_codecs_api", | |
103 "../api/audio_codecs:builtin_audio_encoder_factory", | |
104 "../base:rtc_base", | 125 "../base:rtc_base", |
105 "../base:rtc_base_approved", | 126 "../base:rtc_base_approved", |
106 "../call:call_interfaces", | 127 "../call:call_interfaces", |
107 "../common_video:common_video", | |
108 "../p2p", | 128 "../p2p", |
109 ] | 129 ] |
110 | 130 |
111 if (is_nacl) { | 131 if (is_nacl) { |
112 deps += [ "//native_client_sdk/src/libraries/nacl_io" ] | 132 deps += [ "//native_client_sdk/src/libraries/nacl_io" ] |
113 } | 133 } |
114 } | 134 } |
115 | 135 |
116 rtc_static_library("rtc_media") { | 136 rtc_static_library("rtc_audio_video") { |
117 # TODO(kjellander): Remove (bugs.webrtc.org/6828) | 137 # TODO(kjellander): Remove (bugs.webrtc.org/6828) |
118 # Enabling GN check triggers cyclic dependency error: | 138 # Enabling GN check triggers cyclic dependency error: |
119 # //webrtc/media:media -> | 139 # //webrtc/media:media -> |
120 # //webrtc/media:rtc_media -> | 140 # //webrtc/media:rtc_media -> |
121 # //webrtc/pc:rtc_pc -> | 141 # //webrtc/pc:rtc_pc -> |
122 # //webrtc/media:media | 142 # //webrtc/media:media |
123 check_includes = false | 143 check_includes = false |
124 defines = [] | 144 defines = [] |
125 libs = [] | 145 libs = [] |
126 deps = [] | 146 deps = [] |
(...skipping 22 matching lines...) Expand all Loading... |
149 "engine/webrtcvideocapturer.h", | 169 "engine/webrtcvideocapturer.h", |
150 "engine/webrtcvideocapturerfactory.cc", | 170 "engine/webrtcvideocapturerfactory.cc", |
151 "engine/webrtcvideocapturerfactory.h", | 171 "engine/webrtcvideocapturerfactory.h", |
152 "engine/webrtcvideodecoderfactory.h", | 172 "engine/webrtcvideodecoderfactory.h", |
153 "engine/webrtcvideoencoderfactory.h", | 173 "engine/webrtcvideoencoderfactory.h", |
154 "engine/webrtcvideoengine2.cc", | 174 "engine/webrtcvideoengine2.cc", |
155 "engine/webrtcvideoengine2.h", | 175 "engine/webrtcvideoengine2.h", |
156 "engine/webrtcvoe.h", | 176 "engine/webrtcvoe.h", |
157 "engine/webrtcvoiceengine.cc", | 177 "engine/webrtcvoiceengine.cc", |
158 "engine/webrtcvoiceengine.h", | 178 "engine/webrtcvoiceengine.h", |
159 "sctp/sctptransportinternal.h", | |
160 ] | 179 ] |
161 | 180 |
162 if (rtc_enable_sctp) { | |
163 sources += [ | |
164 "sctp/sctptransport.cc", | |
165 "sctp/sctptransport.h", | |
166 ] | |
167 } | |
168 | |
169 configs += [ ":rtc_media_warnings_config" ] | 181 configs += [ ":rtc_media_warnings_config" ] |
170 | 182 |
171 if (!build_with_chromium && is_clang) { | 183 if (!build_with_chromium && is_clang) { |
172 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163). | 184 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163). |
173 suppressed_configs += [ "//build/config/clang:find_bad_constructs" ] | 185 suppressed_configs += [ "//build/config/clang:find_bad_constructs" ] |
174 } | 186 } |
175 | 187 |
176 if (is_win) { | 188 if (is_win) { |
177 cflags = [ | 189 cflags = [ |
178 "/wd4245", # conversion from "int" to "size_t", signed/unsigned mismatch. | 190 "/wd4245", # conversion from "int" to "size_t", signed/unsigned mismatch. |
(...skipping 18 matching lines...) Expand all Loading... |
197 if (rtc_build_libyuv) { | 209 if (rtc_build_libyuv) { |
198 deps += [ "$rtc_libyuv_dir" ] | 210 deps += [ "$rtc_libyuv_dir" ] |
199 public_deps = [ | 211 public_deps = [ |
200 "$rtc_libyuv_dir", | 212 "$rtc_libyuv_dir", |
201 ] | 213 ] |
202 } else { | 214 } else { |
203 # Need to add a directory normally exported by libyuv. | 215 # Need to add a directory normally exported by libyuv. |
204 include_dirs += [ "$rtc_libyuv_dir/include" ] | 216 include_dirs += [ "$rtc_libyuv_dir/include" ] |
205 } | 217 } |
206 | 218 |
207 if (rtc_enable_sctp && rtc_build_usrsctp) { | |
208 include_dirs += [ | |
209 # TODO(jiayl): move this into the public_configs of | |
210 # //third_party/usrsctp/BUILD.gn. | |
211 "//third_party/usrsctp/usrsctplib", | |
212 ] | |
213 deps += [ "//third_party/usrsctp" ] | |
214 } | |
215 | |
216 public_configs = [] | 219 public_configs = [] |
217 if (build_with_chromium) { | 220 if (build_with_chromium) { |
218 deps += [ "../modules/video_capture:video_capture" ] | 221 deps += [ "../modules/video_capture:video_capture" ] |
219 } else { | 222 } else { |
220 public_configs += [ ":rtc_media_defines_config" ] | 223 public_configs += [ ":rtc_media_defines_config" ] |
221 deps += [ "../modules/video_capture:video_capture_internal_impl" ] | 224 deps += [ "../modules/video_capture:video_capture_internal_impl" ] |
222 } | 225 } |
223 deps += [ | 226 deps += [ |
| 227 ":rtc_media_audio_base", |
224 ":rtc_media_base", | 228 ":rtc_media_base", |
| 229 ":rtc_media_video_base", |
225 "..:webrtc_common", | 230 "..:webrtc_common", |
226 "../api:call_api", | 231 "../api:call_api", |
227 "../api:transport_api", | 232 "../api:transport_api", |
228 "../api:video_frame_api", | 233 "../api:video_frame_api", |
229 "../api/audio_codecs:audio_codecs_api", | 234 "../api/audio_codecs:audio_codecs_api", |
230 "../api/audio_codecs:builtin_audio_decoder_factory", | 235 "../api/audio_codecs:builtin_audio_decoder_factory", |
231 "../api/video_codecs:video_codecs_api", | 236 "../api/video_codecs:video_codecs_api", |
232 "../base:rtc_base", | 237 "../base:rtc_base", |
233 "../base:rtc_base_approved", | 238 "../base:rtc_base_approved", |
234 "../call", | 239 "../call", |
235 "../common_video:common_video", | 240 "../common_video:common_video", |
236 "../modules/audio_coding:rent_a_codec", | 241 "../modules/audio_coding:rent_a_codec", |
237 "../modules/audio_device:audio_device", | 242 "../modules/audio_device:audio_device", |
238 "../modules/audio_mixer:audio_mixer_impl", | 243 "../modules/audio_mixer:audio_mixer_impl", |
239 "../modules/audio_processing:audio_processing", | 244 "../modules/audio_processing:audio_processing", |
240 "../modules/video_capture:video_capture_module", | 245 "../modules/video_capture:video_capture_module", |
241 "../modules/video_coding", | 246 "../modules/video_coding", |
242 "../modules/video_coding:webrtc_h264", | 247 "../modules/video_coding:webrtc_h264", |
243 "../modules/video_coding:webrtc_vp8", | 248 "../modules/video_coding:webrtc_vp8", |
244 "../modules/video_coding:webrtc_vp9", | 249 "../modules/video_coding:webrtc_vp9", |
245 "../p2p:rtc_p2p", | 250 "../p2p:rtc_p2p", |
246 "../system_wrappers", | 251 "../system_wrappers", |
247 "../video", | 252 "../video", |
248 "../voice_engine", | 253 "../voice_engine", |
249 ] | 254 ] |
250 } | 255 } |
251 | 256 |
| 257 rtc_static_library("rtc_media") { |
| 258 # TODO(kjellander): Remove (bugs.webrtc.org/6828) |
| 259 # Enabling GN check triggers cyclic dependency error: |
| 260 # //webrtc/media:media -> |
| 261 # //webrtc/media:rtc_media -> |
| 262 # //webrtc/pc:rtc_pc -> |
| 263 # //webrtc/media:media |
| 264 check_includes = false |
| 265 defines = [] |
| 266 deps = [] |
| 267 |
| 268 if (rtc_enable_sctp) { |
| 269 sources = [ |
| 270 "sctp/sctptransport.cc", |
| 271 "sctp/sctptransport.h", |
| 272 "sctp/sctptransportinternal.h", |
| 273 ] |
| 274 } |
| 275 |
| 276 configs += [ ":rtc_media_warnings_config" ] |
| 277 |
| 278 if (!build_with_chromium && is_clang) { |
| 279 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163). |
| 280 suppressed_configs += [ "//build/config/clang:find_bad_constructs" ] |
| 281 } |
| 282 |
| 283 if (is_win) { |
| 284 cflags = [ |
| 285 "/wd4245", # conversion from "int" to "size_t", signed/unsigned mismatch. |
| 286 "/wd4267", # conversion from "size_t" to "int", possible loss of data. |
| 287 "/wd4389", # signed/unsigned mismatch. |
| 288 ] |
| 289 } |
| 290 |
| 291 if (rtc_enable_sctp && rtc_build_usrsctp) { |
| 292 include_dirs = [ |
| 293 # TODO(jiayl): move this into the public_configs of |
| 294 # //third_party/usrsctp/BUILD.gn. |
| 295 "//third_party/usrsctp/usrsctplib", |
| 296 ] |
| 297 deps += [ "//third_party/usrsctp" ] |
| 298 } |
| 299 |
| 300 deps += [ |
| 301 ":rtc_media_base", |
| 302 "..:webrtc_common", |
| 303 "../api:call_api", |
| 304 "../api:transport_api", |
| 305 "../base:rtc_base", |
| 306 "../base:rtc_base_approved", |
| 307 "../p2p:rtc_p2p", |
| 308 "../system_wrappers", |
| 309 ] |
| 310 } |
| 311 |
252 if (rtc_include_tests) { | 312 if (rtc_include_tests) { |
253 config("rtc_unittest_main_config") { | 313 config("rtc_unittest_main_config") { |
254 # GN orders flags on a target before flags from configs. The default config | 314 # GN orders flags on a target before flags from configs. The default config |
255 # adds -Wall, and this flag have to be after -Wall -- so they need to | 315 # adds -Wall, and this flag have to be after -Wall -- so they need to |
256 # come from a config and can"t be on the target directly. | 316 # come from a config and can"t be on the target directly. |
257 if (is_clang && is_ios) { | 317 if (is_clang && is_ios) { |
258 cflags = [ "-Wno-unused-variable" ] | 318 cflags = [ "-Wno-unused-variable" ] |
259 } | 319 } |
260 } | 320 } |
261 | 321 |
(...skipping 195 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
457 "../modules/video_coding:video_coding_utility", | 517 "../modules/video_coding:video_coding_utility", |
458 "../modules/video_coding:webrtc_vp8", | 518 "../modules/video_coding:webrtc_vp8", |
459 "../p2p:p2p_test_utils", | 519 "../p2p:p2p_test_utils", |
460 "../system_wrappers:metrics_default", | 520 "../system_wrappers:metrics_default", |
461 "../test:audio_codec_mocks", | 521 "../test:audio_codec_mocks", |
462 "../test:test_support", | 522 "../test:test_support", |
463 "../voice_engine:voice_engine", | 523 "../voice_engine:voice_engine", |
464 ] | 524 ] |
465 } | 525 } |
466 } | 526 } |
OLD | NEW |