From 3a2f7e01ef14b351ecb3f681eed6b4591dd15ca0 Mon Sep 17 00:00:00 2001 From: Jon Hjelle Date: Fri, 25 Mar 2016 14:48:14 -0700 Subject: [PATCH] Build dynamic framework with podspec for Objective-C API. BUG= R=tkchin@webrtc.org Review URL: https://codereview.webrtc.org/1829783003 . Patch from Jon Hjelle . Cr-Commit-Position: refs/heads/master@{#12128} --- webrtc/base/objc/RTCFieldTrials.h | 2 + webrtc/base/objc/RTCFieldTrials.mm | 1 - .../WebRTC.xcodeproj/project.pbxproj | 910 ++++++++++++++++++ .../xcshareddata/xcschemes/WebRTC.xcscheme | 80 ++ .../build/ios/SDK/Framework/WebRTC/Info.plist | 26 + .../build/ios/SDK/Framework/WebRTC/WebRTC.h | 47 + .../PodTest/PodTest.xcodeproj/project.pbxproj | 387 ++++++++ .../contents.xcworkspacedata | 7 + .../ios/SDK/PodTest/PodTest/AppDelegate.h | 17 + .../ios/SDK/PodTest/PodTest/AppDelegate.m | 26 + .../AppIcon.appiconset/Contents.json | 68 ++ .../Base.lproj/LaunchScreen.storyboard | 27 + .../PodTest/Base.lproj/Main.storyboard | 25 + .../build/ios/SDK/PodTest/PodTest/Info.plist | 47 + .../ios/SDK/PodTest/PodTest/ViewController.h | 15 + .../ios/SDK/PodTest/PodTest/ViewController.m | 27 + webrtc/build/ios/SDK/PodTest/PodTest/main.m | 21 + webrtc/build/ios/SDK/PodTest/Podfile | 9 + webrtc/build/ios/SDK/README | 50 + webrtc/build/ios/SDK/WebRTC.podspec | 18 + webrtc/build/ios/build_ios_framework.sh | 85 ++ webrtc/build/ios/export_headers | 4 +- webrtc/build/ios/flatten_ios_headers | 46 + 23 files changed, 1943 insertions(+), 2 deletions(-) create mode 100644 webrtc/build/ios/SDK/Framework/WebRTC.xcodeproj/project.pbxproj create mode 100644 webrtc/build/ios/SDK/Framework/WebRTC.xcodeproj/xcshareddata/xcschemes/WebRTC.xcscheme create mode 100644 webrtc/build/ios/SDK/Framework/WebRTC/Info.plist create mode 100644 webrtc/build/ios/SDK/Framework/WebRTC/WebRTC.h create mode 100644 webrtc/build/ios/SDK/PodTest/PodTest.xcodeproj/project.pbxproj create mode 100644 webrtc/build/ios/SDK/PodTest/PodTest.xcodeproj/project.xcworkspace/contents.xcworkspacedata create mode 100644 webrtc/build/ios/SDK/PodTest/PodTest/AppDelegate.h create mode 100644 webrtc/build/ios/SDK/PodTest/PodTest/AppDelegate.m create mode 100644 webrtc/build/ios/SDK/PodTest/PodTest/Assets.xcassets/AppIcon.appiconset/Contents.json create mode 100644 webrtc/build/ios/SDK/PodTest/PodTest/Base.lproj/LaunchScreen.storyboard create mode 100644 webrtc/build/ios/SDK/PodTest/PodTest/Base.lproj/Main.storyboard create mode 100644 webrtc/build/ios/SDK/PodTest/PodTest/Info.plist create mode 100644 webrtc/build/ios/SDK/PodTest/PodTest/ViewController.h create mode 100644 webrtc/build/ios/SDK/PodTest/PodTest/ViewController.m create mode 100644 webrtc/build/ios/SDK/PodTest/PodTest/main.m create mode 100644 webrtc/build/ios/SDK/PodTest/Podfile create mode 100644 webrtc/build/ios/SDK/README create mode 100644 webrtc/build/ios/SDK/WebRTC.podspec create mode 100755 webrtc/build/ios/build_ios_framework.sh create mode 100755 webrtc/build/ios/flatten_ios_headers diff --git a/webrtc/base/objc/RTCFieldTrials.h b/webrtc/base/objc/RTCFieldTrials.h index 13b9ae4d52..837a8f7a60 100644 --- a/webrtc/base/objc/RTCFieldTrials.h +++ b/webrtc/base/objc/RTCFieldTrials.h @@ -10,6 +10,8 @@ #include "webrtc/base/objc/RTCMacros.h" +#import + typedef NS_OPTIONS(NSUInteger, RTCFieldTrialOptions) { RTCFieldTrialOptionsNone = 0, RTCFieldTrialOptionsSendSideBwe = 1 << 0, diff --git a/webrtc/base/objc/RTCFieldTrials.mm b/webrtc/base/objc/RTCFieldTrials.mm index 331cb0bd75..3072f394ee 100644 --- a/webrtc/base/objc/RTCFieldTrials.mm +++ b/webrtc/base/objc/RTCFieldTrials.mm @@ -13,7 +13,6 @@ #include #include "webrtc/system_wrappers/include/field_trial_default.h" -#import #import "webrtc/base/objc/RTCLogging.h" static NSString * const kRTCEnableSendSideBweString = diff --git a/webrtc/build/ios/SDK/Framework/WebRTC.xcodeproj/project.pbxproj b/webrtc/build/ios/SDK/Framework/WebRTC.xcodeproj/project.pbxproj new file mode 100644 index 0000000000..209dbe5be8 --- /dev/null +++ b/webrtc/build/ios/SDK/Framework/WebRTC.xcodeproj/project.pbxproj @@ -0,0 +1,910 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 46; + objects = { + +/* Begin PBXBuildFile section */ + 980224981CA243DE00295D57 /* libaudio_coding_module.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224561CA243DE00295D57 /* libaudio_coding_module.a */; }; + 980224991CA243DE00295D57 /* libaudio_conference_mixer.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224571CA243DE00295D57 /* libaudio_conference_mixer.a */; }; + 9802249A1CA243DE00295D57 /* libaudio_decoder_interface.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224581CA243DE00295D57 /* libaudio_decoder_interface.a */; }; + 9802249B1CA243DE00295D57 /* libaudio_device.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224591CA243DE00295D57 /* libaudio_device.a */; }; + 9802249C1CA243DE00295D57 /* libaudio_encoder_interface.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802245A1CA243DE00295D57 /* libaudio_encoder_interface.a */; }; + 9802249D1CA243DE00295D57 /* libaudio_processing.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802245B1CA243DE00295D57 /* libaudio_processing.a */; }; + 9802249E1CA243DE00295D57 /* libaudioproc_debug_proto.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802245C1CA243DE00295D57 /* libaudioproc_debug_proto.a */; }; + 9802249F1CA243DE00295D57 /* libbitrate_controller.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802245D1CA243DE00295D57 /* libbitrate_controller.a */; }; + 980224A01CA243DE00295D57 /* libboringssl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802245E1CA243DE00295D57 /* libboringssl.a */; }; + 980224A11CA243DE00295D57 /* libcng.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802245F1CA243DE00295D57 /* libcng.a */; }; + 980224A21CA243DE00295D57 /* libcommon_audio.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224601CA243DE00295D57 /* libcommon_audio.a */; }; + 980224A31CA243DE00295D57 /* libcommon_video.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224611CA243DE00295D57 /* libcommon_video.a */; }; + 980224A41CA243DE00295D57 /* libcongestion_controller.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224621CA243DE00295D57 /* libcongestion_controller.a */; }; + 980224A51CA243DE00295D57 /* libexpat.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224631CA243DE00295D57 /* libexpat.a */; }; + 980224A61CA243DE00295D57 /* libfield_trial_default.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224641CA243DE00295D57 /* libfield_trial_default.a */; }; + 980224A71CA243DE00295D57 /* libg711.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224651CA243DE00295D57 /* libg711.a */; }; + 980224A81CA243DE00295D57 /* libg722.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224661CA243DE00295D57 /* libg722.a */; }; + 980224A91CA243DE00295D57 /* libilbc.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224671CA243DE00295D57 /* libilbc.a */; }; + 980224AA1CA243DE00295D57 /* libisac_common.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224681CA243DE00295D57 /* libisac_common.a */; }; + 980224AB1CA243DE00295D57 /* libisac.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224691CA243DE00295D57 /* libisac.a */; }; + 980224AC1CA243DE00295D57 /* libjingle_peerconnection.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802246A1CA243DE00295D57 /* libjingle_peerconnection.a */; }; + 980224AD1CA243DE00295D57 /* libjsoncpp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802246B1CA243DE00295D57 /* libjsoncpp.a */; }; + 980224AE1CA243DE00295D57 /* libmedia_file.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802246C1CA243DE00295D57 /* libmedia_file.a */; }; + 980224AF1CA243DE00295D57 /* libmetrics_default.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802246D1CA243DE00295D57 /* libmetrics_default.a */; }; + 980224B01CA243DE00295D57 /* libneteq.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802246E1CA243DE00295D57 /* libneteq.a */; }; + 980224B11CA243DE00295D57 /* libopus.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802246F1CA243DE00295D57 /* libopus.a */; }; + 980224B21CA243DE00295D57 /* libpaced_sender.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224701CA243DE00295D57 /* libpaced_sender.a */; }; + 980224B31CA243DE00295D57 /* libpcm16b.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224711CA243DE00295D57 /* libpcm16b.a */; }; + 980224B41CA243DE00295D57 /* libprotobuf_lite.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224721CA243DE00295D57 /* libprotobuf_lite.a */; }; + 980224B51CA243DE00295D57 /* libred.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224731CA243DE00295D57 /* libred.a */; }; + 980224B61CA243DE00295D57 /* libremote_bitrate_estimator.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224741CA243DE00295D57 /* libremote_bitrate_estimator.a */; }; + 980224B71CA243DE00295D57 /* librent_a_codec.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224751CA243DE00295D57 /* librent_a_codec.a */; }; + 980224B91CA243DE00295D57 /* librtc_base_approved.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224771CA243DE00295D57 /* librtc_base_approved.a */; }; + 980224BB1CA243DE00295D57 /* librtc_base.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224791CA243DE00295D57 /* librtc_base.a */; }; + 980224BC1CA243DE00295D57 /* librtc_event_log_proto.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802247A1CA243DE00295D57 /* librtc_event_log_proto.a */; }; + 980224BD1CA243DE00295D57 /* librtc_event_log.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802247B1CA243DE00295D57 /* librtc_event_log.a */; }; + 980224BE1CA243DE00295D57 /* librtc_media.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802247C1CA243DE00295D57 /* librtc_media.a */; }; + 980224BF1CA243DE00295D57 /* librtc_p2p.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802247D1CA243DE00295D57 /* librtc_p2p.a */; }; + 980224C01CA243DE00295D57 /* librtc_pc.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802247E1CA243DE00295D57 /* librtc_pc.a */; }; + 980224C11CA243DE00295D57 /* librtc_xmllite.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802247F1CA243DE00295D57 /* librtc_xmllite.a */; }; + 980224C21CA243DE00295D57 /* librtc_xmpp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224801CA243DE00295D57 /* librtc_xmpp.a */; }; + 980224C31CA243DE00295D57 /* librtp_rtcp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224811CA243DE00295D57 /* librtp_rtcp.a */; }; + 980224C41CA243DE00295D57 /* libsrtp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224821CA243DE00295D57 /* libsrtp.a */; }; + 980224C51CA243DE00295D57 /* libsystem_wrappers.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224831CA243DE00295D57 /* libsystem_wrappers.a */; }; + 980224C61CA243DE00295D57 /* libusrsctplib.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224841CA243DE00295D57 /* libusrsctplib.a */; }; + 980224C71CA243DE00295D57 /* libvideo_capture_module_internal_impl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224851CA243DE00295D57 /* libvideo_capture_module_internal_impl.a */; }; + 980224C81CA243DE00295D57 /* libvideo_capture_module.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224861CA243DE00295D57 /* libvideo_capture_module.a */; }; + 980224C91CA243DE00295D57 /* libvideo_coding_utility.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224871CA243DE00295D57 /* libvideo_coding_utility.a */; }; + 980224CA1CA243DE00295D57 /* libvideo_processing.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224881CA243DE00295D57 /* libvideo_processing.a */; }; + 980224CB1CA243DE00295D57 /* libvideo_render_module_internal_impl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224891CA243DE00295D57 /* libvideo_render_module_internal_impl.a */; }; + 980224CC1CA243DE00295D57 /* libvideo_render_module.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802248A1CA243DE00295D57 /* libvideo_render_module.a */; }; + 980224CD1CA243DE00295D57 /* libvoice_engine.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802248B1CA243DE00295D57 /* libvoice_engine.a */; }; + 980224CE1CA243DE00295D57 /* libvpx.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802248C1CA243DE00295D57 /* libvpx.a */; }; + 980224CF1CA243DE00295D57 /* libwebrtc_common.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802248D1CA243DE00295D57 /* libwebrtc_common.a */; }; + 980224D01CA243DE00295D57 /* libwebrtc_h264_video_toolbox.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802248E1CA243DE00295D57 /* libwebrtc_h264_video_toolbox.a */; }; + 980224D11CA243DE00295D57 /* libwebrtc_h264.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9802248F1CA243DE00295D57 /* libwebrtc_h264.a */; }; + 980224D21CA243DE00295D57 /* libwebrtc_i420.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224901CA243DE00295D57 /* libwebrtc_i420.a */; }; + 980224D31CA243DE00295D57 /* libwebrtc_opus.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224911CA243DE00295D57 /* libwebrtc_opus.a */; }; + 980224D41CA243DE00295D57 /* libwebrtc_utility.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224921CA243DE00295D57 /* libwebrtc_utility.a */; }; + 980224D51CA243DE00295D57 /* libwebrtc_video_coding.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224931CA243DE00295D57 /* libwebrtc_video_coding.a */; }; + 980224D61CA243DE00295D57 /* libwebrtc_vp8.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224941CA243DE00295D57 /* libwebrtc_vp8.a */; }; + 980224D71CA243DE00295D57 /* libwebrtc_vp9.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224951CA243DE00295D57 /* libwebrtc_vp9.a */; }; + 980224D81CA243DE00295D57 /* libwebrtc.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224961CA243DE00295D57 /* libwebrtc.a */; }; + 980224D91CA243DE00295D57 /* libyuv.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 980224971CA243DE00295D57 /* libyuv.a */; }; + 9820AAC71C977D11001E5793 /* WebRTC.h in Headers */ = {isa = PBXBuildFile; fileRef = 9820AAC61C977D11001E5793 /* WebRTC.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 982C13291C98B78000895DC2 /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 982C13281C98B78000895DC2 /* AVFoundation.framework */; }; + 982C132B1C98B79700895DC2 /* VideoToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 982C132A1C98B79700895DC2 /* VideoToolbox.framework */; }; + 982C132D1C98B7B400895DC2 /* CoreMedia.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 982C132C1C98B7B400895DC2 /* CoreMedia.framework */; }; + 982C132F1C98B7C100895DC2 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 982C132E1C98B7C100895DC2 /* AudioToolbox.framework */; }; + 982C15181C99083B00895DC2 /* NSString+StdString.mm in Sources */ = {isa = PBXBuildFile; fileRef = 982C150F1C99083B00895DC2 /* NSString+StdString.mm */; }; + 982C15191C99083B00895DC2 /* RTCCameraPreviewView.m in Sources */ = {isa = PBXBuildFile; fileRef = 982C15101C99083B00895DC2 /* RTCCameraPreviewView.m */; }; + 982C151A1C99083B00895DC2 /* RTCDispatcher.m in Sources */ = {isa = PBXBuildFile; fileRef = 982C15111C99083B00895DC2 /* RTCDispatcher.m */; }; + 982C151B1C99083B00895DC2 /* RTCFieldTrials.mm in Sources */ = {isa = PBXBuildFile; fileRef = 982C15121C99083B00895DC2 /* RTCFieldTrials.mm */; }; + 982C151C1C99083B00895DC2 /* RTCFileLogger.mm in Sources */ = {isa = PBXBuildFile; fileRef = 982C15131C99083B00895DC2 /* RTCFileLogger.mm */; }; + 982C151D1C99083B00895DC2 /* RTCLogging.mm in Sources */ = {isa = PBXBuildFile; fileRef = 982C15141C99083B00895DC2 /* RTCLogging.mm */; }; + 982C151E1C99083B00895DC2 /* RTCSSLAdapter.mm in Sources */ = {isa = PBXBuildFile; fileRef = 982C15151C99083B00895DC2 /* RTCSSLAdapter.mm */; }; + 982C151F1C99083B00895DC2 /* RTCTracing.mm in Sources */ = {isa = PBXBuildFile; fileRef = 982C15161C99083B00895DC2 /* RTCTracing.mm */; }; + 982C15201C99083B00895DC2 /* RTCUIApplication.mm in Sources */ = {isa = PBXBuildFile; fileRef = 982C15171C99083B00895DC2 /* RTCUIApplication.mm */; }; + 9845CE9B1CA1AE1D00BFE57C /* RTCAudioTrack.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE7E1CA1AE1D00BFE57C /* RTCAudioTrack.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 9845CE9C1CA1AE1D00BFE57C /* RTCAVFoundationVideoSource.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE7F1CA1AE1D00BFE57C /* RTCAVFoundationVideoSource.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 9845CE9D1CA1AE1E00BFE57C /* RTCCameraPreviewView.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE801CA1AE1D00BFE57C /* RTCCameraPreviewView.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 9845CE9E1CA1AE1E00BFE57C /* RTCConfiguration.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE811CA1AE1D00BFE57C /* RTCConfiguration.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 9845CE9F1CA1AE1E00BFE57C /* RTCDataChannel.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE821CA1AE1D00BFE57C /* RTCDataChannel.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 9845CEA01CA1AE1E00BFE57C /* RTCDataChannelConfiguration.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE831CA1AE1D00BFE57C /* RTCDataChannelConfiguration.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 9845CEA11CA1AE1E00BFE57C /* RTCDispatcher.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE841CA1AE1D00BFE57C /* RTCDispatcher.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 9845CEA21CA1AE1E00BFE57C /* RTCEAGLVideoView.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE851CA1AE1D00BFE57C /* RTCEAGLVideoView.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 9845CEA31CA1AE1E00BFE57C /* RTCFieldTrials.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE861CA1AE1D00BFE57C /* RTCFieldTrials.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 9845CEA41CA1AE1E00BFE57C /* RTCFileLogger.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE871CA1AE1D00BFE57C /* RTCFileLogger.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 9845CEA51CA1AE1E00BFE57C /* RTCIceCandidate.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE881CA1AE1D00BFE57C /* RTCIceCandidate.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 9845CEA61CA1AE1E00BFE57C /* RTCIceServer.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE891CA1AE1D00BFE57C /* RTCIceServer.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 9845CEA71CA1AE1E00BFE57C /* RTCLogging.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE8A1CA1AE1D00BFE57C /* RTCLogging.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 9845CEA81CA1AE1E00BFE57C /* RTCMacros.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE8B1CA1AE1D00BFE57C /* RTCMacros.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 9845CEA91CA1AE1E00BFE57C /* RTCMediaConstraints.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE8C1CA1AE1D00BFE57C /* RTCMediaConstraints.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 9845CEAA1CA1AE1E00BFE57C /* RTCMediaStream.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE8D1CA1AE1D00BFE57C /* RTCMediaStream.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 9845CEAB1CA1AE1E00BFE57C /* RTCMediaStreamTrack.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE8E1CA1AE1D00BFE57C /* RTCMediaStreamTrack.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 9845CEAC1CA1AE1E00BFE57C /* RTCOpenGLVideoRenderer.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE8F1CA1AE1D00BFE57C /* RTCOpenGLVideoRenderer.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 9845CEAD1CA1AE1E00BFE57C /* RTCPeerConnection.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE901CA1AE1D00BFE57C /* RTCPeerConnection.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 9845CEAE1CA1AE1E00BFE57C /* RTCPeerConnectionFactory.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE911CA1AE1D00BFE57C /* RTCPeerConnectionFactory.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 9845CEAF1CA1AE1E00BFE57C /* RTCSessionDescription.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE921CA1AE1D00BFE57C /* RTCSessionDescription.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 9845CEB01CA1AE1E00BFE57C /* RTCSSLAdapter.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE931CA1AE1D00BFE57C /* RTCSSLAdapter.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 9845CEB11CA1AE1E00BFE57C /* RTCStatsReport.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE941CA1AE1D00BFE57C /* RTCStatsReport.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 9845CEB21CA1AE1E00BFE57C /* RTCTracing.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE951CA1AE1D00BFE57C /* RTCTracing.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 9845CEB31CA1AE1E00BFE57C /* RTCVideoFrame.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE961CA1AE1D00BFE57C /* RTCVideoFrame.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 9845CEB41CA1AE1E00BFE57C /* RTCVideoRenderer.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE971CA1AE1D00BFE57C /* RTCVideoRenderer.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 9845CEB51CA1AE1E00BFE57C /* RTCVideoRendererAdapter.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE981CA1AE1D00BFE57C /* RTCVideoRendererAdapter.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 9845CEB61CA1AE1E00BFE57C /* RTCVideoSource.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE991CA1AE1D00BFE57C /* RTCVideoSource.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 9845CEB71CA1AE1E00BFE57C /* RTCVideoTrack.h in Headers */ = {isa = PBXBuildFile; fileRef = 9845CE9A1CA1AE1D00BFE57C /* RTCVideoTrack.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 986649D21C986B7D008EC831 /* avfoundationvideocapturer.mm in Sources */ = {isa = PBXBuildFile; fileRef = 986649BA1C986B7D008EC831 /* avfoundationvideocapturer.mm */; }; + 986649D31C986B7D008EC831 /* RTCAudioTrack.mm in Sources */ = {isa = PBXBuildFile; fileRef = 986649BB1C986B7D008EC831 /* RTCAudioTrack.mm */; }; + 986649D41C986B7D008EC831 /* RTCAVFoundationVideoSource.mm in Sources */ = {isa = PBXBuildFile; fileRef = 986649BC1C986B7D008EC831 /* RTCAVFoundationVideoSource.mm */; }; + 986649D51C986B7D008EC831 /* RTCConfiguration.mm in Sources */ = {isa = PBXBuildFile; fileRef = 986649BD1C986B7D008EC831 /* RTCConfiguration.mm */; }; + 986649D61C986B7D008EC831 /* RTCDataChannel.mm in Sources */ = {isa = PBXBuildFile; fileRef = 986649BE1C986B7D008EC831 /* RTCDataChannel.mm */; }; + 986649D71C986B7D008EC831 /* RTCDataChannelConfiguration.mm in Sources */ = {isa = PBXBuildFile; fileRef = 986649BF1C986B7D008EC831 /* RTCDataChannelConfiguration.mm */; }; + 986649D81C986B7D008EC831 /* RTCEAGLVideoView.m in Sources */ = {isa = PBXBuildFile; fileRef = 986649C01C986B7D008EC831 /* RTCEAGLVideoView.m */; }; + 986649D91C986B7D008EC831 /* RTCIceCandidate.mm in Sources */ = {isa = PBXBuildFile; fileRef = 986649C11C986B7D008EC831 /* RTCIceCandidate.mm */; }; + 986649DA1C986B7D008EC831 /* RTCIceServer.mm in Sources */ = {isa = PBXBuildFile; fileRef = 986649C21C986B7D008EC831 /* RTCIceServer.mm */; }; + 986649DB1C986B7D008EC831 /* RTCMediaConstraints.mm in Sources */ = {isa = PBXBuildFile; fileRef = 986649C31C986B7D008EC831 /* RTCMediaConstraints.mm */; }; + 986649DC1C986B7D008EC831 /* RTCMediaStream.mm in Sources */ = {isa = PBXBuildFile; fileRef = 986649C41C986B7D008EC831 /* RTCMediaStream.mm */; }; + 986649DD1C986B7D008EC831 /* RTCMediaStreamTrack.mm in Sources */ = {isa = PBXBuildFile; fileRef = 986649C51C986B7D008EC831 /* RTCMediaStreamTrack.mm */; }; + 986649DF1C986B7D008EC831 /* RTCOpenGLVideoRenderer.mm in Sources */ = {isa = PBXBuildFile; fileRef = 986649C71C986B7D008EC831 /* RTCOpenGLVideoRenderer.mm */; }; + 986649E01C986B7D008EC831 /* RTCPeerConnection.mm in Sources */ = {isa = PBXBuildFile; fileRef = 986649C81C986B7D008EC831 /* RTCPeerConnection.mm */; }; + 986649E11C986B7D008EC831 /* RTCPeerConnection+DataChannel.mm in Sources */ = {isa = PBXBuildFile; fileRef = 986649C91C986B7D008EC831 /* RTCPeerConnection+DataChannel.mm */; }; + 986649E21C986B7D008EC831 /* RTCPeerConnection+Stats.mm in Sources */ = {isa = PBXBuildFile; fileRef = 986649CA1C986B7D008EC831 /* RTCPeerConnection+Stats.mm */; }; + 986649E31C986B7D008EC831 /* RTCPeerConnectionFactory.mm in Sources */ = {isa = PBXBuildFile; fileRef = 986649CB1C986B7D008EC831 /* RTCPeerConnectionFactory.mm */; }; + 986649E41C986B7D008EC831 /* RTCSessionDescription.mm in Sources */ = {isa = PBXBuildFile; fileRef = 986649CC1C986B7D008EC831 /* RTCSessionDescription.mm */; }; + 986649E51C986B7D008EC831 /* RTCStatsReport.mm in Sources */ = {isa = PBXBuildFile; fileRef = 986649CD1C986B7D008EC831 /* RTCStatsReport.mm */; }; + 986649E61C986B7D008EC831 /* RTCVideoFrame.mm in Sources */ = {isa = PBXBuildFile; fileRef = 986649CE1C986B7D008EC831 /* RTCVideoFrame.mm */; }; + 986649E71C986B7D008EC831 /* RTCVideoRendererAdapter.mm in Sources */ = {isa = PBXBuildFile; fileRef = 986649CF1C986B7D008EC831 /* RTCVideoRendererAdapter.mm */; }; + 986649E81C986B7D008EC831 /* RTCVideoSource.mm in Sources */ = {isa = PBXBuildFile; fileRef = 986649D01C986B7D008EC831 /* RTCVideoSource.mm */; }; + 986649E91C986B7D008EC831 /* RTCVideoTrack.mm in Sources */ = {isa = PBXBuildFile; fileRef = 986649D11C986B7D008EC831 /* RTCVideoTrack.mm */; }; +/* End PBXBuildFile section */ + +/* Begin PBXFileReference section */ + 980224561CA243DE00295D57 /* libaudio_coding_module.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libaudio_coding_module.a; path = ../../../../../out_ios_libs/lib/libaudio_coding_module.a; sourceTree = ""; }; + 980224571CA243DE00295D57 /* libaudio_conference_mixer.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libaudio_conference_mixer.a; path = ../../../../../out_ios_libs/lib/libaudio_conference_mixer.a; sourceTree = ""; }; + 980224581CA243DE00295D57 /* libaudio_decoder_interface.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libaudio_decoder_interface.a; path = ../../../../../out_ios_libs/lib/libaudio_decoder_interface.a; sourceTree = ""; }; + 980224591CA243DE00295D57 /* libaudio_device.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libaudio_device.a; path = ../../../../../out_ios_libs/lib/libaudio_device.a; sourceTree = ""; }; + 9802245A1CA243DE00295D57 /* libaudio_encoder_interface.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libaudio_encoder_interface.a; path = ../../../../../out_ios_libs/lib/libaudio_encoder_interface.a; sourceTree = ""; }; + 9802245B1CA243DE00295D57 /* libaudio_processing.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libaudio_processing.a; path = ../../../../../out_ios_libs/lib/libaudio_processing.a; sourceTree = ""; }; + 9802245C1CA243DE00295D57 /* libaudioproc_debug_proto.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libaudioproc_debug_proto.a; path = ../../../../../out_ios_libs/lib/libaudioproc_debug_proto.a; sourceTree = ""; }; + 9802245D1CA243DE00295D57 /* libbitrate_controller.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libbitrate_controller.a; path = ../../../../../out_ios_libs/lib/libbitrate_controller.a; sourceTree = ""; }; + 9802245E1CA243DE00295D57 /* libboringssl.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libboringssl.a; path = ../../../../../out_ios_libs/lib/libboringssl.a; sourceTree = ""; }; + 9802245F1CA243DE00295D57 /* libcng.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libcng.a; path = ../../../../../out_ios_libs/lib/libcng.a; sourceTree = ""; }; + 980224601CA243DE00295D57 /* libcommon_audio.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libcommon_audio.a; path = ../../../../../out_ios_libs/lib/libcommon_audio.a; sourceTree = ""; }; + 980224611CA243DE00295D57 /* libcommon_video.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libcommon_video.a; path = ../../../../../out_ios_libs/lib/libcommon_video.a; sourceTree = ""; }; + 980224621CA243DE00295D57 /* libcongestion_controller.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libcongestion_controller.a; path = ../../../../../out_ios_libs/lib/libcongestion_controller.a; sourceTree = ""; }; + 980224631CA243DE00295D57 /* libexpat.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libexpat.a; path = ../../../../../out_ios_libs/lib/libexpat.a; sourceTree = ""; }; + 980224641CA243DE00295D57 /* libfield_trial_default.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libfield_trial_default.a; path = ../../../../../out_ios_libs/lib/libfield_trial_default.a; sourceTree = ""; }; + 980224651CA243DE00295D57 /* libg711.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libg711.a; path = ../../../../../out_ios_libs/lib/libg711.a; sourceTree = ""; }; + 980224661CA243DE00295D57 /* libg722.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libg722.a; path = ../../../../../out_ios_libs/lib/libg722.a; sourceTree = ""; }; + 980224671CA243DE00295D57 /* libilbc.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libilbc.a; path = ../../../../../out_ios_libs/lib/libilbc.a; sourceTree = ""; }; + 980224681CA243DE00295D57 /* libisac_common.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libisac_common.a; path = ../../../../../out_ios_libs/lib/libisac_common.a; sourceTree = ""; }; + 980224691CA243DE00295D57 /* libisac.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libisac.a; path = ../../../../../out_ios_libs/lib/libisac.a; sourceTree = ""; }; + 9802246A1CA243DE00295D57 /* libjingle_peerconnection.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libjingle_peerconnection.a; path = ../../../../../out_ios_libs/lib/libjingle_peerconnection.a; sourceTree = ""; }; + 9802246B1CA243DE00295D57 /* libjsoncpp.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libjsoncpp.a; path = ../../../../../out_ios_libs/lib/libjsoncpp.a; sourceTree = ""; }; + 9802246C1CA243DE00295D57 /* libmedia_file.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libmedia_file.a; path = ../../../../../out_ios_libs/lib/libmedia_file.a; sourceTree = ""; }; + 9802246D1CA243DE00295D57 /* libmetrics_default.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libmetrics_default.a; path = ../../../../../out_ios_libs/lib/libmetrics_default.a; sourceTree = ""; }; + 9802246E1CA243DE00295D57 /* libneteq.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libneteq.a; path = ../../../../../out_ios_libs/lib/libneteq.a; sourceTree = ""; }; + 9802246F1CA243DE00295D57 /* libopus.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libopus.a; path = ../../../../../out_ios_libs/lib/libopus.a; sourceTree = ""; }; + 980224701CA243DE00295D57 /* libpaced_sender.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libpaced_sender.a; path = ../../../../../out_ios_libs/lib/libpaced_sender.a; sourceTree = ""; }; + 980224711CA243DE00295D57 /* libpcm16b.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libpcm16b.a; path = ../../../../../out_ios_libs/lib/libpcm16b.a; sourceTree = ""; }; + 980224721CA243DE00295D57 /* libprotobuf_lite.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libprotobuf_lite.a; path = ../../../../../out_ios_libs/lib/libprotobuf_lite.a; sourceTree = ""; }; + 980224731CA243DE00295D57 /* libred.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libred.a; path = ../../../../../out_ios_libs/lib/libred.a; sourceTree = ""; }; + 980224741CA243DE00295D57 /* libremote_bitrate_estimator.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libremote_bitrate_estimator.a; path = ../../../../../out_ios_libs/lib/libremote_bitrate_estimator.a; sourceTree = ""; }; + 980224751CA243DE00295D57 /* librent_a_codec.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = librent_a_codec.a; path = ../../../../../out_ios_libs/lib/librent_a_codec.a; sourceTree = ""; }; + 980224771CA243DE00295D57 /* librtc_base_approved.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = librtc_base_approved.a; path = ../../../../../out_ios_libs/lib/librtc_base_approved.a; sourceTree = ""; }; + 980224791CA243DE00295D57 /* librtc_base.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = librtc_base.a; path = ../../../../../out_ios_libs/lib/librtc_base.a; sourceTree = ""; }; + 9802247A1CA243DE00295D57 /* librtc_event_log_proto.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = librtc_event_log_proto.a; path = ../../../../../out_ios_libs/lib/librtc_event_log_proto.a; sourceTree = ""; }; + 9802247B1CA243DE00295D57 /* librtc_event_log.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = librtc_event_log.a; path = ../../../../../out_ios_libs/lib/librtc_event_log.a; sourceTree = ""; }; + 9802247C1CA243DE00295D57 /* librtc_media.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = librtc_media.a; path = ../../../../../out_ios_libs/lib/librtc_media.a; sourceTree = ""; }; + 9802247D1CA243DE00295D57 /* librtc_p2p.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = librtc_p2p.a; path = ../../../../../out_ios_libs/lib/librtc_p2p.a; sourceTree = ""; }; + 9802247E1CA243DE00295D57 /* librtc_pc.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = librtc_pc.a; path = ../../../../../out_ios_libs/lib/librtc_pc.a; sourceTree = ""; }; + 9802247F1CA243DE00295D57 /* librtc_xmllite.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = librtc_xmllite.a; path = ../../../../../out_ios_libs/lib/librtc_xmllite.a; sourceTree = ""; }; + 980224801CA243DE00295D57 /* librtc_xmpp.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = librtc_xmpp.a; path = ../../../../../out_ios_libs/lib/librtc_xmpp.a; sourceTree = ""; }; + 980224811CA243DE00295D57 /* librtp_rtcp.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = librtp_rtcp.a; path = ../../../../../out_ios_libs/lib/librtp_rtcp.a; sourceTree = ""; }; + 980224821CA243DE00295D57 /* libsrtp.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libsrtp.a; path = ../../../../../out_ios_libs/lib/libsrtp.a; sourceTree = ""; }; + 980224831CA243DE00295D57 /* libsystem_wrappers.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libsystem_wrappers.a; path = ../../../../../out_ios_libs/lib/libsystem_wrappers.a; sourceTree = ""; }; + 980224841CA243DE00295D57 /* libusrsctplib.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libusrsctplib.a; path = ../../../../../out_ios_libs/lib/libusrsctplib.a; sourceTree = ""; }; + 980224851CA243DE00295D57 /* libvideo_capture_module_internal_impl.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libvideo_capture_module_internal_impl.a; path = ../../../../../out_ios_libs/lib/libvideo_capture_module_internal_impl.a; sourceTree = ""; }; + 980224861CA243DE00295D57 /* libvideo_capture_module.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libvideo_capture_module.a; path = ../../../../../out_ios_libs/lib/libvideo_capture_module.a; sourceTree = ""; }; + 980224871CA243DE00295D57 /* libvideo_coding_utility.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libvideo_coding_utility.a; path = ../../../../../out_ios_libs/lib/libvideo_coding_utility.a; sourceTree = ""; }; + 980224881CA243DE00295D57 /* libvideo_processing.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libvideo_processing.a; path = ../../../../../out_ios_libs/lib/libvideo_processing.a; sourceTree = ""; }; + 980224891CA243DE00295D57 /* libvideo_render_module_internal_impl.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libvideo_render_module_internal_impl.a; path = ../../../../../out_ios_libs/lib/libvideo_render_module_internal_impl.a; sourceTree = ""; }; + 9802248A1CA243DE00295D57 /* libvideo_render_module.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libvideo_render_module.a; path = ../../../../../out_ios_libs/lib/libvideo_render_module.a; sourceTree = ""; }; + 9802248B1CA243DE00295D57 /* libvoice_engine.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libvoice_engine.a; path = ../../../../../out_ios_libs/lib/libvoice_engine.a; sourceTree = ""; }; + 9802248C1CA243DE00295D57 /* libvpx.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libvpx.a; path = ../../../../../out_ios_libs/lib/libvpx.a; sourceTree = ""; }; + 9802248D1CA243DE00295D57 /* libwebrtc_common.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libwebrtc_common.a; path = ../../../../../out_ios_libs/lib/libwebrtc_common.a; sourceTree = ""; }; + 9802248E1CA243DE00295D57 /* libwebrtc_h264_video_toolbox.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libwebrtc_h264_video_toolbox.a; path = ../../../../../out_ios_libs/lib/libwebrtc_h264_video_toolbox.a; sourceTree = ""; }; + 9802248F1CA243DE00295D57 /* libwebrtc_h264.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libwebrtc_h264.a; path = ../../../../../out_ios_libs/lib/libwebrtc_h264.a; sourceTree = ""; }; + 980224901CA243DE00295D57 /* libwebrtc_i420.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libwebrtc_i420.a; path = ../../../../../out_ios_libs/lib/libwebrtc_i420.a; sourceTree = ""; }; + 980224911CA243DE00295D57 /* libwebrtc_opus.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libwebrtc_opus.a; path = ../../../../../out_ios_libs/lib/libwebrtc_opus.a; sourceTree = ""; }; + 980224921CA243DE00295D57 /* libwebrtc_utility.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libwebrtc_utility.a; path = ../../../../../out_ios_libs/lib/libwebrtc_utility.a; sourceTree = ""; }; + 980224931CA243DE00295D57 /* libwebrtc_video_coding.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libwebrtc_video_coding.a; path = ../../../../../out_ios_libs/lib/libwebrtc_video_coding.a; sourceTree = ""; }; + 980224941CA243DE00295D57 /* libwebrtc_vp8.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libwebrtc_vp8.a; path = ../../../../../out_ios_libs/lib/libwebrtc_vp8.a; sourceTree = ""; }; + 980224951CA243DE00295D57 /* libwebrtc_vp9.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libwebrtc_vp9.a; path = ../../../../../out_ios_libs/lib/libwebrtc_vp9.a; sourceTree = ""; }; + 980224961CA243DE00295D57 /* libwebrtc.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libwebrtc.a; path = ../../../../../out_ios_libs/lib/libwebrtc.a; sourceTree = ""; }; + 980224971CA243DE00295D57 /* libyuv.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libyuv.a; path = ../../../../../out_ios_libs/lib/libyuv.a; sourceTree = ""; }; + 9820AAC31C977D11001E5793 /* WebRTC.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = WebRTC.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 9820AAC61C977D11001E5793 /* WebRTC.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = WebRTC.h; sourceTree = ""; }; + 9820AAC81C977D11001E5793 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 982C13281C98B78000895DC2 /* AVFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AVFoundation.framework; path = System/Library/Frameworks/AVFoundation.framework; sourceTree = SDKROOT; }; + 982C132A1C98B79700895DC2 /* VideoToolbox.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = VideoToolbox.framework; path = System/Library/Frameworks/VideoToolbox.framework; sourceTree = SDKROOT; }; + 982C132C1C98B7B400895DC2 /* CoreMedia.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreMedia.framework; path = System/Library/Frameworks/CoreMedia.framework; sourceTree = SDKROOT; }; + 982C132E1C98B7C100895DC2 /* AudioToolbox.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = System/Library/Frameworks/AudioToolbox.framework; sourceTree = SDKROOT; }; + 982C150F1C99083B00895DC2 /* NSString+StdString.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = "NSString+StdString.mm"; path = "../../../../base/objc/NSString+StdString.mm"; sourceTree = ""; }; + 982C15101C99083B00895DC2 /* RTCCameraPreviewView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = RTCCameraPreviewView.m; path = ../../../../base/objc/RTCCameraPreviewView.m; sourceTree = ""; }; + 982C15111C99083B00895DC2 /* RTCDispatcher.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = RTCDispatcher.m; path = ../../../../base/objc/RTCDispatcher.m; sourceTree = ""; }; + 982C15121C99083B00895DC2 /* RTCFieldTrials.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = RTCFieldTrials.mm; path = ../../../../base/objc/RTCFieldTrials.mm; sourceTree = ""; }; + 982C15131C99083B00895DC2 /* RTCFileLogger.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = RTCFileLogger.mm; path = ../../../../base/objc/RTCFileLogger.mm; sourceTree = ""; }; + 982C15141C99083B00895DC2 /* RTCLogging.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = RTCLogging.mm; path = ../../../../base/objc/RTCLogging.mm; sourceTree = ""; }; + 982C15151C99083B00895DC2 /* RTCSSLAdapter.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = RTCSSLAdapter.mm; path = ../../../../base/objc/RTCSSLAdapter.mm; sourceTree = ""; }; + 982C15161C99083B00895DC2 /* RTCTracing.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = RTCTracing.mm; path = ../../../../base/objc/RTCTracing.mm; sourceTree = ""; }; + 982C15171C99083B00895DC2 /* RTCUIApplication.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = RTCUIApplication.mm; path = ../../../../base/objc/RTCUIApplication.mm; sourceTree = ""; }; + 9845CE7E1CA1AE1D00BFE57C /* RTCAudioTrack.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCAudioTrack.h; sourceTree = ""; }; + 9845CE7F1CA1AE1D00BFE57C /* RTCAVFoundationVideoSource.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCAVFoundationVideoSource.h; sourceTree = ""; }; + 9845CE801CA1AE1D00BFE57C /* RTCCameraPreviewView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCCameraPreviewView.h; sourceTree = ""; }; + 9845CE811CA1AE1D00BFE57C /* RTCConfiguration.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCConfiguration.h; sourceTree = ""; }; + 9845CE821CA1AE1D00BFE57C /* RTCDataChannel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCDataChannel.h; sourceTree = ""; }; + 9845CE831CA1AE1D00BFE57C /* RTCDataChannelConfiguration.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCDataChannelConfiguration.h; sourceTree = ""; }; + 9845CE841CA1AE1D00BFE57C /* RTCDispatcher.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCDispatcher.h; sourceTree = ""; }; + 9845CE851CA1AE1D00BFE57C /* RTCEAGLVideoView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCEAGLVideoView.h; sourceTree = ""; }; + 9845CE861CA1AE1D00BFE57C /* RTCFieldTrials.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCFieldTrials.h; sourceTree = ""; }; + 9845CE871CA1AE1D00BFE57C /* RTCFileLogger.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCFileLogger.h; sourceTree = ""; }; + 9845CE881CA1AE1D00BFE57C /* RTCIceCandidate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCIceCandidate.h; sourceTree = ""; }; + 9845CE891CA1AE1D00BFE57C /* RTCIceServer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCIceServer.h; sourceTree = ""; }; + 9845CE8A1CA1AE1D00BFE57C /* RTCLogging.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCLogging.h; sourceTree = ""; }; + 9845CE8B1CA1AE1D00BFE57C /* RTCMacros.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCMacros.h; sourceTree = ""; }; + 9845CE8C1CA1AE1D00BFE57C /* RTCMediaConstraints.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCMediaConstraints.h; sourceTree = ""; }; + 9845CE8D1CA1AE1D00BFE57C /* RTCMediaStream.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCMediaStream.h; sourceTree = ""; }; + 9845CE8E1CA1AE1D00BFE57C /* RTCMediaStreamTrack.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCMediaStreamTrack.h; sourceTree = ""; }; + 9845CE8F1CA1AE1D00BFE57C /* RTCOpenGLVideoRenderer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCOpenGLVideoRenderer.h; sourceTree = ""; }; + 9845CE901CA1AE1D00BFE57C /* RTCPeerConnection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCPeerConnection.h; sourceTree = ""; }; + 9845CE911CA1AE1D00BFE57C /* RTCPeerConnectionFactory.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCPeerConnectionFactory.h; sourceTree = ""; }; + 9845CE921CA1AE1D00BFE57C /* RTCSessionDescription.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCSessionDescription.h; sourceTree = ""; }; + 9845CE931CA1AE1D00BFE57C /* RTCSSLAdapter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCSSLAdapter.h; sourceTree = ""; }; + 9845CE941CA1AE1D00BFE57C /* RTCStatsReport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCStatsReport.h; sourceTree = ""; }; + 9845CE951CA1AE1D00BFE57C /* RTCTracing.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCTracing.h; sourceTree = ""; }; + 9845CE961CA1AE1D00BFE57C /* RTCVideoFrame.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCVideoFrame.h; sourceTree = ""; }; + 9845CE971CA1AE1D00BFE57C /* RTCVideoRenderer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCVideoRenderer.h; sourceTree = ""; }; + 9845CE981CA1AE1D00BFE57C /* RTCVideoRendererAdapter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCVideoRendererAdapter.h; sourceTree = ""; }; + 9845CE991CA1AE1D00BFE57C /* RTCVideoSource.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCVideoSource.h; sourceTree = ""; }; + 9845CE9A1CA1AE1D00BFE57C /* RTCVideoTrack.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RTCVideoTrack.h; sourceTree = ""; }; + 986649BA1C986B7D008EC831 /* avfoundationvideocapturer.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = avfoundationvideocapturer.mm; path = ../../../../api/objc/avfoundationvideocapturer.mm; sourceTree = ""; }; + 986649BB1C986B7D008EC831 /* RTCAudioTrack.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = RTCAudioTrack.mm; path = ../../../../api/objc/RTCAudioTrack.mm; sourceTree = ""; }; + 986649BC1C986B7D008EC831 /* RTCAVFoundationVideoSource.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = RTCAVFoundationVideoSource.mm; path = ../../../../api/objc/RTCAVFoundationVideoSource.mm; sourceTree = ""; }; + 986649BD1C986B7D008EC831 /* RTCConfiguration.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = RTCConfiguration.mm; path = ../../../../api/objc/RTCConfiguration.mm; sourceTree = ""; }; + 986649BE1C986B7D008EC831 /* RTCDataChannel.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = RTCDataChannel.mm; path = ../../../../api/objc/RTCDataChannel.mm; sourceTree = ""; }; + 986649BF1C986B7D008EC831 /* RTCDataChannelConfiguration.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = RTCDataChannelConfiguration.mm; path = ../../../../api/objc/RTCDataChannelConfiguration.mm; sourceTree = ""; }; + 986649C01C986B7D008EC831 /* RTCEAGLVideoView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = RTCEAGLVideoView.m; path = ../../../../api/objc/RTCEAGLVideoView.m; sourceTree = ""; }; + 986649C11C986B7D008EC831 /* RTCIceCandidate.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = RTCIceCandidate.mm; path = ../../../../api/objc/RTCIceCandidate.mm; sourceTree = ""; }; + 986649C21C986B7D008EC831 /* RTCIceServer.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = RTCIceServer.mm; path = ../../../../api/objc/RTCIceServer.mm; sourceTree = ""; }; + 986649C31C986B7D008EC831 /* RTCMediaConstraints.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = RTCMediaConstraints.mm; path = ../../../../api/objc/RTCMediaConstraints.mm; sourceTree = ""; }; + 986649C41C986B7D008EC831 /* RTCMediaStream.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = RTCMediaStream.mm; path = ../../../../api/objc/RTCMediaStream.mm; sourceTree = ""; }; + 986649C51C986B7D008EC831 /* RTCMediaStreamTrack.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = RTCMediaStreamTrack.mm; path = ../../../../api/objc/RTCMediaStreamTrack.mm; sourceTree = ""; }; + 986649C71C986B7D008EC831 /* RTCOpenGLVideoRenderer.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = RTCOpenGLVideoRenderer.mm; path = ../../../../api/objc/RTCOpenGLVideoRenderer.mm; sourceTree = ""; }; + 986649C81C986B7D008EC831 /* RTCPeerConnection.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = RTCPeerConnection.mm; path = ../../../../api/objc/RTCPeerConnection.mm; sourceTree = ""; }; + 986649C91C986B7D008EC831 /* RTCPeerConnection+DataChannel.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = "RTCPeerConnection+DataChannel.mm"; path = "../../../../api/objc/RTCPeerConnection+DataChannel.mm"; sourceTree = ""; }; + 986649CA1C986B7D008EC831 /* RTCPeerConnection+Stats.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = "RTCPeerConnection+Stats.mm"; path = "../../../../api/objc/RTCPeerConnection+Stats.mm"; sourceTree = ""; }; + 986649CB1C986B7D008EC831 /* RTCPeerConnectionFactory.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = RTCPeerConnectionFactory.mm; path = ../../../../api/objc/RTCPeerConnectionFactory.mm; sourceTree = ""; }; + 986649CC1C986B7D008EC831 /* RTCSessionDescription.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = RTCSessionDescription.mm; path = ../../../../api/objc/RTCSessionDescription.mm; sourceTree = ""; }; + 986649CD1C986B7D008EC831 /* RTCStatsReport.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = RTCStatsReport.mm; path = ../../../../api/objc/RTCStatsReport.mm; sourceTree = ""; }; + 986649CE1C986B7D008EC831 /* RTCVideoFrame.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = RTCVideoFrame.mm; path = ../../../../api/objc/RTCVideoFrame.mm; sourceTree = ""; }; + 986649CF1C986B7D008EC831 /* RTCVideoRendererAdapter.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = RTCVideoRendererAdapter.mm; path = ../../../../api/objc/RTCVideoRendererAdapter.mm; sourceTree = ""; }; + 986649D01C986B7D008EC831 /* RTCVideoSource.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = RTCVideoSource.mm; path = ../../../../api/objc/RTCVideoSource.mm; sourceTree = ""; }; + 986649D11C986B7D008EC831 /* RTCVideoTrack.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = RTCVideoTrack.mm; path = ../../../../api/objc/RTCVideoTrack.mm; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 9820AABF1C977D11001E5793 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 9802249B1CA243DE00295D57 /* libaudio_device.a in Frameworks */, + 980224BE1CA243DE00295D57 /* librtc_media.a in Frameworks */, + 980224A61CA243DE00295D57 /* libfield_trial_default.a in Frameworks */, + 980224D31CA243DE00295D57 /* libwebrtc_opus.a in Frameworks */, + 980224C11CA243DE00295D57 /* librtc_xmllite.a in Frameworks */, + 980224C51CA243DE00295D57 /* libsystem_wrappers.a in Frameworks */, + 980224D41CA243DE00295D57 /* libwebrtc_utility.a in Frameworks */, + 980224A81CA243DE00295D57 /* libg722.a in Frameworks */, + 9802249D1CA243DE00295D57 /* libaudio_processing.a in Frameworks */, + 980224D61CA243DE00295D57 /* libwebrtc_vp8.a in Frameworks */, + 980224AE1CA243DE00295D57 /* libmedia_file.a in Frameworks */, + 980224B91CA243DE00295D57 /* librtc_base_approved.a in Frameworks */, + 980224C71CA243DE00295D57 /* libvideo_capture_module_internal_impl.a in Frameworks */, + 9802249C1CA243DE00295D57 /* libaudio_encoder_interface.a in Frameworks */, + 980224CF1CA243DE00295D57 /* libwebrtc_common.a in Frameworks */, + 9802249A1CA243DE00295D57 /* libaudio_decoder_interface.a in Frameworks */, + 980224BC1CA243DE00295D57 /* librtc_event_log_proto.a in Frameworks */, + 980224AC1CA243DE00295D57 /* libjingle_peerconnection.a in Frameworks */, + 980224C41CA243DE00295D57 /* libsrtp.a in Frameworks */, + 982C132F1C98B7C100895DC2 /* AudioToolbox.framework in Frameworks */, + 980224981CA243DE00295D57 /* libaudio_coding_module.a in Frameworks */, + 980224A31CA243DE00295D57 /* libcommon_video.a in Frameworks */, + 982C132D1C98B7B400895DC2 /* CoreMedia.framework in Frameworks */, + 980224A01CA243DE00295D57 /* libboringssl.a in Frameworks */, + 980224D81CA243DE00295D57 /* libwebrtc.a in Frameworks */, + 980224C91CA243DE00295D57 /* libvideo_coding_utility.a in Frameworks */, + 980224D01CA243DE00295D57 /* libwebrtc_h264_video_toolbox.a in Frameworks */, + 980224BF1CA243DE00295D57 /* librtc_p2p.a in Frameworks */, + 980224D21CA243DE00295D57 /* libwebrtc_i420.a in Frameworks */, + 980224B21CA243DE00295D57 /* libpaced_sender.a in Frameworks */, + 980224AF1CA243DE00295D57 /* libmetrics_default.a in Frameworks */, + 982C132B1C98B79700895DC2 /* VideoToolbox.framework in Frameworks */, + 980224AD1CA243DE00295D57 /* libjsoncpp.a in Frameworks */, + 980224A71CA243DE00295D57 /* libg711.a in Frameworks */, + 980224AA1CA243DE00295D57 /* libisac_common.a in Frameworks */, + 980224D11CA243DE00295D57 /* libwebrtc_h264.a in Frameworks */, + 980224CB1CA243DE00295D57 /* libvideo_render_module_internal_impl.a in Frameworks */, + 980224A91CA243DE00295D57 /* libilbc.a in Frameworks */, + 980224D51CA243DE00295D57 /* libwebrtc_video_coding.a in Frameworks */, + 980224BD1CA243DE00295D57 /* librtc_event_log.a in Frameworks */, + 980224A41CA243DE00295D57 /* libcongestion_controller.a in Frameworks */, + 980224B01CA243DE00295D57 /* libneteq.a in Frameworks */, + 9802249E1CA243DE00295D57 /* libaudioproc_debug_proto.a in Frameworks */, + 980224A11CA243DE00295D57 /* libcng.a in Frameworks */, + 980224991CA243DE00295D57 /* libaudio_conference_mixer.a in Frameworks */, + 980224B61CA243DE00295D57 /* libremote_bitrate_estimator.a in Frameworks */, + 980224C31CA243DE00295D57 /* librtp_rtcp.a in Frameworks */, + 980224CC1CA243DE00295D57 /* libvideo_render_module.a in Frameworks */, + 980224C81CA243DE00295D57 /* libvideo_capture_module.a in Frameworks */, + 982C13291C98B78000895DC2 /* AVFoundation.framework in Frameworks */, + 980224D71CA243DE00295D57 /* libwebrtc_vp9.a in Frameworks */, + 980224C21CA243DE00295D57 /* librtc_xmpp.a in Frameworks */, + 980224B31CA243DE00295D57 /* libpcm16b.a in Frameworks */, + 980224CE1CA243DE00295D57 /* libvpx.a in Frameworks */, + 980224BB1CA243DE00295D57 /* librtc_base.a in Frameworks */, + 9802249F1CA243DE00295D57 /* libbitrate_controller.a in Frameworks */, + 980224B11CA243DE00295D57 /* libopus.a in Frameworks */, + 980224CD1CA243DE00295D57 /* libvoice_engine.a in Frameworks */, + 980224A51CA243DE00295D57 /* libexpat.a in Frameworks */, + 980224A21CA243DE00295D57 /* libcommon_audio.a in Frameworks */, + 980224D91CA243DE00295D57 /* libyuv.a in Frameworks */, + 980224B41CA243DE00295D57 /* libprotobuf_lite.a in Frameworks */, + 980224B71CA243DE00295D57 /* librent_a_codec.a in Frameworks */, + 980224CA1CA243DE00295D57 /* libvideo_processing.a in Frameworks */, + 980224C01CA243DE00295D57 /* librtc_pc.a in Frameworks */, + 980224AB1CA243DE00295D57 /* libisac.a in Frameworks */, + 980224B51CA243DE00295D57 /* libred.a in Frameworks */, + 980224C61CA243DE00295D57 /* libusrsctplib.a in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 9820AAB91C977D11001E5793 = { + isa = PBXGroup; + children = ( + 9845CE7D1CA1AE1D00BFE57C /* include */, + 986649A51C986B19008EC831 /* API */, + 982C150E1C99080E00895DC2 /* Base */, + 982C13301C98BAAE00895DC2 /* Frameworks */, + 9866491E1C985706008EC831 /* Static Libraries */, + 9820AAC51C977D11001E5793 /* WebRTC */, + 9820AAC41C977D11001E5793 /* Products */, + ); + sourceTree = ""; + }; + 9820AAC41C977D11001E5793 /* Products */ = { + isa = PBXGroup; + children = ( + 9820AAC31C977D11001E5793 /* WebRTC.framework */, + ); + name = Products; + sourceTree = ""; + }; + 9820AAC51C977D11001E5793 /* WebRTC */ = { + isa = PBXGroup; + children = ( + 9820AAC61C977D11001E5793 /* WebRTC.h */, + 9820AAC81C977D11001E5793 /* Info.plist */, + ); + path = WebRTC; + sourceTree = ""; + }; + 982C13301C98BAAE00895DC2 /* Frameworks */ = { + isa = PBXGroup; + children = ( + 982C132E1C98B7C100895DC2 /* AudioToolbox.framework */, + 982C132C1C98B7B400895DC2 /* CoreMedia.framework */, + 982C132A1C98B79700895DC2 /* VideoToolbox.framework */, + 982C13281C98B78000895DC2 /* AVFoundation.framework */, + ); + name = Frameworks; + sourceTree = ""; + }; + 982C150E1C99080E00895DC2 /* Base */ = { + isa = PBXGroup; + children = ( + 982C150F1C99083B00895DC2 /* NSString+StdString.mm */, + 982C15101C99083B00895DC2 /* RTCCameraPreviewView.m */, + 982C15111C99083B00895DC2 /* RTCDispatcher.m */, + 982C15121C99083B00895DC2 /* RTCFieldTrials.mm */, + 982C15131C99083B00895DC2 /* RTCFileLogger.mm */, + 982C15141C99083B00895DC2 /* RTCLogging.mm */, + 982C15151C99083B00895DC2 /* RTCSSLAdapter.mm */, + 982C15161C99083B00895DC2 /* RTCTracing.mm */, + 982C15171C99083B00895DC2 /* RTCUIApplication.mm */, + ); + name = Base; + sourceTree = ""; + }; + 9845CE7D1CA1AE1D00BFE57C /* include */ = { + isa = PBXGroup; + children = ( + 9845CE7E1CA1AE1D00BFE57C /* RTCAudioTrack.h */, + 9845CE7F1CA1AE1D00BFE57C /* RTCAVFoundationVideoSource.h */, + 9845CE801CA1AE1D00BFE57C /* RTCCameraPreviewView.h */, + 9845CE811CA1AE1D00BFE57C /* RTCConfiguration.h */, + 9845CE821CA1AE1D00BFE57C /* RTCDataChannel.h */, + 9845CE831CA1AE1D00BFE57C /* RTCDataChannelConfiguration.h */, + 9845CE841CA1AE1D00BFE57C /* RTCDispatcher.h */, + 9845CE851CA1AE1D00BFE57C /* RTCEAGLVideoView.h */, + 9845CE861CA1AE1D00BFE57C /* RTCFieldTrials.h */, + 9845CE871CA1AE1D00BFE57C /* RTCFileLogger.h */, + 9845CE881CA1AE1D00BFE57C /* RTCIceCandidate.h */, + 9845CE891CA1AE1D00BFE57C /* RTCIceServer.h */, + 9845CE8A1CA1AE1D00BFE57C /* RTCLogging.h */, + 9845CE8B1CA1AE1D00BFE57C /* RTCMacros.h */, + 9845CE8C1CA1AE1D00BFE57C /* RTCMediaConstraints.h */, + 9845CE8D1CA1AE1D00BFE57C /* RTCMediaStream.h */, + 9845CE8E1CA1AE1D00BFE57C /* RTCMediaStreamTrack.h */, + 9845CE8F1CA1AE1D00BFE57C /* RTCOpenGLVideoRenderer.h */, + 9845CE901CA1AE1D00BFE57C /* RTCPeerConnection.h */, + 9845CE911CA1AE1D00BFE57C /* RTCPeerConnectionFactory.h */, + 9845CE921CA1AE1D00BFE57C /* RTCSessionDescription.h */, + 9845CE931CA1AE1D00BFE57C /* RTCSSLAdapter.h */, + 9845CE941CA1AE1D00BFE57C /* RTCStatsReport.h */, + 9845CE951CA1AE1D00BFE57C /* RTCTracing.h */, + 9845CE961CA1AE1D00BFE57C /* RTCVideoFrame.h */, + 9845CE971CA1AE1D00BFE57C /* RTCVideoRenderer.h */, + 9845CE981CA1AE1D00BFE57C /* RTCVideoRendererAdapter.h */, + 9845CE991CA1AE1D00BFE57C /* RTCVideoSource.h */, + 9845CE9A1CA1AE1D00BFE57C /* RTCVideoTrack.h */, + ); + name = include; + path = ../../../../../out_ios_framework/include; + sourceTree = ""; + }; + 9866491E1C985706008EC831 /* Static Libraries */ = { + isa = PBXGroup; + children = ( + 980224561CA243DE00295D57 /* libaudio_coding_module.a */, + 980224571CA243DE00295D57 /* libaudio_conference_mixer.a */, + 980224581CA243DE00295D57 /* libaudio_decoder_interface.a */, + 980224591CA243DE00295D57 /* libaudio_device.a */, + 9802245A1CA243DE00295D57 /* libaudio_encoder_interface.a */, + 9802245B1CA243DE00295D57 /* libaudio_processing.a */, + 9802245C1CA243DE00295D57 /* libaudioproc_debug_proto.a */, + 9802245D1CA243DE00295D57 /* libbitrate_controller.a */, + 9802245E1CA243DE00295D57 /* libboringssl.a */, + 9802245F1CA243DE00295D57 /* libcng.a */, + 980224601CA243DE00295D57 /* libcommon_audio.a */, + 980224611CA243DE00295D57 /* libcommon_video.a */, + 980224621CA243DE00295D57 /* libcongestion_controller.a */, + 980224631CA243DE00295D57 /* libexpat.a */, + 980224641CA243DE00295D57 /* libfield_trial_default.a */, + 980224651CA243DE00295D57 /* libg711.a */, + 980224661CA243DE00295D57 /* libg722.a */, + 980224671CA243DE00295D57 /* libilbc.a */, + 980224681CA243DE00295D57 /* libisac_common.a */, + 980224691CA243DE00295D57 /* libisac.a */, + 9802246A1CA243DE00295D57 /* libjingle_peerconnection.a */, + 9802246B1CA243DE00295D57 /* libjsoncpp.a */, + 9802246C1CA243DE00295D57 /* libmedia_file.a */, + 9802246D1CA243DE00295D57 /* libmetrics_default.a */, + 9802246E1CA243DE00295D57 /* libneteq.a */, + 9802246F1CA243DE00295D57 /* libopus.a */, + 980224701CA243DE00295D57 /* libpaced_sender.a */, + 980224711CA243DE00295D57 /* libpcm16b.a */, + 980224721CA243DE00295D57 /* libprotobuf_lite.a */, + 980224731CA243DE00295D57 /* libred.a */, + 980224741CA243DE00295D57 /* libremote_bitrate_estimator.a */, + 980224751CA243DE00295D57 /* librent_a_codec.a */, + 980224771CA243DE00295D57 /* librtc_base_approved.a */, + 980224791CA243DE00295D57 /* librtc_base.a */, + 9802247A1CA243DE00295D57 /* librtc_event_log_proto.a */, + 9802247B1CA243DE00295D57 /* librtc_event_log.a */, + 9802247C1CA243DE00295D57 /* librtc_media.a */, + 9802247D1CA243DE00295D57 /* librtc_p2p.a */, + 9802247E1CA243DE00295D57 /* librtc_pc.a */, + 9802247F1CA243DE00295D57 /* librtc_xmllite.a */, + 980224801CA243DE00295D57 /* librtc_xmpp.a */, + 980224811CA243DE00295D57 /* librtp_rtcp.a */, + 980224821CA243DE00295D57 /* libsrtp.a */, + 980224831CA243DE00295D57 /* libsystem_wrappers.a */, + 980224841CA243DE00295D57 /* libusrsctplib.a */, + 980224851CA243DE00295D57 /* libvideo_capture_module_internal_impl.a */, + 980224861CA243DE00295D57 /* libvideo_capture_module.a */, + 980224871CA243DE00295D57 /* libvideo_coding_utility.a */, + 980224881CA243DE00295D57 /* libvideo_processing.a */, + 980224891CA243DE00295D57 /* libvideo_render_module_internal_impl.a */, + 9802248A1CA243DE00295D57 /* libvideo_render_module.a */, + 9802248B1CA243DE00295D57 /* libvoice_engine.a */, + 9802248C1CA243DE00295D57 /* libvpx.a */, + 9802248D1CA243DE00295D57 /* libwebrtc_common.a */, + 9802248E1CA243DE00295D57 /* libwebrtc_h264_video_toolbox.a */, + 9802248F1CA243DE00295D57 /* libwebrtc_h264.a */, + 980224901CA243DE00295D57 /* libwebrtc_i420.a */, + 980224911CA243DE00295D57 /* libwebrtc_opus.a */, + 980224921CA243DE00295D57 /* libwebrtc_utility.a */, + 980224931CA243DE00295D57 /* libwebrtc_video_coding.a */, + 980224941CA243DE00295D57 /* libwebrtc_vp8.a */, + 980224951CA243DE00295D57 /* libwebrtc_vp9.a */, + 980224961CA243DE00295D57 /* libwebrtc.a */, + 980224971CA243DE00295D57 /* libyuv.a */, + ); + name = "Static Libraries"; + sourceTree = ""; + }; + 986649A51C986B19008EC831 /* API */ = { + isa = PBXGroup; + children = ( + 986649BA1C986B7D008EC831 /* avfoundationvideocapturer.mm */, + 986649BB1C986B7D008EC831 /* RTCAudioTrack.mm */, + 986649BC1C986B7D008EC831 /* RTCAVFoundationVideoSource.mm */, + 986649BD1C986B7D008EC831 /* RTCConfiguration.mm */, + 986649BE1C986B7D008EC831 /* RTCDataChannel.mm */, + 986649BF1C986B7D008EC831 /* RTCDataChannelConfiguration.mm */, + 986649C01C986B7D008EC831 /* RTCEAGLVideoView.m */, + 986649C11C986B7D008EC831 /* RTCIceCandidate.mm */, + 986649C21C986B7D008EC831 /* RTCIceServer.mm */, + 986649C31C986B7D008EC831 /* RTCMediaConstraints.mm */, + 986649C41C986B7D008EC831 /* RTCMediaStream.mm */, + 986649C51C986B7D008EC831 /* RTCMediaStreamTrack.mm */, + 986649C71C986B7D008EC831 /* RTCOpenGLVideoRenderer.mm */, + 986649C81C986B7D008EC831 /* RTCPeerConnection.mm */, + 986649C91C986B7D008EC831 /* RTCPeerConnection+DataChannel.mm */, + 986649CA1C986B7D008EC831 /* RTCPeerConnection+Stats.mm */, + 986649CB1C986B7D008EC831 /* RTCPeerConnectionFactory.mm */, + 986649CC1C986B7D008EC831 /* RTCSessionDescription.mm */, + 986649CD1C986B7D008EC831 /* RTCStatsReport.mm */, + 986649CE1C986B7D008EC831 /* RTCVideoFrame.mm */, + 986649CF1C986B7D008EC831 /* RTCVideoRendererAdapter.mm */, + 986649D01C986B7D008EC831 /* RTCVideoSource.mm */, + 986649D11C986B7D008EC831 /* RTCVideoTrack.mm */, + ); + name = API; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXHeadersBuildPhase section */ + 9820AAC01C977D11001E5793 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 9820AAC71C977D11001E5793 /* WebRTC.h in Headers */, + 9845CEB41CA1AE1E00BFE57C /* RTCVideoRenderer.h in Headers */, + 9845CE9E1CA1AE1E00BFE57C /* RTCConfiguration.h in Headers */, + 9845CE9F1CA1AE1E00BFE57C /* RTCDataChannel.h in Headers */, + 9845CEA41CA1AE1E00BFE57C /* RTCFileLogger.h in Headers */, + 9845CEA71CA1AE1E00BFE57C /* RTCLogging.h in Headers */, + 9845CEB71CA1AE1E00BFE57C /* RTCVideoTrack.h in Headers */, + 9845CE9B1CA1AE1D00BFE57C /* RTCAudioTrack.h in Headers */, + 9845CEB21CA1AE1E00BFE57C /* RTCTracing.h in Headers */, + 9845CEA01CA1AE1E00BFE57C /* RTCDataChannelConfiguration.h in Headers */, + 9845CEAB1CA1AE1E00BFE57C /* RTCMediaStreamTrack.h in Headers */, + 9845CEAA1CA1AE1E00BFE57C /* RTCMediaStream.h in Headers */, + 9845CEA51CA1AE1E00BFE57C /* RTCIceCandidate.h in Headers */, + 9845CEB11CA1AE1E00BFE57C /* RTCStatsReport.h in Headers */, + 9845CEB31CA1AE1E00BFE57C /* RTCVideoFrame.h in Headers */, + 9845CEA21CA1AE1E00BFE57C /* RTCEAGLVideoView.h in Headers */, + 9845CEA31CA1AE1E00BFE57C /* RTCFieldTrials.h in Headers */, + 9845CEB61CA1AE1E00BFE57C /* RTCVideoSource.h in Headers */, + 9845CEA11CA1AE1E00BFE57C /* RTCDispatcher.h in Headers */, + 9845CEA81CA1AE1E00BFE57C /* RTCMacros.h in Headers */, + 9845CEAD1CA1AE1E00BFE57C /* RTCPeerConnection.h in Headers */, + 9845CEB51CA1AE1E00BFE57C /* RTCVideoRendererAdapter.h in Headers */, + 9845CEA91CA1AE1E00BFE57C /* RTCMediaConstraints.h in Headers */, + 9845CEAF1CA1AE1E00BFE57C /* RTCSessionDescription.h in Headers */, + 9845CEA61CA1AE1E00BFE57C /* RTCIceServer.h in Headers */, + 9845CE9C1CA1AE1D00BFE57C /* RTCAVFoundationVideoSource.h in Headers */, + 9845CEAE1CA1AE1E00BFE57C /* RTCPeerConnectionFactory.h in Headers */, + 9845CEB01CA1AE1E00BFE57C /* RTCSSLAdapter.h in Headers */, + 9845CEAC1CA1AE1E00BFE57C /* RTCOpenGLVideoRenderer.h in Headers */, + 9845CE9D1CA1AE1E00BFE57C /* RTCCameraPreviewView.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXHeadersBuildPhase section */ + +/* Begin PBXNativeTarget section */ + 9820AAC21C977D11001E5793 /* WebRTC */ = { + isa = PBXNativeTarget; + buildConfigurationList = 9820AACB1C977D11001E5793 /* Build configuration list for PBXNativeTarget "WebRTC" */; + buildPhases = ( + 9820AABE1C977D11001E5793 /* Sources */, + 9820AABF1C977D11001E5793 /* Frameworks */, + 9820AAC01C977D11001E5793 /* Headers */, + 9820AAC11C977D11001E5793 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = WebRTC; + productName = WebRTC; + productReference = 9820AAC31C977D11001E5793 /* WebRTC.framework */; + productType = "com.apple.product-type.framework"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 9820AABA1C977D11001E5793 /* Project object */ = { + isa = PBXProject; + attributes = { + LastUpgradeCheck = 0720; + ORGANIZATIONNAME = "Google Inc."; + TargetAttributes = { + 9820AAC21C977D11001E5793 = { + CreatedOnToolsVersion = 7.2.1; + }; + }; + }; + buildConfigurationList = 9820AABD1C977D11001E5793 /* Build configuration list for PBXProject "WebRTC" */; + compatibilityVersion = "Xcode 3.2"; + developmentRegion = English; + hasScannedForEncodings = 0; + knownRegions = ( + en, + ); + mainGroup = 9820AAB91C977D11001E5793; + productRefGroup = 9820AAC41C977D11001E5793 /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 9820AAC21C977D11001E5793 /* WebRTC */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 9820AAC11C977D11001E5793 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 9820AABE1C977D11001E5793 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 986649E01C986B7D008EC831 /* RTCPeerConnection.mm in Sources */, + 986649D81C986B7D008EC831 /* RTCEAGLVideoView.m in Sources */, + 982C151E1C99083B00895DC2 /* RTCSSLAdapter.mm in Sources */, + 982C15181C99083B00895DC2 /* NSString+StdString.mm in Sources */, + 986649E11C986B7D008EC831 /* RTCPeerConnection+DataChannel.mm in Sources */, + 986649DA1C986B7D008EC831 /* RTCIceServer.mm in Sources */, + 982C15191C99083B00895DC2 /* RTCCameraPreviewView.m in Sources */, + 986649E51C986B7D008EC831 /* RTCStatsReport.mm in Sources */, + 986649D21C986B7D008EC831 /* avfoundationvideocapturer.mm in Sources */, + 986649E31C986B7D008EC831 /* RTCPeerConnectionFactory.mm in Sources */, + 982C151B1C99083B00895DC2 /* RTCFieldTrials.mm in Sources */, + 982C151F1C99083B00895DC2 /* RTCTracing.mm in Sources */, + 986649E61C986B7D008EC831 /* RTCVideoFrame.mm in Sources */, + 986649E81C986B7D008EC831 /* RTCVideoSource.mm in Sources */, + 986649DF1C986B7D008EC831 /* RTCOpenGLVideoRenderer.mm in Sources */, + 986649DC1C986B7D008EC831 /* RTCMediaStream.mm in Sources */, + 982C151D1C99083B00895DC2 /* RTCLogging.mm in Sources */, + 986649D51C986B7D008EC831 /* RTCConfiguration.mm in Sources */, + 986649E91C986B7D008EC831 /* RTCVideoTrack.mm in Sources */, + 986649DD1C986B7D008EC831 /* RTCMediaStreamTrack.mm in Sources */, + 982C151C1C99083B00895DC2 /* RTCFileLogger.mm in Sources */, + 986649D91C986B7D008EC831 /* RTCIceCandidate.mm in Sources */, + 982C15201C99083B00895DC2 /* RTCUIApplication.mm in Sources */, + 986649DB1C986B7D008EC831 /* RTCMediaConstraints.mm in Sources */, + 986649D71C986B7D008EC831 /* RTCDataChannelConfiguration.mm in Sources */, + 986649D31C986B7D008EC831 /* RTCAudioTrack.mm in Sources */, + 986649E41C986B7D008EC831 /* RTCSessionDescription.mm in Sources */, + 986649D41C986B7D008EC831 /* RTCAVFoundationVideoSource.mm in Sources */, + 986649E21C986B7D008EC831 /* RTCPeerConnection+Stats.mm in Sources */, + 986649E71C986B7D008EC831 /* RTCVideoRendererAdapter.mm in Sources */, + 982C151A1C99083B00895DC2 /* RTCDispatcher.m in Sources */, + 986649D61C986B7D008EC831 /* RTCDataChannel.mm in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin XCBuildConfiguration section */ + 9820AAC91C977D11001E5793 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + CURRENT_PROJECT_VERSION = 1; + DEBUG_INFORMATION_FORMAT = dwarf; + DEPLOYMENT_POSTPROCESSING = YES; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 9.2; + MTL_ENABLE_DEBUG_INFO = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + 9820AACA1C977D11001E5793 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + CURRENT_PROJECT_VERSION = 1; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + DEPLOYMENT_POSTPROCESSING = YES; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 9.2; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; + 9820AACC1C977D11001E5793 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALTERNATE_GROUP = ""; + ALTERNATE_OWNER = ""; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_BITCODE = NO; + GCC_ENABLE_CPP_RTTI = NO; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + V8_DEPRECATION_WARNINGS, + "CLD_VERSION=2", + DISABLE_NACL, + CHROMIUM_BUILD, + "CR_CLANG_REVISION=263324-1", + "USE_LIBJPEG_TURBO=1", + FIELDTRIAL_TESTING_ENABLED, + "DISABLE_FTP_SUPPORT=1", + V8_USE_EXTERNAL_STARTUP_DATA, + "GTEST_HAS_POSIX_RE=0", + "GTEST_LANG_CXX11=0", + WEBRTC_MAC, + WEBRTC_IOS, + WEBRTC_POSIX, + PROTOBUF_USE_DLLS, + GOOGLE_PROTOBUF_NO_RTTI, + GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER, + "USE_LIBPCI=1", + "USE_OPENSSL=1", + NDEBUG, + NVALGRIND, + "DYNAMIC_ANNOTATIONS_ENABLED=0", + "NS_BLOCK_ASSERTIONS=1", + ); + HEADER_SEARCH_PATHS = "$(SRCROOT)/../../../../.."; + INFOPLIST_FILE = WebRTC/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + LIBRARY_SEARCH_PATHS = "$(SRCROOT)/../../../../../out_ios_libs/lib"; + OTHER_LDFLAGS = "-ObjC"; + PRODUCT_BUNDLE_IDENTIFIER = com.google.WebRTC; + PRODUCT_NAME = "$(TARGET_NAME)"; + SKIP_INSTALL = YES; + SYMROOT = $SRCROOT/build; + }; + name = Debug; + }; + 9820AACD1C977D11001E5793 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALTERNATE_GROUP = ""; + ALTERNATE_OWNER = ""; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_BITCODE = NO; + GCC_ENABLE_CPP_RTTI = NO; + GCC_PREPROCESSOR_DEFINITIONS = ( + V8_DEPRECATION_WARNINGS, + "CLD_VERSION=2", + DISABLE_NACL, + CHROMIUM_BUILD, + "CR_CLANG_REVISION=263324-1", + "USE_LIBJPEG_TURBO=1", + FIELDTRIAL_TESTING_ENABLED, + "DISABLE_FTP_SUPPORT=1", + V8_USE_EXTERNAL_STARTUP_DATA, + "GTEST_HAS_POSIX_RE=0", + "GTEST_LANG_CXX11=0", + WEBRTC_MAC, + WEBRTC_IOS, + WEBRTC_POSIX, + PROTOBUF_USE_DLLS, + GOOGLE_PROTOBUF_NO_RTTI, + GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER, + "USE_LIBPCI=1", + "USE_OPENSSL=1", + NDEBUG, + NVALGRIND, + "DYNAMIC_ANNOTATIONS_ENABLED=0", + "NS_BLOCK_ASSERTIONS=1", + ); + HEADER_SEARCH_PATHS = "$(SRCROOT)/../../../../.."; + INFOPLIST_FILE = WebRTC/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + LIBRARY_SEARCH_PATHS = "$(SRCROOT)/../../../../../out_ios_libs/lib"; + OTHER_LDFLAGS = "-ObjC"; + PRODUCT_BUNDLE_IDENTIFIER = com.google.WebRTC; + PRODUCT_NAME = "$(TARGET_NAME)"; + SKIP_INSTALL = YES; + SYMROOT = $SRCROOT/build; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 9820AABD1C977D11001E5793 /* Build configuration list for PBXProject "WebRTC" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 9820AAC91C977D11001E5793 /* Debug */, + 9820AACA1C977D11001E5793 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 9820AACB1C977D11001E5793 /* Build configuration list for PBXNativeTarget "WebRTC" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 9820AACC1C977D11001E5793 /* Debug */, + 9820AACD1C977D11001E5793 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 9820AABA1C977D11001E5793 /* Project object */; +} diff --git a/webrtc/build/ios/SDK/Framework/WebRTC.xcodeproj/xcshareddata/xcschemes/WebRTC.xcscheme b/webrtc/build/ios/SDK/Framework/WebRTC.xcodeproj/xcshareddata/xcschemes/WebRTC.xcscheme new file mode 100644 index 0000000000..2447c448df --- /dev/null +++ b/webrtc/build/ios/SDK/Framework/WebRTC.xcodeproj/xcshareddata/xcschemes/WebRTC.xcscheme @@ -0,0 +1,80 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/webrtc/build/ios/SDK/Framework/WebRTC/Info.plist b/webrtc/build/ios/SDK/Framework/WebRTC/Info.plist new file mode 100644 index 0000000000..d3de8eefb6 --- /dev/null +++ b/webrtc/build/ios/SDK/Framework/WebRTC/Info.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0 + CFBundleSignature + ???? + CFBundleVersion + $(CURRENT_PROJECT_VERSION) + NSPrincipalClass + + + diff --git a/webrtc/build/ios/SDK/Framework/WebRTC/WebRTC.h b/webrtc/build/ios/SDK/Framework/WebRTC/WebRTC.h new file mode 100644 index 0000000000..9f2d8454e9 --- /dev/null +++ b/webrtc/build/ios/SDK/Framework/WebRTC/WebRTC.h @@ -0,0 +1,47 @@ +/* + * 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. + */ + +#import + +//! Project version number for WebRTC. +FOUNDATION_EXPORT double WebRTCVersionNumber; + +//! Project version string for WebRTC. +FOUNDATION_EXPORT const unsigned char WebRTCVersionString[]; + +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import diff --git a/webrtc/build/ios/SDK/PodTest/PodTest.xcodeproj/project.pbxproj b/webrtc/build/ios/SDK/PodTest/PodTest.xcodeproj/project.pbxproj new file mode 100644 index 0000000000..61f4a63c8b --- /dev/null +++ b/webrtc/build/ios/SDK/PodTest/PodTest.xcodeproj/project.pbxproj @@ -0,0 +1,387 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 46; + objects = { + +/* Begin PBXBuildFile section */ + 35CCB21D484D1895C69C8136 /* libPods-PodTest.a in Frameworks */ = {isa = PBXBuildFile; fileRef = B440848658A273284BE622B2 /* libPods-PodTest.a */; }; + 980224E81CA2492B00295D57 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 980224E71CA2492B00295D57 /* main.m */; }; + 980224EB1CA2492B00295D57 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 980224EA1CA2492B00295D57 /* AppDelegate.m */; }; + 980224EE1CA2492B00295D57 /* ViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 980224ED1CA2492B00295D57 /* ViewController.m */; }; + 980224F11CA2492B00295D57 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 980224EF1CA2492B00295D57 /* Main.storyboard */; }; + 980224F31CA2492B00295D57 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 980224F21CA2492B00295D57 /* Assets.xcassets */; }; + 980224F61CA2492B00295D57 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 980224F41CA2492B00295D57 /* LaunchScreen.storyboard */; }; +/* End PBXBuildFile section */ + +/* Begin PBXFileReference section */ + 958C1C282F79C7CA1502DE3B /* Pods-PodTest.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-PodTest.debug.xcconfig"; path = "Pods/Target Support Files/Pods-PodTest/Pods-PodTest.debug.xcconfig"; sourceTree = ""; }; + 980224E31CA2492B00295D57 /* PodTest.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = PodTest.app; sourceTree = BUILT_PRODUCTS_DIR; }; + 980224E71CA2492B00295D57 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; + 980224E91CA2492B00295D57 /* AppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = ""; }; + 980224EA1CA2492B00295D57 /* AppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = ""; }; + 980224EC1CA2492B00295D57 /* ViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ViewController.h; sourceTree = ""; }; + 980224ED1CA2492B00295D57 /* ViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ViewController.m; sourceTree = ""; }; + 980224F01CA2492B00295D57 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; + 980224F21CA2492B00295D57 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; + 980224F51CA2492B00295D57 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; + 980224F71CA2492B00295D57 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + A08398FF9AFA120A294C8B4A /* Pods-PodTest.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-PodTest.release.xcconfig"; path = "Pods/Target Support Files/Pods-PodTest/Pods-PodTest.release.xcconfig"; sourceTree = ""; }; + B440848658A273284BE622B2 /* libPods-PodTest.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-PodTest.a"; sourceTree = BUILT_PRODUCTS_DIR; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 980224E01CA2492B00295D57 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 35CCB21D484D1895C69C8136 /* libPods-PodTest.a in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 2D0689FF9D90317696844B09 /* Pods */ = { + isa = PBXGroup; + children = ( + 958C1C282F79C7CA1502DE3B /* Pods-PodTest.debug.xcconfig */, + A08398FF9AFA120A294C8B4A /* Pods-PodTest.release.xcconfig */, + ); + name = Pods; + sourceTree = ""; + }; + 94F704D644F27718B3DC8356 /* Frameworks */ = { + isa = PBXGroup; + children = ( + B440848658A273284BE622B2 /* libPods-PodTest.a */, + ); + name = Frameworks; + sourceTree = ""; + }; + 980224DA1CA2492B00295D57 = { + isa = PBXGroup; + children = ( + 980224E51CA2492B00295D57 /* PodTest */, + 980224E41CA2492B00295D57 /* Products */, + 2D0689FF9D90317696844B09 /* Pods */, + 94F704D644F27718B3DC8356 /* Frameworks */, + ); + sourceTree = ""; + }; + 980224E41CA2492B00295D57 /* Products */ = { + isa = PBXGroup; + children = ( + 980224E31CA2492B00295D57 /* PodTest.app */, + ); + name = Products; + sourceTree = ""; + }; + 980224E51CA2492B00295D57 /* PodTest */ = { + isa = PBXGroup; + children = ( + 980224E91CA2492B00295D57 /* AppDelegate.h */, + 980224EA1CA2492B00295D57 /* AppDelegate.m */, + 980224EC1CA2492B00295D57 /* ViewController.h */, + 980224ED1CA2492B00295D57 /* ViewController.m */, + 980224EF1CA2492B00295D57 /* Main.storyboard */, + 980224F21CA2492B00295D57 /* Assets.xcassets */, + 980224F41CA2492B00295D57 /* LaunchScreen.storyboard */, + 980224F71CA2492B00295D57 /* Info.plist */, + 980224E61CA2492B00295D57 /* Supporting Files */, + ); + path = PodTest; + sourceTree = ""; + }; + 980224E61CA2492B00295D57 /* Supporting Files */ = { + isa = PBXGroup; + children = ( + 980224E71CA2492B00295D57 /* main.m */, + ); + name = "Supporting Files"; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 980224E21CA2492B00295D57 /* PodTest */ = { + isa = PBXNativeTarget; + buildConfigurationList = 980224FA1CA2492B00295D57 /* Build configuration list for PBXNativeTarget "PodTest" */; + buildPhases = ( + 1DF1B456F5E58A85BF7C31CB /* Check Pods Manifest.lock */, + 980224DF1CA2492B00295D57 /* Sources */, + 980224E01CA2492B00295D57 /* Frameworks */, + 980224E11CA2492B00295D57 /* Resources */, + 38335E508F0DC12B95F1FA81 /* Embed Pods Frameworks */, + AC997D7BBE631007E4045090 /* Copy Pods Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = PodTest; + productName = PodTest; + productReference = 980224E31CA2492B00295D57 /* PodTest.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 980224DB1CA2492B00295D57 /* Project object */ = { + isa = PBXProject; + attributes = { + LastUpgradeCheck = 0720; + ORGANIZATIONNAME = "Google Inc."; + TargetAttributes = { + 980224E21CA2492B00295D57 = { + CreatedOnToolsVersion = 7.2.1; + }; + }; + }; + buildConfigurationList = 980224DE1CA2492B00295D57 /* Build configuration list for PBXProject "PodTest" */; + compatibilityVersion = "Xcode 3.2"; + developmentRegion = English; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = 980224DA1CA2492B00295D57; + productRefGroup = 980224E41CA2492B00295D57 /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 980224E21CA2492B00295D57 /* PodTest */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 980224E11CA2492B00295D57 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 980224F61CA2492B00295D57 /* LaunchScreen.storyboard in Resources */, + 980224F31CA2492B00295D57 /* Assets.xcassets in Resources */, + 980224F11CA2492B00295D57 /* Main.storyboard in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXShellScriptBuildPhase section */ + 1DF1B456F5E58A85BF7C31CB /* Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "Check Pods Manifest.lock"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_ROOT}/../Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [[ $? != 0 ]] ; then\n cat << EOM\nerror: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\nEOM\n exit 1\nfi\n"; + showEnvVarsInLog = 0; + }; + 38335E508F0DC12B95F1FA81 /* Embed Pods Frameworks */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "Embed Pods Frameworks"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-PodTest/Pods-PodTest-frameworks.sh\"\n"; + showEnvVarsInLog = 0; + }; + AC997D7BBE631007E4045090 /* Copy Pods Resources */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "Copy Pods Resources"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-PodTest/Pods-PodTest-resources.sh\"\n"; + showEnvVarsInLog = 0; + }; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 980224DF1CA2492B00295D57 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 980224EE1CA2492B00295D57 /* ViewController.m in Sources */, + 980224EB1CA2492B00295D57 /* AppDelegate.m in Sources */, + 980224E81CA2492B00295D57 /* main.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXVariantGroup section */ + 980224EF1CA2492B00295D57 /* Main.storyboard */ = { + isa = PBXVariantGroup; + children = ( + 980224F01CA2492B00295D57 /* Base */, + ); + name = Main.storyboard; + sourceTree = ""; + }; + 980224F41CA2492B00295D57 /* LaunchScreen.storyboard */ = { + isa = PBXVariantGroup; + children = ( + 980224F51CA2492B00295D57 /* Base */, + ); + name = LaunchScreen.storyboard; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + 980224F81CA2492B00295D57 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 9.2; + MTL_ENABLE_DEBUG_INFO = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 980224F91CA2492B00295D57 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 9.2; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 980224FB1CA2492B00295D57 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 958C1C282F79C7CA1502DE3B /* Pods-PodTest.debug.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + ENABLE_BITCODE = NO; + INFOPLIST_FILE = PodTest/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.google.PodTest; + PRODUCT_NAME = "$(TARGET_NAME)"; + }; + name = Debug; + }; + 980224FC1CA2492B00295D57 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = A08398FF9AFA120A294C8B4A /* Pods-PodTest.release.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + ENABLE_BITCODE = NO; + INFOPLIST_FILE = PodTest/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.google.PodTest; + PRODUCT_NAME = "$(TARGET_NAME)"; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 980224DE1CA2492B00295D57 /* Build configuration list for PBXProject "PodTest" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 980224F81CA2492B00295D57 /* Debug */, + 980224F91CA2492B00295D57 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 980224FA1CA2492B00295D57 /* Build configuration list for PBXNativeTarget "PodTest" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 980224FB1CA2492B00295D57 /* Debug */, + 980224FC1CA2492B00295D57 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 980224DB1CA2492B00295D57 /* Project object */; +} diff --git a/webrtc/build/ios/SDK/PodTest/PodTest.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/webrtc/build/ios/SDK/PodTest/PodTest.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000000..de211a57b1 --- /dev/null +++ b/webrtc/build/ios/SDK/PodTest/PodTest.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/webrtc/build/ios/SDK/PodTest/PodTest/AppDelegate.h b/webrtc/build/ios/SDK/PodTest/PodTest/AppDelegate.h new file mode 100644 index 0000000000..de2cc0465d --- /dev/null +++ b/webrtc/build/ios/SDK/PodTest/PodTest/AppDelegate.h @@ -0,0 +1,17 @@ +/* + * 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. + */ + +#import + +@interface AppDelegate : UIResponder + +@property (strong, nonatomic) UIWindow *window; + +@end diff --git a/webrtc/build/ios/SDK/PodTest/PodTest/AppDelegate.m b/webrtc/build/ios/SDK/PodTest/PodTest/AppDelegate.m new file mode 100644 index 0000000000..9eaa168267 --- /dev/null +++ b/webrtc/build/ios/SDK/PodTest/PodTest/AppDelegate.m @@ -0,0 +1,26 @@ +/* + * 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. + */ + +#import "AppDelegate.h" +#import + +@implementation AppDelegate + +- (BOOL)application:(UIApplication *)application + didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { + RTCInitializeSSL(); + return YES; +} + +- (void)applicationWillTerminate:(UIApplication *)application { + RTCCleanupSSL(); +} + +@end diff --git a/webrtc/build/ios/SDK/PodTest/PodTest/Assets.xcassets/AppIcon.appiconset/Contents.json b/webrtc/build/ios/SDK/PodTest/PodTest/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 0000000000..36d2c80d88 --- /dev/null +++ b/webrtc/build/ios/SDK/PodTest/PodTest/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,68 @@ +{ + "images" : [ + { + "idiom" : "iphone", + "size" : "29x29", + "scale" : "2x" + }, + { + "idiom" : "iphone", + "size" : "29x29", + "scale" : "3x" + }, + { + "idiom" : "iphone", + "size" : "40x40", + "scale" : "2x" + }, + { + "idiom" : "iphone", + "size" : "40x40", + "scale" : "3x" + }, + { + "idiom" : "iphone", + "size" : "60x60", + "scale" : "2x" + }, + { + "idiom" : "iphone", + "size" : "60x60", + "scale" : "3x" + }, + { + "idiom" : "ipad", + "size" : "29x29", + "scale" : "1x" + }, + { + "idiom" : "ipad", + "size" : "29x29", + "scale" : "2x" + }, + { + "idiom" : "ipad", + "size" : "40x40", + "scale" : "1x" + }, + { + "idiom" : "ipad", + "size" : "40x40", + "scale" : "2x" + }, + { + "idiom" : "ipad", + "size" : "76x76", + "scale" : "1x" + }, + { + "idiom" : "ipad", + "size" : "76x76", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/webrtc/build/ios/SDK/PodTest/PodTest/Base.lproj/LaunchScreen.storyboard b/webrtc/build/ios/SDK/PodTest/PodTest/Base.lproj/LaunchScreen.storyboard new file mode 100644 index 0000000000..2e721e1833 --- /dev/null +++ b/webrtc/build/ios/SDK/PodTest/PodTest/Base.lproj/LaunchScreen.storyboard @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/webrtc/build/ios/SDK/PodTest/PodTest/Base.lproj/Main.storyboard b/webrtc/build/ios/SDK/PodTest/PodTest/Base.lproj/Main.storyboard new file mode 100644 index 0000000000..f56d2f3bb5 --- /dev/null +++ b/webrtc/build/ios/SDK/PodTest/PodTest/Base.lproj/Main.storyboard @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/webrtc/build/ios/SDK/PodTest/PodTest/Info.plist b/webrtc/build/ios/SDK/PodTest/PodTest/Info.plist new file mode 100644 index 0000000000..40c6215d90 --- /dev/null +++ b/webrtc/build/ios/SDK/PodTest/PodTest/Info.plist @@ -0,0 +1,47 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + APPL + CFBundleShortVersionString + 1.0 + CFBundleSignature + ???? + CFBundleVersion + 1 + LSRequiresIPhoneOS + + UILaunchStoryboardName + LaunchScreen + UIMainStoryboardFile + Main + UIRequiredDeviceCapabilities + + armv7 + + UISupportedInterfaceOrientations + + UIInterfaceOrientationPortrait + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + UISupportedInterfaceOrientations~ipad + + UIInterfaceOrientationPortrait + UIInterfaceOrientationPortraitUpsideDown + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + + diff --git a/webrtc/build/ios/SDK/PodTest/PodTest/ViewController.h b/webrtc/build/ios/SDK/PodTest/PodTest/ViewController.h new file mode 100644 index 0000000000..bdf8f31856 --- /dev/null +++ b/webrtc/build/ios/SDK/PodTest/PodTest/ViewController.h @@ -0,0 +1,15 @@ +/* + * 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. + */ + +#import + +@interface ViewController : UIViewController + +@end diff --git a/webrtc/build/ios/SDK/PodTest/PodTest/ViewController.m b/webrtc/build/ios/SDK/PodTest/PodTest/ViewController.m new file mode 100644 index 0000000000..39a8c76ff2 --- /dev/null +++ b/webrtc/build/ios/SDK/PodTest/PodTest/ViewController.m @@ -0,0 +1,27 @@ +/* + * 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. + */ + +#import "ViewController.h" +#import + +@interface ViewController () +@property (nonatomic, strong) RTCPeerConnectionFactory *factory; +@property (nonatomic, strong) RTCAVFoundationVideoSource *videoSource; +@end + +@implementation ViewController + +- (void)viewDidLoad { + [super viewDidLoad]; + self.factory = [[RTCPeerConnectionFactory alloc] init]; + self.videoSource = [self.factory avFoundationVideoSourceWithConstraints:nil]; +} + +@end diff --git a/webrtc/build/ios/SDK/PodTest/PodTest/main.m b/webrtc/build/ios/SDK/PodTest/PodTest/main.m new file mode 100644 index 0000000000..4169aa9fab --- /dev/null +++ b/webrtc/build/ios/SDK/PodTest/PodTest/main.m @@ -0,0 +1,21 @@ +/* + * 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. + */ + +#import +#import "AppDelegate.h" + +int main(int argc, char* argv[]) { + @autoreleasepool { + return UIApplicationMain(argc, + argv, + nil, + NSStringFromClass([AppDelegate class])); + } +} diff --git a/webrtc/build/ios/SDK/PodTest/Podfile b/webrtc/build/ios/SDK/PodTest/Podfile new file mode 100644 index 0000000000..730afcfa18 --- /dev/null +++ b/webrtc/build/ios/SDK/PodTest/Podfile @@ -0,0 +1,9 @@ +# Uncomment this line to define a global platform for your project +# platform :ios, '8.0' +# Uncomment this line if you're using Swift +# use_frameworks! + +target 'PodTest' do +pod "WebRTC", :path => "../../../../../out_ios_framework" +end + diff --git a/webrtc/build/ios/SDK/README b/webrtc/build/ios/SDK/README new file mode 100644 index 0000000000..c234617bca --- /dev/null +++ b/webrtc/build/ios/SDK/README @@ -0,0 +1,50 @@ +We want to generate a dynamic framework for a CocoaPod. Unfortunately, using gyp-xcode generation +for a framework currently presents some issues. To get around those issues, we chose to create a +project with Xcode for building the framework directly. + +The Framework directory contains the Xcode project used to build the framework. The PodTest +directory contains a project used to confirm that the built framework installs correctly with +CocoaPods. The build_ios_framework.sh script needs to be run first, then `pod install` should be run +in the same directory as the Xcode project. After installing, the PodTest.xcworkspace should be used +instead of PodTest.xcodeproj. + +USAGE +To build the framework, run the build_ios_framework.sh script. This will build static libraries for +iOS (via the build_ios_libs.sh script), collect header files and adjust import/include statements +for use inside the framework, build the framework using the Xcode project, merge multiple +architectures together, and collect the framework files (the .framework itself and the .dSYM) with +the Podspec into a common directory. + +DETAILS OF THE XCODE PROJECT +The Xcode project contains relative references to the built static libraries (from +build_ios_libs.sh), with the exception of librtc_api_objc and librtc_base_objc. The iOS source files +from webrtc/api/objc and webrtc/base/objc are also included. NOTE: This will require updating +if/when the built static libraries change. + +The flattened header files for webrtc/api/objc and webrtc/base/objc were also added to the Public +Headers of the framework target. NOTE: This will require updating as the Obj-C API changes. + +Preprocessor definitions were copied from a gyp-xcode generated project. + +RTTI was disabled due to compiler errors and based on the setting in build/common.gypi +(https://code.google.com/p/chromium/codesearch#chromium/src/build/common.gypi&q=rtti&sq=package:chromium&type=cs&l=5069). + +Bitcode is disabled for the time being. + +The minimum number of system frameworks were linked against based on build errors (currently +AVFoundation, AudioToolbox, CoreMedia, VideoToolbox). + +The Build Products Path (SYMROOT) was changed to $SRCROOT/build so the build products are in a known +location. + +The created WebRTC scheme was shared so the build_ios_framework.sh script will work on any machine +that runs it. + +DEPLOYMENT_POSTPROCESSING is set to "Yes" so debug symbols will be stripped (the iOS Default for +STRIP_INSTALLED_PRODUCT is already set to "Yes"). + +"-ObjC" is added to OTHER_LDFLAGS to ensure category methods (in particular, those from +RTCAudioSession+Configuration.mm) are included in the framework binary. + +During the build process, dSYMs will be generated for each architecture alongside each framework +bundle. These are merged together and placed alongside the final framework product. diff --git a/webrtc/build/ios/SDK/WebRTC.podspec b/webrtc/build/ios/SDK/WebRTC.podspec new file mode 100644 index 0000000000..523b840a59 --- /dev/null +++ b/webrtc/build/ios/SDK/WebRTC.podspec @@ -0,0 +1,18 @@ +Pod::Spec.new do |s| + s.name = "WebRTC" + s.version = "0.0.1" + s.summary = "WebRTC SDK for iOS" + s.description = <<-DESC + WebRTC is a free, open project that provides browsers and mobile + applications with Real-Time Communications (RTC) capabilities via simple + APIs. + DESC + s.homepage = "http://webrtc.org/" + s.license = { :type => "BSD", :file => "LICENSE" } + s.author = "Google Inc." + + s.platform = :ios, "8.0" + + s.public_header_files = "WebRTC.framework/Headers/**/*.h" + s.vendored_frameworks = "WebRTC.framework" +end diff --git a/webrtc/build/ios/build_ios_framework.sh b/webrtc/build/ios/build_ios_framework.sh new file mode 100755 index 0000000000..35ec552798 --- /dev/null +++ b/webrtc/build/ios/build_ios_framework.sh @@ -0,0 +1,85 @@ +#!/bin/bash + +# Copyright 2015 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. + +# Generates dynamic FAT framework for iOS in out_ios_framework. + +# Check for Darwin. +if [[ ! $(uname) = "Darwin" ]]; then + echo "OS X required." >&2 +fi + +# Check for iOS library build script. +SCRIPT_DIR=$(dirname $0) +WEBRTC_BASE_DIR=${SCRIPT_DIR}/../../.. +BUILD_WEBRTC_SCRIPT=${WEBRTC_BASE_DIR}/webrtc/build/ios/build_ios_libs.sh +if [[ ! -x ${BUILD_WEBRTC_SCRIPT} ]]; then + echo "Failed to find iOS library build script." >&2 + exit 1 +fi +# Check for flatten iOS headers script. +FLATTEN_HEADERS_SCRIPT=${WEBRTC_BASE_DIR}/webrtc/build/ios/flatten_ios_headers +if [[ ! -x ${FLATTEN_HEADERS_SCRIPT} ]]; then + echo "Failed to find flatten iOS headers script." >&2 + exit 1 +fi + +pushd ${WEBRTC_BASE_DIR} +LIB_BASE_DIR=out_ios_libs +FRAMEWORK_BASE_DIR=out_ios_framework + +# Build static libraries for iOS. +${BUILD_WEBRTC_SCRIPT} +if [ $? -ne 0 ]; then + echo "Failed to build iOS static libraries." >&2 + exit 1 +fi + +# Flatten the directory structure for iOS headers. +${FLATTEN_HEADERS_SCRIPT} ${LIB_BASE_DIR} ${FRAMEWORK_BASE_DIR} +if [ $? -ne 0 ]; then + echo "Failed to flatten iOS headers." >&2 + exit 1 +fi + +# Replace full paths for headers with framework paths. +SED_PATTERN=' + s/(\#import )\"webrtc\/api\/objc\/(.*)\"/\1/g; + s/(\#import )\"webrtc\/base\/objc\/(.*)\"/\1/g; + s/(\#include )\"webrtc\/base\/objc\/(.*)\"/\1/g; +' +sed -E -i '' "$SED_PATTERN" ${FRAMEWORK_BASE_DIR}/include/*.h + +SDK_DIR=webrtc/build/ios/SDK +PROJECT_DIR=${SDK_DIR}/Framework +# Build the framework. +pushd ${PROJECT_DIR} +xcodebuild -project WebRTC.xcodeproj -scheme WebRTC -configuration Release \ + build CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO +xcodebuild -project WebRTC.xcodeproj -scheme WebRTC -configuration Release \ + build -destination 'platform=iOS Simulator,name=iPhone 6' +popd + +# Copy podspec, framework, dSYM and LICENSE to FRAMEWORK_BASE_DIR +DEVICE_BUILD_DIR=${PROJECT_DIR}/build/Release-iphoneos +cp ${SDK_DIR}/WebRTC.podspec ${FRAMEWORK_BASE_DIR}/ +cp -R ${DEVICE_BUILD_DIR}/WebRTC.framework ${FRAMEWORK_BASE_DIR}/ +cp -R ${DEVICE_BUILD_DIR}/WebRTC.framework.dSYM ${FRAMEWORK_BASE_DIR}/ +cp -R webrtc/LICENSE ${FRAMEWORK_BASE_DIR}/ + +# Combine multiple architectures +SIMULATOR_BUILD_DIR=${PROJECT_DIR}/build/Release-iphonesimulator +DYLIB_PATH=WebRTC.framework/WebRTC +DWARF_PATH=WebRTC.framework.dSYM/Contents/Resources/DWARF/WebRTC +lipo ${FRAMEWORK_BASE_DIR}/${DYLIB_PATH} ${SIMULATOR_BUILD_DIR}/${DYLIB_PATH} \ + -create -output ${FRAMEWORK_BASE_DIR}/${DYLIB_PATH} +lipo ${FRAMEWORK_BASE_DIR}/${DWARF_PATH} ${SIMULATOR_BUILD_DIR}/${DWARF_PATH} \ + -create -output ${FRAMEWORK_BASE_DIR}/${DWARF_PATH} + +popd diff --git a/webrtc/build/ios/export_headers b/webrtc/build/ios/export_headers index 4786104e92..6808e67e14 100755 --- a/webrtc/build/ios/export_headers +++ b/webrtc/build/ios/export_headers @@ -25,7 +25,9 @@ HEADER_INCLUDES = [] # Individual header files that should not be exported. LEGACY_HEADER_EXCLUDES = ['talk/app/webrtc/objc/public/RTCNSGLVideoView.h'] HEADER_EXCLUDES = ['webrtc/api/objc/avfoundationvideocapturer.h', - 'webrtc/api/objc/RTCNSGLVideoView.h'] + 'webrtc/api/objc/RTCNSGLVideoView.h', + 'webrtc/base/objc/NSString+StdString.h', + 'webrtc/base/objc/RTCUIApplication.h',] def ExportHeaders(include_base_dir, use_legacy_headers): """Exports iOS header files. diff --git a/webrtc/build/ios/flatten_ios_headers b/webrtc/build/ios/flatten_ios_headers new file mode 100755 index 0000000000..67c06acc91 --- /dev/null +++ b/webrtc/build/ios/flatten_ios_headers @@ -0,0 +1,46 @@ +#!/usr/bin/python + +# 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. + +"""Script for flattening iOS header structure.""" + +import optparse +import os +import shutil +import sys + +def FlattenHeaders(lib_base_dir, framework_base_dir): + """Flattens iOS header file directory structure.""" + include_dir = 'include' + unflattened_include_dir_path = os.path.join(lib_base_dir, include_dir) + flattened_include_dir_path = os.path.join(framework_base_dir, include_dir) + + # Create output directories. + if not os.path.exists(framework_base_dir): + os.mkdir(framework_base_dir) + if not os.path.exists(flattened_include_dir_path): + os.mkdir(flattened_include_dir_path) + + for dirpath, _, filenames in os.walk(unflattened_include_dir_path): + for filename in filenames: + current_path = os.path.join(dirpath, filename) + new_path = os.path.join(flattened_include_dir_path, filename) + shutil.copy(current_path, new_path) + +def Main(): + parser = optparse.OptionParser() + _, args = parser.parse_args() + if len(args) != 2: + parser.error('Error: Exactly 2 arguments required.') + lib_base_dir = args[0] + framework_base_dir = args[1] + FlattenHeaders(lib_base_dir, framework_base_dir) + +if __name__ == '__main__': + sys.exit(Main())