From ea41205eb96ee74018930e9a98b1c7a52da32117 Mon Sep 17 00:00:00 2001 From: Jehan Monnier Date: Fri, 27 Jun 2014 17:44:49 +0200 Subject: [PATCH 01/39] fix target no gpl --- linphone.xcodeproj/project.pbxproj | 37 +++++++++++++++--------------- 1 file changed, 18 insertions(+), 19 deletions(-) diff --git a/linphone.xcodeproj/project.pbxproj b/linphone.xcodeproj/project.pbxproj index bc62406d8..d48d714a6 100755 --- a/linphone.xcodeproj/project.pbxproj +++ b/linphone.xcodeproj/project.pbxproj @@ -83,6 +83,8 @@ 2200C2DB174BB87A002E9A70 /* AssetsLibrary.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 22405EED1600B4E400B92522 /* AssetsLibrary.framework */; }; 2200C2DC174BBB24002E9A70 /* MobileCoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 226EF06B15FA256B005865C7 /* MobileCoreServices.framework */; }; 22058C71116E305000B08DDD /* linphone_icon_57.png in Resources */ = {isa = PBXBuildFile; fileRef = 22058C70116E305000B08DDD /* linphone_icon_57.png */; }; + 220784DF19509EF3001C3BDF /* libmsopenh264.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1560821E18EEF26100765332 /* libmsopenh264.a */; }; + 220784E019509EF3001C3BDF /* libwels.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1560821C18EEF23F00765332 /* libwels.a */; }; 220FAD3210765B400068D98F /* libgsm.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220FAD2910765B400068D98F /* libgsm.a */; }; 220FAD3810765B400068D98F /* libspeex.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220FAD2F10765B400068D98F /* libspeex.a */; }; 220FAD3910765B400068D98F /* libspeexdsp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220FAD3010765B400068D98F /* libspeexdsp.a */; }; @@ -139,7 +141,6 @@ 22B5EFA310CE50BD00777D97 /* AddressBookUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 22B5EFA210CE50BD00777D97 /* AddressBookUI.framework */; }; 22B5F03510CE6B2F00777D97 /* AddressBook.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 22B5F03410CE6B2F00777D97 /* AddressBook.framework */; }; 22BB1A69132FF16A005CD7AA /* UIEraseButton.m in Sources */ = {isa = PBXBuildFile; fileRef = 22BB1A68132FF16A005CD7AA /* UIEraseButton.m */; }; - 22C39D5E192354250008E1B6 /* libbzrtp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 045B5CB218D72E9A0088350C /* libbzrtp.a */; }; 22C755601317E59C007BC101 /* UIBluetoothButton.m in Sources */ = {isa = PBXBuildFile; fileRef = 22C7555F1317E59C007BC101 /* UIBluetoothButton.m */; }; 22D1B68112A3E0BE001AE361 /* libresolv.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 22D1B68012A3E0BE001AE361 /* libresolv.dylib */; }; 22D8F144147548E2008C97DB /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 29B97316FDCFA39411CA2CEA /* main.m */; }; @@ -178,10 +179,6 @@ 22D8F176147548E2008C97DB /* CFNetwork.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 228697C311AC29B800E9E0CA /* CFNetwork.framework */; }; 22D8F177147548E2008C97DB /* libortp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220FAD2C10765B400068D98F /* libortp.a */; }; 22D8F178147548E2008C97DB /* libresolv.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 22D1B68012A3E0BE001AE361 /* libresolv.dylib */; }; - 22D8F179147548E2008C97DB /* libopencore-amrwb.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 226F2ED31344B0EF00F6EF27 /* libopencore-amrwb.a */; }; - 22D8F17A147548E2008C97DB /* libopencore-amrnb.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 226F2ED41344B0EF00F6EF27 /* libopencore-amrnb.a */; }; - 22D8F17B147548E2008C97DB /* libmsamr.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 226F2ED51344B0EF00F6EF27 /* libmsamr.a */; }; - 22D8F17E147548E2008C97DB /* libSKP_SILK_SDK.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 226183AA1472527D0037138E /* libSKP_SILK_SDK.a */; }; 22D8F17F147548E2008C97DB /* libsrtp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 226183AB1472527D0037138E /* libsrtp.a */; }; 22E0A822111C44E100B04932 /* AboutViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 22E0A81C111C44E100B04932 /* AboutViewController.m */; }; 22E0A823111C44E100B04932 /* ConsoleViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 22E0A81E111C44E100B04932 /* ConsoleViewController.xib */; }; @@ -229,7 +226,6 @@ D306459F1611EC2A00BB571E /* UILoadingImageView.m in Sources */ = {isa = PBXBuildFile; fileRef = D306459D1611EC2900BB571E /* UILoadingImageView.m */; }; D30BBD1815D402A7000F93DD /* contact_ok_disabled.png in Resources */ = {isa = PBXBuildFile; fileRef = D30BBD1715D402A7000F93DD /* contact_ok_disabled.png */; }; D30BBD1915D402A7000F93DD /* contact_ok_disabled.png in Resources */ = {isa = PBXBuildFile; fileRef = D30BBD1715D402A7000F93DD /* contact_ok_disabled.png */; }; - D30BF33316A427BC00AF0026 /* libtunnel.a in Frameworks */ = {isa = PBXBuildFile; fileRef = D30BF33216A427BC00AF0026 /* libtunnel.a */; }; D30BF33416A427D300AF0026 /* libtunnel.a in Frameworks */ = {isa = PBXBuildFile; fileRef = D30BF33216A427BC00AF0026 /* libtunnel.a */; }; D3103924162C3C5100C00C18 /* linphone_splashscreen-Landscape.png in Resources */ = {isa = PBXBuildFile; fileRef = D3103920162C3C5100C00C18 /* linphone_splashscreen-Landscape.png */; }; D3103925162C3C5200C00C18 /* linphone_splashscreen-Landscape.png in Resources */ = {isa = PBXBuildFile; fileRef = D3103920162C3C5100C00C18 /* linphone_splashscreen-Landscape.png */; }; @@ -2456,8 +2452,6 @@ files = ( F01A77C718EBECEA00E287CA /* libstdc++.6.dylib in Frameworks */, F01A77C518EBEC6200E287CA /* MediaPlayer.framework in Frameworks */, - F04F1E9D1806A41800D080F2 /* libpolarssl.a in Frameworks */, - 15017E71177357C500784ACB /* libxml2.a in Frameworks */, 2200C2DC174BBB24002E9A70 /* MobileCoreServices.framework in Frameworks */, 2200C2DB174BB87A002E9A70 /* AssetsLibrary.framework in Frameworks */, D30562131671DC3E00C97967 /* libNinePatch.a in Frameworks */, @@ -2483,22 +2477,20 @@ D34BD61515C13B7B0070C209 /* libsqlite3.dylib in Frameworks */, 22D8F174147548E2008C97DB /* libilbc.a in Frameworks */, 22D8F16B147548E2008C97DB /* libgsm.a in Frameworks */, + 220784DF19509EF3001C3BDF /* libmsopenh264.a in Frameworks */, + 220784E019509EF3001C3BDF /* libwels.a in Frameworks */, D34BD61815C13D0B0070C209 /* liblinphone.a in Frameworks */, D37EE10B16032DC2003608A6 /* libmediastreamer_base.a in Frameworks */, D37EE10C16032DC2003608A6 /* libmediastreamer_voip.a in Frameworks */, - 22D8F17B147548E2008C97DB /* libmsamr.a in Frameworks */, 22D8F175147548E2008C97DB /* libmsilbc.a in Frameworks */, - 22D8F179147548E2008C97DB /* libopencore-amrwb.a in Frameworks */, - 22D8F17A147548E2008C97DB /* libopencore-amrnb.a in Frameworks */, 22D8F177147548E2008C97DB /* libortp.a in Frameworks */, - 22D8F17E147548E2008C97DB /* libSKP_SILK_SDK.a in Frameworks */, 22D8F17F147548E2008C97DB /* libsrtp.a in Frameworks */, - 22C39D5E192354250008E1B6 /* libbzrtp.a in Frameworks */, 22D8F16E147548E2008C97DB /* libspeex.a in Frameworks */, 22D8F16F147548E2008C97DB /* libspeexdsp.a in Frameworks */, - D30BF33316A427BC00AF0026 /* libtunnel.a in Frameworks */, 22D8F15B147548E2008C97DB /* libvpx.a in Frameworks */, 223CA7E816D9256E00EF1BEC /* libantlr3c.a in Frameworks */, + F04F1E9D1806A41800D080F2 /* libpolarssl.a in Frameworks */, + 15017E71177357C500784ACB /* libxml2.a in Frameworks */, 223CA7E916D9257200EF1BEC /* libbellesip.a in Frameworks */, 22AF73C31754C0D800BE8398 /* libopus.a in Frameworks */, ); @@ -5535,9 +5527,8 @@ GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = linphone_Prefix.pch; GCC_PREPROCESSOR_DEFINITIONS = ( - IN_LINPHONE, + HAVE_OPENH264, VIDEO_ENABLED, - DEBUG, ); HEADER_SEARCH_PATHS = ( "liblinphone-sdk/apple-darwin/include", @@ -5550,6 +5541,8 @@ "$(BUILT_PRODUCTS_DIR)", "$(SRCROOT)/liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins", "$(SRCROOT)/liblinphone-sdk/apple-darwin/lib", + "$(PROJECT_DIR)/liblinphone-sdk/apple-darwin/lib", + "$(PROJECT_DIR)/liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins", ); LINK_WITH_STANDARD_LIBRARIES = YES; ORDER_FILE = ""; @@ -5573,7 +5566,7 @@ GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = linphone_Prefix.pch; GCC_PREPROCESSOR_DEFINITIONS = ( - IN_LINPHONE, + HAVE_OPENH264, VIDEO_ENABLED, ); HEADER_SEARCH_PATHS = ( @@ -5587,6 +5580,8 @@ "$(BUILT_PRODUCTS_DIR)", "$(SRCROOT)/liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins", "$(SRCROOT)/liblinphone-sdk/apple-darwin/lib", + "$(PROJECT_DIR)/liblinphone-sdk/apple-darwin/lib", + "$(PROJECT_DIR)/liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins", ); LINK_WITH_STANDARD_LIBRARIES = YES; ORDER_FILE = ""; @@ -5611,7 +5606,7 @@ GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = linphone_Prefix.pch; GCC_PREPROCESSOR_DEFINITIONS = ( - IN_LINPHONE, + HAVE_OPENH264, VIDEO_ENABLED, ); HEADER_SEARCH_PATHS = ( @@ -5625,6 +5620,8 @@ "$(BUILT_PRODUCTS_DIR)", "$(SRCROOT)/liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins", "$(SRCROOT)/liblinphone-sdk/apple-darwin/lib", + "$(PROJECT_DIR)/liblinphone-sdk/apple-darwin/lib", + "$(PROJECT_DIR)/liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins", ); LINK_WITH_STANDARD_LIBRARIES = YES; ORDER_FILE = ""; @@ -5649,7 +5646,7 @@ GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = linphone_Prefix.pch; GCC_PREPROCESSOR_DEFINITIONS = ( - IN_LINPHONE, + HAVE_OPENH264, VIDEO_ENABLED, ); HEADER_SEARCH_PATHS = ( @@ -5663,6 +5660,8 @@ "$(BUILT_PRODUCTS_DIR)", "$(SRCROOT)/liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins", "$(SRCROOT)/liblinphone-sdk/apple-darwin/lib", + "$(PROJECT_DIR)/liblinphone-sdk/apple-darwin/lib", + "$(PROJECT_DIR)/liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins", ); LINK_WITH_STANDARD_LIBRARIES = YES; ORDER_FILE = ""; From 7b81207fc8e7460d3dd8b2e5971000a12fd48d83 Mon Sep 17 00:00:00 2001 From: Jehan Monnier Date: Fri, 27 Jun 2014 17:44:49 +0200 Subject: [PATCH 02/39] fix target no gpl --- linphone.xcodeproj/project.pbxproj | 35 ++++++++++-------------------- 1 file changed, 11 insertions(+), 24 deletions(-) diff --git a/linphone.xcodeproj/project.pbxproj b/linphone.xcodeproj/project.pbxproj index 9a045321d..9bb11281d 100755 --- a/linphone.xcodeproj/project.pbxproj +++ b/linphone.xcodeproj/project.pbxproj @@ -82,6 +82,8 @@ 2200C2DB174BB87A002E9A70 /* AssetsLibrary.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 22405EED1600B4E400B92522 /* AssetsLibrary.framework */; }; 2200C2DC174BBB24002E9A70 /* MobileCoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 226EF06B15FA256B005865C7 /* MobileCoreServices.framework */; }; 22058C71116E305000B08DDD /* linphone_icon_57.png in Resources */ = {isa = PBXBuildFile; fileRef = 22058C70116E305000B08DDD /* linphone_icon_57.png */; }; + 220784DF19509EF3001C3BDF /* libmsopenh264.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1560821E18EEF26100765332 /* libmsopenh264.a */; }; + 220784E019509EF3001C3BDF /* libwels.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1560821C18EEF23F00765332 /* libwels.a */; }; 220FAD3210765B400068D98F /* libgsm.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220FAD2910765B400068D98F /* libgsm.a */; }; 220FAD3810765B400068D98F /* libspeex.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220FAD2F10765B400068D98F /* libspeex.a */; }; 220FAD3910765B400068D98F /* libspeexdsp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220FAD3010765B400068D98F /* libspeexdsp.a */; }; @@ -140,7 +142,6 @@ 22B5EFA310CE50BD00777D97 /* AddressBookUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 22B5EFA210CE50BD00777D97 /* AddressBookUI.framework */; }; 22B5F03510CE6B2F00777D97 /* AddressBook.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 22B5F03410CE6B2F00777D97 /* AddressBook.framework */; }; 22BB1A69132FF16A005CD7AA /* UIEraseButton.m in Sources */ = {isa = PBXBuildFile; fileRef = 22BB1A68132FF16A005CD7AA /* UIEraseButton.m */; }; - 22C39D5E192354250008E1B6 /* libbzrtp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 045B5CB218D72E9A0088350C /* libbzrtp.a */; }; 22C755601317E59C007BC101 /* UIBluetoothButton.m in Sources */ = {isa = PBXBuildFile; fileRef = 22C7555F1317E59C007BC101 /* UIBluetoothButton.m */; }; 22D1B68112A3E0BE001AE361 /* libresolv.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 22D1B68012A3E0BE001AE361 /* libresolv.dylib */; }; 22D8F144147548E2008C97DB /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 29B97316FDCFA39411CA2CEA /* main.m */; }; @@ -179,10 +180,6 @@ 22D8F176147548E2008C97DB /* CFNetwork.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 228697C311AC29B800E9E0CA /* CFNetwork.framework */; }; 22D8F177147548E2008C97DB /* libortp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220FAD2C10765B400068D98F /* libortp.a */; }; 22D8F178147548E2008C97DB /* libresolv.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 22D1B68012A3E0BE001AE361 /* libresolv.dylib */; }; - 22D8F179147548E2008C97DB /* libopencore-amrwb.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 226F2ED31344B0EF00F6EF27 /* libopencore-amrwb.a */; }; - 22D8F17A147548E2008C97DB /* libopencore-amrnb.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 226F2ED41344B0EF00F6EF27 /* libopencore-amrnb.a */; }; - 22D8F17B147548E2008C97DB /* libmsamr.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 226F2ED51344B0EF00F6EF27 /* libmsamr.a */; }; - 22D8F17E147548E2008C97DB /* libSKP_SILK_SDK.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 226183AA1472527D0037138E /* libSKP_SILK_SDK.a */; }; 22D8F17F147548E2008C97DB /* libsrtp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 226183AB1472527D0037138E /* libsrtp.a */; }; 22E0A822111C44E100B04932 /* AboutViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 22E0A81C111C44E100B04932 /* AboutViewController.m */; }; 22E0A823111C44E100B04932 /* ConsoleViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 22E0A81E111C44E100B04932 /* ConsoleViewController.xib */; }; @@ -230,7 +227,6 @@ D306459F1611EC2A00BB571E /* UILoadingImageView.m in Sources */ = {isa = PBXBuildFile; fileRef = D306459D1611EC2900BB571E /* UILoadingImageView.m */; }; D30BBD1815D402A7000F93DD /* contact_ok_disabled.png in Resources */ = {isa = PBXBuildFile; fileRef = D30BBD1715D402A7000F93DD /* contact_ok_disabled.png */; }; D30BBD1915D402A7000F93DD /* contact_ok_disabled.png in Resources */ = {isa = PBXBuildFile; fileRef = D30BBD1715D402A7000F93DD /* contact_ok_disabled.png */; }; - D30BF33316A427BC00AF0026 /* libtunnel.a in Frameworks */ = {isa = PBXBuildFile; fileRef = D30BF33216A427BC00AF0026 /* libtunnel.a */; }; D30BF33416A427D300AF0026 /* libtunnel.a in Frameworks */ = {isa = PBXBuildFile; fileRef = D30BF33216A427BC00AF0026 /* libtunnel.a */; }; D3103924162C3C5100C00C18 /* linphone_splashscreen-Landscape.png in Resources */ = {isa = PBXBuildFile; fileRef = D3103920162C3C5100C00C18 /* linphone_splashscreen-Landscape.png */; }; D3103925162C3C5200C00C18 /* linphone_splashscreen-Landscape.png in Resources */ = {isa = PBXBuildFile; fileRef = D3103920162C3C5100C00C18 /* linphone_splashscreen-Landscape.png */; }; @@ -2457,8 +2453,6 @@ files = ( F01A77C718EBECEA00E287CA /* libstdc++.6.dylib in Frameworks */, F01A77C518EBEC6200E287CA /* MediaPlayer.framework in Frameworks */, - F04F1E9D1806A41800D080F2 /* libpolarssl.a in Frameworks */, - 15017E71177357C500784ACB /* libxml2.a in Frameworks */, 2200C2DC174BBB24002E9A70 /* MobileCoreServices.framework in Frameworks */, 2200C2DB174BB87A002E9A70 /* AssetsLibrary.framework in Frameworks */, D30562131671DC3E00C97967 /* libNinePatch.a in Frameworks */, @@ -2484,23 +2478,21 @@ D34BD61515C13B7B0070C209 /* libsqlite3.dylib in Frameworks */, 22D8F174147548E2008C97DB /* libilbc.a in Frameworks */, 22D8F16B147548E2008C97DB /* libgsm.a in Frameworks */, + 220784DF19509EF3001C3BDF /* libmsopenh264.a in Frameworks */, + 220784E019509EF3001C3BDF /* libwels.a in Frameworks */, D34BD61815C13D0B0070C209 /* liblinphone.a in Frameworks */, D37EE10B16032DC2003608A6 /* libmediastreamer_base.a in Frameworks */, D37EE10C16032DC2003608A6 /* libmediastreamer_voip.a in Frameworks */, - 22D8F17B147548E2008C97DB /* libmsamr.a in Frameworks */, 22D8F175147548E2008C97DB /* libmsilbc.a in Frameworks */, - 22D8F179147548E2008C97DB /* libopencore-amrwb.a in Frameworks */, - 22D8F17A147548E2008C97DB /* libopencore-amrnb.a in Frameworks */, 22D8F177147548E2008C97DB /* libortp.a in Frameworks */, - 22D8F17E147548E2008C97DB /* libSKP_SILK_SDK.a in Frameworks */, 22D8F17F147548E2008C97DB /* libsrtp.a in Frameworks */, - 22C39D5E192354250008E1B6 /* libbzrtp.a in Frameworks */, 22D8F16E147548E2008C97DB /* libspeex.a in Frameworks */, 22509043196BD902007863F6 /* libopenh264.a in Frameworks */, 22D8F16F147548E2008C97DB /* libspeexdsp.a in Frameworks */, - D30BF33316A427BC00AF0026 /* libtunnel.a in Frameworks */, 22D8F15B147548E2008C97DB /* libvpx.a in Frameworks */, 223CA7E816D9256E00EF1BEC /* libantlr3c.a in Frameworks */, + F04F1E9D1806A41800D080F2 /* libpolarssl.a in Frameworks */, + 15017E71177357C500784ACB /* libxml2.a in Frameworks */, 223CA7E916D9257200EF1BEC /* libbellesip.a in Frameworks */, 22AF73C31754C0D800BE8398 /* libopus.a in Frameworks */, ); @@ -5539,9 +5531,8 @@ GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = linphone_Prefix.pch; GCC_PREPROCESSOR_DEFINITIONS = ( - IN_LINPHONE, + HAVE_OPENH264, VIDEO_ENABLED, - DEBUG, ); HEADER_SEARCH_PATHS = ( "liblinphone-sdk/apple-darwin/include", @@ -5552,9 +5543,8 @@ IPHONEOS_DEPLOYMENT_TARGET = 6.0; LIBRARY_SEARCH_PATHS = ( "$(BUILT_PRODUCTS_DIR)", - "$(SRCROOT)/liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins", - "$(SRCROOT)/liblinphone-sdk/apple-darwin/lib", "$(PROJECT_DIR)/liblinphone-sdk/apple-darwin/lib", + "$(PROJECT_DIR)/liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins", ); LINK_WITH_STANDARD_LIBRARIES = YES; ORDER_FILE = ""; @@ -5580,7 +5570,7 @@ GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = linphone_Prefix.pch; GCC_PREPROCESSOR_DEFINITIONS = ( - IN_LINPHONE, + HAVE_OPENH264, VIDEO_ENABLED, ); HEADER_SEARCH_PATHS = ( @@ -5594,7 +5584,6 @@ "$(BUILT_PRODUCTS_DIR)", "$(SRCROOT)/liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins", "$(SRCROOT)/liblinphone-sdk/apple-darwin/lib", - "$(PROJECT_DIR)/liblinphone-sdk/apple-darwin/lib", ); LINK_WITH_STANDARD_LIBRARIES = YES; ORDER_FILE = ""; @@ -5621,7 +5610,7 @@ GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = linphone_Prefix.pch; GCC_PREPROCESSOR_DEFINITIONS = ( - IN_LINPHONE, + HAVE_OPENH264, VIDEO_ENABLED, ); HEADER_SEARCH_PATHS = ( @@ -5635,7 +5624,6 @@ "$(BUILT_PRODUCTS_DIR)", "$(SRCROOT)/liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins", "$(SRCROOT)/liblinphone-sdk/apple-darwin/lib", - "$(PROJECT_DIR)/liblinphone-sdk/apple-darwin/lib", ); LINK_WITH_STANDARD_LIBRARIES = YES; ORDER_FILE = ""; @@ -5662,7 +5650,7 @@ GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = linphone_Prefix.pch; GCC_PREPROCESSOR_DEFINITIONS = ( - IN_LINPHONE, + HAVE_OPENH264, VIDEO_ENABLED, ); HEADER_SEARCH_PATHS = ( @@ -5676,7 +5664,6 @@ "$(BUILT_PRODUCTS_DIR)", "$(SRCROOT)/liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins", "$(SRCROOT)/liblinphone-sdk/apple-darwin/lib", - "$(PROJECT_DIR)/liblinphone-sdk/apple-darwin/lib", ); LINK_WITH_STANDARD_LIBRARIES = YES; ORDER_FILE = ""; From 6f86da2e8e55fe8b1a687656ce0e5a44bd7b6dd9 Mon Sep 17 00:00:00 2001 From: Guillaume BIENKOWSKI Date: Fri, 11 Jul 2014 10:30:26 +0200 Subject: [PATCH 03/39] Invert direction from old messages, because iOS was storing direction in the opposite manner than Linphone core --- Classes/LinphoneManager.m | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/Classes/LinphoneManager.m b/Classes/LinphoneManager.m index a02a9774d..fc931d0c8 100644 --- a/Classes/LinphoneManager.m +++ b/Classes/LinphoneManager.m @@ -371,6 +371,14 @@ static int check_should_migrate_images(void* data ,int argc,char** argv,char** c goto exit_dbmigration; } + // invert direction of old messages, because iOS was storing the direction flag incorrectly + const char* invert_direction = "UPDATE history SET direction = NOT direction"; + if( sqlite3_exec(newDb, invert_direction, NULL, NULL, &errMsg) != SQLITE_OK){ + [LinphoneLogger log: LinphoneLoggerError format:@"Inverting direction failed, error[%s]", errMsg]; + sqlite3_free(errMsg); + goto exit_dbmigration; + } + // replace empty from: or to: by the current identity. if( default_proxy ){ identity = linphone_proxy_config_get_identity(default_proxy); From 845906bd55940e4495ad0500b7e82e7887766065 Mon Sep 17 00:00:00 2001 From: Guillaume BIENKOWSKI Date: Wed, 16 Jul 2014 16:43:36 +0200 Subject: [PATCH 04/39] Fix video policy when auto-accept video is disabled --- Classes/LinphoneManager.m | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/Classes/LinphoneManager.m b/Classes/LinphoneManager.m index fc931d0c8..17f937391 100644 --- a/Classes/LinphoneManager.m +++ b/Classes/LinphoneManager.m @@ -1624,6 +1624,13 @@ static void audioRouteChangeListenerCallback ( } linphone_call_params_enable_low_bandwidth(lcallParams, low_bandwidth); } + + // workaround for video policy not correctly updated for automatic accept + BOOL video = linphone_call_params_video_enabled(lcallParams); + const LinphoneVideoPolicy* policy = linphone_core_get_video_policy(theLinphoneCore); + video &= policy->automatically_accept; + linphone_call_params_enable_video(lcallParams, video); + linphone_core_accept_call_with_params(theLinphoneCore,call, lcallParams); } From 2e917f79903edb2400a2db9b226f2b577fae0aba Mon Sep 17 00:00:00 2001 From: Guillaume BIENKOWSKI Date: Thu, 17 Jul 2014 11:59:44 +0200 Subject: [PATCH 05/39] update linphone --- submodules/linphone | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/submodules/linphone b/submodules/linphone index 7f4afe295..e73d6676d 160000 --- a/submodules/linphone +++ b/submodules/linphone @@ -1 +1 @@ -Subproject commit 7f4afe2954c1f92df5ca57e2a14e44e152e2b244 +Subproject commit e73d6676d104da9692564e2e0df3dac507d36724 From aa2753dfaa4703e983167bee3bb0e53f9ba57b7c Mon Sep 17 00:00:00 2001 From: Guillaume BIENKOWSKI Date: Thu, 17 Jul 2014 12:00:19 +0200 Subject: [PATCH 06/39] Update belle sip --- submodules/belle-sip | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/submodules/belle-sip b/submodules/belle-sip index 46c40fd48..1f566bdc7 160000 --- a/submodules/belle-sip +++ b/submodules/belle-sip @@ -1 +1 @@ -Subproject commit 46c40fd4809dd8d46a6568fa1245150711ec27fd +Subproject commit 1f566bdc7168cda0172c3cbb7d67fb4c246323d1 From 9d7904a7c281e1424e992aab3f12064222262942 Mon Sep 17 00:00:00 2001 From: Ghislain MARY Date: Fri, 18 Jul 2014 14:25:31 +0200 Subject: [PATCH 07/39] Update msopenh264 submodule. --- submodules/msopenh264 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/submodules/msopenh264 b/submodules/msopenh264 index ae2270dca..f09c27d9e 160000 --- a/submodules/msopenh264 +++ b/submodules/msopenh264 @@ -1 +1 @@ -Subproject commit ae2270dcaaabb0cc5980783fc5fb6ac5365ee03f +Subproject commit f09c27d9ef5ab76a5e0af7d33b9c12dcf43e9602 From 83af89ecc736332767f4304da4987bedd91004f8 Mon Sep 17 00:00:00 2001 From: Guillaume BIENKOWSKI Date: Fri, 18 Jul 2014 16:30:01 +0200 Subject: [PATCH 08/39] Fix VP8 crash when packet loss occurs without AVPF --- submodules/build/builders.d/libvpx.mk | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/submodules/build/builders.d/libvpx.mk b/submodules/build/builders.d/libvpx.mk index 7ffd06358..ca8180bd9 100644 --- a/submodules/build/builders.d/libvpx.mk +++ b/submodules/build/builders.d/libvpx.mk @@ -2,9 +2,9 @@ libvpx_dir?=externals/libvpx libvpx_configure_options=\ --enable-static --disable-shared \ - --enable-error-concealment --disable-examples \ + --disable-examples \ --enable-realtime-only --enable-spatial-resampling \ - --enable-vp8 --enable-multithread --disable-vp9 + --enable-vp8 --enable-multithread --disable-vp9 take_binary= From 85dbb3bba613b32ef36d11d0d982513f2728c26c Mon Sep 17 00:00:00 2001 From: Guillaume BIENKOWSKI Date: Fri, 18 Jul 2014 16:30:55 +0200 Subject: [PATCH 09/39] Fix mediastream project to compile with current MS2 --- .../liblinphone.xcodeproj/project.pbxproj | 65 +++++++++++++++---- 1 file changed, 53 insertions(+), 12 deletions(-) diff --git a/submodules/liblinphone.xcodeproj/project.pbxproj b/submodules/liblinphone.xcodeproj/project.pbxproj index a557e7a66..2f6350be8 100644 --- a/submodules/liblinphone.xcodeproj/project.pbxproj +++ b/submodules/liblinphone.xcodeproj/project.pbxproj @@ -501,7 +501,6 @@ 22C8D0A21769F8FF00DAFB4E /* genericplc.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA7F916D9268D00EF1BEC /* genericplc.c */; }; 22C8D0A31769F8FF00DAFB4E /* gsm.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA7FA16D9268D00EF1BEC /* gsm.c */; }; 22C8D0A41769F8FF00DAFB4E /* l16.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA7FB16D9268D00EF1BEC /* l16.c */; }; - 22C8D0A51769F8FF00DAFB4E /* msconf.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA7FD16D9268D00EF1BEC /* msconf.c */; }; 22C8D0A61769F8FF00DAFB4E /* msfileplayer.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA7FE16D9268D00EF1BEC /* msfileplayer.c */; }; 22C8D0A71769F8FF00DAFB4E /* msfilerec.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA7FF16D9268D00EF1BEC /* msfilerec.c */; }; 22C8D0A81769F8FF00DAFB4E /* msg722.c in Sources */ = {isa = PBXBuildFile; fileRef = 223CA80016D9268D00EF1BEC /* msg722.c */; }; @@ -572,6 +571,15 @@ 70E542F113E147CE002BA2C0 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 70E542F013E147CE002BA2C0 /* QuartzCore.framework */; }; AA747D9F0F9514B9006C5449 /* liblinphone_Prefix.pch in Headers */ = {isa = PBXBuildFile; fileRef = AA747D9E0F9514B9006C5449 /* liblinphone_Prefix.pch */; }; AACBBE4A0F95108600F1A2B1 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AACBBE490F95108600F1A2B1 /* Foundation.framework */; }; + F02538E91979481D002C30F3 /* vp8rtpfmt.c in Sources */ = {isa = PBXBuildFile; fileRef = F02538E71979481D002C30F3 /* vp8rtpfmt.c */; }; + F02538EA1979481D002C30F3 /* vp8rtpfmt.h in Headers */ = {isa = PBXBuildFile; fileRef = F02538E81979481D002C30F3 /* vp8rtpfmt.h */; }; + F02538ED19794847002C30F3 /* g711.c in Sources */ = {isa = PBXBuildFile; fileRef = F02538EB19794847002C30F3 /* g711.c */; }; + F02538EE19794847002C30F3 /* g711.h in Headers */ = {isa = PBXBuildFile; fileRef = F02538EC19794847002C30F3 /* g711.h */; }; + F02538F11979487A002C30F3 /* msfactory.c in Sources */ = {isa = PBXBuildFile; fileRef = F02538EF1979486B002C30F3 /* msfactory.c */; }; + F02538F6197948C5002C30F3 /* rtcp_fb.c in Sources */ = {isa = PBXBuildFile; fileRef = F02538F2197948BE002C30F3 /* rtcp_fb.c */; }; + F02538F7197948C9002C30F3 /* rtcp_xr.c in Sources */ = {isa = PBXBuildFile; fileRef = F02538F3197948BE002C30F3 /* rtcp_xr.c */; }; + F02538F919794908002C30F3 /* flowcontrol.c in Sources */ = {isa = PBXBuildFile; fileRef = F02538F819794908002C30F3 /* flowcontrol.c */; }; + F02538FB1979491B002C30F3 /* videostarter.c in Sources */ = {isa = PBXBuildFile; fileRef = F02538FA1979491B002C30F3 /* videostarter.c */; }; /* End PBXBuildFile section */ /* Begin PBXBuildRule section */ @@ -802,7 +810,6 @@ 223CA7F916D9268D00EF1BEC /* genericplc.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = genericplc.c; sourceTree = ""; }; 223CA7FA16D9268D00EF1BEC /* gsm.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = gsm.c; sourceTree = ""; }; 223CA7FB16D9268D00EF1BEC /* l16.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = l16.c; sourceTree = ""; }; - 223CA7FD16D9268D00EF1BEC /* msconf.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = msconf.c; sourceTree = ""; }; 223CA7FE16D9268D00EF1BEC /* msfileplayer.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = msfileplayer.c; sourceTree = ""; }; 223CA7FF16D9268D00EF1BEC /* msfilerec.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = msfilerec.c; sourceTree = ""; }; 223CA80016D9268D00EF1BEC /* msg722.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = msg722.c; sourceTree = ""; }; @@ -934,6 +941,15 @@ AA747D9E0F9514B9006C5449 /* liblinphone_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = liblinphone_Prefix.pch; sourceTree = SOURCE_ROOT; }; AACBBE490F95108600F1A2B1 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; D2AAC07E0554694100DB518D /* liblinphone.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = liblinphone.a; sourceTree = BUILT_PRODUCTS_DIR; }; + F02538E71979481D002C30F3 /* vp8rtpfmt.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = vp8rtpfmt.c; sourceTree = ""; }; + F02538E81979481D002C30F3 /* vp8rtpfmt.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = vp8rtpfmt.h; sourceTree = ""; }; + F02538EB19794847002C30F3 /* g711.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = g711.c; sourceTree = ""; }; + F02538EC19794847002C30F3 /* g711.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = g711.h; sourceTree = ""; }; + F02538EF1979486B002C30F3 /* msfactory.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = msfactory.c; sourceTree = ""; }; + F02538F2197948BE002C30F3 /* rtcp_fb.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = rtcp_fb.c; sourceTree = ""; }; + F02538F3197948BE002C30F3 /* rtcp_xr.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = rtcp_xr.c; sourceTree = ""; }; + F02538F819794908002C30F3 /* flowcontrol.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = flowcontrol.c; sourceTree = ""; }; + F02538FA1979491B002C30F3 /* videostarter.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = videostarter.c; sourceTree = ""; }; F4D9F23D145710540035B0D0 /* netsim.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = netsim.c; sourceTree = ""; }; F4D9F23E145710540035B0D0 /* ortp_srtp.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ortp_srtp.c; sourceTree = ""; }; /* End PBXFileReference section */ @@ -1254,28 +1270,29 @@ 222CA6B611F6CF9F00621220 /* src */ = { isa = PBXGroup; children = ( - 22405EE31600671D00B92522 /* logging.c */, - 22405EE41600671D00B92522 /* rtpprofile.c */, - F4D9F23D145710540035B0D0 /* netsim.c */, - F4D9F23E145710540035B0D0 /* ortp_srtp.c */, - 7014533D13FA841E00A01D86 /* zrtp.c */, 222CA6B711F6CF9F00621220 /* .gitignore */, 222CA6B811F6CF9F00621220 /* avprofile.c */, 222CA6B911F6CF9F00621220 /* b64.c */, 222CA6BB11F6CF9F00621220 /* event.c */, 222CA6BC11F6CF9F00621220 /* jitterctl.c */, 222CA6BD11F6CF9F00621220 /* jitterctl.h */, + 22405EE31600671D00B92522 /* logging.c */, 222CA6BE11F6CF9F00621220 /* Makefile.am */, 222CA6BF11F6CF9F00621220 /* Makefile.in */, 222CA6C011F6CF9F00621220 /* master */, + F4D9F23D145710540035B0D0 /* netsim.c */, 222CA6C111F6CF9F00621220 /* ortp-config-win32.h */, 222CA6C211F6CF9F00621220 /* ortp.c */, + F4D9F23E145710540035B0D0 /* ortp_srtp.c */, 222CA6C311F6CF9F00621220 /* payloadtype.c */, 222CA6C411F6CF9F00621220 /* port.c */, 222CA6C511F6CF9F00621220 /* posixtimer.c */, 222CA6C611F6CF9F00621220 /* rtcp.c */, + F02538F2197948BE002C30F3 /* rtcp_fb.c */, + F02538F3197948BE002C30F3 /* rtcp_xr.c */, 222CA6C711F6CF9F00621220 /* rtcpparse.c */, 222CA6C811F6CF9F00621220 /* rtpparse.c */, + 22405EE41600671D00B92522 /* rtpprofile.c */, 222CA6C911F6CF9F00621220 /* rtpsession.c */, 222CA6CA11F6CF9F00621220 /* rtpsession_inet.c */, 222CA6CB11F6CF9F00621220 /* rtpsession_priv.h */, @@ -1292,6 +1309,7 @@ 222CA6D711F6CF9F00621220 /* telephonyevents.c */, 222CA6F211F6CF9F00621220 /* utils.c */, 222CA6F311F6CF9F00621220 /* utils.h */, + 7014533D13FA841E00A01D86 /* zrtp.c */, ); path = src; sourceTree = ""; @@ -1356,12 +1374,14 @@ 223CA7F216D9268D00EF1BEC /* aqsnd.c */, 223CA7F416D9268D00EF1BEC /* audiomixer.c */, 223CA7F516D9268D00EF1BEC /* chanadapt.c */, + F02538EB19794847002C30F3 /* g711.c */, + F02538EC19794847002C30F3 /* g711.h */, 223CA7F616D9268D00EF1BEC /* dtmfgen.c */, + F02538F819794908002C30F3 /* flowcontrol.c */, 223CA7F716D9268D00EF1BEC /* equalizer.c */, 223CA7F916D9268D00EF1BEC /* genericplc.c */, 223CA7FA16D9268D00EF1BEC /* gsm.c */, 223CA7FB16D9268D00EF1BEC /* l16.c */, - 223CA7FD16D9268D00EF1BEC /* msconf.c */, 223CA7FE16D9268D00EF1BEC /* msfileplayer.c */, 223CA7FF16D9268D00EF1BEC /* msfilerec.c */, 223CA80016D9268D00EF1BEC /* msg722.c */, @@ -1379,6 +1399,7 @@ 223CA81116D9268D00EF1BEC /* base */ = { isa = PBXGroup; children = ( + F02538EF1979486B002C30F3 /* msfactory.c */, 223CA81216D9268D00EF1BEC /* eventqueue.c */, 223CA81316D9268D00EF1BEC /* mscommon.c */, 223CA81416D9268D00EF1BEC /* msfilter.c */, @@ -1449,6 +1470,8 @@ 223CA84E16D9268D00EF1BEC /* voip */ = { isa = PBXGroup; children = ( + F02538E71979481D002C30F3 /* vp8rtpfmt.c */, + F02538E81979481D002C30F3 /* vp8rtpfmt.h */, 223CA84F16D9268D00EF1BEC /* audioconference.c */, 223CA85016D9268D00EF1BEC /* audiostream.c */, 223CA85116D9268D00EF1BEC /* bitratecontrol.c */, @@ -1459,6 +1482,7 @@ 223CA85416D9268D00EF1BEC /* layouts.c */, 223CA85516D9268D00EF1BEC /* layouts.h */, 223CA85616D9268D00EF1BEC /* mediastream.c */, + F02538FA1979491B002C30F3 /* videostarter.c */, 223CA85716D9268D00EF1BEC /* msvideo.c */, 223CA85816D9268D00EF1BEC /* msvideo_neon.c */, 223CA85916D9268D00EF1BEC /* msvideo_neon.h */, @@ -1822,6 +1846,7 @@ 22C8D06F1769F8FF00DAFB4E /* telephonyevents.h in Headers */, 22C8D0701769F8FF00DAFB4E /* jitterctl.h in Headers */, 22C8D0711769F8FF00DAFB4E /* ortp-config-win32.h in Headers */, + F02538EE19794847002C30F3 /* g711.h in Headers */, 22C8D0721769F8FF00DAFB4E /* rtpsession_priv.h in Headers */, 22C8D0731769F8FF00DAFB4E /* rtptimer.h in Headers */, 22C8D0741769F8FF00DAFB4E /* scheduler.h in Headers */, @@ -1843,6 +1868,7 @@ 22C8D0851769F8FF00DAFB4E /* basedescs.h in Headers */, 22C8D0861769F8FF00DAFB4E /* voipdescs.h in Headers */, 22C8D0871769F8FF00DAFB4E /* waveheader.h in Headers */, + F02538EA1979481D002C30F3 /* vp8rtpfmt.h in Headers */, 22C8D0881769F8FF00DAFB4E /* _kiss_fft_guts.h in Headers */, 22C8D0891769F8FF00DAFB4E /* ffmpeg-priv.h in Headers */, 22C8D08A1769F8FF00DAFB4E /* g711common.h in Headers */, @@ -2139,6 +2165,7 @@ 223CA88816D9268D00EF1BEC /* eventqueue.c in Sources */, 223CA88916D9268D00EF1BEC /* mscommon.c in Sources */, 223CA88A16D9268D00EF1BEC /* msfilter.c in Sources */, + F02538F11979487A002C30F3 /* msfactory.c in Sources */, 223CA88B16D9268D00EF1BEC /* msqueue.c in Sources */, 223CA88C16D9268D00EF1BEC /* mssndcard.c in Sources */, 223CA88D16D9268D00EF1BEC /* msticker.c in Sources */, @@ -2152,11 +2179,13 @@ buildActionMask = 2147483647; files = ( 225D65731521C009008B2E81 /* avprofile.c in Sources */, + F02538F7197948C9002C30F3 /* rtcp_xr.c in Sources */, 225D65741521C009008B2E81 /* b64.c in Sources */, 225D65751521C009008B2E81 /* event.c in Sources */, 225D65761521C009008B2E81 /* jitterctl.c in Sources */, 225D65771521C009008B2E81 /* ortp.c in Sources */, 225D65781521C009008B2E81 /* payloadtype.c in Sources */, + F02538F6197948C5002C30F3 /* rtcp_fb.c in Sources */, 225D65791521C009008B2E81 /* port.c in Sources */, 225D657A1521C009008B2E81 /* posixtimer.c in Sources */, 225D657B1521C009008B2E81 /* rtcp.c in Sources */, @@ -2188,6 +2217,7 @@ 22C8D0991769F8FF00DAFB4E /* filter-template.c in Sources */, 22C8D09A1769F8FF00DAFB4E /* yuv2rgb.fs in Sources */, 22C8D09B1769F8FF00DAFB4E /* yuv2rgb.vs in Sources */, + F02538F919794908002C30F3 /* flowcontrol.c in Sources */, 22C8D09C1769F8FF00DAFB4E /* alaw.c in Sources */, 22C8D09D1769F8FF00DAFB4E /* aqsnd.c in Sources */, 22C8D09E1769F8FF00DAFB4E /* audiomixer.c in Sources */, @@ -2197,7 +2227,6 @@ 22C8D0A21769F8FF00DAFB4E /* genericplc.c in Sources */, 22C8D0A31769F8FF00DAFB4E /* gsm.c in Sources */, 22C8D0A41769F8FF00DAFB4E /* l16.c in Sources */, - 22C8D0A51769F8FF00DAFB4E /* msconf.c in Sources */, 22C8D0A61769F8FF00DAFB4E /* msfileplayer.c in Sources */, 22C8D0A71769F8FF00DAFB4E /* msfilerec.c in Sources */, 22C8D0A81769F8FF00DAFB4E /* msg722.c in Sources */, @@ -2216,6 +2245,7 @@ 22C8D0BD1769F8FF00DAFB4E /* g722_decode.c in Sources */, 22C8D0BE1769F8FF00DAFB4E /* g722_encode.c in Sources */, 22C8D0BF1769F8FF00DAFB4E /* kiss_fft.c in Sources */, + F02538FB1979491B002C30F3 /* videostarter.c in Sources */, 22C8D0C01769F8FF00DAFB4E /* kiss_fftr.c in Sources */, 22C8D0C11769F8FF00DAFB4E /* opengles_display.c in Sources */, 22C8D0C21769F8FF00DAFB4E /* shaders.c in Sources */, @@ -2233,6 +2263,7 @@ 22C8D0CE1769F8FF00DAFB4E /* vp8.c in Sources */, 22C8D0CF1769F8FF00DAFB4E /* audioconference.c in Sources */, 22C8D0D01769F8FF00DAFB4E /* audiostream.c in Sources */, + F02538E91979481D002C30F3 /* vp8rtpfmt.c in Sources */, 22C8D0D11769F8FF00DAFB4E /* bitratecontrol.c in Sources */, 22C8D0D21769F8FF00DAFB4E /* bitratedriver.c in Sources */, 22C8D0D31769F8FF00DAFB4E /* ice.c in Sources */, @@ -2247,6 +2278,7 @@ 22C8D0DC1769F8FF00DAFB4E /* ringstream.c in Sources */, 22C8D0DD1769F8FF00DAFB4E /* scaler.c in Sources */, 22C8D0DE1769F8FF00DAFB4E /* videostream.c in Sources */, + F02538ED19794847002C30F3 /* g711.c in Sources */, 22C8D0DF1769F8FF00DAFB4E /* speexec.c in Sources */, 22C8D0E01769F8FF00DAFB4E /* msopus.c in Sources */, 22C8D0ED176A079600DAFB4E /* aac-eld.c in Sources */, @@ -3128,6 +3160,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; + ARCHS = "$(ARCHS_STANDARD_32_BIT)"; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; COPY_PHASE_STRIP = YES; GCC_C_LANGUAGE_STANDARD = gnu99; @@ -3159,16 +3192,18 @@ GCC_SYMBOLS_PRIVATE_EXTERN = NO; GCC_VERSION = com.apple.compilers.llvm.clang.1_0; INFOPLIST_FILE = "$(SRCROOT)/linphone/mediastreamer2/tools/ios/mediastream-Info.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 4.3; + IPHONEOS_DEPLOYMENT_TARGET = 5.1.1; LIBRARY_SEARCH_PATHS = ( "$(inherited)", "\"$(SRCROOT)/../liblinphone-sdk/apple-darwin/lib\"", "\"$(SRCROOT)/../liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins\"", ); + ONLY_ACTIVE_ARCH = YES; OTHER_CFLAGS = "-DNS_BLOCK_ASSERTIONS=1"; PRODUCT_NAME = "$(TARGET_NAME)"; SKIP_INSTALL = YES; VALIDATE_PRODUCT = YES; + VALID_ARCHS = "armv6 armv7 i386 armv7s"; WRAPPER_EXTENSION = app; }; name = DistributionAdhoc; @@ -3345,6 +3380,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; + ARCHS = "$(ARCHS_STANDARD_32_BIT)"; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; COPY_PHASE_STRIP = NO; GCC_C_LANGUAGE_STANDARD = gnu99; @@ -3377,14 +3413,16 @@ GCC_SYMBOLS_PRIVATE_EXTERN = NO; GCC_VERSION = com.apple.compilers.llvm.clang.1_0; INFOPLIST_FILE = "$(SRCROOT)/linphone/mediastreamer2/tools/ios/mediastream-Info.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 4.3; + IPHONEOS_DEPLOYMENT_TARGET = 5.1.1; LIBRARY_SEARCH_PATHS = ( "$(inherited)", "\"$(SRCROOT)/../liblinphone-sdk/apple-darwin/lib\"", "\"$(SRCROOT)/../liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins\"", ); + ONLY_ACTIVE_ARCH = YES; PRODUCT_NAME = "$(TARGET_NAME)"; SKIP_INSTALL = YES; + VALID_ARCHS = "armv6 armv7 i386 armv7s"; WRAPPER_EXTENSION = app; }; name = Debug; @@ -3393,6 +3431,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; + ARCHS = "$(ARCHS_STANDARD_32_BIT)"; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; COPY_PHASE_STRIP = YES; GCC_C_LANGUAGE_STANDARD = gnu99; @@ -3424,16 +3463,18 @@ GCC_SYMBOLS_PRIVATE_EXTERN = NO; GCC_VERSION = com.apple.compilers.llvm.clang.1_0; INFOPLIST_FILE = "$(SRCROOT)/linphone/mediastreamer2/tools/ios/mediastream-Info.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 4.3; + IPHONEOS_DEPLOYMENT_TARGET = 5.1.1; LIBRARY_SEARCH_PATHS = ( "$(inherited)", "\"$(SRCROOT)/../liblinphone-sdk/apple-darwin/lib\"", "\"$(SRCROOT)/../liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins\"", ); + ONLY_ACTIVE_ARCH = YES; OTHER_CFLAGS = "-DNS_BLOCK_ASSERTIONS=1"; PRODUCT_NAME = "$(TARGET_NAME)"; SKIP_INSTALL = YES; VALIDATE_PRODUCT = YES; + VALID_ARCHS = "armv6 armv7 i386 armv7s"; WRAPPER_EXTENSION = app; }; name = Release; From c5a0f37541213557eb848f40ac362707f2e373ad Mon Sep 17 00:00:00 2001 From: Guillaume BIENKOWSKI Date: Fri, 18 Jul 2014 17:08:30 +0200 Subject: [PATCH 10/39] Disable unit tests for libvpx --- submodules/build/builders.d/libvpx.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/submodules/build/builders.d/libvpx.mk b/submodules/build/builders.d/libvpx.mk index ca8180bd9..2d72bfa51 100644 --- a/submodules/build/builders.d/libvpx.mk +++ b/submodules/build/builders.d/libvpx.mk @@ -2,7 +2,7 @@ libvpx_dir?=externals/libvpx libvpx_configure_options=\ --enable-static --disable-shared \ - --disable-examples \ + --disable-examples --disable-unit-tests \ --enable-realtime-only --enable-spatial-resampling \ --enable-vp8 --enable-multithread --disable-vp9 From 66397fc6da4e35304cd435266e2ee0826e81b828 Mon Sep 17 00:00:00 2001 From: Guillaume BIENKOWSKI Date: Tue, 22 Jul 2014 13:06:32 +0200 Subject: [PATCH 11/39] Update linphone --- submodules/linphone | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/submodules/linphone b/submodules/linphone index e73d6676d..0f96e5696 160000 --- a/submodules/linphone +++ b/submodules/linphone @@ -1 +1 @@ -Subproject commit e73d6676d104da9692564e2e0df3dac507d36724 +Subproject commit 0f96e56963521c26da09555e7907d25cbbcd1020 From 505469e6cfc60d695ad02837ea23ce70050db237 Mon Sep 17 00:00:00 2001 From: Guillaume BIENKOWSKI Date: Thu, 10 Jul 2014 14:24:15 +0200 Subject: [PATCH 12/39] Add helper functions for Logging --- Classes/Utils/Utils.h | 8 ++++++++ Classes/Utils/Utils.m | 37 ++++++++++++++++++++++++++++++++++--- 2 files changed, 42 insertions(+), 3 deletions(-) diff --git a/Classes/Utils/Utils.h b/Classes/Utils/Utils.h index 00c7b3eeb..9b2b36a78 100644 --- a/Classes/Utils/Utils.h +++ b/Classes/Utils/Utils.h @@ -62,4 +62,12 @@ typedef enum _LinphoneLoggerSeverity { @end +void Linphone_log(NSString* format, ...) NS_FORMAT_FUNCTION(1,2); +void Linphone_dbg(NSString* format, ...) NS_FORMAT_FUNCTION(1,2); +void Linphone_warn(NSString* format, ...) NS_FORMAT_FUNCTION(1,2); +void Linphone_err(NSString* format, ...) NS_FORMAT_FUNCTION(1,2); +void Linphone_fatal(NSString* format, ...) NS_FORMAT_FUNCTION(1,2); + + + #endif diff --git a/Classes/Utils/Utils.m b/Classes/Utils/Utils.m index b6c97ab26..e68b2187c 100644 --- a/Classes/Utils/Utils.m +++ b/Classes/Utils/Utils.m @@ -23,9 +23,8 @@ @implementation LinphoneLogger -+ (void)log:(LinphoneLoggerSeverity) severity format:(NSString *)format,... { - va_list args; - va_start (args, format); + ++ (void)logv:(LinphoneLoggerSeverity)severity format:(NSString*)format args:(va_list)args{ NSString *str = [[NSString alloc] initWithFormat: format arguments:args]; if(severity <= LinphoneLoggerDebug) { ms_debug("%s", [str UTF8String]); @@ -39,6 +38,12 @@ ms_fatal("%s", [str UTF8String]); } [str release]; +} + ++ (void)log:(LinphoneLoggerSeverity) severity format:(NSString *)format,... { + va_list args; + va_start (args, format); + [LinphoneLogger logv:severity format:format args:args]; va_end (args); } @@ -237,3 +242,29 @@ } @end + +#define LOGV(level, argstart) \ + va_list args; \ + va_start(args, argstart); \ + [LinphoneLogger logv:level format:argstart args:args]; \ + va_end(args); + +void Linphone_log(NSString* format, ...){ + LOGV(LinphoneLoggerLog, format); +} + +void Linphone_dbg(NSString* format, ...){ + LOGV(LinphoneLoggerDebug, format); +} + +void Linphone_warn(NSString* format, ...){ + LOGV(LinphoneLoggerWarning, format); +} + +void Linphone_err(NSString* format, ...){ + LOGV(LinphoneLoggerError, format); +} + +void Linphone_fatal(NSString* format, ...){ + LOGV(LinphoneLoggerFatal, format); +} From 784b7897ec7970e42db51fb7302806c85d3d0854 Mon Sep 17 00:00:00 2001 From: Guillaume BIENKOWSKI Date: Tue, 22 Jul 2014 17:42:25 +0200 Subject: [PATCH 13/39] Perform userprefs migration if needed, to accommodate old linphone versions. Use sensible defaults when no user default is found. --- Classes/LinphoneManager.m | 41 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/Classes/LinphoneManager.m b/Classes/LinphoneManager.m index 17f937391..43d882a0e 100644 --- a/Classes/LinphoneManager.m +++ b/Classes/LinphoneManager.m @@ -273,6 +273,8 @@ struct codec_name_pref_table codec_pref_table[]={ NSString *confiFileName = [LinphoneManager documentFile:@".linphonerc"]; configDb=lp_config_new_with_factory([confiFileName cStringUsingEncoding:[NSString defaultCStringEncoding]] , [factoryConfig cStringUsingEncoding:[NSString defaultCStringEncoding]]); + [self migrateFromUserPrefs]; + //set default values for first boot if (lp_config_get_string(configDb,LINPHONERC_APPLICATION_KEY,"debugenable_preference",NULL)==NULL){ #ifdef DEBUG @@ -439,6 +441,45 @@ exit_dbmigration: return migrated; } +- (void)migrateFromUserPrefs { + static const char* migration_flag = "userpref_migration_done"; + + if( configDb == nil ) return; + + if( lp_config_get_int(configDb, LINPHONERC_APPLICATION_KEY, migration_flag, 0) ){ + Linphone_log(@"UserPrefs migration already performed, skip"); + return; + } + + NSDictionary* defaults = [[NSUserDefaults standardUserDefaults] dictionaryRepresentation]; + NSArray* defaults_keys = [defaults allKeys]; + NSDictionary* values = @{@"backgroundmode_preference" :@YES, + @"debugenable_preference" :@NO, + @"start_at_boot_preference" :@YES}; + BOOL shouldSync = FALSE; + + Linphone_log(@"%d user prefs", [defaults_keys count]); + + for( NSString* userpref in values ){ + if( [defaults_keys containsObject:userpref] ){ + Linphone_log(@"Migrating %@ from user preferences: %d", userpref, [[defaults objectForKey:userpref] boolValue]); + lp_config_set_int(configDb, LINPHONERC_APPLICATION_KEY, [userpref UTF8String], [[defaults objectForKey:userpref] boolValue]); + [[NSUserDefaults standardUserDefaults] removeObjectForKey:userpref]; + shouldSync = TRUE; + } else if ( lp_config_get_string(configDb, LINPHONERC_APPLICATION_KEY, [userpref UTF8String], NULL) == NULL ){ + // no default value found in our linphonerc, we need to add them + lp_config_set_int(configDb, LINPHONERC_APPLICATION_KEY, [userpref UTF8String], [[values objectForKey:userpref] boolValue]); + } + } + + if( shouldSync ){ + Linphone_log(@"Synchronizing..."); + [[NSUserDefaults standardUserDefaults] synchronize]; + } + // don't get back here in the future + lp_config_set_int(configDb, LINPHONERC_APPLICATION_KEY, migration_flag, 1); +} + #pragma mark - Linphone Core Functions From 33c938f874751846d25ab7b5ec5a5380001b1c81 Mon Sep 17 00:00:00 2001 From: Guillaume BIENKOWSKI Date: Wed, 23 Jul 2014 12:59:34 +0200 Subject: [PATCH 14/39] Update linphone for git version fix --- submodules/linphone | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/submodules/linphone b/submodules/linphone index 0f96e5696..b2132d4d8 160000 --- a/submodules/linphone +++ b/submodules/linphone @@ -1 +1 @@ -Subproject commit 0f96e56963521c26da09555e7907d25cbbcd1020 +Subproject commit b2132d4d8a4621fa714dd6118e02502cfb29fdbc From e01f0ad6e87e0869ee258e5b0206af7791c80283 Mon Sep 17 00:00:00 2001 From: Guillaume BIENKOWSKI Date: Wed, 23 Jul 2014 15:55:17 +0200 Subject: [PATCH 15/39] Use quality reporting when configuring a new linphone account, and migrate existing linphone accounts to send quality report. Also enable RTCP-XR by default. --- Classes/LinphoneManager.m | 18 ++++++++++++++++++ Resources/linphonerc-factory | 5 +++++ Resources/linphonerc-factory~ipad | 5 +++++ Resources/wizard_linphone_create.rc | 3 +++ Resources/wizard_linphone_existing.rc | 3 +++ 5 files changed, 34 insertions(+) diff --git a/Classes/LinphoneManager.m b/Classes/LinphoneManager.m index 43d882a0e..eb959ae36 100644 --- a/Classes/LinphoneManager.m +++ b/Classes/LinphoneManager.m @@ -1157,12 +1157,30 @@ static LinphoneCoreVTable linphonec_vtable = { const char* addr = linphone_proxy_config_get_addr(proxy); // we want to enable AVPF for the proxies if( addr && strstr(addr, "sip.linphone.org") != 0 ){ + Linphone_log(@"Migrating proxy config to use AVPF"); linphone_proxy_config_enable_avpf(proxy, TRUE); } proxies = proxies->next; } [self lpConfigSetBool:TRUE forKey:@"avpf_migration_done"]; } + /* Quality Reporting migration */ + if( [self lpConfigBoolForKey:@"quality_report_migration_done" forSection:@"app"] == FALSE ){ + const MSList* proxies = linphone_core_get_proxy_config_list(theLinphoneCore); + while(proxies){ + LinphoneProxyConfig* proxy = (LinphoneProxyConfig*)proxies->data; + const char* addr = linphone_proxy_config_get_addr(proxy); + // we want to enable quality reporting for the proxies that are on linphone.org + if( addr && strstr(addr, "sip.linphone.org") != 0 ){ + Linphone_log(@"Migrating proxy config to send quality report"); + linphone_proxy_config_set_quality_reporting_collector(proxy, "sip:voip-metrics@sip.linphone.org"); + linphone_proxy_config_set_quality_reporting_interval(proxy, 180); + linphone_proxy_config_enable_quality_reporting(proxy, TRUE); + } + proxies = proxies->next; + } + [self lpConfigSetBool:TRUE forKey:@"quality_report_migration_done"]; + } [self setupNetworkReachabilityCallback]; diff --git a/Resources/linphonerc-factory b/Resources/linphonerc-factory index f226a777a..862641b0e 100644 --- a/Resources/linphonerc-factory +++ b/Resources/linphonerc-factory @@ -14,6 +14,11 @@ auto_net_state_mon=0 keepalive_period=30000 ping_with_options=0 sip_random_port=0 +rtcp_xr_enabled=1 +rtcp_xr_rcvr_rtt_mode=all +rtcp_xr_rcvr_rtt_max_size=10000 +rtcp_xr_stat_summary_enabled=1 +rtcp_xr_voip_metrics_enabled=1 [rtp] audio_jitt_comp=60 diff --git a/Resources/linphonerc-factory~ipad b/Resources/linphonerc-factory~ipad index 5e4634154..7f828cd26 100644 --- a/Resources/linphonerc-factory~ipad +++ b/Resources/linphonerc-factory~ipad @@ -14,6 +14,11 @@ auto_net_state_mon=0 keepalive_period=30000 ping_with_options=0 sip_random_port=0 +rtcp_xr_enabled=1 +rtcp_xr_rcvr_rtt_mode=all +rtcp_xr_rcvr_rtt_max_size=10000 +rtcp_xr_stat_summary_enabled=1 +rtcp_xr_voip_metrics_enabled=1 [rtp] audio_jitt_comp=60 diff --git a/Resources/wizard_linphone_create.rc b/Resources/wizard_linphone_create.rc index 53c05f61c..e27ad00fa 100644 --- a/Resources/wizard_linphone_create.rc +++ b/Resources/wizard_linphone_create.rc @@ -10,6 +10,9 @@ 0 0 1 + sip:voip-metrics@sip.linphone.org + 1 + 180
diff --git a/Resources/wizard_linphone_existing.rc b/Resources/wizard_linphone_existing.rc index 74b948d8a..b2ed89e4d 100644 --- a/Resources/wizard_linphone_existing.rc +++ b/Resources/wizard_linphone_existing.rc @@ -10,6 +10,9 @@ 0 0 1 + sip:voip-metrics@sip.linphone.org + 1 + 180
From 15a1a05eac8fccba69143ed692ed934145a61cbc Mon Sep 17 00:00:00 2001 From: Guillaume BIENKOWSKI Date: Thu, 24 Jul 2014 14:33:42 +0200 Subject: [PATCH 16/39] Change the way the SDK is named for consistency --- submodules/build/builder-iphone-os.mk | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/submodules/build/builder-iphone-os.mk b/submodules/build/builder-iphone-os.mk index 8a8b45c1b..066387b54 100644 --- a/submodules/build/builder-iphone-os.mk +++ b/submodules/build/builder-iphone-os.mk @@ -54,6 +54,7 @@ endif LINPHONE_SRC_DIR=$(BUILDER_SRC_DIR)/linphone LINPHONE_BUILD_DIR=$(BUILDER_BUILD_DIR)/linphone +LINPHONE_IPHONE_VERSION=$(shell git describe --always) all: build-linphone build-msilbc build-msamr build-msx264 build-mssilk build-msbcg729 build-mswebrtc build-msopenh264 @@ -319,8 +320,9 @@ multi-arch: delivery-sdk: multi-arch + echo "Generating SDK zip file for version $(LINPHONE_IPHONE_VERSION)" cd $(BUILDER_SRC_DIR)/../ \ - && zip -r $(BUILDER_SRC_DIR)/liblinphone-iphone-sdk.zip \ + && zip -r $(BUILDER_SRC_DIR)/liblinphone-iphone-sdk-$(LINPHONE_IPHONE_VERSION).zip \ liblinphone-sdk/apple-darwin \ liblinphone-tutorials \ -x liblinphone-tutorials/hello-world/build\* \ From eb1de55b20e82244ff5890d6a97c6b4049f01f51 Mon Sep 17 00:00:00 2001 From: Guillaume BIENKOWSKI Date: Fri, 25 Jul 2014 14:51:27 +0200 Subject: [PATCH 17/39] Update belle-sip & linphone --- submodules/belle-sip | 2 +- submodules/linphone | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/submodules/belle-sip b/submodules/belle-sip index 1f566bdc7..fa46c5a53 160000 --- a/submodules/belle-sip +++ b/submodules/belle-sip @@ -1 +1 @@ -Subproject commit 1f566bdc7168cda0172c3cbb7d67fb4c246323d1 +Subproject commit fa46c5a53c286a8bbba1bdb2cc23e75d719d844b diff --git a/submodules/linphone b/submodules/linphone index b2132d4d8..b8c9c8093 160000 --- a/submodules/linphone +++ b/submodules/linphone @@ -1 +1 @@ -Subproject commit b2132d4d8a4621fa714dd6118e02502cfb29fdbc +Subproject commit b8c9c8093408d7ef1e9091877e4ff5e16cbd241a From 77d480b9241f56ff923c20c46b9bae471a0f3251 Mon Sep 17 00:00:00 2001 From: Gautier Pelloux-Prayer Date: Fri, 25 Jul 2014 16:10:02 +0200 Subject: [PATCH 18/39] Set outbound proxy realm for sip.linphone.org accounts --- Resources/wizard_linphone_create.rc | 7 ++++--- Resources/wizard_linphone_existing.rc | 9 +++++---- 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/Resources/wizard_linphone_create.rc b/Resources/wizard_linphone_create.rc index e27ad00fa..75946fd57 100644 --- a/Resources/wizard_linphone_create.rc +++ b/Resources/wizard_linphone_create.rc @@ -10,9 +10,10 @@ 0 0 1 - sip:voip-metrics@sip.linphone.org - 1 - 180 + sip:voip-metrics@sip.linphone.org + 1 + 180 + sip.linphone.org
diff --git a/Resources/wizard_linphone_existing.rc b/Resources/wizard_linphone_existing.rc index b2ed89e4d..2b2d950e9 100644 --- a/Resources/wizard_linphone_existing.rc +++ b/Resources/wizard_linphone_existing.rc @@ -10,9 +10,10 @@ 0 0 1 - sip:voip-metrics@sip.linphone.org - 1 - 180 + sip:voip-metrics@sip.linphone.org + 1 + 180 + sip.linphone.org
@@ -37,4 +38,4 @@ -1 -1
- \ No newline at end of file + From a186f78b44bc305fe856567e1679f947d6ce53b0 Mon Sep 17 00:00:00 2001 From: Gautier Pelloux-Prayer Date: Mon, 28 Jul 2014 10:39:57 +0200 Subject: [PATCH 19/39] Update belle-sip --- submodules/belle-sip | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/submodules/belle-sip b/submodules/belle-sip index fa46c5a53..c6f72e9c7 160000 --- a/submodules/belle-sip +++ b/submodules/belle-sip @@ -1 +1 @@ -Subproject commit fa46c5a53c286a8bbba1bdb2cc23e75d719d844b +Subproject commit c6f72e9c72c8bec20f2d779c1c6ee3a0b17691c4 From be5ba77e8bf24f26910040a8bddbf284a5905b8e Mon Sep 17 00:00:00 2001 From: Gautier Pelloux-Prayer Date: Tue, 29 Jul 2014 14:54:17 +0200 Subject: [PATCH 20/39] Update submodules --- .gitignore | 2 ++ linphone.xcodeproj/project.pbxproj | 4 ++-- submodules/belle-sip | 2 +- submodules/linphone | 2 +- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index e2f3c65b2..0b5eb907c 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,5 @@ build-* *.locuser .DS_Store liblinphone-sdk +liblinphone-iphone-sdk*.zip +xcuserdata/ diff --git a/linphone.xcodeproj/project.pbxproj b/linphone.xcodeproj/project.pbxproj index 9bb11281d..17ccb5ea7 100755 --- a/linphone.xcodeproj/project.pbxproj +++ b/linphone.xcodeproj/project.pbxproj @@ -83,7 +83,7 @@ 2200C2DC174BBB24002E9A70 /* MobileCoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 226EF06B15FA256B005865C7 /* MobileCoreServices.framework */; }; 22058C71116E305000B08DDD /* linphone_icon_57.png in Resources */ = {isa = PBXBuildFile; fileRef = 22058C70116E305000B08DDD /* linphone_icon_57.png */; }; 220784DF19509EF3001C3BDF /* libmsopenh264.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1560821E18EEF26100765332 /* libmsopenh264.a */; }; - 220784E019509EF3001C3BDF /* libwels.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1560821C18EEF23F00765332 /* libwels.a */; }; + 220784E019509EF3001C3BDF /* (null) in Frameworks */ = {isa = PBXBuildFile; }; 220FAD3210765B400068D98F /* libgsm.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220FAD2910765B400068D98F /* libgsm.a */; }; 220FAD3810765B400068D98F /* libspeex.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220FAD2F10765B400068D98F /* libspeex.a */; }; 220FAD3910765B400068D98F /* libspeexdsp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220FAD3010765B400068D98F /* libspeexdsp.a */; }; @@ -2479,7 +2479,7 @@ 22D8F174147548E2008C97DB /* libilbc.a in Frameworks */, 22D8F16B147548E2008C97DB /* libgsm.a in Frameworks */, 220784DF19509EF3001C3BDF /* libmsopenh264.a in Frameworks */, - 220784E019509EF3001C3BDF /* libwels.a in Frameworks */, + 220784E019509EF3001C3BDF /* (null) in Frameworks */, D34BD61815C13D0B0070C209 /* liblinphone.a in Frameworks */, D37EE10B16032DC2003608A6 /* libmediastreamer_base.a in Frameworks */, D37EE10C16032DC2003608A6 /* libmediastreamer_voip.a in Frameworks */, diff --git a/submodules/belle-sip b/submodules/belle-sip index c6f72e9c7..2b01dd695 160000 --- a/submodules/belle-sip +++ b/submodules/belle-sip @@ -1 +1 @@ -Subproject commit c6f72e9c72c8bec20f2d779c1c6ee3a0b17691c4 +Subproject commit 2b01dd6952538bc512f7a1c5c8356d91fd9f2931 diff --git a/submodules/linphone b/submodules/linphone index b8c9c8093..d8cc5b600 160000 --- a/submodules/linphone +++ b/submodules/linphone @@ -1 +1 @@ -Subproject commit b8c9c8093408d7ef1e9091877e4ff5e16cbd241a +Subproject commit d8cc5b600f3771b101f52c2da0761b78a3b4e947 From eaac4fd7b990c04d93b4f6af93433e0f183155a2 Mon Sep 17 00:00:00 2001 From: Gautier Pelloux-Prayer Date: Tue, 29 Jul 2014 15:08:23 +0200 Subject: [PATCH 21/39] Update submodules to ignore autogenerated files --- submodules/bcg729 | 2 +- submodules/cunit | 2 +- submodules/externals/antlr3 | 2 +- submodules/externals/speex | 2 +- submodules/libilbc-rfc3951 | 2 +- submodules/msamr | 2 +- submodules/msilbc | 2 +- submodules/msopenh264 | 2 +- submodules/mssilk | 2 +- submodules/mswebrtc | 2 +- submodules/msx264 | 2 +- 11 files changed, 11 insertions(+), 11 deletions(-) diff --git a/submodules/bcg729 b/submodules/bcg729 index 2e36a5d4b..0a58e95c1 160000 --- a/submodules/bcg729 +++ b/submodules/bcg729 @@ -1 +1 @@ -Subproject commit 2e36a5d4bc6e992c654eee6b0a8db729da7b1d31 +Subproject commit 0a58e95c1d7f7da9035456f2b1bcfa832bfd2d7e diff --git a/submodules/cunit b/submodules/cunit index 86562ef04..9aa6142d2 160000 --- a/submodules/cunit +++ b/submodules/cunit @@ -1 +1 @@ -Subproject commit 86562ef04d0d66c007d7822944a75f540ae37f19 +Subproject commit 9aa6142d267197c92b579ff82bc84ea7f0f5c35d diff --git a/submodules/externals/antlr3 b/submodules/externals/antlr3 index 5ed4fec73..20985f63c 160000 --- a/submodules/externals/antlr3 +++ b/submodules/externals/antlr3 @@ -1 +1 @@ -Subproject commit 5ed4fec737f88c69da3192871fb2553bffe46bfa +Subproject commit 20985f63cb691f7ea0bdf9ccf7d5cbfda055e060 diff --git a/submodules/externals/speex b/submodules/externals/speex index 3c3178184..84a7ee510 160000 --- a/submodules/externals/speex +++ b/submodules/externals/speex @@ -1 +1 @@ -Subproject commit 3c317818481b67e0dd732e5dc045d6b981a8775b +Subproject commit 84a7ee510ff47cfe47dd37ee10dfb772e4b7bd55 diff --git a/submodules/libilbc-rfc3951 b/submodules/libilbc-rfc3951 index a70714c2e..d0b51b1a8 160000 --- a/submodules/libilbc-rfc3951 +++ b/submodules/libilbc-rfc3951 @@ -1 +1 @@ -Subproject commit a70714c2e8a1f6f9958450cb612e3dc9895981e7 +Subproject commit d0b51b1a8604f726bb3a3b2609cdfbd7d4e43828 diff --git a/submodules/msamr b/submodules/msamr index d09a19cb2..eb17e35a2 160000 --- a/submodules/msamr +++ b/submodules/msamr @@ -1 +1 @@ -Subproject commit d09a19cb27076c45f093e8abc9a00d07258779e9 +Subproject commit eb17e35a22301db309b51bd9d458fb00972bd4c3 diff --git a/submodules/msilbc b/submodules/msilbc index 3185bbbbd..afe533687 160000 --- a/submodules/msilbc +++ b/submodules/msilbc @@ -1 +1 @@ -Subproject commit 3185bbbbda97c2b93cd4f720809b96d79d810bd9 +Subproject commit afe5336871be478f54e794d4f649e2c1f18dcaff diff --git a/submodules/msopenh264 b/submodules/msopenh264 index f09c27d9e..7a8738cd1 160000 --- a/submodules/msopenh264 +++ b/submodules/msopenh264 @@ -1 +1 @@ -Subproject commit f09c27d9ef5ab76a5e0af7d33b9c12dcf43e9602 +Subproject commit 7a8738cd1f034222f83ffa3be8a411319b1a37fa diff --git a/submodules/mssilk b/submodules/mssilk index 6e2568305..7bd277836 160000 --- a/submodules/mssilk +++ b/submodules/mssilk @@ -1 +1 @@ -Subproject commit 6e2568305e4a2e5de354578148eb989aab73553c +Subproject commit 7bd2778369432e865c84259feb82a107196397ed diff --git a/submodules/mswebrtc b/submodules/mswebrtc index 0c9d65c32..5a55409dd 160000 --- a/submodules/mswebrtc +++ b/submodules/mswebrtc @@ -1 +1 @@ -Subproject commit 0c9d65c32431969e58f77e0c280d7ce601ca043b +Subproject commit 5a55409ddce8bc35163662231dae475488dfce75 diff --git a/submodules/msx264 b/submodules/msx264 index 853eafee7..ee2a0f6f0 160000 --- a/submodules/msx264 +++ b/submodules/msx264 @@ -1 +1 @@ -Subproject commit 853eafee7cd83ea8c25a673aadb0eb50b7407779 +Subproject commit ee2a0f6f0904995177434292a7a0fb4c51632e4e From 995a3f6de986634d1bc0e6a963a63c90758993fe Mon Sep 17 00:00:00 2001 From: Guillaume BIENKOWSKI Date: Mon, 11 Aug 2014 15:27:28 +0200 Subject: [PATCH 22/39] Fix for impossible mute since iOS7... --- Classes/LinphoneManager.m | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Classes/LinphoneManager.m b/Classes/LinphoneManager.m index eb959ae36..3ec024dd7 100644 --- a/Classes/LinphoneManager.m +++ b/Classes/LinphoneManager.m @@ -754,6 +754,12 @@ static void linphone_iphone_display_status(struct _LinphoneCore * lc, const char speaker_already_enabled = TRUE; } } + + if(state == LinphoneCallStreamsRunning ){ + [[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:nil]; + [[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayAndRecord error:nil]; + } + if (state == LinphoneCallConnected && !mCallCenter) { /*only register CT call center CB for connected call*/ [self setupGSMInteraction]; From 16413dd51b8d4c8572404cc6def802e445c45f6b Mon Sep 17 00:00:00 2001 From: Guillaume BIENKOWSKI Date: Wed, 13 Aug 2014 11:07:12 +0200 Subject: [PATCH 23/39] Update hello world project to use the correct libs --- .../hello-world.xcodeproj/project.pbxproj | 191 ++++++++++-------- 1 file changed, 107 insertions(+), 84 deletions(-) diff --git a/liblinphone-tutorials/hello-world/hello-world.xcodeproj/project.pbxproj b/liblinphone-tutorials/hello-world/hello-world.xcodeproj/project.pbxproj index 0624e7e05..bbd185c8f 100755 --- a/liblinphone-tutorials/hello-world/hello-world.xcodeproj/project.pbxproj +++ b/liblinphone-tutorials/hello-world/hello-world.xcodeproj/project.pbxproj @@ -3,7 +3,7 @@ archiveVersion = 1; classes = { }; - objectVersion = 45; + objectVersion = 46; objects = { /* Begin PBXBuildFile section */ @@ -27,12 +27,6 @@ 154E1AA9171564C900A0D168 /* libmediastreamer_voip.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A951715639A00A0D168 /* libmediastreamer_voip.a */; }; 154E1AAA171564CA00A0D168 /* libmediastreamer_voip.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A951715639A00A0D168 /* libmediastreamer_voip.a */; }; 154E1AAB171564CA00A0D168 /* libmediastreamer_voip.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A951715639A00A0D168 /* libmediastreamer_voip.a */; }; - 154E1AAC171564EA00A0D168 /* libssl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5AFCF133A2E760044EA25 /* libssl.a */; }; - 154E1AAD171564EA00A0D168 /* libssl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5AFCF133A2E760044EA25 /* libssl.a */; }; - 154E1AAE171564EB00A0D168 /* libssl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5AFCF133A2E760044EA25 /* libssl.a */; }; - 154E1AAF171564ED00A0D168 /* libcrypto.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5AFD0133A2E760044EA25 /* libcrypto.a */; }; - 154E1AB0171564EE00A0D168 /* libcrypto.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5AFD0133A2E760044EA25 /* libcrypto.a */; }; - 154E1AB1171564EE00A0D168 /* libcrypto.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5AFD0133A2E760044EA25 /* libcrypto.a */; }; 154E1AB21715661100A0D168 /* libswscale.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A9B1715645F00A0D168 /* libswscale.a */; }; 154E1AB31715661100A0D168 /* libswscale.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A9B1715645F00A0D168 /* libswscale.a */; }; 154E1AB41715661200A0D168 /* libswscale.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 154E1A9B1715645F00A0D168 /* libswscale.a */; }; @@ -67,16 +61,11 @@ 229499FA12A5433F00D6CF48 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2220D5E912784672008F2C2E /* AudioToolbox.framework */; }; 229499FB12A5433F00D6CF48 /* libresolv.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 22D1B6A012A3E159001AE361 /* libresolv.dylib */; }; 22D1B6A112A3E159001AE361 /* libresolv.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 22D1B6A012A3E159001AE361 /* libresolv.dylib */; }; - 22E5AFD1133A2E760044EA25 /* libssl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5AFCF133A2E760044EA25 /* libssl.a */; }; - 22E5AFD2133A2E760044EA25 /* libcrypto.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22E5AFD0133A2E760044EA25 /* libcrypto.a */; }; 288765FD0DF74451002DB57D /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 288765FC0DF74451002DB57D /* CoreGraphics.framework */; }; - 34F9DFF514C41EBA00E1BC69 /* libeXosip2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFEB14C41EBA00E1BC69 /* libeXosip2.a */; }; 34F9DFF614C41EBA00E1BC69 /* libgsm.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFEC14C41EBA00E1BC69 /* libgsm.a */; }; 34F9DFF714C41EBA00E1BC69 /* libilbc.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFED14C41EBA00E1BC69 /* libilbc.a */; }; 34F9DFF814C41EBA00E1BC69 /* liblinphone.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFEE14C41EBA00E1BC69 /* liblinphone.a */; }; 34F9DFFA14C41EBA00E1BC69 /* libortp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF014C41EBA00E1BC69 /* libortp.a */; }; - 34F9DFFB14C41EBA00E1BC69 /* libosip2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF114C41EBA00E1BC69 /* libosip2.a */; }; - 34F9DFFC14C41EBA00E1BC69 /* libosipparser2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF214C41EBA00E1BC69 /* libosipparser2.a */; }; 34F9DFFD14C41EBA00E1BC69 /* libspeex.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF314C41EBA00E1BC69 /* libspeex.a */; }; 34F9DFFE14C41EBA00E1BC69 /* libspeexdsp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF414C41EBA00E1BC69 /* libspeexdsp.a */; }; 34F9E00314C41FB400E1BC69 /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9E00214C41FB400E1BC69 /* OpenGLES.framework */; }; @@ -88,19 +77,13 @@ 34F9E00E14C4204600E1BC69 /* libsrtp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9E00414C41FCF00E1BC69 /* libsrtp.a */; }; 34F9E00F14C4204600E1BC69 /* libvpx.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9E00514C41FCF00E1BC69 /* libvpx.a */; }; 34F9E01014C4207700E1BC69 /* liblinphone.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFEE14C41EBA00E1BC69 /* liblinphone.a */; }; - 34F9E01114C4208C00E1BC69 /* libeXosip2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFEB14C41EBA00E1BC69 /* libeXosip2.a */; }; 34F9E01314C4208C00E1BC69 /* libortp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF014C41EBA00E1BC69 /* libortp.a */; }; - 34F9E01414C420A200E1BC69 /* libosip2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF114C41EBA00E1BC69 /* libosip2.a */; }; - 34F9E01514C420A200E1BC69 /* libosipparser2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF214C41EBA00E1BC69 /* libosipparser2.a */; }; 34F9E01614C420B800E1BC69 /* libgsm.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFEC14C41EBA00E1BC69 /* libgsm.a */; }; 34F9E01714C420B800E1BC69 /* libspeex.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF314C41EBA00E1BC69 /* libspeex.a */; }; 34F9E01814C420B800E1BC69 /* libspeexdsp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF414C41EBA00E1BC69 /* libspeexdsp.a */; }; - 34F9E01914C420DD00E1BC69 /* libeXosip2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFEB14C41EBA00E1BC69 /* libeXosip2.a */; }; 34F9E01A14C420DD00E1BC69 /* libgsm.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFEC14C41EBA00E1BC69 /* libgsm.a */; }; 34F9E01B14C420DD00E1BC69 /* liblinphone.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFEE14C41EBA00E1BC69 /* liblinphone.a */; }; 34F9E01C14C420DD00E1BC69 /* libortp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF014C41EBA00E1BC69 /* libortp.a */; }; - 34F9E01D14C420DD00E1BC69 /* libosip2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF114C41EBA00E1BC69 /* libosip2.a */; }; - 34F9E01E14C420DD00E1BC69 /* libosipparser2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF214C41EBA00E1BC69 /* libosipparser2.a */; }; 34F9E01F14C420DD00E1BC69 /* libspeex.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF314C41EBA00E1BC69 /* libspeex.a */; }; 34F9E02014C420DD00E1BC69 /* libspeexdsp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF414C41EBA00E1BC69 /* libspeexdsp.a */; }; 34F9E02214C420FA00E1BC69 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9E00A14C4202100E1BC69 /* QuartzCore.framework */; }; @@ -109,12 +92,9 @@ 34F9E02514C4211000E1BC69 /* libvpx.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9E00514C41FCF00E1BC69 /* libvpx.a */; }; 34F9E02614C4212F00E1BC69 /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9E00214C41FB400E1BC69 /* OpenGLES.framework */; }; 34F9E02714C4212F00E1BC69 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9E00A14C4202100E1BC69 /* QuartzCore.framework */; }; - 34F9E02814C4214500E1BC69 /* libeXosip2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFEB14C41EBA00E1BC69 /* libeXosip2.a */; }; 34F9E02914C4214500E1BC69 /* libgsm.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFEC14C41EBA00E1BC69 /* libgsm.a */; }; 34F9E02A14C4214500E1BC69 /* liblinphone.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFEE14C41EBA00E1BC69 /* liblinphone.a */; }; 34F9E02C14C4214500E1BC69 /* libortp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF014C41EBA00E1BC69 /* libortp.a */; }; - 34F9E02D14C4214500E1BC69 /* libosip2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF114C41EBA00E1BC69 /* libosip2.a */; }; - 34F9E02E14C4214500E1BC69 /* libosipparser2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF214C41EBA00E1BC69 /* libosipparser2.a */; }; 34F9E02F14C4214500E1BC69 /* libspeex.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF314C41EBA00E1BC69 /* libspeex.a */; }; 34F9E03014C4214500E1BC69 /* libspeexdsp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9DFF414C41EBA00E1BC69 /* libspeexdsp.a */; }; 34F9E03114C4214500E1BC69 /* libsrtp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9E00414C41FCF00E1BC69 /* libsrtp.a */; }; @@ -131,6 +111,34 @@ 34F9E03E14C4252600E1BC69 /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9E03314C4247A00E1BC69 /* AVFoundation.framework */; }; 34F9E03F14C4253300E1BC69 /* CoreMedia.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9E03614C424AF00E1BC69 /* CoreMedia.framework */; }; 34F9E04014C4253300E1BC69 /* CoreVideo.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 34F9E00814C41FE900E1BC69 /* CoreVideo.framework */; }; + F079D95D199A6864009C58AA /* libbellesip.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F079D95C199A6864009C58AA /* libbellesip.a */; }; + F079D95E199A6864009C58AA /* libbellesip.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F079D95C199A6864009C58AA /* libbellesip.a */; }; + F079D95F199A6864009C58AA /* libbellesip.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F079D95C199A6864009C58AA /* libbellesip.a */; }; + F079D960199A6864009C58AA /* libbellesip.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F079D95C199A6864009C58AA /* libbellesip.a */; }; + F079D962199A6871009C58AA /* libantlr3c.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F079D961199A6871009C58AA /* libantlr3c.a */; }; + F079D963199A6871009C58AA /* libantlr3c.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F079D961199A6871009C58AA /* libantlr3c.a */; }; + F079D964199A6871009C58AA /* libantlr3c.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F079D961199A6871009C58AA /* libantlr3c.a */; }; + F079D965199A6871009C58AA /* libantlr3c.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F079D961199A6871009C58AA /* libantlr3c.a */; }; + F079D968199A68A5009C58AA /* libpolarssl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F079D966199A68A5009C58AA /* libpolarssl.a */; }; + F079D969199A68A5009C58AA /* libpolarssl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F079D966199A68A5009C58AA /* libpolarssl.a */; }; + F079D96A199A68A5009C58AA /* libpolarssl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F079D966199A68A5009C58AA /* libpolarssl.a */; }; + F079D96B199A68A5009C58AA /* libpolarssl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F079D966199A68A5009C58AA /* libpolarssl.a */; }; + F079D96C199A68A5009C58AA /* libxml2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F079D967199A68A5009C58AA /* libxml2.a */; }; + F079D96D199A68A5009C58AA /* libxml2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F079D967199A68A5009C58AA /* libxml2.a */; }; + F079D96E199A68A5009C58AA /* libxml2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F079D967199A68A5009C58AA /* libxml2.a */; }; + F079D96F199A68A5009C58AA /* libxml2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F079D967199A68A5009C58AA /* libxml2.a */; }; + F079D972199A68BA009C58AA /* libbzrtp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F079D970199A68BA009C58AA /* libbzrtp.a */; }; + F079D973199A68BA009C58AA /* libbzrtp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F079D970199A68BA009C58AA /* libbzrtp.a */; }; + F079D974199A68BA009C58AA /* libbzrtp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F079D970199A68BA009C58AA /* libbzrtp.a */; }; + F079D975199A68BA009C58AA /* libbzrtp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F079D970199A68BA009C58AA /* libbzrtp.a */; }; + F079D976199A68BA009C58AA /* libopus.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F079D971199A68BA009C58AA /* libopus.a */; }; + F079D977199A68BA009C58AA /* libopus.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F079D971199A68BA009C58AA /* libopus.a */; }; + F079D978199A68BA009C58AA /* libopus.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F079D971199A68BA009C58AA /* libopus.a */; }; + F079D979199A68BA009C58AA /* libopus.a in Frameworks */ = {isa = PBXBuildFile; fileRef = F079D971199A68BA009C58AA /* libopus.a */; }; + F079D97B199A6905009C58AA /* libsqlite3.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = F079D97A199A6905009C58AA /* libsqlite3.dylib */; }; + F079D97C199A690C009C58AA /* libsqlite3.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = F079D97A199A6905009C58AA /* libsqlite3.dylib */; }; + F079D97D199A6913009C58AA /* libsqlite3.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = F079D97A199A6905009C58AA /* libsqlite3.dylib */; }; + F079D97E199A6919009C58AA /* libsqlite3.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = F079D97A199A6905009C58AA /* libsqlite3.dylib */; }; /* End PBXBuildFile section */ /* Begin PBXFileReference section */ @@ -154,17 +162,12 @@ 229499BA12A5417D00D6CF48 /* hello-world.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "hello-world.app"; sourceTree = BUILT_PRODUCTS_DIR; }; 229499FF12A5433F00D6CF48 /* hello-world.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "hello-world.app"; sourceTree = BUILT_PRODUCTS_DIR; }; 22D1B6A012A3E159001AE361 /* libresolv.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libresolv.dylib; path = usr/lib/libresolv.dylib; sourceTree = SDKROOT; }; - 22E5AFCF133A2E760044EA25 /* libssl.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libssl.a; path = "../../liblinphone-sdk/apple-darwin/lib/libssl.a"; sourceTree = ""; }; - 22E5AFD0133A2E760044EA25 /* libcrypto.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libcrypto.a; path = "../../liblinphone-sdk/apple-darwin/lib/libcrypto.a"; sourceTree = ""; }; 288765FC0DF74451002DB57D /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; }; 32CA4F630368D1EE00C91783 /* hello_world_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = hello_world_Prefix.pch; sourceTree = ""; }; - 34F9DFEB14C41EBA00E1BC69 /* libeXosip2.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libeXosip2.a; path = "../../liblinphone-sdk/apple-darwin/lib/libeXosip2.a"; sourceTree = ""; }; 34F9DFEC14C41EBA00E1BC69 /* libgsm.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libgsm.a; path = "../../liblinphone-sdk/apple-darwin/lib/libgsm.a"; sourceTree = ""; }; 34F9DFED14C41EBA00E1BC69 /* libilbc.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libilbc.a; path = "../../liblinphone-sdk/apple-darwin/lib/libilbc.a"; sourceTree = ""; }; 34F9DFEE14C41EBA00E1BC69 /* liblinphone.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = liblinphone.a; path = "../../liblinphone-sdk/apple-darwin/lib/liblinphone.a"; sourceTree = ""; }; 34F9DFF014C41EBA00E1BC69 /* libortp.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libortp.a; path = "../../liblinphone-sdk/apple-darwin/lib/libortp.a"; sourceTree = ""; }; - 34F9DFF114C41EBA00E1BC69 /* libosip2.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libosip2.a; path = "../../liblinphone-sdk/apple-darwin/lib/libosip2.a"; sourceTree = ""; }; - 34F9DFF214C41EBA00E1BC69 /* libosipparser2.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libosipparser2.a; path = "../../liblinphone-sdk/apple-darwin/lib/libosipparser2.a"; sourceTree = ""; }; 34F9DFF314C41EBA00E1BC69 /* libspeex.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libspeex.a; path = "../../liblinphone-sdk/apple-darwin/lib/libspeex.a"; sourceTree = ""; }; 34F9DFF414C41EBA00E1BC69 /* libspeexdsp.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libspeexdsp.a; path = "../../liblinphone-sdk/apple-darwin/lib/libspeexdsp.a"; sourceTree = ""; }; 34F9E00214C41FB400E1BC69 /* OpenGLES.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGLES.framework; path = System/Library/Frameworks/OpenGLES.framework; sourceTree = SDKROOT; }; @@ -175,6 +178,13 @@ 34F9E03314C4247A00E1BC69 /* AVFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AVFoundation.framework; path = System/Library/Frameworks/AVFoundation.framework; sourceTree = SDKROOT; }; 34F9E03614C424AF00E1BC69 /* CoreMedia.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreMedia.framework; path = System/Library/Frameworks/CoreMedia.framework; sourceTree = SDKROOT; }; 8D1107310486CEB800E47090 /* helloworld-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "helloworld-Info.plist"; plistStructureDefinitionIdentifier = "com.apple.xcode.plist.structure-definition.iphone.info-plist"; sourceTree = ""; }; + F079D95C199A6864009C58AA /* libbellesip.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libbellesip.a; path = "../../liblinphone-sdk/apple-darwin/lib/libbellesip.a"; sourceTree = ""; }; + F079D961199A6871009C58AA /* libantlr3c.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libantlr3c.a; path = "../../liblinphone-sdk/apple-darwin/lib/libantlr3c.a"; sourceTree = ""; }; + F079D966199A68A5009C58AA /* libpolarssl.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libpolarssl.a; path = "../../liblinphone-sdk/apple-darwin/lib/libpolarssl.a"; sourceTree = ""; }; + F079D967199A68A5009C58AA /* libxml2.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libxml2.a; path = "../../liblinphone-sdk/apple-darwin/lib/libxml2.a"; sourceTree = ""; }; + F079D970199A68BA009C58AA /* libbzrtp.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libbzrtp.a; path = "../../liblinphone-sdk/apple-darwin/lib/libbzrtp.a"; sourceTree = ""; }; + F079D971199A68BA009C58AA /* libopus.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libopus.a; path = "../../liblinphone-sdk/apple-darwin/lib/libopus.a"; sourceTree = ""; }; + F079D97A199A6905009C58AA /* libsqlite3.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libsqlite3.dylib; path = usr/lib/libsqlite3.dylib; sourceTree = SDKROOT; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -182,9 +192,14 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + F079D97B199A6905009C58AA /* libsqlite3.dylib in Frameworks */, 154E1A9C1715645F00A0D168 /* libswscale.a in Frameworks */, + F079D96C199A68A5009C58AA /* libxml2.a in Frameworks */, 154E1A9A1715644400A0D168 /* libavcodec.a in Frameworks */, 154E1A981715642E00A0D168 /* libavutil.a in Frameworks */, + F079D968199A68A5009C58AA /* libpolarssl.a in Frameworks */, + F079D95D199A6864009C58AA /* libbellesip.a in Frameworks */, + F079D972199A68BA009C58AA /* libbzrtp.a in Frameworks */, 34F9E03714C424AF00E1BC69 /* CoreMedia.framework in Frameworks */, 34F9E03514C4249600E1BC69 /* CoreVideo.framework in Frameworks */, 34F9E03414C4247A00E1BC69 /* AVFoundation.framework in Frameworks */, @@ -192,15 +207,14 @@ 34F9E00614C41FCF00E1BC69 /* libsrtp.a in Frameworks */, 34F9E00714C41FCF00E1BC69 /* libvpx.a in Frameworks */, 34F9E00314C41FB400E1BC69 /* OpenGLES.framework in Frameworks */, - 34F9DFF514C41EBA00E1BC69 /* libeXosip2.a in Frameworks */, 34F9DFF614C41EBA00E1BC69 /* libgsm.a in Frameworks */, 34F9DFF714C41EBA00E1BC69 /* libilbc.a in Frameworks */, 34F9DFF814C41EBA00E1BC69 /* liblinphone.a in Frameworks */, + F079D962199A6871009C58AA /* libantlr3c.a in Frameworks */, 154E1A941715638900A0D168 /* libmediastreamer_base.a in Frameworks */, + F079D976199A68BA009C58AA /* libopus.a in Frameworks */, 154E1A961715639A00A0D168 /* libmediastreamer_voip.a in Frameworks */, 34F9DFFA14C41EBA00E1BC69 /* libortp.a in Frameworks */, - 34F9DFFB14C41EBA00E1BC69 /* libosip2.a in Frameworks */, - 34F9DFFC14C41EBA00E1BC69 /* libosipparser2.a in Frameworks */, 34F9DFFD14C41EBA00E1BC69 /* libspeex.a in Frameworks */, 34F9DFFE14C41EBA00E1BC69 /* libspeexdsp.a in Frameworks */, 1D60589F0D05DD5A006BFB54 /* Foundation.framework in Frameworks */, @@ -210,8 +224,6 @@ 2220D5DA1278461C008F2C2E /* CoreAudio.framework in Frameworks */, 2220D5EA12784672008F2C2E /* AudioToolbox.framework in Frameworks */, 22D1B6A112A3E159001AE361 /* libresolv.dylib in Frameworks */, - 154E1AAE171564EB00A0D168 /* libssl.a in Frameworks */, - 154E1AAF171564ED00A0D168 /* libcrypto.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -219,15 +231,17 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + F079D97C199A690C009C58AA /* libsqlite3.dylib in Frameworks */, 34F9E03F14C4253300E1BC69 /* CoreMedia.framework in Frameworks */, + F079D96D199A68A5009C58AA /* libxml2.a in Frameworks */, 34F9E04014C4253300E1BC69 /* CoreVideo.framework in Frameworks */, 34F9E03E14C4252600E1BC69 /* AVFoundation.framework in Frameworks */, + F079D969199A68A5009C58AA /* libpolarssl.a in Frameworks */, + F079D95E199A6864009C58AA /* libbellesip.a in Frameworks */, + F079D973199A68BA009C58AA /* libbzrtp.a in Frameworks */, 34F9E01614C420B800E1BC69 /* libgsm.a in Frameworks */, 34F9E01714C420B800E1BC69 /* libspeex.a in Frameworks */, 34F9E01814C420B800E1BC69 /* libspeexdsp.a in Frameworks */, - 34F9E01414C420A200E1BC69 /* libosip2.a in Frameworks */, - 34F9E01514C420A200E1BC69 /* libosipparser2.a in Frameworks */, - 34F9E01114C4208C00E1BC69 /* libeXosip2.a in Frameworks */, 34F9E01314C4208C00E1BC69 /* libortp.a in Frameworks */, 34F9E01014C4207700E1BC69 /* liblinphone.a in Frameworks */, 34F9E00E14C4204600E1BC69 /* libsrtp.a in Frameworks */, @@ -235,7 +249,9 @@ 34F9E00C14C4203900E1BC69 /* OpenGLES.framework in Frameworks */, 34F9E00D14C4203900E1BC69 /* QuartzCore.framework in Frameworks */, 2294996912A53FEE00D6CF48 /* Foundation.framework in Frameworks */, + F079D963199A6871009C58AA /* libantlr3c.a in Frameworks */, 2294996A12A53FEE00D6CF48 /* UIKit.framework in Frameworks */, + F079D977199A68BA009C58AA /* libopus.a in Frameworks */, 2294996B12A53FEE00D6CF48 /* CoreGraphics.framework in Frameworks */, 2294997612A53FEE00D6CF48 /* CFNetwork.framework in Frameworks */, 2294997712A53FEE00D6CF48 /* CoreAudio.framework in Frameworks */, @@ -246,8 +262,6 @@ 154E1AA3171564C100A0D168 /* libilbc.a in Frameworks */, 154E1AA6171564C600A0D168 /* libmediastreamer_base.a in Frameworks */, 154E1AA9171564C900A0D168 /* libmediastreamer_voip.a in Frameworks */, - 154E1AAD171564EA00A0D168 /* libssl.a in Frameworks */, - 154E1AB0171564EE00A0D168 /* libcrypto.a in Frameworks */, 154E1AB21715661100A0D168 /* libswscale.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; @@ -256,23 +270,27 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + F079D97D199A6913009C58AA /* libsqlite3.dylib in Frameworks */, 34F9E03B14C4251B00E1BC69 /* AVFoundation.framework in Frameworks */, + F079D96E199A68A5009C58AA /* libxml2.a in Frameworks */, 34F9E03C14C4251B00E1BC69 /* CoreMedia.framework in Frameworks */, 34F9E03D14C4251B00E1BC69 /* CoreVideo.framework in Frameworks */, + F079D96A199A68A5009C58AA /* libpolarssl.a in Frameworks */, + F079D95F199A6864009C58AA /* libbellesip.a in Frameworks */, + F079D974199A68BA009C58AA /* libbzrtp.a in Frameworks */, 34F9E02414C4211000E1BC69 /* libsrtp.a in Frameworks */, 34F9E02514C4211000E1BC69 /* libvpx.a in Frameworks */, 34F9E02314C4210100E1BC69 /* OpenGLES.framework in Frameworks */, 34F9E02214C420FA00E1BC69 /* QuartzCore.framework in Frameworks */, - 34F9E01914C420DD00E1BC69 /* libeXosip2.a in Frameworks */, 34F9E01A14C420DD00E1BC69 /* libgsm.a in Frameworks */, 34F9E01B14C420DD00E1BC69 /* liblinphone.a in Frameworks */, 34F9E01C14C420DD00E1BC69 /* libortp.a in Frameworks */, - 34F9E01D14C420DD00E1BC69 /* libosip2.a in Frameworks */, - 34F9E01E14C420DD00E1BC69 /* libosipparser2.a in Frameworks */, 34F9E01F14C420DD00E1BC69 /* libspeex.a in Frameworks */, 34F9E02014C420DD00E1BC69 /* libspeexdsp.a in Frameworks */, 229499A612A5417D00D6CF48 /* Foundation.framework in Frameworks */, + F079D964199A6871009C58AA /* libantlr3c.a in Frameworks */, 229499A712A5417D00D6CF48 /* UIKit.framework in Frameworks */, + F079D978199A68BA009C58AA /* libopus.a in Frameworks */, 229499A812A5417D00D6CF48 /* CoreGraphics.framework in Frameworks */, 229499B312A5417D00D6CF48 /* CFNetwork.framework in Frameworks */, 229499B412A5417D00D6CF48 /* CoreAudio.framework in Frameworks */, @@ -283,8 +301,6 @@ 154E1AA4171564C100A0D168 /* libilbc.a in Frameworks */, 154E1AA7171564C600A0D168 /* libmediastreamer_base.a in Frameworks */, 154E1AAA171564CA00A0D168 /* libmediastreamer_voip.a in Frameworks */, - 154E1AAC171564EA00A0D168 /* libssl.a in Frameworks */, - 154E1AB1171564EE00A0D168 /* libcrypto.a in Frameworks */, 154E1AB31715661100A0D168 /* libswscale.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; @@ -293,25 +309,27 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + F079D97E199A6919009C58AA /* libsqlite3.dylib in Frameworks */, 34F9E03814C4250B00E1BC69 /* AVFoundation.framework in Frameworks */, + F079D96F199A68A5009C58AA /* libxml2.a in Frameworks */, 34F9E03914C4250B00E1BC69 /* CoreMedia.framework in Frameworks */, 34F9E03A14C4250B00E1BC69 /* CoreVideo.framework in Frameworks */, - 34F9E02814C4214500E1BC69 /* libeXosip2.a in Frameworks */, + F079D96B199A68A5009C58AA /* libpolarssl.a in Frameworks */, + F079D960199A6864009C58AA /* libbellesip.a in Frameworks */, + F079D975199A68BA009C58AA /* libbzrtp.a in Frameworks */, 34F9E02914C4214500E1BC69 /* libgsm.a in Frameworks */, 34F9E02A14C4214500E1BC69 /* liblinphone.a in Frameworks */, 34F9E02C14C4214500E1BC69 /* libortp.a in Frameworks */, - 34F9E02D14C4214500E1BC69 /* libosip2.a in Frameworks */, - 34F9E02E14C4214500E1BC69 /* libosipparser2.a in Frameworks */, 34F9E02F14C4214500E1BC69 /* libspeex.a in Frameworks */, 34F9E03014C4214500E1BC69 /* libspeexdsp.a in Frameworks */, 34F9E03114C4214500E1BC69 /* libsrtp.a in Frameworks */, 34F9E03214C4214500E1BC69 /* libvpx.a in Frameworks */, 34F9E02614C4212F00E1BC69 /* OpenGLES.framework in Frameworks */, 34F9E02714C4212F00E1BC69 /* QuartzCore.framework in Frameworks */, - 22E5AFD1133A2E760044EA25 /* libssl.a in Frameworks */, - 22E5AFD2133A2E760044EA25 /* libcrypto.a in Frameworks */, 229499EB12A5433F00D6CF48 /* Foundation.framework in Frameworks */, + F079D965199A6871009C58AA /* libantlr3c.a in Frameworks */, 229499EC12A5433F00D6CF48 /* UIKit.framework in Frameworks */, + F079D979199A68BA009C58AA /* libopus.a in Frameworks */, 229499ED12A5433F00D6CF48 /* CoreGraphics.framework in Frameworks */, 229499F812A5433F00D6CF48 /* CFNetwork.framework in Frameworks */, 229499F912A5433F00D6CF48 /* CoreAudio.framework in Frameworks */, @@ -350,38 +368,11 @@ 29B97314FDCFA39411CA2CEA /* CustomTemplate */ = { isa = PBXGroup; children = ( - 34F9E03614C424AF00E1BC69 /* CoreMedia.framework */, - 34F9E03314C4247A00E1BC69 /* AVFoundation.framework */, - 34F9E00A14C4202100E1BC69 /* QuartzCore.framework */, - 34F9E00814C41FE900E1BC69 /* CoreVideo.framework */, - 34F9E00214C41FB400E1BC69 /* OpenGLES.framework */, - 154E1A991715644400A0D168 /* libavcodec.a */, - 154E1A971715642E00A0D168 /* libavutil.a */, - 22E5AFD0133A2E760044EA25 /* libcrypto.a */, - 34F9DFEB14C41EBA00E1BC69 /* libeXosip2.a */, - 34F9DFEC14C41EBA00E1BC69 /* libgsm.a */, - 34F9DFED14C41EBA00E1BC69 /* libilbc.a */, - 34F9DFEE14C41EBA00E1BC69 /* liblinphone.a */, - 154E1A931715638900A0D168 /* libmediastreamer_base.a */, - 154E1A951715639A00A0D168 /* libmediastreamer_voip.a */, - 34F9DFF014C41EBA00E1BC69 /* libortp.a */, - 34F9DFF114C41EBA00E1BC69 /* libosip2.a */, - 34F9DFF214C41EBA00E1BC69 /* libosipparser2.a */, - 34F9DFF314C41EBA00E1BC69 /* libspeex.a */, - 34F9DFF414C41EBA00E1BC69 /* libspeexdsp.a */, - 34F9E00414C41FCF00E1BC69 /* libsrtp.a */, - 22E5AFCF133A2E760044EA25 /* libssl.a */, - 154E1A9B1715645F00A0D168 /* libswscale.a */, - 34F9E00514C41FCF00E1BC69 /* libvpx.a */, 080E96DDFE201D6D7F000001 /* Classes */, 29B97315FDCFA39411CA2CEA /* Other Sources */, 29B97317FDCFA39411CA2CEA /* Resources */, 29B97323FDCFA39411CA2CEA /* Frameworks */, 19C28FACFE9D520D11CA2CBB /* Products */, - 2220D5D51278461C008F2C2E /* AudioUnit.framework */, - 2220D5D71278461C008F2C2E /* CFNetwork.framework */, - 2220D5D91278461C008F2C2E /* CoreAudio.framework */, - 2220D5E912784672008F2C2E /* AudioToolbox.framework */, 22D1B6A012A3E159001AE361 /* libresolv.dylib */, ); name = CustomTemplate; @@ -410,6 +401,35 @@ 29B97323FDCFA39411CA2CEA /* Frameworks */ = { isa = PBXGroup; children = ( + F079D97A199A6905009C58AA /* libsqlite3.dylib */, + 154E1A991715644400A0D168 /* libavcodec.a */, + 154E1A971715642E00A0D168 /* libavutil.a */, + 34F9DFEC14C41EBA00E1BC69 /* libgsm.a */, + F079D961199A6871009C58AA /* libantlr3c.a */, + 34F9DFED14C41EBA00E1BC69 /* libilbc.a */, + 34F9DFEE14C41EBA00E1BC69 /* liblinphone.a */, + 154E1A931715638900A0D168 /* libmediastreamer_base.a */, + 154E1A951715639A00A0D168 /* libmediastreamer_voip.a */, + 34F9DFF014C41EBA00E1BC69 /* libortp.a */, + F079D966199A68A5009C58AA /* libpolarssl.a */, + F079D967199A68A5009C58AA /* libxml2.a */, + F079D970199A68BA009C58AA /* libbzrtp.a */, + F079D971199A68BA009C58AA /* libopus.a */, + F079D95C199A6864009C58AA /* libbellesip.a */, + 34F9DFF314C41EBA00E1BC69 /* libspeex.a */, + 34F9DFF414C41EBA00E1BC69 /* libspeexdsp.a */, + 34F9E00414C41FCF00E1BC69 /* libsrtp.a */, + 154E1A9B1715645F00A0D168 /* libswscale.a */, + 34F9E00514C41FCF00E1BC69 /* libvpx.a */, + 34F9E03614C424AF00E1BC69 /* CoreMedia.framework */, + 34F9E03314C4247A00E1BC69 /* AVFoundation.framework */, + 34F9E00A14C4202100E1BC69 /* QuartzCore.framework */, + 34F9E00814C41FE900E1BC69 /* CoreVideo.framework */, + 34F9E00214C41FB400E1BC69 /* OpenGLES.framework */, + 2220D5D51278461C008F2C2E /* AudioUnit.framework */, + 2220D5D71278461C008F2C2E /* CFNetwork.framework */, + 2220D5D91278461C008F2C2E /* CoreAudio.framework */, + 2220D5E912784672008F2C2E /* AudioToolbox.framework */, 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */, 1D30AB110D05D00D00671497 /* Foundation.framework */, 288765FC0DF74451002DB57D /* CoreGraphics.framework */, @@ -493,8 +513,11 @@ /* Begin PBXProject section */ 29B97313FDCFA39411CA2CEA /* Project object */ = { isa = PBXProject; + attributes = { + LastUpgradeCheck = 0510; + }; buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "hello-world" */; - compatibilityVersion = "Xcode 3.1"; + compatibilityVersion = "Xcode 3.2"; developmentRegion = English; hasScannedForEncodings = 1; knownRegions = ( @@ -591,7 +614,7 @@ GCC_OPTIMIZATION_LEVEL = 0; GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = hello_world_Prefix.pch; - GCC_VERSION = com.apple.compilers.llvmgcc42; + GCC_VERSION = ""; INFOPLIST_FILE = "helloworld-Info.plist"; IPHONEOS_DEPLOYMENT_TARGET = 3.1; LIBRARY_SEARCH_PATHS = ( @@ -610,7 +633,7 @@ COPY_PHASE_STRIP = YES; GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = hello_world_Prefix.pch; - GCC_VERSION = com.apple.compilers.llvmgcc42; + GCC_VERSION = ""; INFOPLIST_FILE = "helloworld-Info.plist"; IPHONEOS_DEPLOYMENT_TARGET = 3.1; LIBRARY_SEARCH_PATHS = ( @@ -632,7 +655,7 @@ GCC_OPTIMIZATION_LEVEL = 0; GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = hello_world_Prefix.pch; - GCC_VERSION = com.apple.compilers.llvmgcc42; + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; INFOPLIST_FILE = "helloworld-Info.plist"; IPHONEOS_DEPLOYMENT_TARGET = 3.1; LIBRARY_SEARCH_PATHS = ( @@ -652,7 +675,7 @@ COPY_PHASE_STRIP = YES; GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = hello_world_Prefix.pch; - GCC_VERSION = com.apple.compilers.llvmgcc42; + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; INFOPLIST_FILE = "helloworld-Info.plist"; IPHONEOS_DEPLOYMENT_TARGET = 3.1; LIBRARY_SEARCH_PATHS = ( @@ -675,7 +698,7 @@ GCC_OPTIMIZATION_LEVEL = 0; GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = hello_world_Prefix.pch; - GCC_VERSION = com.apple.compilers.llvmgcc42; + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; INFOPLIST_FILE = "helloworld-Info.plist"; IPHONEOS_DEPLOYMENT_TARGET = 3.1; LIBRARY_SEARCH_PATHS = ( @@ -695,7 +718,7 @@ COPY_PHASE_STRIP = YES; GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = hello_world_Prefix.pch; - GCC_VERSION = com.apple.compilers.llvmgcc42; + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; INFOPLIST_FILE = "helloworld-Info.plist"; IPHONEOS_DEPLOYMENT_TARGET = 3.1; LIBRARY_SEARCH_PATHS = ( @@ -718,7 +741,7 @@ GCC_OPTIMIZATION_LEVEL = 0; GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = hello_world_Prefix.pch; - GCC_VERSION = com.apple.compilers.llvmgcc42; + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; INFOPLIST_FILE = "helloworld-Info.plist"; IPHONEOS_DEPLOYMENT_TARGET = 3.1; LIBRARY_SEARCH_PATHS = ( @@ -738,7 +761,7 @@ COPY_PHASE_STRIP = YES; GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = hello_world_Prefix.pch; - GCC_VERSION = com.apple.compilers.llvmgcc42; + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; INFOPLIST_FILE = "helloworld-Info.plist"; IPHONEOS_DEPLOYMENT_TARGET = 3.1; LIBRARY_SEARCH_PATHS = ( @@ -764,7 +787,7 @@ HEADER_SEARCH_PATHS = "$(SRCROOT)/../../liblinphone-sdk/apple-darwin/include"; LIBRARY_SEARCH_PATHS = "$(SRCROOT)/../../liblinphone-sdk/apple-darwin/lib"; PREBINDING = NO; - SDKROOT = iphoneos4.0; + SDKROOT = iphoneos; }; name = Debug; }; @@ -780,7 +803,7 @@ LIBRARY_SEARCH_PATHS = "$(SRCROOT)/../../liblinphone-sdk/apple-darwin/lib"; OTHER_CFLAGS = "-DNS_BLOCK_ASSERTIONS=1"; PREBINDING = NO; - SDKROOT = iphoneos4.0; + SDKROOT = iphoneos; }; name = Release; }; From 172691fc9cfa95a0cedc7a2b341185aee63dc8d3 Mon Sep 17 00:00:00 2001 From: Guillaume BIENKOWSKI Date: Wed, 13 Aug 2014 11:07:26 +0200 Subject: [PATCH 24/39] Don't build sdk twice --- submodules/build/Makefile | 1 - 1 file changed, 1 deletion(-) diff --git a/submodules/build/Makefile b/submodules/build/Makefile index fc8f33d18..dedb3cd7b 100644 --- a/submodules/build/Makefile +++ b/submodules/build/Makefile @@ -110,7 +110,6 @@ sdk: make -f builder-iphone-os.mk delivery-sdk build: broadcast_all sdk - make -f builder-iphone-os.mk delivery-sdk ipa: build broadcast_ipa From 1766ebdfe72f4951db81ac6f6d2117781bfde80a Mon Sep 17 00:00:00 2001 From: Guillaume BIENKOWSKI Date: Wed, 13 Aug 2014 11:43:44 +0200 Subject: [PATCH 25/39] Add the User ID specifier for advanced authentication. Since the account setup was getting a bit big, I added a button to switch to advanced mode and hide the non-advanced settings by default. --- Classes/LinphoneCoreSettingsStore.m | 14 +++++--- Classes/SettingsViewController.m | 36 +++++++++++++++---- Settings/InAppSettings.bundle/Root.plist | 28 +++++++++++++++ .../en.lproj/Root.strings | 3 ++ .../fr.lproj/Root.strings | 3 ++ .../ru.lproj/Root.strings | 3 ++ 6 files changed, 76 insertions(+), 11 deletions(-) diff --git a/Classes/LinphoneCoreSettingsStore.m b/Classes/LinphoneCoreSettingsStore.m index 616e2c6fe..e893b9326 100644 --- a/Classes/LinphoneCoreSettingsStore.m +++ b/Classes/LinphoneCoreSettingsStore.m @@ -173,12 +173,12 @@ extern void linphone_iphone_log_handler(int lev, const char *fmt, va_list args); if (elem && (ai=(LinphoneAuthInfo*)elem->data)){ [self setString: linphone_auth_info_get_passwd(ai) forKey:@"password_preference"]; [self setString: linphone_auth_info_get_ha1(ai) forKey:@"ha1_preference"]; // hidden but useful if provisioned + [self setString:linphone_auth_info_get_userid(ai) forKey:@"userid_preference"]; } } { [self setString: linphone_core_get_stun_server(lc) forKey:@"stun_preference"]; - [self - setBool:linphone_core_get_firewall_policy(lc)==LinphonePolicyUseIce forKey:@"ice_preference"]; + [self setBool:linphone_core_get_firewall_policy(lc)==LinphonePolicyUseIce forKey:@"ice_preference"]; } { @@ -188,7 +188,9 @@ extern void linphone_iphone_log_handler(int lev, const char *fmt, va_list args); [self setInteger:lp_config_get_int(conf, "audio", "codec_bitrate_limit", kLinphoneAudioVbrCodecDefaultBitrate) forKey:@"audio_codec_bitrate_limit_preference"]; } - + + [self setBool:lp_config_get_int(conf, LINPHONERC_APPLICATION_KEY, "advanced_account_preference", 0) forKey:@"advanced_account_preference"]; + { LinphoneMediaEncryption menc=linphone_core_get_media_encryption(lc); const char *val; @@ -345,6 +347,7 @@ extern void linphone_iphone_log_handler(int lev, const char *fmt, va_list args); //mandatory parameters NSString* username = [self stringForKey:@"username_preference"]; + NSString* userID = [self stringForKey:@"userid_preference"]; NSString* domain = [self stringForKey:@"domain_preference"]; NSString* transport = [self stringForKey:@"transport_preference"]; NSString* accountHa1 = [self stringForKey:@"ha1_preference"]; @@ -397,7 +400,8 @@ extern void linphone_iphone_log_handler(int lev, const char *fmt, va_list args); // add username password LinphoneAddress *from = linphone_address_new(identity); if (from != 0){ - info=linphone_auth_info_new(linphone_address_get_username(from),NULL,password,ha1,NULL,linphone_proxy_config_get_domain(proxyCfg)); + const char* userid_str = (userID != nil)? [userID UTF8String] : NULL; + info=linphone_auth_info_new(linphone_address_get_username(from),userid_str,password,ha1,NULL,linphone_proxy_config_get_domain(proxyCfg)); linphone_address_destroy(from); } @@ -656,7 +660,7 @@ extern void linphone_iphone_log_handler(int lev, const char *fmt, va_list args); lp_config_set_int(config, LINPHONERC_APPLICATION_KEY, "backgroundmode_preference", isbackgroundModeEnabled); lp_config_set_int(config, LINPHONERC_APPLICATION_KEY, "start_at_boot_preference", [self boolForKey:@"start_at_boot_preference"]); lp_config_set_int(config, LINPHONERC_APPLICATION_KEY, "autoanswer_notif_preference", [self boolForKey:@"autoanswer_notif_preference"]); - + lp_config_set_int(config, LINPHONERC_APPLICATION_KEY, "advanced_account_preference", [self boolForKey:@"advanced_account_preference"]); BOOL firstloginview = [self boolForKey:@"enable_first_login_view_preference"]; lp_config_set_int(config, LINPHONERC_APPLICATION_KEY, "enable_first_login_view_preference", firstloginview); diff --git a/Classes/SettingsViewController.m b/Classes/SettingsViewController.m index 458acc1c9..702df5c96 100644 --- a/Classes/SettingsViewController.m +++ b/Classes/SettingsViewController.m @@ -540,7 +540,23 @@ static UICompositeViewDescription *compositeDescription = nil; [hiddenKeys addObject:@"console_button"]; } [settingsController setHiddenKeys:hiddenKeys animated:TRUE]; - } + } else if( [@"advanced_account_preference" compare:notif.object] == NSOrderedSame) { + BOOL advanced = [[notif.userInfo objectForKey:@"advanced_account_preference"] boolValue]; + NSMutableSet *hiddenKeys = [NSMutableSet setWithSet:[settingsController hiddenKeys]]; + + if( advanced ){ + [hiddenKeys removeObject:@"userid_preference"]; + [hiddenKeys removeObject:@"proxy_preference"]; + [hiddenKeys removeObject:@"outbound_proxy_preference"]; + [hiddenKeys removeObject:@"avpf_preference"]; + } else { + [hiddenKeys addObject:@"userid_preference"]; + [hiddenKeys addObject:@"proxy_preference"]; + [hiddenKeys addObject:@"outbound_proxy_preference"]; + [hiddenKeys addObject:@"avpf_preference"]; + } + [settingsController setHiddenKeys:hiddenKeys animated:TRUE]; + } } @@ -616,6 +632,7 @@ static UICompositeViewDescription *compositeDescription = nil; if(![LinphoneManager isLcReady]) { [LinphoneLogger log:LinphoneLoggerWarning format:@"Can't filter settings: Linphone core not read"]; } + LinphoneManager* lm = [LinphoneManager instance]; NSMutableSet *hiddenKeys = [NSMutableSet set]; #ifndef DEBUG @@ -650,7 +667,7 @@ static UICompositeViewDescription *compositeDescription = nil; [hiddenKeys addObject:@"backgroundmode_preference"]; [hiddenKeys addObject:@"start_at_boot_preference"]; } else { - if(![[LinphoneManager instance] lpConfigBoolForKey:@"backgroundmode_preference"]) { + if(![lm lpConfigBoolForKey:@"backgroundmode_preference"]) { [hiddenKeys addObject:@"start_at_boot_preference"]; } } @@ -668,7 +685,7 @@ static UICompositeViewDescription *compositeDescription = nil; [hiddenKeys addObjectsFromArray:[[LinphoneManager unsupportedCodecs] allObjects]]; - BOOL random_port = [[LinphoneManager instance] lpConfigBoolForKey:@"random_port_preference"]; + BOOL random_port = [lm lpConfigBoolForKey:@"random_port_preference"]; if(random_port) { [hiddenKeys addObject:@"port_preference"]; } @@ -677,21 +694,28 @@ static UICompositeViewDescription *compositeDescription = nil; [hiddenKeys addObject:@"ice_preference"]; } - if(![[LinphoneManager instance] lpConfigBoolForKey:@"debugenable_preference"]) { + if(![lm lpConfigBoolForKey:@"debugenable_preference"]) { [hiddenKeys addObject:@"console_button"]; } if(![LinphoneManager runningOnIpad]) { [hiddenKeys addObject:@"preview_preference"]; } - if([[LinphoneManager instance] lpConfigBoolForKey:@"hide_run_assistant_preference"]) { + if([lm lpConfigBoolForKey:@"hide_run_assistant_preference"]) { [hiddenKeys addObject:@"wizard_button"]; } if (!linphone_core_tunnel_available()){ [hiddenKeys addObject:@"tunnel_menu"]; } - + + if( ![lm lpConfigBoolForKey:@"advanced_account_preference"] ){ + [hiddenKeys addObject:@"userid_preference"]; + [hiddenKeys addObject:@"proxy_preference"]; + [hiddenKeys addObject:@"outbound_proxy_preference"]; + [hiddenKeys addObject:@"avpf_preference"]; + } + return hiddenKeys; } diff --git a/Settings/InAppSettings.bundle/Root.plist b/Settings/InAppSettings.bundle/Root.plist index edbd83561..dccfa9342 100644 --- a/Settings/InAppSettings.bundle/Root.plist +++ b/Settings/InAppSettings.bundle/Root.plist @@ -36,6 +36,24 @@ Type PSTextFieldSpecifier + + AutocapitalizationType + None + AutocorrectionType + No + DefaultValue + + IsSecure + + Key + userid_preference + KeyboardType + Alphabet + Title + User ID + Type + PSTextFieldSpecifier + AutocapitalizationType None @@ -132,6 +150,16 @@ Type PSToggleSwitchSpecifier + + Type + PSToggleSwitchSpecifier + Title + Advanced account + Key + advanced_account_preference + DefaultValue + + Title Settings diff --git a/Settings/InAppSettings.bundle/en.lproj/Root.strings b/Settings/InAppSettings.bundle/en.lproj/Root.strings index 536d4563e..1a85d55e8 100644 --- a/Settings/InAppSettings.bundle/en.lproj/Root.strings +++ b/Settings/InAppSettings.bundle/en.lproj/Root.strings @@ -7,6 +7,9 @@ /* User name */ "User name" = "User name"; +/* User ID */ +"User ID" = "User ID"; + /* Password */ "Password" = "Password"; diff --git a/Settings/InAppSettings.bundle/fr.lproj/Root.strings b/Settings/InAppSettings.bundle/fr.lproj/Root.strings index e075895e0..89e7a7acc 100644 --- a/Settings/InAppSettings.bundle/fr.lproj/Root.strings +++ b/Settings/InAppSettings.bundle/fr.lproj/Root.strings @@ -7,6 +7,9 @@ /* User name */ "User name" = "Nom d'utilisateur"; +/* User name */ +"User ID" = "ID d'utilisateur"; + /* Password */ "Password" = "Mot de passe"; diff --git a/Settings/InAppSettings.bundle/ru.lproj/Root.strings b/Settings/InAppSettings.bundle/ru.lproj/Root.strings index 066c31782..9ab5a7195 100644 --- a/Settings/InAppSettings.bundle/ru.lproj/Root.strings +++ b/Settings/InAppSettings.bundle/ru.lproj/Root.strings @@ -7,6 +7,9 @@ /* User name */ "User name" = "Имя пользователя"; +/* User name */ +"User ID" = "ID пользователя"; + /* Password */ "Password" = "Пароль"; From 20cde0f4a6ff689f0e7d138b65e6eec51fe3a34f Mon Sep 17 00:00:00 2001 From: Guillaume BIENKOWSKI Date: Tue, 19 Aug 2014 16:58:01 +0200 Subject: [PATCH 26/39] update linphone --- submodules/linphone | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/submodules/linphone b/submodules/linphone index d8cc5b600..031f33513 160000 --- a/submodules/linphone +++ b/submodules/linphone @@ -1 +1 @@ -Subproject commit d8cc5b600f3771b101f52c2da0761b78a3b4e947 +Subproject commit 031f3351356450b46cbbeaa28e42a9ccfa749fcc From d4c5abaf0b5612b7df6798892cf1282b185dce08 Mon Sep 17 00:00:00 2001 From: Guillaume BIENKOWSKI Date: Wed, 20 Aug 2014 11:08:34 +0200 Subject: [PATCH 27/39] Disable route if Outbound proxy is disabled. Default values in the linphonerc force the route to a non-suitable default value otherwise. --- Classes/LinphoneCoreSettingsStore.m | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Classes/LinphoneCoreSettingsStore.m b/Classes/LinphoneCoreSettingsStore.m index e893b9326..5ab8d7423 100644 --- a/Classes/LinphoneCoreSettingsStore.m +++ b/Classes/LinphoneCoreSettingsStore.m @@ -418,6 +418,8 @@ extern void linphone_iphone_log_handler(int lev, const char *fmt, va_list args); if (isOutboundProxy) linphone_proxy_config_set_route(proxyCfg, proxy); + else + linphone_proxy_config_set_route(proxyCfg, NULL); if ([self objectForKey:@"prefix_preference"]) { NSString* prefix = [self stringForKey:@"prefix_preference"]; From ba6145c813856f594286374c0925c4c23b80fe0f Mon Sep 17 00:00:00 2001 From: Guillaume BIENKOWSKI Date: Wed, 20 Aug 2014 11:08:49 +0200 Subject: [PATCH 28/39] Translate "Advanced account" --- Settings/InAppSettings.bundle/en.lproj/Root.strings | 2 ++ Settings/InAppSettings.bundle/fr.lproj/Root.strings | 2 ++ Settings/InAppSettings.bundle/ru.lproj/Root.strings | 2 ++ 3 files changed, 6 insertions(+) diff --git a/Settings/InAppSettings.bundle/en.lproj/Root.strings b/Settings/InAppSettings.bundle/en.lproj/Root.strings index 1a85d55e8..67ca3c869 100644 --- a/Settings/InAppSettings.bundle/en.lproj/Root.strings +++ b/Settings/InAppSettings.bundle/en.lproj/Root.strings @@ -58,3 +58,5 @@ /* Clear cache */ "Clear cache" = "Clear cache"; +/* Advanced Account */ +"Advanced account" = "Advanced account"; diff --git a/Settings/InAppSettings.bundle/fr.lproj/Root.strings b/Settings/InAppSettings.bundle/fr.lproj/Root.strings index 89e7a7acc..fa9675131 100644 --- a/Settings/InAppSettings.bundle/fr.lproj/Root.strings +++ b/Settings/InAppSettings.bundle/fr.lproj/Root.strings @@ -58,3 +58,5 @@ /* Clear cache */ "Clear cache" = "Clear cache"; +/* Advanced Account */ +"Advanced account" = "Compte avancé"; diff --git a/Settings/InAppSettings.bundle/ru.lproj/Root.strings b/Settings/InAppSettings.bundle/ru.lproj/Root.strings index 9ab5a7195..1360fe160 100644 --- a/Settings/InAppSettings.bundle/ru.lproj/Root.strings +++ b/Settings/InAppSettings.bundle/ru.lproj/Root.strings @@ -58,3 +58,5 @@ /* Clear cache */ "Clear cache" = "Clear cache"; +/* Advanced Account */ +"Advanced account" = "Дополнительный счет"; From 52928e7e1e94140dfd668493424f01c54ed370e9 Mon Sep 17 00:00:00 2001 From: Guillaume BIENKOWSKI Date: Wed, 20 Aug 2014 11:09:18 +0200 Subject: [PATCH 29/39] Don't wait for unregister when editing the account, and re-register after unsuccessful edit. --- Classes/LinphoneCoreSettingsStore.m | 28 +++++++++------------------- 1 file changed, 9 insertions(+), 19 deletions(-) diff --git a/Classes/LinphoneCoreSettingsStore.m b/Classes/LinphoneCoreSettingsStore.m index 5ab8d7423..c84efbe01 100644 --- a/Classes/LinphoneCoreSettingsStore.m +++ b/Classes/LinphoneCoreSettingsStore.m @@ -295,27 +295,13 @@ extern void linphone_iphone_log_handler(int lev, const char *fmt, va_list args); LpConfig* conf = linphone_core_get_config(lc); LinphoneManager* lLinphoneMgr = [LinphoneManager instance]; LinphoneProxyConfig* proxyCfg = NULL; + LinphoneProxyConfig* defaultProxy = NULL; NSString* error = nil; - /* unregister before modifying any settings */ - { - linphone_core_get_default_proxy(lc, &proxyCfg); - - if (proxyCfg) { - // this will force unregister WITHOUT destorying the proxyCfg object - linphone_proxy_config_edit(proxyCfg); - - int i=0; - while (linphone_proxy_config_get_state(proxyCfg)!=LinphoneRegistrationNone && - linphone_proxy_config_get_state(proxyCfg)!=LinphoneRegistrationCleared && - linphone_proxy_config_get_state(proxyCfg)!=LinphoneRegistrationFailed && - i++<40 ) { - linphone_core_iterate(lc); - usleep(10000); - } - } - } - + /* unregister before modifying any settings: editing will force unregistration */ + linphone_core_get_default_proxy(lc, &defaultProxy); + if (defaultProxy) linphone_proxy_config_edit(defaultProxy); + int port_preference = [self integerForKey:@"port_preference"]; BOOL random_port_preference = [self boolForKey:@"random_port_preference"]; @@ -454,7 +440,11 @@ extern void linphone_iphone_log_handler(int lev, const char *fmt, va_list args); ms_free(proxy); if( info ) linphone_auth_info_destroy(info); + + // in case of error, show an alert to the user if( error != nil ){ + // restart the registration on the old proxy + if( defaultProxy ) linphone_proxy_config_done(defaultProxy); [self alertAccountError:error]; } } From 7381c4d7cde1ffec2538ed3d30efaab332e31d41 Mon Sep 17 00:00:00 2001 From: Guillaume BIENKOWSKI Date: Wed, 20 Aug 2014 14:05:45 +0200 Subject: [PATCH 30/39] Revert mute fix: it actually slows down the audio too much. We'll have to find another solution. --- Classes/LinphoneManager.m | 5 ----- 1 file changed, 5 deletions(-) diff --git a/Classes/LinphoneManager.m b/Classes/LinphoneManager.m index 3ec024dd7..6e759060d 100644 --- a/Classes/LinphoneManager.m +++ b/Classes/LinphoneManager.m @@ -755,11 +755,6 @@ static void linphone_iphone_display_status(struct _LinphoneCore * lc, const char } } - if(state == LinphoneCallStreamsRunning ){ - [[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:nil]; - [[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayAndRecord error:nil]; - } - if (state == LinphoneCallConnected && !mCallCenter) { /*only register CT call center CB for connected call*/ [self setupGSMInteraction]; From c40a3bb189824059e0b566fd3048176786233d0a Mon Sep 17 00:00:00 2001 From: Guillaume BIENKOWSKI Date: Wed, 20 Aug 2014 14:24:41 +0200 Subject: [PATCH 31/39] Update linphone --- submodules/linphone | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/submodules/linphone b/submodules/linphone index 031f33513..c8bd7e100 160000 --- a/submodules/linphone +++ b/submodules/linphone @@ -1 +1 @@ -Subproject commit 031f3351356450b46cbbeaa28e42a9ccfa749fcc +Subproject commit c8bd7e1007c466d5f244c0e82e8d8e5ebb563c2f From fb8c895a218611f9a1fbdf545cf0457762b72407 Mon Sep 17 00:00:00 2001 From: Guillaume BIENKOWSKI Date: Wed, 20 Aug 2014 14:25:33 +0200 Subject: [PATCH 32/39] Update belle sip --- submodules/belle-sip | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/submodules/belle-sip b/submodules/belle-sip index 2b01dd695..0837e201b 160000 --- a/submodules/belle-sip +++ b/submodules/belle-sip @@ -1 +1 @@ -Subproject commit 2b01dd6952538bc512f7a1c5c8356d91fd9f2931 +Subproject commit 0837e201b8add7b91c149e701a2b637d6c1da74a From 1a3108b825dad2365cd9a530c06c81d2db6b4630 Mon Sep 17 00:00:00 2001 From: Guillaume BIENKOWSKI Date: Wed, 20 Aug 2014 17:07:59 +0200 Subject: [PATCH 33/39] Don't clear and create new proxy config each time an edit is performed. Prefer the edit()/done() --- Classes/LinphoneCoreSettingsStore.m | 113 ++++++++++++++-------------- 1 file changed, 57 insertions(+), 56 deletions(-) diff --git a/Classes/LinphoneCoreSettingsStore.m b/Classes/LinphoneCoreSettingsStore.m index c84efbe01..16d58ba71 100644 --- a/Classes/LinphoneCoreSettingsStore.m +++ b/Classes/LinphoneCoreSettingsStore.m @@ -293,15 +293,10 @@ extern void linphone_iphone_log_handler(int lev, const char *fmt, va_list args); - (void)synchronizeAccount { LinphoneCore *lc = [LinphoneManager getLc]; LpConfig* conf = linphone_core_get_config(lc); - LinphoneManager* lLinphoneMgr = [LinphoneManager instance]; LinphoneProxyConfig* proxyCfg = NULL; - LinphoneProxyConfig* defaultProxy = NULL; + BOOL isEditing = FALSE; NSString* error = nil; - /* unregister before modifying any settings: editing will force unregistration */ - linphone_core_get_default_proxy(lc, &defaultProxy); - if (defaultProxy) linphone_proxy_config_edit(defaultProxy); - int port_preference = [self integerForKey:@"port_preference"]; BOOL random_port_preference = [self boolForKey:@"random_port_preference"]; @@ -342,9 +337,17 @@ extern void linphone_iphone_log_handler(int lev, const char *fmt, va_list args); BOOL use_avpf = [self boolForKey:@"avpf_preference"]; if (username && [username length] >0 && domain && [domain length]>0) { - LinphoneAuthInfo *info = NULL; - + int expire = [self integerForKey:@"expire_preference"]; + BOOL isWifiOnly = [self boolForKey:@"wifi_only_preference"]; + BOOL pushnotification = [self boolForKey:@"pushnotification_preference"]; + NSString* prefix = [self stringForKey:@"prefix_preference"]; NSString* proxyAddress = [self stringForKey:@"proxy_preference"]; + + LinphoneAuthInfo *info = NULL; + const char* route = NULL; + + if( isWifiOnly && [LinphoneManager instance].connectivity == wwan ) expire = 0; + if ((!proxyAddress || [proxyAddress length] <1 ) && domain) { proxyAddress = [NSString stringWithFormat:@"sip:%@",domain] ; } else { @@ -364,26 +367,50 @@ extern void linphone_iphone_log_handler(int lev, const char *fmt, va_list args); proxy = linphone_address_as_string_uri_only(proxy_addr); } - //possible valid config detected - proxyCfg = linphone_core_create_proxy_config(lc); + // use proxy as route if outbound_proxy is enabled + route = isOutboundProxy? proxy : NULL; + + //possible valid config detected, try to modify current proxy or create new one if none existing + linphone_core_get_default_proxy(lc, &proxyCfg); + if( proxyCfg == NULL ){ + proxyCfg = linphone_core_create_proxy_config(lc); + } else { + isEditing = TRUE; + linphone_proxy_config_edit(proxyCfg); + } + char normalizedUserName[256]; LinphoneAddress* linphoneAddress = linphone_address_new("sip:user@domain.com"); linphone_proxy_config_normalize_number(proxyCfg, [username cStringUsingEncoding:[NSString defaultCStringEncoding]], normalizedUserName, sizeof(normalizedUserName)); linphone_address_set_username(linphoneAddress, normalizedUserName); linphone_address_set_domain(linphoneAddress, [domain cStringUsingEncoding:[NSString defaultCStringEncoding]]); + const char* identity = linphone_address_as_string_uri_only(linphoneAddress); const char* password = [accountPassword cStringUsingEncoding:[NSString defaultCStringEncoding]]; const char* ha1 = [accountHa1 cStringUsingEncoding:[NSString defaultCStringEncoding]]; - // configure proxy entries - if( linphone_proxy_config_set_identity(proxyCfg, identity) == -1 ) { error = NSLocalizedString(@"Invalid username or domain",nil); goto bad_proxy; } + + if( linphone_proxy_config_set_identity(proxyCfg, identity) == -1 ) { error = NSLocalizedString(@"Invalid username or domain",nil); goto bad_proxy;} if( linphone_proxy_config_set_server_addr(proxyCfg, proxy) == -1 ) { error = NSLocalizedString(@"Invalid proxy address", nil); goto bad_proxy; } + if( linphone_proxy_config_set_route(proxyCfg, route) == -1 ) { error = NSLocalizedString(@"Invalid route", nil); goto bad_proxy; } + + if ([prefix length]>0) { + linphone_proxy_config_set_dial_prefix(proxyCfg, [prefix cStringUsingEncoding:[NSString defaultCStringEncoding]]); + } + + if ([self objectForKey:@"substitute_+_by_00_preference"]) { + bool substitute_plus_by_00 = [self boolForKey:@"substitute_+_by_00_preference"]; + linphone_proxy_config_set_dial_escape_plus(proxyCfg,substitute_plus_by_00); + } + + lp_config_set_int(conf, LINPHONERC_APPLICATION_KEY, "pushnotification_preference", pushnotification); + if( pushnotification ) [[LinphoneManager instance] addPushTokenToProxyConfig:proxyCfg]; linphone_proxy_config_enable_register(proxyCfg, true); - linphone_proxy_config_enable_avpf(proxyCfg, use_avpf); - - // add username password + linphone_proxy_config_set_expires(proxyCfg, expire); + + // setup auth info LinphoneAddress *from = linphone_address_new(identity); if (from != 0){ const char* userid_str = (userID != nil)? [userID UTF8String] : NULL; @@ -391,47 +418,20 @@ extern void linphone_iphone_log_handler(int lev, const char *fmt, va_list args); linphone_address_destroy(from); } - int expire = [self integerForKey:@"expire_preference"]; - linphone_proxy_config_expires(proxyCfg,expire); - - BOOL isWifiOnly = [self boolForKey:@"wifi_only_preference"]; - - if (isWifiOnly && lLinphoneMgr.connectivity == wwan) { - linphone_proxy_config_expires(proxyCfg, 0); + // We reached here without hitting the goto: the new settings are correct, so replace the previous ones. + + // add auth info + linphone_core_clear_all_auth_info(lc); + if( info ) { linphone_core_add_auth_info(lc,info); } + + // setup new proxycfg + if( isEditing ){ + linphone_proxy_config_done(proxyCfg); } else { - linphone_proxy_config_expires(proxyCfg, expire); + // was a new proxy config, add it + linphone_core_add_proxy_config(lc, proxyCfg); + linphone_core_set_default_proxy(lc,proxyCfg); } - - if (isOutboundProxy) - linphone_proxy_config_set_route(proxyCfg, proxy); - else - linphone_proxy_config_set_route(proxyCfg, NULL); - - if ([self objectForKey:@"prefix_preference"]) { - NSString* prefix = [self stringForKey:@"prefix_preference"]; - if ([prefix length]>0) { - linphone_proxy_config_set_dial_prefix(proxyCfg, [prefix cStringUsingEncoding:[NSString defaultCStringEncoding]]); - } - } - if ([self objectForKey:@"substitute_+_by_00_preference"]) { - bool substitute_plus_by_00 = [self boolForKey:@"substitute_+_by_00_preference"]; - linphone_proxy_config_set_dial_escape_plus(proxyCfg,substitute_plus_by_00); - } - - BOOL pushnotification = [self boolForKey:@"pushnotification_preference"]; - lp_config_set_int(conf, LINPHONERC_APPLICATION_KEY, "pushnotification_preference", pushnotification); - - [[LinphoneManager instance] addPushTokenToProxyConfig:proxyCfg]; - - // We reached here: the new settings are correct, so replace the previous ones. - linphone_core_clear_proxy_config(lc); - linphone_core_clear_all_auth_info(lc); - - // add proxy and auth info - linphone_core_add_proxy_config(lc,proxyCfg); - linphone_core_set_default_proxy(lc,proxyCfg); - if( info ) - linphone_core_add_auth_info(lc,info); bad_proxy: if( linphoneAddress) @@ -443,8 +443,9 @@ extern void linphone_iphone_log_handler(int lev, const char *fmt, va_list args); // in case of error, show an alert to the user if( error != nil ){ - // restart the registration on the old proxy - if( defaultProxy ) linphone_proxy_config_done(defaultProxy); + if( isEditing ) linphone_proxy_config_done(proxyCfg); + else linphone_proxy_config_destroy(proxyCfg); + [self alertAccountError:error]; } } From c468a951482423f1fe3c60ca889521c0d53322a3 Mon Sep 17 00:00:00 2001 From: Guillaume BIENKOWSKI Date: Wed, 20 Aug 2014 17:08:48 +0200 Subject: [PATCH 34/39] Remove Localization suite from about: and space it up for readability --- Resources/licenses.html | 21 ++++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/Resources/licenses.html b/Resources/licenses.html index a30fe2bed..31b1bdba7 100644 --- a/Resources/licenses.html +++ b/Resources/licenses.html @@ -1,57 +1,72 @@
+

Third party softwares

+

CAAnimationBlocks

Xissburg
http://xissburg.com

+

ColorConverter

Matteo Alessani
http://www.extendi.it

+

DCRoundSwitch

Patrick Richards
http://domesticcat.com.au
MIT license

+

DTFoundation

Oliver Drobnik
http://www.cocoanetics.com
BSD license

+

HPGrowingTextView

Hans Pinckaers
http://hanspinckaers.com
MIT license

+

InAppSettingsKit

Luc Vandal, Edovia Inc., Ortwin Gentz, FutureTap GmbH
http://www.inappsettingskit.com/
BSD license

+

NinePatch

Tortuga 22, Inc.
http://www.tortuga22.com
Apache license

+

OrderedDictionary

Matt Gallagher
http://cocoawithlove.com

+

TPMultiLayoutViewController

Michael Tyson
http://atastypixel.com
MIT license

+

UACellBackgroundView

Matt Coneybeare
http://code.coneybeare.net

+

XMLRPC

Eric Czarny
http://divisiblebyzero.com/
MIT license

+

Graphics

+

Kerosine

http://www.kerosine.fr

+

Translations

+

Russian

Maxim Solodovnik
+ solomax666@gmail.com

-

Utilitary softwares

-

Localization Suite

-

http://www.loc-suite.org

+
From 048faee32e090d7be6f6d3422643e30e35d657d0 Mon Sep 17 00:00:00 2001 From: Guillaume BIENKOWSKI Date: Tue, 2 Sep 2014 12:47:00 +0200 Subject: [PATCH 35/39] Update belle sip and linphone --- submodules/belle-sip | 2 +- submodules/linphone | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/submodules/belle-sip b/submodules/belle-sip index 0837e201b..263deed9a 160000 --- a/submodules/belle-sip +++ b/submodules/belle-sip @@ -1 +1 @@ -Subproject commit 0837e201b8add7b91c149e701a2b637d6c1da74a +Subproject commit 263deed9a03fa5c5090c65d1499564f73006f186 diff --git a/submodules/linphone b/submodules/linphone index c8bd7e100..282a4cb88 160000 --- a/submodules/linphone +++ b/submodules/linphone @@ -1 +1 @@ -Subproject commit c8bd7e1007c466d5f244c0e82e8d8e5ebb563c2f +Subproject commit 282a4cb88d775e64f7acce4f184bfd979ebab56d From 0cbeaf5eb8127e362f31855848b0a83a5f48b3f9 Mon Sep 17 00:00:00 2001 From: Guillaume BIENKOWSKI Date: Fri, 11 Jul 2014 10:48:05 +0200 Subject: [PATCH 36/39] Bump version for hot fix --- linphone-Info.plist | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/linphone-Info.plist b/linphone-Info.plist index 42923db82..8481c1852 100644 --- a/linphone-Info.plist +++ b/linphone-Info.plist @@ -59,7 +59,7 @@ CFBundlePackageType APPL CFBundleShortVersionString - 3.7 + 3.7.1 CFBundleURLTypes @@ -100,7 +100,7 @@ CFBundleVersion - 2.2 + 2.2.1 NSMainNibFile LinphoneApp NSMainNibFile~ipad From d76ce7c3c391de5f26d45f2cc4fb3ffdeda38724 Mon Sep 17 00:00:00 2001 From: Guillaume BIENKOWSKI Date: Thu, 4 Sep 2014 11:53:17 +0200 Subject: [PATCH 37/39] Version is now 2.2.2 for app store --- linphone-Info.plist | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/linphone-Info.plist b/linphone-Info.plist index 8481c1852..ff5a81ded 100644 --- a/linphone-Info.plist +++ b/linphone-Info.plist @@ -100,7 +100,7 @@
CFBundleVersion - 2.2.1 + 2.2.2 NSMainNibFile LinphoneApp NSMainNibFile~ipad From a87ea36fabbd47a11e2555bd1dbc79acec5fa9c6 Mon Sep 17 00:00:00 2001 From: Guillaume BIENKOWSKI Date: Thu, 4 Sep 2014 16:34:59 +0200 Subject: [PATCH 38/39] Updated linphone and belle-sip --- submodules/belle-sip | 2 +- submodules/linphone | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/submodules/belle-sip b/submodules/belle-sip index 263deed9a..ee99cb136 160000 --- a/submodules/belle-sip +++ b/submodules/belle-sip @@ -1 +1 @@ -Subproject commit 263deed9a03fa5c5090c65d1499564f73006f186 +Subproject commit ee99cb136b23558faadab3b0c654561f4a92e371 diff --git a/submodules/linphone b/submodules/linphone index 282a4cb88..3c32fd439 160000 --- a/submodules/linphone +++ b/submodules/linphone @@ -1 +1 @@ -Subproject commit 282a4cb88d775e64f7acce4f184bfd979ebab56d +Subproject commit 3c32fd43972ad9560f33e1f056ad7be694d8e685 From cf9359bf926e60645a90aa9648b4fb129d51b8aa Mon Sep 17 00:00:00 2001 From: Guillaume BIENKOWSKI Date: Thu, 4 Sep 2014 17:08:40 +0200 Subject: [PATCH 39/39] Bump "bundle short version" too.. --- linphone-Info.plist | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/linphone-Info.plist b/linphone-Info.plist index ff5a81ded..1fa197020 100644 --- a/linphone-Info.plist +++ b/linphone-Info.plist @@ -59,7 +59,7 @@ CFBundlePackageType APPL CFBundleShortVersionString - 3.7.1 + 3.7.2 CFBundleURLTypes