Build dynamic iOS SDK.

- Places most ObjC code into webrtc/sdk/objc instead.
- New gyp targets to build, strip and export symbols for dylib.
- Removes old script used to generate dylib.

BUG=

Review URL: https://codereview.webrtc.org/1903663002

Cr-Commit-Position: refs/heads/master@{#12524}
This commit is contained in:
tkchin
2016-04-27 01:54:20 -07:00
committed by Commit bot
parent 06f7e49438
commit 9eeb6240c9
174 changed files with 1000 additions and 2122 deletions

View File

@ -122,144 +122,6 @@
}, # libjingle_peerconnection_java
]
}],
['OS=="ios" or (OS=="mac" and mac_deployment_target=="10.7")', {
'targets': [
{
'target_name': 'rtc_api_objc',
'type': 'static_library',
'includes': [
'../build/objc_common.gypi',
],
'dependencies': [
'<(webrtc_root)/base/base.gyp:rtc_base_objc',
'libjingle_peerconnection',
],
'sources': [
'objc/RTCAudioTrack+Private.h',
'objc/RTCAudioTrack.h',
'objc/RTCAudioTrack.mm',
'objc/RTCConfiguration+Private.h',
'objc/RTCConfiguration.h',
'objc/RTCConfiguration.mm',
'objc/RTCDataChannel+Private.h',
'objc/RTCDataChannel.h',
'objc/RTCDataChannel.mm',
'objc/RTCDataChannelConfiguration+Private.h',
'objc/RTCDataChannelConfiguration.h',
'objc/RTCDataChannelConfiguration.mm',
'objc/RTCIceCandidate+Private.h',
'objc/RTCIceCandidate.h',
'objc/RTCIceCandidate.mm',
'objc/RTCIceServer+Private.h',
'objc/RTCIceServer.h',
'objc/RTCIceServer.mm',
'objc/RTCMediaConstraints+Private.h',
'objc/RTCMediaConstraints.h',
'objc/RTCMediaConstraints.mm',
'objc/RTCMediaStream+Private.h',
'objc/RTCMediaStream.h',
'objc/RTCMediaStream.mm',
'objc/RTCMediaStreamTrack+Private.h',
'objc/RTCMediaStreamTrack.h',
'objc/RTCMediaStreamTrack.mm',
'objc/RTCOpenGLVideoRenderer.h',
'objc/RTCOpenGLVideoRenderer.mm',
'objc/RTCPeerConnection+DataChannel.mm',
'objc/RTCPeerConnection+Private.h',
'objc/RTCPeerConnection+Stats.mm',
'objc/RTCPeerConnection.h',
'objc/RTCPeerConnection.mm',
'objc/RTCPeerConnectionFactory+Private.h',
'objc/RTCPeerConnectionFactory.h',
'objc/RTCPeerConnectionFactory.mm',
'objc/RTCRtpCodecParameters+Private.h',
'objc/RTCRtpCodecParameters.h',
'objc/RTCRtpCodecParameters.mm',
'objc/RTCRtpEncodingParameters+Private.h',
'objc/RTCRtpEncodingParameters.h',
'objc/RTCRtpEncodingParameters.mm',
'objc/RTCRtpParameters+Private.h',
'objc/RTCRtpParameters.h',
'objc/RTCRtpParameters.mm',
'objc/RTCRtpSender+Private.h',
'objc/RTCRtpSender.h',
'objc/RTCRtpSender.mm',
'objc/RTCSessionDescription+Private.h',
'objc/RTCSessionDescription.h',
'objc/RTCSessionDescription.mm',
'objc/RTCStatsReport+Private.h',
'objc/RTCStatsReport.h',
'objc/RTCStatsReport.mm',
'objc/RTCVideoFrame+Private.h',
'objc/RTCVideoFrame.h',
'objc/RTCVideoFrame.mm',
'objc/RTCVideoRenderer.h',
'objc/RTCVideoRendererAdapter+Private.h',
'objc/RTCVideoRendererAdapter.h',
'objc/RTCVideoRendererAdapter.mm',
'objc/RTCVideoSource+Private.h',
'objc/RTCVideoSource.h',
'objc/RTCVideoSource.mm',
'objc/RTCVideoTrack+Private.h',
'objc/RTCVideoTrack.h',
'objc/RTCVideoTrack.mm',
],
# TODO(hjon): Make this compile without linking to libstdc++
# See https://bugs.chromium.org/p/webrtc/issues/detail?id=5593
'link_settings': {
'libraries': [
'-lstdc++',
],
},
'conditions': [
['OS=="ios"', {
'sources': [
'objc/RTCAVFoundationVideoSource+Private.h',
'objc/RTCAVFoundationVideoSource.h',
'objc/RTCAVFoundationVideoSource.mm',
'objc/RTCEAGLVideoView.h',
'objc/RTCEAGLVideoView.m',
'objc/avfoundationvideocapturer.h',
'objc/avfoundationvideocapturer.mm',
],
'all_dependent_settings': {
'xcode_settings': {
'OTHER_LDFLAGS': [
'-framework CoreGraphics',
'-framework GLKit',
'-framework OpenGLES',
'-framework QuartzCore',
]
}
},
# TODO(kjellander): Make the code compile without disabling these.
# See https://bugs.chromium.org/p/webrtc/issues/detail?id=3307
'cflags': [
'-Wno-return-type',
],
'xcode_settings': {
'WARNING_CFLAGS': [
'-Wno-return-type',
],
},
}],
['OS=="mac"', {
'sources': [
'objc/RTCNSGLVideoView.h',
'objc/RTCNSGLVideoView.m',
],
'link_settings': {
'xcode_settings': {
'OTHER_LDFLAGS': [
'-framework OpenGL',
],
},
},
}],
],
}
],
}], # OS=="ios"
], # conditions
'targets': [
{