Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

429 lines
16 KiB
Plaintext
Raw Normal View History

# Copyright 2016 The WebRTC project authors. All Rights Reserved.
#
# Use of this source code is governed by a BSD-style license
# that can be found in the LICENSE file in the root of the source
# tree. An additional intellectual property rights grant can be found
# in the file PATENTS. All contributing project authors may
# be found in the AUTHORS file in the root of the source tree.
Reland of Moving webrtc.gni up one level from build/ (patchset #1 id:1 of https://codereview.webrtc.org/2657563002/ ) Reason for revert: Starting to work on a fix (it seems that there are third_party dependencies that depends on the path to the webrtc.gni file) Original issue's description: > Revert of Moving webrtc.gni up one level from build/ (patchset #1 id:1 of https://codereview.webrtc.org/2651543003/ ) > > Reason for revert: > This was causing the following failure: https://build.chromium.org/p/chromium.webrtc.fyi/builders/Android%20Builder/builds/838/steps/generate_build_files/logs/stdio > > Original issue's description: > > Moving webrtc.gni up one level from build/ > > > > BUG=webrtc:7030 > > > > Review-Url: https://codereview.webrtc.org/2651543003 > > Cr-Commit-Position: refs/heads/master@{#16241} > > Committed: https://chromium.googlesource.com/external/webrtc/+/35a32700fc9b5d932ddbd528c12f59c3274e4774 > > TBR=kjellander@webrtc.org > # Skipping CQ checks because original CL landed less than 1 days ago. > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=webrtc:7030 > > Review-Url: https://codereview.webrtc.org/2657563002 > Cr-Commit-Position: refs/heads/master@{#16244} > Committed: https://chromium.googlesource.com/external/webrtc/+/69dc7dbe247ead087f3bae0eb7e23f27f0de1ec3 TBR=kjellander@webrtc.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=webrtc:7030 Review-Url: https://codereview.webrtc.org/2654773002 Cr-Commit-Position: refs/heads/master@{#16247}
2017-01-24 06:58:22 -08:00
import("../webrtc.gni")
if (is_ios) {
import("//build/config/ios/rules.gni")
}
GN: New conventions, default target and refactorings Introduce a convention on categorizing GN targets: 1. Production code 2. Tests 3. Examples 4. Tools The first two have targets spread out all over the tree, while the latter are isolated to examples/ and tools/ directories. Another new convention: Each directory's BUILD.gn file shall contain a target named similar to the directory name. This target shall contain the 'most common' production code, i.e. so that most consumers of the directory can depend on only the directory (which implicitly means that target in GN). //webrtc:webrtc_tests is changed to depend on all WebRTC tests. From now on, it's necessary to add new test targets to this dependency tree in order to get them compiled. Two new group targets are created: //webrtc/modules/audio_coding:audio_coding_tests //webrtc/modules/audio_processing:audio_processing_tests to reduce the long list of tests in //webrtc:webrtc_tests. Visibility on //webrtc:webrtc and //webrtc:webrtc_tests is restricted to the root target, to avoid circular dependencies due to the monolithic property of these targets (a problem we've had in the past). The 'root' target at the top level is renamed to 'default', which means GN will build this target instead of _all_ generated targets (see https://chromium.googlesource.com/chromium/src/+/master/tools/gn/docs/faq.md#Can-I-control-what-targets-are-built-by-default). This target now depends on everything we want to build, meaning all targets now explicitly needs to be wired up from the root target in order to get build. Having this, the number of compiled objects on Android is decreased from 8855 to 6276. It also gives us better control over our build. BUG=webrtc:6440 TESTED=git cl try --clobber NOTRY=True Review-Url: https://codereview.webrtc.org/2441383002 Cr-Commit-Position: refs/heads/master@{#14821}
2016-10-28 05:44:03 -07:00
group("sdk") {
if (is_ios) {
GN: New conventions, default target and refactorings Introduce a convention on categorizing GN targets: 1. Production code 2. Tests 3. Examples 4. Tools The first two have targets spread out all over the tree, while the latter are isolated to examples/ and tools/ directories. Another new convention: Each directory's BUILD.gn file shall contain a target named similar to the directory name. This target shall contain the 'most common' production code, i.e. so that most consumers of the directory can depend on only the directory (which implicitly means that target in GN). //webrtc:webrtc_tests is changed to depend on all WebRTC tests. From now on, it's necessary to add new test targets to this dependency tree in order to get them compiled. Two new group targets are created: //webrtc/modules/audio_coding:audio_coding_tests //webrtc/modules/audio_processing:audio_processing_tests to reduce the long list of tests in //webrtc:webrtc_tests. Visibility on //webrtc:webrtc and //webrtc:webrtc_tests is restricted to the root target, to avoid circular dependencies due to the monolithic property of these targets (a problem we've had in the past). The 'root' target at the top level is renamed to 'default', which means GN will build this target instead of _all_ generated targets (see https://chromium.googlesource.com/chromium/src/+/master/tools/gn/docs/faq.md#Can-I-control-what-targets-are-built-by-default). This target now depends on everything we want to build, meaning all targets now explicitly needs to be wired up from the root target in order to get build. Having this, the number of compiled objects on Android is decreased from 8855 to 6276. It also gives us better control over our build. BUG=webrtc:6440 TESTED=git cl try --clobber NOTRY=True Review-Url: https://codereview.webrtc.org/2441383002 Cr-Commit-Position: refs/heads/master@{#14821}
2016-10-28 05:44:03 -07:00
public_deps = [
":rtc_sdk_framework_objc",
]
}
}
if (is_ios || is_mac) {
config("rtc_sdk_common_objc_config") {
include_dirs = [
"objc/Framework/Classes",
"objc/Framework/Headers",
]
}
rtc_static_library("rtc_sdk_common_objc") {
deps = [
"../base:rtc_base",
]
configs += [ "..:common_objc" ]
public_configs = [ ":rtc_sdk_common_objc_config" ]
sources = [
"objc/Framework/Classes/NSString+StdString.h",
"objc/Framework/Classes/NSString+StdString.mm",
"objc/Framework/Classes/RTCDispatcher.m",
"objc/Framework/Classes/RTCFieldTrials.mm",
"objc/Framework/Classes/RTCLogging.mm",
"objc/Framework/Classes/RTCMetrics.mm",
"objc/Framework/Classes/RTCMetricsSampleInfo+Private.h",
"objc/Framework/Classes/RTCMetricsSampleInfo.mm",
"objc/Framework/Classes/RTCSSLAdapter.mm",
"objc/Framework/Classes/RTCTracing.mm",
"objc/Framework/Classes/helpers.h",
"objc/Framework/Classes/helpers.mm",
"objc/Framework/Headers/WebRTC/RTCDispatcher.h",
"objc/Framework/Headers/WebRTC/RTCFieldTrials.h",
"objc/Framework/Headers/WebRTC/RTCLogging.h",
"objc/Framework/Headers/WebRTC/RTCMacros.h",
"objc/Framework/Headers/WebRTC/RTCMetrics.h",
"objc/Framework/Headers/WebRTC/RTCMetricsSampleInfo.h",
"objc/Framework/Headers/WebRTC/RTCSSLAdapter.h",
"objc/Framework/Headers/WebRTC/RTCTracing.h",
]
if (is_ios) {
sources += [
"objc/Framework/Classes/RTCCameraPreviewView.m",
"objc/Framework/Classes/RTCUIApplication.h",
"objc/Framework/Classes/RTCUIApplication.mm",
"objc/Framework/Classes/UIDevice+RTCDevice.mm",
"objc/Framework/Headers/WebRTC/RTCCameraPreviewView.h",
"objc/Framework/Headers/WebRTC/UIDevice+RTCDevice.h",
]
if (current_cpu == "arm64") {
sources += [
"objc/Framework/Classes/Metal/RTCMTLNV12Renderer.h",
"objc/Framework/Classes/Metal/RTCMTLNV12Renderer.mm",
"objc/Framework/Classes/Metal/RTCMTLVideoView.m",
]
}
libs = [ "AVFoundation.framework" ]
if (current_cpu == "arm64") {
libs += [
"CoreVideo.framework",
"Metal.framework",
"MetalKit.framework",
]
}
}
if (!build_with_chromium) {
sources += [
"objc/Framework/Classes/RTCFileLogger.mm",
"objc/Framework/Headers/WebRTC/RTCFileLogger.h",
]
}
}
rtc_static_library("rtc_sdk_peerconnection_objc") {
sources = [
Reland of Add unit tests for RTCMTLVideoView. (patchset #1 id:1 of https://codereview.webrtc.org/2733953006/ ) Reason for revert: Dependant CL has been relanded Original issue's description: > Revert of Add unit tests for RTCMTLVideoView. (patchset #6 id:100001 of https://codereview.webrtc.org/2723903003/ ) > > Reason for revert: > This CL depends on a reverted CL. > > Original issue's description: > > Add unit tests for RTCMTLVideoView. > > > > To properly test the functionality, following changes were needed > > - Make RTCMTLVideoView compiliable for all cpu architectures not just arm64. > > This is needed so that the test can run on any device and on simulator as well. > > - Refactor RTCMTLVideoView to have mockable class methods. > > The unittest class, RTCMTLVideoViewTests was designed to provide easy transition > > to XCTest when the time comes for that. > > To transition to XCTest it would suffice to inherit from XCTestCase and remove > > the gtest methods. > > > > BUG=webrtc:7079 > > > > Review-Url: https://codereview.webrtc.org/2723903003 > > Cr-Commit-Position: refs/heads/master@{#17014} > > Committed: https://chromium.googlesource.com/external/webrtc/+/0ebe0199acd1070f17ca2abc5bc22fdd8b0861ca > > TBR=magjed@webrtc.org,denicija@webrtc.org > # Not skipping CQ checks because original CL landed more than 1 days ago. > BUG=webrtc:7079 > > Review-Url: https://codereview.webrtc.org/2733953006 > Cr-Commit-Position: refs/heads/master@{#17118} > Committed: https://chromium.googlesource.com/external/webrtc/+/96d91524fa66b9a2e4f9fbbbc9c5e5149021a3f0 TBR=magjed@webrtc.org,denicija@webrtc.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=webrtc:7079 Review-Url: https://codereview.webrtc.org/2743663002 Cr-Commit-Position: refs/heads/master@{#17140}
2017-03-09 03:36:58 -08:00
"objc/Framework/Classes/Metal/RTCMTLNV12Renderer.h",
"objc/Framework/Classes/RTCAVFoundationVideoCapturerInternal.h",
"objc/Framework/Classes/RTCAVFoundationVideoCapturerInternal.mm",
"objc/Framework/Classes/RTCAVFoundationVideoSource+Private.h",
"objc/Framework/Classes/RTCAVFoundationVideoSource.mm",
"objc/Framework/Classes/RTCAudioSource+Private.h",
"objc/Framework/Classes/RTCAudioSource.mm",
"objc/Framework/Classes/RTCAudioTrack+Private.h",
"objc/Framework/Classes/RTCAudioTrack.mm",
"objc/Framework/Classes/RTCCameraVideoCapturer.m",
"objc/Framework/Classes/RTCConfiguration+Private.h",
"objc/Framework/Classes/RTCConfiguration.mm",
"objc/Framework/Classes/RTCDataChannel+Private.h",
"objc/Framework/Classes/RTCDataChannel.mm",
"objc/Framework/Classes/RTCDataChannelConfiguration+Private.h",
"objc/Framework/Classes/RTCDataChannelConfiguration.mm",
"objc/Framework/Classes/RTCI420Shader.mm",
"objc/Framework/Classes/RTCIceCandidate+Private.h",
"objc/Framework/Classes/RTCIceCandidate.mm",
"objc/Framework/Classes/RTCIceServer+Private.h",
"objc/Framework/Classes/RTCIceServer.mm",
"objc/Framework/Classes/RTCLegacyStatsReport+Private.h",
"objc/Framework/Classes/RTCLegacyStatsReport.mm",
"objc/Framework/Classes/RTCMediaConstraints+Private.h",
"objc/Framework/Classes/RTCMediaConstraints.mm",
"objc/Framework/Classes/RTCMediaSource+Private.h",
"objc/Framework/Classes/RTCMediaSource.mm",
"objc/Framework/Classes/RTCMediaStream+Private.h",
"objc/Framework/Classes/RTCMediaStream.mm",
"objc/Framework/Classes/RTCMediaStreamTrack+Private.h",
"objc/Framework/Classes/RTCMediaStreamTrack.mm",
"objc/Framework/Classes/RTCOpenGLDefines.h",
"objc/Framework/Classes/RTCPeerConnection+DataChannel.mm",
"objc/Framework/Classes/RTCPeerConnection+Private.h",
"objc/Framework/Classes/RTCPeerConnection+Stats.mm",
"objc/Framework/Classes/RTCPeerConnection.mm",
"objc/Framework/Classes/RTCPeerConnectionFactory+Private.h",
"objc/Framework/Classes/RTCPeerConnectionFactory.mm",
"objc/Framework/Classes/RTCRtpCodecParameters+Private.h",
"objc/Framework/Classes/RTCRtpCodecParameters.mm",
"objc/Framework/Classes/RTCRtpEncodingParameters+Private.h",
"objc/Framework/Classes/RTCRtpEncodingParameters.mm",
"objc/Framework/Classes/RTCRtpParameters+Private.h",
"objc/Framework/Classes/RTCRtpParameters.mm",
"objc/Framework/Classes/RTCRtpReceiver+Private.h",
"objc/Framework/Classes/RTCRtpReceiver.mm",
"objc/Framework/Classes/RTCRtpSender+Private.h",
"objc/Framework/Classes/RTCRtpSender.mm",
"objc/Framework/Classes/RTCSessionDescription+Private.h",
"objc/Framework/Classes/RTCSessionDescription.mm",
"objc/Framework/Classes/RTCShader+Private.h",
"objc/Framework/Classes/RTCShader.h",
"objc/Framework/Classes/RTCShader.mm",
"objc/Framework/Classes/RTCVideoCapturer.m",
"objc/Framework/Classes/RTCVideoFrame+Private.h",
"objc/Framework/Classes/RTCVideoFrame.mm",
"objc/Framework/Classes/RTCVideoRendererAdapter+Private.h",
"objc/Framework/Classes/RTCVideoRendererAdapter.h",
"objc/Framework/Classes/RTCVideoRendererAdapter.mm",
"objc/Framework/Classes/RTCVideoSource+Private.h",
"objc/Framework/Classes/RTCVideoSource.mm",
"objc/Framework/Classes/RTCVideoTrack+Private.h",
"objc/Framework/Classes/RTCVideoTrack.mm",
"objc/Framework/Classes/avfoundationformatmapper.h",
"objc/Framework/Classes/avfoundationformatmapper.mm",
"objc/Framework/Classes/avfoundationvideocapturer.h",
"objc/Framework/Classes/avfoundationvideocapturer.mm",
"objc/Framework/Classes/objcvideotracksource.h",
"objc/Framework/Classes/objcvideotracksource.mm",
Reland of Add a webrtc{en,de}coderfactory implementation for VideoToolbox (patchset #1 id:1 of https://codereview.webrtc.org/2483273002/ ) Reason for revert: Fix gyp build Original issue's description: > Revert of Add a webrtc{en,de}coderfactory implementation for VideoToolbox (patchset #2 id:20001 of https://codereview.webrtc.org/2463313002/ ) > > Reason for revert: > Broke dependent project because the .gn changes weren't accompanied by corresponding .gyp changes. > > Original issue's description: > > Add a webrtc{en,de}coderfactory implementation for VideoToolbox > > > > This CL removes the coupling of the VideoToolbox h264 implementation > > to the generic h264 code. The files have been moved into sdb/obj/Framework > > and all dependency on them has been removed from the rest of WebRTC. > > We now add it as an external encoder via a factory supplied to the > > CreatePeerConnectionFactory call. This also brings the iOS implementation > > closer to what we do on Android for MediaCodec. > > > > BUG=webrtc:6619 > > > > Committed: https://crrev.com/6a5047dad31f14f53dd9f8bc1ecde19e1dede2e4 > > Cr-Commit-Position: refs/heads/master@{#14953} > > TBR=magjed@webrtc.org,stefan@webrtc.org,kthelgason@webrtc.org > BUG=webrtc:6619 > > Committed: https://crrev.com/d69ad84420d9c0e1c11450c352f6c92e7c9583f1 > Cr-Commit-Position: refs/heads/master@{#14985} R=magjed@webrtc.org TBR=kwiberg@webrtc.org, magjed@webrtc.org, stefan@webrtc.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=webrtc:6619 Review URL: https://codereview.webrtc.org/2487723004 . Cr-Commit-Position: refs/heads/master@{#14992}
2016-11-09 10:43:26 +01:00
"objc/Framework/Classes/videotoolboxvideocodecfactory.cc",
"objc/Framework/Classes/videotoolboxvideocodecfactory.h",
"objc/Framework/Headers/WebRTC/RTCAVFoundationVideoSource.h",
"objc/Framework/Headers/WebRTC/RTCAudioSource.h",
"objc/Framework/Headers/WebRTC/RTCAudioTrack.h",
"objc/Framework/Headers/WebRTC/RTCCameraVideoCapturer.h",
"objc/Framework/Headers/WebRTC/RTCConfiguration.h",
"objc/Framework/Headers/WebRTC/RTCDataChannel.h",
"objc/Framework/Headers/WebRTC/RTCDataChannelConfiguration.h",
"objc/Framework/Headers/WebRTC/RTCIceCandidate.h",
"objc/Framework/Headers/WebRTC/RTCIceServer.h",
"objc/Framework/Headers/WebRTC/RTCLegacyStatsReport.h",
"objc/Framework/Headers/WebRTC/RTCMediaConstraints.h",
"objc/Framework/Headers/WebRTC/RTCMediaSource.h",
"objc/Framework/Headers/WebRTC/RTCMediaStream.h",
"objc/Framework/Headers/WebRTC/RTCMediaStreamTrack.h",
"objc/Framework/Headers/WebRTC/RTCPeerConnection.h",
"objc/Framework/Headers/WebRTC/RTCPeerConnectionFactory.h",
"objc/Framework/Headers/WebRTC/RTCRtpCodecParameters.h",
"objc/Framework/Headers/WebRTC/RTCRtpEncodingParameters.h",
"objc/Framework/Headers/WebRTC/RTCRtpParameters.h",
"objc/Framework/Headers/WebRTC/RTCRtpReceiver.h",
"objc/Framework/Headers/WebRTC/RTCRtpSender.h",
"objc/Framework/Headers/WebRTC/RTCSessionDescription.h",
"objc/Framework/Headers/WebRTC/RTCVideoCapturer.h",
"objc/Framework/Headers/WebRTC/RTCVideoFrame.h",
"objc/Framework/Headers/WebRTC/RTCVideoRenderer.h",
"objc/Framework/Headers/WebRTC/RTCVideoSource.h",
"objc/Framework/Headers/WebRTC/RTCVideoTrack.h",
]
deps = [
":webrtc_h264_video_toolbox",
]
if (is_ios) {
sources += [
"objc/Framework/Classes/RTCEAGLVideoView.m",
"objc/Framework/Classes/RTCNativeNV12Shader.mm",
"objc/Framework/Headers/WebRTC/RTCEAGLVideoView.h",
]
libs = [
"CoreGraphics.framework",
"GLKit.framework",
"OpenGLES.framework",
"QuartzCore.framework",
]
}
if (is_mac) {
sources += [
"objc/Framework/Classes/Metal/RTCMTLI420Renderer.h",
"objc/Framework/Classes/Metal/RTCMTLI420Renderer.mm",
"objc/Framework/Classes/Metal/RTCMTLNSVideoView.m",
"objc/Framework/Classes/RTCNSGLVideoView.m",
"objc/Framework/Headers/WebRTC/RTCMTLNSVideoView.h",
"objc/Framework/Headers/WebRTC/RTCNSGLVideoView.h",
]
libs = [
"CoreVideo.framework",
"CoreMedia.framework",
"OpenGL.framework",
"Metal.framework",
"MetalKit.framework",
]
}
configs += [ "..:common_objc" ]
public_configs = [ ":rtc_sdk_common_objc_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" ]
}
libs += [ "AVFoundation.framework" ]
Reland of Add a webrtc{en,de}coderfactory implementation for VideoToolbox (patchset #1 id:1 of https://codereview.webrtc.org/2483273002/ ) Reason for revert: Fix gyp build Original issue's description: > Revert of Add a webrtc{en,de}coderfactory implementation for VideoToolbox (patchset #2 id:20001 of https://codereview.webrtc.org/2463313002/ ) > > Reason for revert: > Broke dependent project because the .gn changes weren't accompanied by corresponding .gyp changes. > > Original issue's description: > > Add a webrtc{en,de}coderfactory implementation for VideoToolbox > > > > This CL removes the coupling of the VideoToolbox h264 implementation > > to the generic h264 code. The files have been moved into sdb/obj/Framework > > and all dependency on them has been removed from the rest of WebRTC. > > We now add it as an external encoder via a factory supplied to the > > CreatePeerConnectionFactory call. This also brings the iOS implementation > > closer to what we do on Android for MediaCodec. > > > > BUG=webrtc:6619 > > > > Committed: https://crrev.com/6a5047dad31f14f53dd9f8bc1ecde19e1dede2e4 > > Cr-Commit-Position: refs/heads/master@{#14953} > > TBR=magjed@webrtc.org,stefan@webrtc.org,kthelgason@webrtc.org > BUG=webrtc:6619 > > Committed: https://crrev.com/d69ad84420d9c0e1c11450c352f6c92e7c9583f1 > Cr-Commit-Position: refs/heads/master@{#14985} R=magjed@webrtc.org TBR=kwiberg@webrtc.org, magjed@webrtc.org, stefan@webrtc.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=webrtc:6619 Review URL: https://codereview.webrtc.org/2487723004 . Cr-Commit-Position: refs/heads/master@{#14992}
2016-11-09 10:43:26 +01:00
deps += [
":rtc_sdk_common_objc",
"../pc:libjingle_peerconnection",
]
if (rtc_build_libyuv) {
deps += [ "$rtc_libyuv_dir" ]
public_deps = [
"$rtc_libyuv_dir",
]
}
}
if (rtc_include_tests) {
rtc_source_set("rtc_sdk_peerconnection_objc_unittests") {
testonly = true
sources = [
"objc/Framework/UnitTests/RTCConfigurationTest.mm",
"objc/Framework/UnitTests/RTCDataChannelConfigurationTest.mm",
"objc/Framework/UnitTests/RTCIceCandidateTest.mm",
"objc/Framework/UnitTests/RTCIceServerTest.mm",
"objc/Framework/UnitTests/RTCMediaConstraintsTest.mm",
"objc/Framework/UnitTests/RTCPeerConnectionTest.mm",
"objc/Framework/UnitTests/RTCSessionDescriptionTest.mm",
"objc/Framework/UnitTests/avformatmappertests.mm",
]
Reland of Add unit tests for RTCMTLVideoView. (patchset #1 id:1 of https://codereview.webrtc.org/2733953006/ ) Reason for revert: Dependant CL has been relanded Original issue's description: > Revert of Add unit tests for RTCMTLVideoView. (patchset #6 id:100001 of https://codereview.webrtc.org/2723903003/ ) > > Reason for revert: > This CL depends on a reverted CL. > > Original issue's description: > > Add unit tests for RTCMTLVideoView. > > > > To properly test the functionality, following changes were needed > > - Make RTCMTLVideoView compiliable for all cpu architectures not just arm64. > > This is needed so that the test can run on any device and on simulator as well. > > - Refactor RTCMTLVideoView to have mockable class methods. > > The unittest class, RTCMTLVideoViewTests was designed to provide easy transition > > to XCTest when the time comes for that. > > To transition to XCTest it would suffice to inherit from XCTestCase and remove > > the gtest methods. > > > > BUG=webrtc:7079 > > > > Review-Url: https://codereview.webrtc.org/2723903003 > > Cr-Commit-Position: refs/heads/master@{#17014} > > Committed: https://chromium.googlesource.com/external/webrtc/+/0ebe0199acd1070f17ca2abc5bc22fdd8b0861ca > > TBR=magjed@webrtc.org,denicija@webrtc.org > # Not skipping CQ checks because original CL landed more than 1 days ago. > BUG=webrtc:7079 > > Review-Url: https://codereview.webrtc.org/2733953006 > Cr-Commit-Position: refs/heads/master@{#17118} > Committed: https://chromium.googlesource.com/external/webrtc/+/96d91524fa66b9a2e4f9fbbbc9c5e5149021a3f0 TBR=magjed@webrtc.org,denicija@webrtc.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=webrtc:7079 Review-Url: https://codereview.webrtc.org/2743663002 Cr-Commit-Position: refs/heads/master@{#17140}
2017-03-09 03:36:58 -08:00
if (is_ios) {
sources += [ "objc/Framework/UnitTests/RTCMTLVideoViewTests.mm" ]
if (current_cpu != "arm64") {
sources += [ "objc/Framework/Classes/Metal/RTCMTLVideoView.m" ]
}
}
deps = [
":rtc_sdk_peerconnection_objc",
"//third_party/ocmock",
"//webrtc/system_wrappers:system_wrappers_default",
]
# TODO(tkchin): Cleanup this warning.
cflags = [ "-Wno-objc-property-no-attribute" ]
# |-ObjC| flag needed to make sure category method implementations
# are included:
# https://developer.apple.com/library/mac/qa/qa1490/_index.html
ldflags = [ "-ObjC" ]
defines = [ "GTEST_RELATIVE_PATH" ]
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_ios) {
ios_framework_bundle("rtc_sdk_framework_objc") {
info_plist = "objc/Framework/Info.plist"
output_name = "WebRTC"
common_objc_headers = [
"objc/Framework/Headers/WebRTC/RTCAVFoundationVideoSource.h",
"objc/Framework/Headers/WebRTC/RTCAudioSource.h",
"objc/Framework/Headers/WebRTC/RTCAudioTrack.h",
"objc/Framework/Headers/WebRTC/RTCCameraPreviewView.h",
"objc/Framework/Headers/WebRTC/RTCConfiguration.h",
"objc/Framework/Headers/WebRTC/RTCDataChannel.h",
"objc/Framework/Headers/WebRTC/RTCDataChannelConfiguration.h",
"objc/Framework/Headers/WebRTC/RTCDispatcher.h",
"objc/Framework/Headers/WebRTC/RTCEAGLVideoView.h",
"objc/Framework/Headers/WebRTC/RTCFieldTrials.h",
"objc/Framework/Headers/WebRTC/RTCIceCandidate.h",
"objc/Framework/Headers/WebRTC/RTCIceServer.h",
"objc/Framework/Headers/WebRTC/RTCLegacyStatsReport.h",
"objc/Framework/Headers/WebRTC/RTCLogging.h",
"objc/Framework/Headers/WebRTC/RTCMacros.h",
"objc/Framework/Headers/WebRTC/RTCMediaConstraints.h",
"objc/Framework/Headers/WebRTC/RTCMediaSource.h",
"objc/Framework/Headers/WebRTC/RTCMediaStream.h",
"objc/Framework/Headers/WebRTC/RTCMediaStreamTrack.h",
"objc/Framework/Headers/WebRTC/RTCMetrics.h",
"objc/Framework/Headers/WebRTC/RTCMetricsSampleInfo.h",
"objc/Framework/Headers/WebRTC/RTCMTLVideoView.h",
"objc/Framework/Headers/WebRTC/RTCPeerConnection.h",
"objc/Framework/Headers/WebRTC/RTCPeerConnectionFactory.h",
"objc/Framework/Headers/WebRTC/RTCRtpCodecParameters.h",
"objc/Framework/Headers/WebRTC/RTCRtpEncodingParameters.h",
"objc/Framework/Headers/WebRTC/RTCRtpParameters.h",
"objc/Framework/Headers/WebRTC/RTCRtpReceiver.h",
"objc/Framework/Headers/WebRTC/RTCRtpSender.h",
"objc/Framework/Headers/WebRTC/RTCSSLAdapter.h",
"objc/Framework/Headers/WebRTC/RTCSessionDescription.h",
"objc/Framework/Headers/WebRTC/RTCTracing.h",
"objc/Framework/Headers/WebRTC/RTCVideoFrame.h",
"objc/Framework/Headers/WebRTC/RTCVideoRenderer.h",
"objc/Framework/Headers/WebRTC/RTCVideoSource.h",
"objc/Framework/Headers/WebRTC/RTCVideoTrack.h",
"objc/Framework/Headers/WebRTC/UIDevice+RTCDevice.h",
"objc/Framework/Headers/WebRTC/WebRTC.h",
]
sources = common_objc_headers
public_headers = common_objc_headers
if (!build_with_chromium) {
sources += [ "objc/Framework/Headers/WebRTC/RTCFileLogger.h" ]
public_headers += [ "objc/Framework/Headers/WebRTC/RTCFileLogger.h" ]
}
ldflags = [
"-all_load",
"-install_name",
"@rpath/$output_name.framework/$output_name",
]
deps = [
":rtc_sdk_peerconnection_objc",
"../system_wrappers:field_trial_default",
"../system_wrappers:metrics_default",
]
libs = [
"AVFoundation.framework",
"AudioToolbox.framework",
"CoreGraphics.framework",
"CoreMedia.framework",
"GLKit.framework",
"VideoToolbox.framework",
]
configs += [ "..:common_objc" ]
public_configs = [ ":rtc_sdk_common_objc_config" ]
if (!build_with_chromium && is_clang) {
# Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163)
configs -= [ "//build/config/clang:find_bad_constructs" ]
}
}
}
rtc_static_library("rtc_sdk_objc") {
complete_static_lib = true
deps = [
":rtc_sdk_peerconnection_objc",
Reland of Add a webrtc{en,de}coderfactory implementation for VideoToolbox (patchset #1 id:1 of https://codereview.webrtc.org/2483273002/ ) Reason for revert: Fix gyp build Original issue's description: > Revert of Add a webrtc{en,de}coderfactory implementation for VideoToolbox (patchset #2 id:20001 of https://codereview.webrtc.org/2463313002/ ) > > Reason for revert: > Broke dependent project because the .gn changes weren't accompanied by corresponding .gyp changes. > > Original issue's description: > > Add a webrtc{en,de}coderfactory implementation for VideoToolbox > > > > This CL removes the coupling of the VideoToolbox h264 implementation > > to the generic h264 code. The files have been moved into sdb/obj/Framework > > and all dependency on them has been removed from the rest of WebRTC. > > We now add it as an external encoder via a factory supplied to the > > CreatePeerConnectionFactory call. This also brings the iOS implementation > > closer to what we do on Android for MediaCodec. > > > > BUG=webrtc:6619 > > > > Committed: https://crrev.com/6a5047dad31f14f53dd9f8bc1ecde19e1dede2e4 > > Cr-Commit-Position: refs/heads/master@{#14953} > > TBR=magjed@webrtc.org,stefan@webrtc.org,kthelgason@webrtc.org > BUG=webrtc:6619 > > Committed: https://crrev.com/d69ad84420d9c0e1c11450c352f6c92e7c9583f1 > Cr-Commit-Position: refs/heads/master@{#14985} R=magjed@webrtc.org TBR=kwiberg@webrtc.org, magjed@webrtc.org, stefan@webrtc.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=webrtc:6619 Review URL: https://codereview.webrtc.org/2487723004 . Cr-Commit-Position: refs/heads/master@{#14992}
2016-11-09 10:43:26 +01:00
"//webrtc/system_wrappers:field_trial_default",
"//webrtc/system_wrappers:metrics_default",
]
}
rtc_static_library("webrtc_h264_video_toolbox") {
sources = [
"objc/Framework/Classes/h264_video_toolbox_decoder.cc",
"objc/Framework/Classes/h264_video_toolbox_decoder.h",
"objc/Framework/Classes/h264_video_toolbox_encoder.h",
"objc/Framework/Classes/h264_video_toolbox_encoder.mm",
"objc/Framework/Classes/h264_video_toolbox_nalu.cc",
"objc/Framework/Classes/h264_video_toolbox_nalu.h",
]
configs += [ "//webrtc:common_objc" ]
Reland of Add a webrtc{en,de}coderfactory implementation for VideoToolbox (patchset #1 id:1 of https://codereview.webrtc.org/2483273002/ ) Reason for revert: Fix gyp build Original issue's description: > Revert of Add a webrtc{en,de}coderfactory implementation for VideoToolbox (patchset #2 id:20001 of https://codereview.webrtc.org/2463313002/ ) > > Reason for revert: > Broke dependent project because the .gn changes weren't accompanied by corresponding .gyp changes. > > Original issue's description: > > Add a webrtc{en,de}coderfactory implementation for VideoToolbox > > > > This CL removes the coupling of the VideoToolbox h264 implementation > > to the generic h264 code. The files have been moved into sdb/obj/Framework > > and all dependency on them has been removed from the rest of WebRTC. > > We now add it as an external encoder via a factory supplied to the > > CreatePeerConnectionFactory call. This also brings the iOS implementation > > closer to what we do on Android for MediaCodec. > > > > BUG=webrtc:6619 > > > > Committed: https://crrev.com/6a5047dad31f14f53dd9f8bc1ecde19e1dede2e4 > > Cr-Commit-Position: refs/heads/master@{#14953} > > TBR=magjed@webrtc.org,stefan@webrtc.org,kthelgason@webrtc.org > BUG=webrtc:6619 > > Committed: https://crrev.com/d69ad84420d9c0e1c11450c352f6c92e7c9583f1 > Cr-Commit-Position: refs/heads/master@{#14985} R=magjed@webrtc.org TBR=kwiberg@webrtc.org, magjed@webrtc.org, stefan@webrtc.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=webrtc:6619 Review URL: https://codereview.webrtc.org/2487723004 . Cr-Commit-Position: refs/heads/master@{#14992}
2016-11-09 10:43:26 +01:00
deps = [
":rtc_sdk_common_objc",
]
libs = [
"CoreFoundation.framework",
"CoreMedia.framework",
"CoreVideo.framework",
"VideoToolbox.framework",
]
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 (rtc_build_libyuv) {
deps += [ "$rtc_libyuv_dir" ]
public_deps = [
"$rtc_libyuv_dir",
]
} else {
# Need to add a directory normally exported by libyuv.
include_dirs = [ "$rtc_libyuv_dir/include" ]
}
}
}