bug 1171143 - Fix iOS capture build. r=jesup
authorTed Mielczarek <ted@mielczarek.org>
Sat, 28 Feb 2015 19:47:07 -0500
changeset 279539 21ce33a564ae3e502dfacf80eb43fe57bc4cec0c
parent 279538 76ee5b38759ee5facc763bbc673a443491427bca
child 279540 18389478f2fcb5a6d11e8a08c5c59546dbc3613e
push id4932
push userjlund@mozilla.com
push dateMon, 10 Aug 2015 18:23:06 +0000
treeherdermozilla-beta@6dd5a4f5f745 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersjesup
bugs1171143
milestone41.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
bug 1171143 - Fix iOS capture build. r=jesup
media/webrtc/trunk/peerconnection.gyp
media/webrtc/trunk/webrtc/modules/video_capture/video_capture.gypi
media/webrtc/trunk/webrtc/video_engine/vie_capturer.cc
media/webrtc/trunk/webrtc/video_engine/vie_input_manager.cc
--- a/media/webrtc/trunk/peerconnection.gyp
+++ b/media/webrtc/trunk/peerconnection.gyp
@@ -38,17 +38,17 @@
 	  'webrtc/modules/modules.gyp:video_capture_module_internal_impl',
           'webrtc/modules/modules.gyp:video_render_module_impl',
 #          'webrtc/system_wrappers/source/system_wrappers.gyp:system_wrappers',
 #	  'webrtc/system_wrappers/source/system_wrappers.gyp:metrics_default',
           'webrtc/video_engine/video_engine.gyp:video_engine_core',
           'webrtc/voice_engine/voice_engine.gyp:voice_engine',
         ],
         'conditions': [
-          ['OS!="android"', {
+          ['OS!="android" and OS!="ios"', {
             'dependencies': [
               'webrtc/modules/modules.gyp:desktop_capture',
             ],
           },
          ]],
       }, ],
     ],
   }, ],
--- a/media/webrtc/trunk/webrtc/modules/video_capture/video_capture.gypi
+++ b/media/webrtc/trunk/webrtc/modules/video_capture/video_capture.gypi
@@ -147,16 +147,19 @@
             'ios/rtc_video_capture_ios_objc.h',
             'ios/rtc_video_capture_ios_objc.mm',
             'ios/video_capture_ios.h',
             'ios/video_capture_ios.mm',
           ],
           'xcode_settings': {
             'CLANG_ENABLE_OBJC_ARC': 'YES',
           },
+          'cflags_mozilla': [
+            '-fobjc-arc',
+          ],
           'all_dependent_settings': {
             'xcode_settings': {
               'OTHER_LDFLAGS': [
                 '-framework AVFoundation',
                 '-framework CoreMedia',
                 '-framework CoreVideo',
                 '-framework UIKit',
               ],
--- a/media/webrtc/trunk/webrtc/video_engine/vie_capturer.cc
+++ b/media/webrtc/trunk/webrtc/video_engine/vie_capturer.cc
@@ -150,17 +150,17 @@ ViECapturer* ViECapturer::CreateViECaptu
 }
 
 int32_t ViECapturer::Init(const char* device_unique_idUTF8,
                           uint32_t device_unique_idUTF8Length) {
   assert(capture_module_ == NULL);
   CaptureDeviceType type = config_.Get<CaptureDeviceInfo>().type;
 
   if(type != CaptureDeviceType::Camera) {
-#if !defined(ANDROID)
+#if !defined(ANDROID) && !defined(WEBRTC_IOS)
     capture_module_ = DesktopCaptureImpl::Create(
       ViEModuleId(engine_id_, capture_id_), device_unique_idUTF8, type);
 #endif
   } else if (device_unique_idUTF8 == NULL) {
     capture_module_  = VideoCaptureFactory::Create(
       ViEModuleId(engine_id_, capture_id_), external_capture_module_);
   } else {
     capture_module_ = VideoCaptureFactory::Create(
--- a/media/webrtc/trunk/webrtc/video_engine/vie_input_manager.cc
+++ b/media/webrtc/trunk/webrtc/video_engine/vie_input_manager.cc
@@ -361,17 +361,17 @@ ViECapturer* ViEInputManager::ViECapture
 VideoCaptureModule::DeviceInfo* ViEInputManager::GetDeviceInfo() {
   CaptureDeviceType type = config_.Get<CaptureDeviceInfo>().type;
 
   if (capture_device_info_ == NULL) {
     switch (type) {
       case CaptureDeviceType::Screen:
       case CaptureDeviceType::Application:
       case CaptureDeviceType::Window:
-#if !defined(ANDROID)
+#if !defined(ANDROID) && !defined(WEBRTC_IOS)
         capture_device_info_ = DesktopCaptureImpl::CreateDeviceInfo(ViEModuleId(engine_id_),
                                                                     type);
 #endif
         break;
       case CaptureDeviceType::Browser:
         capture_device_info_ = BrowserDeviceInfoImpl::CreateDeviceInfo();
         break;
       case CaptureDeviceType::Camera: