OLD | NEW |
1 # Copyright 2016 The WebRTC project authors. All Rights Reserved. | 1 # Copyright 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_ios) { | 10 if (is_ios) { |
(...skipping 10 matching lines...) Expand all Loading... |
21 | 21 |
22 if (is_ios || is_mac) { | 22 if (is_ios || is_mac) { |
23 config("rtc_sdk_common_objc_config") { | 23 config("rtc_sdk_common_objc_config") { |
24 include_dirs = [ | 24 include_dirs = [ |
25 "objc/Framework/Classes", | 25 "objc/Framework/Classes", |
26 "objc/Framework/Headers", | 26 "objc/Framework/Headers", |
27 ] | 27 ] |
28 } | 28 } |
29 | 29 |
30 rtc_static_library("rtc_sdk_common_objc") { | 30 rtc_static_library("rtc_sdk_common_objc") { |
31 deps = [ | |
32 "../base:rtc_base", | |
33 ] | |
34 configs += [ | |
35 "..:common_objc", | |
36 "//build/config/compiler:enable_arc", | |
37 ] | |
38 public_configs = [ ":rtc_sdk_common_objc_config" ] | |
39 sources = [ | 31 sources = [ |
40 "objc/Framework/Classes/NSString+StdString.h", | 32 "objc/Framework/Classes/NSString+StdString.h", |
41 "objc/Framework/Classes/NSString+StdString.mm", | 33 "objc/Framework/Classes/NSString+StdString.mm", |
42 "objc/Framework/Classes/RTCDispatcher.m", | 34 "objc/Framework/Classes/RTCDispatcher.m", |
43 "objc/Framework/Classes/RTCFieldTrials.mm", | 35 "objc/Framework/Classes/RTCFieldTrials.mm", |
44 "objc/Framework/Classes/RTCLogging.mm", | 36 "objc/Framework/Classes/RTCLogging.mm", |
45 "objc/Framework/Classes/RTCMetrics.mm", | 37 "objc/Framework/Classes/RTCMetrics.mm", |
46 "objc/Framework/Classes/RTCMetricsSampleInfo+Private.h", | 38 "objc/Framework/Classes/RTCMetricsSampleInfo+Private.h", |
47 "objc/Framework/Classes/RTCMetricsSampleInfo.mm", | 39 "objc/Framework/Classes/RTCMetricsSampleInfo.mm", |
48 "objc/Framework/Classes/RTCSSLAdapter.mm", | 40 "objc/Framework/Classes/RTCSSLAdapter.mm", |
49 "objc/Framework/Classes/RTCTracing.mm", | 41 "objc/Framework/Classes/RTCTracing.mm", |
50 "objc/Framework/Classes/helpers.h", | 42 "objc/Framework/Classes/helpers.h", |
51 "objc/Framework/Classes/helpers.mm", | 43 "objc/Framework/Classes/helpers.mm", |
52 "objc/Framework/Headers/WebRTC/RTCDispatcher.h", | 44 "objc/Framework/Headers/WebRTC/RTCDispatcher.h", |
53 "objc/Framework/Headers/WebRTC/RTCFieldTrials.h", | 45 "objc/Framework/Headers/WebRTC/RTCFieldTrials.h", |
54 "objc/Framework/Headers/WebRTC/RTCLogging.h", | 46 "objc/Framework/Headers/WebRTC/RTCLogging.h", |
55 "objc/Framework/Headers/WebRTC/RTCMacros.h", | 47 "objc/Framework/Headers/WebRTC/RTCMacros.h", |
56 "objc/Framework/Headers/WebRTC/RTCMetrics.h", | 48 "objc/Framework/Headers/WebRTC/RTCMetrics.h", |
57 "objc/Framework/Headers/WebRTC/RTCMetricsSampleInfo.h", | 49 "objc/Framework/Headers/WebRTC/RTCMetricsSampleInfo.h", |
58 "objc/Framework/Headers/WebRTC/RTCSSLAdapter.h", | 50 "objc/Framework/Headers/WebRTC/RTCSSLAdapter.h", |
59 "objc/Framework/Headers/WebRTC/RTCTracing.h", | 51 "objc/Framework/Headers/WebRTC/RTCTracing.h", |
60 ] | 52 ] |
| 53 configs += [ |
| 54 "..:common_objc", |
| 55 "//build/config/compiler:enable_arc", |
| 56 ] |
| 57 public_configs = [ ":rtc_sdk_common_objc_config" ] |
| 58 deps = [ |
| 59 "../base:rtc_base", |
| 60 ] |
61 if (is_ios) { | 61 if (is_ios) { |
62 sources += [ | 62 sources += [ |
63 "objc/Framework/Classes/RTCCameraPreviewView.m", | 63 "objc/Framework/Classes/RTCCameraPreviewView.m", |
64 "objc/Framework/Classes/RTCUIApplication.h", | 64 "objc/Framework/Classes/RTCUIApplication.h", |
65 "objc/Framework/Classes/RTCUIApplication.mm", | 65 "objc/Framework/Classes/RTCUIApplication.mm", |
66 "objc/Framework/Classes/UIDevice+RTCDevice.mm", | 66 "objc/Framework/Classes/UIDevice+RTCDevice.mm", |
67 "objc/Framework/Headers/WebRTC/RTCCameraPreviewView.h", | 67 "objc/Framework/Headers/WebRTC/RTCCameraPreviewView.h", |
68 "objc/Framework/Headers/WebRTC/UIDevice+RTCDevice.h", | 68 "objc/Framework/Headers/WebRTC/UIDevice+RTCDevice.h", |
69 ] | 69 ] |
70 if (current_cpu == "arm64") { | 70 if (current_cpu == "arm64") { |
71 sources += [ | 71 sources += [ |
72 "objc/Framework/Classes/Metal/RTCMTLNV12Renderer.h", | 72 "objc/Framework/Classes/Metal/RTCMTLNV12Renderer.h", |
73 "objc/Framework/Classes/Metal/RTCMTLNV12Renderer.mm", | 73 "objc/Framework/Classes/Metal/RTCMTLNV12Renderer.mm", |
74 "objc/Framework/Classes/Metal/RTCMTLVideoView.m", | 74 "objc/Framework/Classes/Metal/RTCMTLVideoView.m", |
75 ] | 75 ] |
| 76 deps += [ "../api:video_frame_api" ] |
76 } | 77 } |
77 | 78 |
78 libs = [ "AVFoundation.framework" ] | 79 libs = [ "AVFoundation.framework" ] |
79 if (current_cpu == "arm64") { | 80 if (current_cpu == "arm64") { |
80 libs += [ | 81 libs += [ |
81 "CoreVideo.framework", | 82 "CoreVideo.framework", |
82 "Metal.framework", | 83 "Metal.framework", |
83 "MetalKit.framework", | 84 "MetalKit.framework", |
84 ] | 85 ] |
85 } | 86 } |
(...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
187 "objc/Framework/Headers/WebRTC/RTCRtpReceiver.h", | 188 "objc/Framework/Headers/WebRTC/RTCRtpReceiver.h", |
188 "objc/Framework/Headers/WebRTC/RTCRtpSender.h", | 189 "objc/Framework/Headers/WebRTC/RTCRtpSender.h", |
189 "objc/Framework/Headers/WebRTC/RTCSessionDescription.h", | 190 "objc/Framework/Headers/WebRTC/RTCSessionDescription.h", |
190 "objc/Framework/Headers/WebRTC/RTCVideoCapturer.h", | 191 "objc/Framework/Headers/WebRTC/RTCVideoCapturer.h", |
191 "objc/Framework/Headers/WebRTC/RTCVideoFrame.h", | 192 "objc/Framework/Headers/WebRTC/RTCVideoFrame.h", |
192 "objc/Framework/Headers/WebRTC/RTCVideoRenderer.h", | 193 "objc/Framework/Headers/WebRTC/RTCVideoRenderer.h", |
193 "objc/Framework/Headers/WebRTC/RTCVideoSource.h", | 194 "objc/Framework/Headers/WebRTC/RTCVideoSource.h", |
194 "objc/Framework/Headers/WebRTC/RTCVideoTrack.h", | 195 "objc/Framework/Headers/WebRTC/RTCVideoTrack.h", |
195 ] | 196 ] |
196 | 197 |
| 198 configs += [ |
| 199 "..:common_objc", |
| 200 "//build/config/compiler:enable_arc", |
| 201 ] |
| 202 |
| 203 public_configs = [ ":rtc_sdk_common_objc_config" ] |
| 204 |
197 deps = [ | 205 deps = [ |
198 ":webrtc_h264_video_toolbox", | 206 ":webrtc_h264_video_toolbox", |
| 207 "../api:video_frame_api", |
| 208 "../base:rtc_base", |
| 209 "../base:rtc_base_approved", |
| 210 "../common_video", |
| 211 "../media:rtc_media", |
| 212 "../media:rtc_media_base", |
| 213 "../system_wrappers", |
199 ] | 214 ] |
200 | 215 |
201 if (is_ios) { | 216 if (is_ios) { |
202 sources += [ | 217 sources += [ |
203 "objc/Framework/Classes/RTCEAGLVideoView.m", | 218 "objc/Framework/Classes/RTCEAGLVideoView.m", |
204 "objc/Framework/Classes/RTCNativeNV12Shader.mm", | 219 "objc/Framework/Classes/RTCNativeNV12Shader.mm", |
205 "objc/Framework/Headers/WebRTC/RTCEAGLVideoView.h", | 220 "objc/Framework/Headers/WebRTC/RTCEAGLVideoView.h", |
206 ] | 221 ] |
207 libs = [ | 222 libs = [ |
208 "CoreGraphics.framework", | 223 "CoreGraphics.framework", |
(...skipping 14 matching lines...) Expand all Loading... |
223 ] | 238 ] |
224 libs = [ | 239 libs = [ |
225 "CoreVideo.framework", | 240 "CoreVideo.framework", |
226 "CoreMedia.framework", | 241 "CoreMedia.framework", |
227 "OpenGL.framework", | 242 "OpenGL.framework", |
228 "Metal.framework", | 243 "Metal.framework", |
229 "MetalKit.framework", | 244 "MetalKit.framework", |
230 ] | 245 ] |
231 } | 246 } |
232 | 247 |
233 configs += [ | |
234 "..:common_objc", | |
235 "//build/config/compiler:enable_arc", | |
236 ] | |
237 | |
238 public_configs = [ ":rtc_sdk_common_objc_config" ] | |
239 | |
240 if (!build_with_chromium && is_clang) { | 248 if (!build_with_chromium && is_clang) { |
241 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163). | 249 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163). |
242 suppressed_configs += [ "//build/config/clang:find_bad_constructs" ] | 250 suppressed_configs += [ "//build/config/clang:find_bad_constructs" ] |
243 } | 251 } |
244 | 252 |
245 libs += [ "AVFoundation.framework" ] | 253 libs += [ "AVFoundation.framework" ] |
246 | 254 |
247 deps += [ | 255 deps += [ |
248 ":rtc_sdk_common_objc", | 256 ":rtc_sdk_common_objc", |
249 "../pc:libjingle_peerconnection", | 257 "../pc:libjingle_peerconnection", |
(...skipping 19 matching lines...) Expand all Loading... |
269 "objc/Framework/UnitTests/RTCPeerConnectionTest.mm", | 277 "objc/Framework/UnitTests/RTCPeerConnectionTest.mm", |
270 "objc/Framework/UnitTests/RTCSessionDescriptionTest.mm", | 278 "objc/Framework/UnitTests/RTCSessionDescriptionTest.mm", |
271 "objc/Framework/UnitTests/avformatmappertests.mm", | 279 "objc/Framework/UnitTests/avformatmappertests.mm", |
272 ] | 280 ] |
273 if (is_ios) { | 281 if (is_ios) { |
274 sources += [ "objc/Framework/UnitTests/RTCMTLVideoViewTests.mm" ] | 282 sources += [ "objc/Framework/UnitTests/RTCMTLVideoViewTests.mm" ] |
275 if (current_cpu != "arm64") { | 283 if (current_cpu != "arm64") { |
276 sources += [ "objc/Framework/Classes/Metal/RTCMTLVideoView.m" ] | 284 sources += [ "objc/Framework/Classes/Metal/RTCMTLVideoView.m" ] |
277 } | 285 } |
278 } | 286 } |
279 deps = [ | |
280 ":rtc_sdk_peerconnection_objc", | |
281 "//third_party/ocmock", | |
282 "//webrtc/system_wrappers:system_wrappers_default", | |
283 ] | |
284 | 287 |
285 # TODO(tkchin): Cleanup this warning. | 288 # TODO(tkchin): Cleanup this warning. |
286 cflags = [ "-Wno-objc-property-no-attribute" ] | 289 cflags = [ "-Wno-objc-property-no-attribute" ] |
287 | 290 |
288 # |-ObjC| flag needed to make sure category method implementations | 291 # |-ObjC| flag needed to make sure category method implementations |
289 # are included: | 292 # are included: |
290 # https://developer.apple.com/library/mac/qa/qa1490/_index.html | 293 # https://developer.apple.com/library/mac/qa/qa1490/_index.html |
291 ldflags = [ "-ObjC" ] | 294 ldflags = [ "-ObjC" ] |
292 | 295 |
293 defines = [ "GTEST_RELATIVE_PATH" ] | 296 defines = [ "GTEST_RELATIVE_PATH" ] |
| 297 deps = [ |
| 298 ":rtc_sdk_peerconnection_objc", |
| 299 "../base:rtc_base_tests_utils", |
| 300 "//third_party/ocmock", |
| 301 "//webrtc/system_wrappers:system_wrappers_default", |
| 302 ] |
| 303 |
294 if (!build_with_chromium && is_clang) { | 304 if (!build_with_chromium && is_clang) { |
295 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163)
. | 305 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163)
. |
296 suppressed_configs += [ "//build/config/clang:find_bad_constructs" ] | 306 suppressed_configs += [ "//build/config/clang:find_bad_constructs" ] |
297 } | 307 } |
298 } | 308 } |
299 } | 309 } |
300 | 310 |
301 if (is_ios) { | 311 if (is_ios) { |
302 ios_framework_bundle("rtc_sdk_framework_objc") { | 312 ios_framework_bundle("rtc_sdk_framework_objc") { |
303 info_plist = "objc/Framework/Info.plist" | 313 info_plist = "objc/Framework/Info.plist" |
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
351 sources += [ "objc/Framework/Headers/WebRTC/RTCFileLogger.h" ] | 361 sources += [ "objc/Framework/Headers/WebRTC/RTCFileLogger.h" ] |
352 public_headers += [ "objc/Framework/Headers/WebRTC/RTCFileLogger.h" ] | 362 public_headers += [ "objc/Framework/Headers/WebRTC/RTCFileLogger.h" ] |
353 } | 363 } |
354 | 364 |
355 ldflags = [ | 365 ldflags = [ |
356 "-all_load", | 366 "-all_load", |
357 "-install_name", | 367 "-install_name", |
358 "@rpath/$output_name.framework/$output_name", | 368 "@rpath/$output_name.framework/$output_name", |
359 ] | 369 ] |
360 | 370 |
| 371 configs += [ |
| 372 "..:common_objc", |
| 373 "//build/config/compiler:enable_arc", |
| 374 ] |
| 375 |
| 376 public_configs = [ ":rtc_sdk_common_objc_config" ] |
| 377 |
361 deps = [ | 378 deps = [ |
362 ":rtc_sdk_peerconnection_objc", | 379 ":rtc_sdk_peerconnection_objc", |
363 "../system_wrappers:field_trial_default", | 380 "../system_wrappers:field_trial_default", |
364 "../system_wrappers:metrics_default", | 381 "../system_wrappers:metrics_default", |
365 ] | 382 ] |
366 | 383 |
367 libs = [ | 384 libs = [ |
368 "AVFoundation.framework", | 385 "AVFoundation.framework", |
369 "AudioToolbox.framework", | 386 "AudioToolbox.framework", |
370 "CoreGraphics.framework", | 387 "CoreGraphics.framework", |
371 "CoreMedia.framework", | 388 "CoreMedia.framework", |
372 "GLKit.framework", | 389 "GLKit.framework", |
373 "VideoToolbox.framework", | 390 "VideoToolbox.framework", |
374 ] | 391 ] |
375 | 392 |
376 configs += [ | |
377 "..:common_objc", | |
378 "//build/config/compiler:enable_arc", | |
379 ] | |
380 | |
381 public_configs = [ ":rtc_sdk_common_objc_config" ] | |
382 | |
383 if (!build_with_chromium && is_clang) { | 393 if (!build_with_chromium && is_clang) { |
384 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163) | 394 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163) |
385 configs -= [ "//build/config/clang:find_bad_constructs" ] | 395 configs -= [ "//build/config/clang:find_bad_constructs" ] |
386 } | 396 } |
387 } | 397 } |
388 } | 398 } |
389 | 399 |
390 rtc_static_library("rtc_sdk_objc") { | 400 rtc_static_library("rtc_sdk_objc") { |
391 complete_static_lib = true | 401 complete_static_lib = true |
392 deps = [ | 402 deps = [ |
(...skipping 13 matching lines...) Expand all Loading... |
406 "objc/Framework/Classes/h264_video_toolbox_nalu.h", | 416 "objc/Framework/Classes/h264_video_toolbox_nalu.h", |
407 ] | 417 ] |
408 | 418 |
409 configs += [ | 419 configs += [ |
410 "//webrtc:common_objc", | 420 "//webrtc:common_objc", |
411 "//build/config/compiler:enable_arc", | 421 "//build/config/compiler:enable_arc", |
412 ] | 422 ] |
413 | 423 |
414 deps = [ | 424 deps = [ |
415 ":rtc_sdk_common_objc", | 425 ":rtc_sdk_common_objc", |
| 426 "../api:video_frame_api", |
| 427 "../base:rtc_base_approved", |
| 428 "../common_video", |
| 429 "../media:rtc_media_base", |
| 430 "../modules/video_coding:video_coding_utility", |
| 431 "../modules/video_coding:webrtc_h264", |
| 432 "../system_wrappers", |
416 ] | 433 ] |
417 | 434 |
418 libs = [ | 435 libs = [ |
419 "CoreFoundation.framework", | 436 "CoreFoundation.framework", |
420 "CoreMedia.framework", | 437 "CoreMedia.framework", |
421 "CoreVideo.framework", | 438 "CoreVideo.framework", |
422 "VideoToolbox.framework", | 439 "VideoToolbox.framework", |
423 ] | 440 ] |
424 | 441 |
425 if (!build_with_chromium && is_clang) { | 442 if (!build_with_chromium && is_clang) { |
426 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163). | 443 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163). |
427 suppressed_configs += [ "//build/config/clang:find_bad_constructs" ] | 444 suppressed_configs += [ "//build/config/clang:find_bad_constructs" ] |
428 } | 445 } |
429 | 446 |
430 if (rtc_build_libyuv) { | 447 if (rtc_build_libyuv) { |
431 deps += [ "$rtc_libyuv_dir" ] | 448 deps += [ "$rtc_libyuv_dir" ] |
432 public_deps = [ | 449 public_deps = [ |
433 "$rtc_libyuv_dir", | 450 "$rtc_libyuv_dir", |
434 ] | 451 ] |
435 } else { | 452 } else { |
436 # Need to add a directory normally exported by libyuv. | 453 # Need to add a directory normally exported by libyuv. |
437 include_dirs = [ "$rtc_libyuv_dir/include" ] | 454 include_dirs = [ "$rtc_libyuv_dir/include" ] |
438 } | 455 } |
439 } | 456 } |
440 } | 457 } |
OLD | NEW |