mirror of
https://gitlab.linphone.org/BC/public/linphone-iphone.git
synced 2026-01-17 11:08:06 +00:00
Merge branch 'dev_cmake'
This commit is contained in:
commit
13c099870d
17 changed files with 327 additions and 52 deletions
2
.gitignore
vendored
2
.gitignore
vendored
|
|
@ -8,3 +8,5 @@ Classes/LinphoneIOSVersion.h
|
|||
Pods/
|
||||
build
|
||||
test-reports
|
||||
WORK
|
||||
Makefile
|
||||
|
|
|
|||
4
.gitmodules
vendored
4
.gitmodules
vendored
|
|
@ -85,3 +85,7 @@
|
|||
[submodule "submodules/cmake-builder"]
|
||||
path = submodules/cmake-builder
|
||||
url = git://git.linphone.org/linphone-cmake-builder.git
|
||||
[submodule "submodules/externals/vo-amrwbenc"]
|
||||
path = submodules/externals/vo-amrwbenc
|
||||
url = git://git.code.sf.net/p/opencore-amr/vo-amrwbenc
|
||||
ignore = dirty
|
||||
|
|
|
|||
|
|
@ -8,7 +8,8 @@
|
|||
|
||||
/* Begin PBXBuildFile section */
|
||||
045B5CB318D72E9A0088350C /* libbzrtp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 045B5CB218D72E9A0088350C /* libbzrtp.a */; };
|
||||
15017E701773578400784ACB /* libxml2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 15017E6F1773578400784ACB /* libxml2.a */; };
|
||||
152F22341B15E83B008C0621 /* libilbcrfc3951.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 152F22331B15E83B008C0621 /* libilbcrfc3951.a */; };
|
||||
152F22361B15E889008C0621 /* libxml2.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 152F22351B15E889008C0621 /* libxml2.dylib */; };
|
||||
1560821F18EEF26100765332 /* libmsopenh264.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1560821E18EEF26100765332 /* libmsopenh264.a */; };
|
||||
1599105316F746B2007BF52B /* route_bluetooth_off_default_landscape.png in Resources */ = {isa = PBXBuildFile; fileRef = 1599104316F746B2007BF52B /* route_bluetooth_off_default_landscape.png */; };
|
||||
1599105516F746B2007BF52B /* route_bluetooth_off_disabled_landscape.png in Resources */ = {isa = PBXBuildFile; fileRef = 1599104416F746B2007BF52B /* route_bluetooth_off_disabled_landscape.png */; };
|
||||
|
|
@ -42,6 +43,8 @@
|
|||
15AF3C9A16F37A5D00FC52EC /* routes_disabled.png in Resources */ = {isa = PBXBuildFile; fileRef = 15AF3C9516F37A5D00FC52EC /* routes_disabled.png */; };
|
||||
15AF3C9C16F37A5D00FC52EC /* routes_over.png in Resources */ = {isa = PBXBuildFile; fileRef = 15AF3C9616F37A5D00FC52EC /* routes_over.png */; };
|
||||
15AF3C9E16F37A5D00FC52EC /* routes_selected.png in Resources */ = {isa = PBXBuildFile; fileRef = 15AF3C9716F37A5D00FC52EC /* routes_selected.png */; };
|
||||
15F728731B16FF8B00A1C901 /* libilbcrfc3951.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 152F22331B15E83B008C0621 /* libilbcrfc3951.a */; };
|
||||
15F728741B16FF9A00A1C901 /* libxml2.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 152F22351B15E889008C0621 /* libxml2.dylib */; };
|
||||
1D3623260D0F684500981E51 /* LinphoneAppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 1D3623250D0F684500981E51 /* LinphoneAppDelegate.m */; };
|
||||
1D60589B0D05DD56006BFB54 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 29B97316FDCFA39411CA2CEA /* main.m */; };
|
||||
1D60589F0D05DD5A006BFB54 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D30AB110D05D00D00671497 /* Foundation.framework */; };
|
||||
|
|
@ -59,7 +62,6 @@
|
|||
22276E8513C73D3100210156 /* libswscale.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22276E8213C73D3100210156 /* libswscale.a */; };
|
||||
22276E8713C73D8A00210156 /* CoreVideo.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 22276E8613C73D8A00210156 /* CoreVideo.framework */; settings = {ATTRIBUTES = (Weak, ); }; };
|
||||
22276E8913C73DC000210156 /* CoreMedia.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 22276E8813C73DC000210156 /* CoreMedia.framework */; settings = {ATTRIBUTES = (Weak, ); }; };
|
||||
223148E41178A08200637D6A /* libilbc.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 223148E31178A08200637D6A /* libilbc.a */; };
|
||||
223148E61178A09900637D6A /* libmsilbc.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 223148E51178A09900637D6A /* libmsilbc.a */; };
|
||||
2234C8E915EE2F7F00E18E83 /* chat_message_delivered.png in Resources */ = {isa = PBXBuildFile; fileRef = 2234C8E715EE2F7F00E18E83 /* chat_message_delivered.png */; };
|
||||
2234C8EB15EE2F7F00E18E83 /* chat_message_not_delivered.png in Resources */ = {isa = PBXBuildFile; fileRef = 2234C8E815EE2F7F00E18E83 /* chat_message_not_delivered.png */; };
|
||||
|
|
@ -73,8 +75,6 @@
|
|||
224567C2107B968500F10948 /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 224567C1107B968500F10948 /* AVFoundation.framework */; settings = {ATTRIBUTES = (Weak, ); }; };
|
||||
2248E90E12F7E4CF00220D9C /* UIDigitButton.m in Sources */ = {isa = PBXBuildFile; fileRef = 2248E90D12F7E4CF00220D9C /* UIDigitButton.m */; };
|
||||
22509042196BD902007863F6 /* libopenh264.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22509041196BD902007863F6 /* libopenh264.a */; };
|
||||
225CB2FA11ABB76400628906 /* linphone-banner.png in Resources */ = {isa = PBXBuildFile; fileRef = 225CB2F911ABB76400628906 /* linphone-banner.png */; };
|
||||
226183AD1472527D0037138E /* libSKP_SILK_SDK.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 226183AA1472527D0037138E /* libSKP_SILK_SDK.a */; };
|
||||
226183AE1472527D0037138E /* libsrtp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 226183AB1472527D0037138E /* libsrtp.a */; };
|
||||
226183B0147259670037138E /* libmssilk.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 226183AF147259670037138E /* libmssilk.a */; };
|
||||
2264B6D211200342002C2C53 /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2264B6D111200342002C2C53 /* SystemConfiguration.framework */; };
|
||||
|
|
@ -88,8 +88,6 @@
|
|||
228697C411AC29B800E9E0CA /* CFNetwork.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 228697C311AC29B800E9E0CA /* CFNetwork.framework */; settings = {ATTRIBUTES = (Weak, ); }; };
|
||||
22968A5F12F875C600588287 /* UISpeakerButton.m in Sources */ = {isa = PBXBuildFile; fileRef = 22968A5E12F875C600588287 /* UISpeakerButton.m */; };
|
||||
22A10F3B11F8960300373793 /* libortp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220FAD2C10765B400068D98F /* libortp.a */; };
|
||||
22AA8AFD13D7125600B30535 /* libx264.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22AA8AFB13D7125500B30535 /* libx264.a */; };
|
||||
22AA8AFE13D7125600B30535 /* libmsx264.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22AA8AFC13D7125500B30535 /* libmsx264.a */; };
|
||||
22AA8B0113D83F6300B30535 /* UICamSwitch.m in Sources */ = {isa = PBXBuildFile; fileRef = 22AA8B0013D83F6300B30535 /* UICamSwitch.m */; };
|
||||
22AF73C21754C0D100BE8398 /* libopus.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22AF73C11754C0D000BE8398 /* libopus.a */; };
|
||||
22B5EFA310CE50BD00777D97 /* AddressBookUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 22B5EFA210CE50BD00777D97 /* AddressBookUI.framework */; };
|
||||
|
|
@ -737,26 +735,21 @@
|
|||
F0BB8C191936245300974404 /* libbellesip.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 223CA7E516D9255800EF1BEC /* libbellesip.a */; };
|
||||
F0BB8C1A1936245300974404 /* libbzrtp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 045B5CB218D72E9A0088350C /* libbzrtp.a */; };
|
||||
F0BB8C1B1936245300974404 /* libgsm.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220FAD2910765B400068D98F /* libgsm.a */; };
|
||||
F0BB8C1C1936245300974404 /* libilbc.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 223148E31178A08200637D6A /* libilbc.a */; };
|
||||
F0BB8C1D1936245300974404 /* libmsamr.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 226F2ED51344B0EF00F6EF27 /* libmsamr.a */; };
|
||||
F0BB8C1E1936245300974404 /* libmsbcg729.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 226CDADE14E2D0B800513B67 /* libmsbcg729.a */; };
|
||||
F0BB8C1F1936245300974404 /* libmsilbc.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 223148E51178A09900637D6A /* libmsilbc.a */; };
|
||||
F0BB8C201936245300974404 /* libmssilk.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 226183AF147259670037138E /* libmssilk.a */; };
|
||||
F0BB8C211936245300974404 /* libmsx264.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22AA8AFC13D7125500B30535 /* libmsx264.a */; };
|
||||
F0BB8C221936245300974404 /* libopencore-amrnb.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 226F2ED41344B0EF00F6EF27 /* libopencore-amrnb.a */; };
|
||||
F0BB8C231936245300974404 /* libopencore-amrwb.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 226F2ED31344B0EF00F6EF27 /* libopencore-amrwb.a */; };
|
||||
F0BB8C241936245300974404 /* libopus.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22AF73C11754C0D000BE8398 /* libopus.a */; };
|
||||
F0BB8C251936245300974404 /* libortp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220FAD2C10765B400068D98F /* libortp.a */; };
|
||||
F0BB8C261936245300974404 /* libpolarssl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 57B0E35F173C010400A476B8 /* libpolarssl.a */; };
|
||||
F0BB8C271936245300974404 /* libSKP_SILK_SDK.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 226183AA1472527D0037138E /* libSKP_SILK_SDK.a */; };
|
||||
F0BB8C281936245300974404 /* libspeex.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220FAD2F10765B400068D98F /* libspeex.a */; };
|
||||
F0BB8C291936245300974404 /* libspeexdsp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 220FAD3010765B400068D98F /* libspeexdsp.a */; };
|
||||
F0BB8C2A1936245300974404 /* libsrtp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 226183AB1472527D0037138E /* libsrtp.a */; };
|
||||
F0BB8C2B1936245300974404 /* libswscale.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22276E8213C73D3100210156 /* libswscale.a */; };
|
||||
F0BB8C2C1936245300974404 /* libtunnel.a in Frameworks */ = {isa = PBXBuildFile; fileRef = D30BF33216A427BC00AF0026 /* libtunnel.a */; };
|
||||
F0BB8C2D1936245300974404 /* libvpx.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 7066FC0B13E830E400EFC6DC /* libvpx.a */; };
|
||||
F0BB8C2E1936245300974404 /* libx264.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 22AA8AFB13D7125500B30535 /* libx264.a */; };
|
||||
F0BB8C2F1936245300974404 /* libxml2.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 15017E6F1773578400784ACB /* libxml2.a */; };
|
||||
F0BB8C301936246600974404 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2274402E106F335E006EC466 /* AudioToolbox.framework */; };
|
||||
F0BB8C331936247C00974404 /* libsqlite3.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = D32B6E2E15A5C0AC0033019F /* libsqlite3.dylib */; };
|
||||
F0BB8C35193624C800974404 /* libresolv.9.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = F0BB8C34193624C800974404 /* libresolv.9.dylib */; };
|
||||
|
|
@ -899,6 +892,8 @@
|
|||
/* Begin PBXFileReference section */
|
||||
045B5CB218D72E9A0088350C /* libbzrtp.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libbzrtp.a; path = "liblinphone-sdk/apple-darwin/lib/libbzrtp.a"; sourceTree = "<group>"; };
|
||||
15017E6F1773578400784ACB /* libxml2.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libxml2.a; path = "liblinphone-sdk/apple-darwin/lib/libxml2.a"; sourceTree = "<group>"; };
|
||||
152F22331B15E83B008C0621 /* libilbcrfc3951.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libilbcrfc3951.a; path = "liblinphone-sdk/apple-darwin/lib/libilbcrfc3951.a"; sourceTree = "<group>"; };
|
||||
152F22351B15E889008C0621 /* libxml2.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libxml2.dylib; path = usr/lib/libxml2.dylib; sourceTree = SDKROOT; };
|
||||
1560821E18EEF26100765332 /* libmsopenh264.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libmsopenh264.a; path = "liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins/libmsopenh264.a"; sourceTree = "<group>"; };
|
||||
1599104316F746B2007BF52B /* route_bluetooth_off_default_landscape.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = route_bluetooth_off_default_landscape.png; path = Resources/route_bluetooth_off_default_landscape.png; sourceTree = "<group>"; };
|
||||
1599104416F746B2007BF52B /* route_bluetooth_off_disabled_landscape.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = route_bluetooth_off_disabled_landscape.png; path = Resources/route_bluetooth_off_disabled_landscape.png; sourceTree = "<group>"; };
|
||||
|
|
@ -974,7 +969,6 @@
|
|||
2248E90C12F7E4CF00220D9C /* UIDigitButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UIDigitButton.h; sourceTree = "<group>"; };
|
||||
2248E90D12F7E4CF00220D9C /* UIDigitButton.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UIDigitButton.m; sourceTree = "<group>"; };
|
||||
22509041196BD902007863F6 /* libopenh264.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libopenh264.a; path = "liblinphone-sdk/apple-darwin/lib/libopenh264.a"; sourceTree = "<group>"; };
|
||||
225CB2F911ABB76400628906 /* linphone-banner.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = "linphone-banner.png"; path = "liblinphone-sdk/apple-darwin/share/pixmaps/linphone/linphone-banner.png"; sourceTree = "<group>"; };
|
||||
226183AA1472527D0037138E /* libSKP_SILK_SDK.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libSKP_SILK_SDK.a; path = "liblinphone-sdk/apple-darwin/lib/libSKP_SILK_SDK.a"; sourceTree = "<group>"; };
|
||||
226183AB1472527D0037138E /* libsrtp.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libsrtp.a; path = "liblinphone-sdk/apple-darwin/lib/libsrtp.a"; sourceTree = "<group>"; };
|
||||
226183AF147259670037138E /* libmssilk.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libmssilk.a; path = "liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins/libmssilk.a"; sourceTree = "<group>"; };
|
||||
|
|
@ -1871,11 +1865,12 @@
|
|||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
152F22361B15E889008C0621 /* libxml2.dylib in Frameworks */,
|
||||
152F22341B15E83B008C0621 /* libilbcrfc3951.a in Frameworks */,
|
||||
F0B026F31AA710AF00FF49F7 /* libiconv.dylib in Frameworks */,
|
||||
F05BAA621A5D594E00411815 /* libz.dylib in Frameworks */,
|
||||
1560821F18EEF26100765332 /* libmsopenh264.a in Frameworks */,
|
||||
22509042196BD902007863F6 /* libopenh264.a in Frameworks */,
|
||||
15017E701773578400784ACB /* libxml2.a in Frameworks */,
|
||||
22AF73C21754C0D100BE8398 /* libopus.a in Frameworks */,
|
||||
57B0E360173C010400A476B8 /* libpolarssl.a in Frameworks */,
|
||||
223CA7E616D9255800EF1BEC /* libantlr3c.a in Frameworks */,
|
||||
|
|
@ -1909,14 +1904,12 @@
|
|||
22276E8313C73D3100210156 /* libavcodec.a in Frameworks */,
|
||||
22276E8413C73D3100210156 /* libavutil.a in Frameworks */,
|
||||
220FAD3210765B400068D98F /* libgsm.a in Frameworks */,
|
||||
223148E41178A08200637D6A /* libilbc.a in Frameworks */,
|
||||
F476004B147AAF2800FFF19B /* liblinphone.a in Frameworks */,
|
||||
D37EE10916032DA4003608A6 /* libmediastreamer_base.a in Frameworks */,
|
||||
D37EE10A16032DA4003608A6 /* libmediastreamer_voip.a in Frameworks */,
|
||||
226F2ED81344B0EF00F6EF27 /* libmsamr.a in Frameworks */,
|
||||
223148E61178A09900637D6A /* libmsilbc.a in Frameworks */,
|
||||
226183B0147259670037138E /* libmssilk.a in Frameworks */,
|
||||
22AA8AFE13D7125600B30535 /* libmsx264.a in Frameworks */,
|
||||
22A10F3B11F8960300373793 /* libortp.a in Frameworks */,
|
||||
226F2ED71344B0EF00F6EF27 /* libopencore-amrnb.a in Frameworks */,
|
||||
226F2ED61344B0EF00F6EF27 /* libopencore-amrwb.a in Frameworks */,
|
||||
|
|
@ -1924,10 +1917,8 @@
|
|||
220FAD3810765B400068D98F /* libspeex.a in Frameworks */,
|
||||
220FAD3910765B400068D98F /* libspeexdsp.a in Frameworks */,
|
||||
226183AE1472527D0037138E /* libsrtp.a in Frameworks */,
|
||||
226183AD1472527D0037138E /* libSKP_SILK_SDK.a in Frameworks */,
|
||||
22276E8513C73D3100210156 /* libswscale.a in Frameworks */,
|
||||
7066FC0C13E830E400EFC6DC /* libvpx.a in Frameworks */,
|
||||
22AA8AFD13D7125600B30535 /* libx264.a in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
|
|
@ -1946,6 +1937,8 @@
|
|||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
15F728741B16FF9A00A1C901 /* libxml2.dylib in Frameworks */,
|
||||
15F728731B16FF8B00A1C901 /* libilbcrfc3951.a in Frameworks */,
|
||||
F0A54B0C1AD56F4600C22733 /* libc++.dylib in Frameworks */,
|
||||
F0A54B0D1AD56F4600C22733 /* libstdc++.dylib in Frameworks */,
|
||||
F08D468D1AA86849001E8CB5 /* libiconv.dylib in Frameworks */,
|
||||
|
|
@ -1963,7 +1956,6 @@
|
|||
F0BB8C1A1936245300974404 /* libbzrtp.a in Frameworks */,
|
||||
F0BB8C121936240300974404 /* libcunit.a in Frameworks */,
|
||||
F0BB8C1B1936245300974404 /* libgsm.a in Frameworks */,
|
||||
F0BB8C1C1936245300974404 /* libilbc.a in Frameworks */,
|
||||
F0BB8C131936242400974404 /* liblinphone.a in Frameworks */,
|
||||
F0BB8C10193623F300974404 /* liblinphonetester.a in Frameworks */,
|
||||
F0BB8C141936242400974404 /* libmediastreamer_base.a in Frameworks */,
|
||||
|
|
@ -1972,21 +1964,17 @@
|
|||
F0BB8C1E1936245300974404 /* libmsbcg729.a in Frameworks */,
|
||||
F0BB8C1F1936245300974404 /* libmsilbc.a in Frameworks */,
|
||||
F0BB8C201936245300974404 /* libmssilk.a in Frameworks */,
|
||||
F0BB8C211936245300974404 /* libmsx264.a in Frameworks */,
|
||||
F0BB8C221936245300974404 /* libopencore-amrnb.a in Frameworks */,
|
||||
F0BB8C231936245300974404 /* libopencore-amrwb.a in Frameworks */,
|
||||
F0BB8C241936245300974404 /* libopus.a in Frameworks */,
|
||||
F0BB8C251936245300974404 /* libortp.a in Frameworks */,
|
||||
F0BB8C261936245300974404 /* libpolarssl.a in Frameworks */,
|
||||
F0BB8C271936245300974404 /* libSKP_SILK_SDK.a in Frameworks */,
|
||||
F0BB8C281936245300974404 /* libspeex.a in Frameworks */,
|
||||
F0BB8C291936245300974404 /* libspeexdsp.a in Frameworks */,
|
||||
F0BB8C2A1936245300974404 /* libsrtp.a in Frameworks */,
|
||||
F0BB8C2B1936245300974404 /* libswscale.a in Frameworks */,
|
||||
F0BB8C2C1936245300974404 /* libtunnel.a in Frameworks */,
|
||||
F0BB8C2D1936245300974404 /* libvpx.a in Frameworks */,
|
||||
F0BB8C2E1936245300974404 /* libx264.a in Frameworks */,
|
||||
F0BB8C2F1936245300974404 /* libxml2.a in Frameworks */,
|
||||
F0BB8BD81936208100974404 /* UIKit.framework in Frameworks */,
|
||||
F0BB8BD61936208100974404 /* Foundation.framework in Frameworks */,
|
||||
);
|
||||
|
|
@ -2270,6 +2258,8 @@
|
|||
29B97323FDCFA39411CA2CEA /* Frameworks */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
152F22351B15E889008C0621 /* libxml2.dylib */,
|
||||
152F22331B15E83B008C0621 /* libilbcrfc3951.a */,
|
||||
F0FF66AA1ACAEEB0008A4486 /* IOKit.framework */,
|
||||
F0B026F21AA710AF00FF49F7 /* libiconv.dylib */,
|
||||
F05BAA611A5D594E00411815 /* libz.dylib */,
|
||||
|
|
@ -2781,7 +2771,6 @@
|
|||
D3432A5D158A4446001C6B0B /* led_error.png */,
|
||||
D3432A6F158A45AF001C6B0B /* led_inprogress.png */,
|
||||
D3012CC31610467D007CD926 /* linphone_logo.png */,
|
||||
225CB2F911ABB76400628906 /* linphone-banner.png */,
|
||||
D3EA5416159858A80037DC6B /* list_delete_default.png */,
|
||||
D3EA5417159858A80037DC6B /* list_delete_over.png */,
|
||||
D354981815876FE7000081D8 /* list_details_default.png */,
|
||||
|
|
@ -3338,7 +3327,6 @@
|
|||
files = (
|
||||
22F254811073D99800AC9B3F /* ringback.wav in Resources */,
|
||||
2237D4091084D7A9001383EE /* ring.wav in Resources */,
|
||||
225CB2FA11ABB76400628906 /* linphone-banner.png in Resources */,
|
||||
636316D11A1DEBCB0009B839 /* AboutViewController.xib in Resources */,
|
||||
2242E313125235120061DDCE /* ring.caf in Resources */,
|
||||
D38187C915FE346400C3EDCA /* FirstLoginViewController.xib in Resources */,
|
||||
|
|
|
|||
312
prepare.py
312
prepare.py
|
|
@ -24,48 +24,328 @@
|
|||
|
||||
import argparse
|
||||
import os
|
||||
import re
|
||||
import shutil
|
||||
import sys
|
||||
sys.dont_write_bytecode = True
|
||||
sys.path.insert(0, 'submodules/cmake-builder')
|
||||
import prepare
|
||||
|
||||
|
||||
platforms = ['all', 'devices', 'simulators', 'armv7', 'arm64', 'i386', 'x86_64']
|
||||
class IOSTarget(prepare.Target):
|
||||
def __init__(self, arch):
|
||||
prepare.Target.__init__(self, 'ios-' + arch)
|
||||
current_path = os.path.dirname(os.path.realpath(__file__))
|
||||
self.config_file = 'configs/config-ios-' + arch + '.cmake'
|
||||
self.toolchain_file = 'toolchains/toolchain-ios-' + arch + '.cmake'
|
||||
self.output = 'liblinphone-sdk/' + arch + '-apple-darwin.ios'
|
||||
self.additional_args = [
|
||||
'-DLINPHONE_BUILDER_EXTERNAL_SOURCE_PATH=' + current_path + '/submodules'
|
||||
]
|
||||
|
||||
def clean(self):
|
||||
if os.path.isdir('WORK'):
|
||||
shutil.rmtree('WORK', ignore_errors=False, onerror=self.handle_remove_read_only)
|
||||
if os.path.isdir('liblinphone-sdk'):
|
||||
shutil.rmtree('liblinphone-sdk', ignore_errors=False, onerror=self.handle_remove_read_only)
|
||||
|
||||
|
||||
class IOSi386Target(IOSTarget):
|
||||
def __init__(self):
|
||||
IOSTarget.__init__(self, 'i386')
|
||||
|
||||
class IOSx8664Target(IOSTarget):
|
||||
def __init__(self):
|
||||
IOSTarget.__init__(self, 'x86_64')
|
||||
|
||||
class IOSarmv7Target(IOSTarget):
|
||||
def __init__(self):
|
||||
IOSTarget.__init__(self, 'armv7')
|
||||
|
||||
class IOSarm64Target(IOSTarget):
|
||||
def __init__(self):
|
||||
IOSTarget.__init__(self, 'arm64')
|
||||
|
||||
|
||||
targets = {}
|
||||
targets[ 'i386'] = IOSi386Target()
|
||||
targets['x86_64'] = IOSx8664Target()
|
||||
targets[ 'armv7'] = IOSarmv7Target()
|
||||
targets[ 'arm64'] = IOSarm64Target()
|
||||
|
||||
archs_device = ['arm64', 'armv7']
|
||||
archs_simu = ['i386', 'x86_64']
|
||||
platforms = ['all', 'devices', 'simulators'] + archs_device + archs_simu
|
||||
|
||||
class PlatformListAction(argparse.Action):
|
||||
def __call__(self, parser, namespace, values, option_string=None):
|
||||
if values:
|
||||
for value in values:
|
||||
if value not in platforms:
|
||||
message = ("invalid platform: {0!r} (choose from {1})".format(value, ', '.join([repr(platform) for platform in platforms])))
|
||||
raise argparse.ArgumentError(self, message)
|
||||
setattr(namespace, self.dest, values)
|
||||
|
||||
def warning(platforms):
|
||||
gpl_third_parties_enabled = False
|
||||
regex = re.compile("^ENABLE_GPL_THIRD_PARTIES:BOOL=ON")
|
||||
f = open('WORK/ios-{arch}/cmake/CMakeCache.txt'.format(arch=platforms[0]), 'r')
|
||||
for line in f:
|
||||
if regex.match(line):
|
||||
gpl_third_parties_enabled = True
|
||||
break
|
||||
f.close()
|
||||
|
||||
if gpl_third_parties_enabled:
|
||||
print("""
|
||||
***************************************************************************
|
||||
***************************************************************************
|
||||
***** CAUTION, this liblinphone SDK is built using 3rd party GPL code *****
|
||||
***** Even if you acquired a proprietary license from Belledonne *****
|
||||
***** Communications, this SDK is GPL and GPL only. *****
|
||||
***** To disable 3rd party gpl code, please use: *****
|
||||
***** $ ./prepare.py -DENABLE_GPL_THIRD_PARTIES=NO *****
|
||||
***************************************************************************
|
||||
***************************************************************************
|
||||
""")
|
||||
else:
|
||||
print("""
|
||||
*****************************************************************
|
||||
*****************************************************************
|
||||
***** Linphone SDK without 3rd party GPL software *****
|
||||
***** If you acquired a proprietary license from Belledonne *****
|
||||
***** Communications, this SDK can be used to create *****
|
||||
***** a proprietary linphone-based application. *****
|
||||
*****************************************************************
|
||||
*****************************************************************
|
||||
""")
|
||||
|
||||
|
||||
def main(argv = None):
|
||||
if argv is None:
|
||||
argv = sys.argv
|
||||
argparser = argparse.ArgumentParser(description="Prepare build of Linphone and its dependencies.")
|
||||
argparser.add_argument('-c', '--clean', help="Clean a previous build instead of preparing a build.", action='store_true')
|
||||
argparser.add_argument('-C', '--veryclean', help="Clean a previous build and its installation directory.", action='store_true')
|
||||
argparser.add_argument('-c', '-C', '--clean', help="Clean a previous build instead of preparing a build.", action='store_true')
|
||||
argparser.add_argument('-d', '--debug', help="Prepare a debug build.", action='store_true')
|
||||
argparser.add_argument('-f', '--force', help="Force preparation, even if working directory already exist.", action='store_true')
|
||||
argparser.add_argument('-L', '--list-cmake-variables', help="List non-advanced CMake cache variables.", action='store_true', dest='list_cmake_variables')
|
||||
argparser.add_argument('platform', choices=platforms, help="The platform to build for.")
|
||||
argparser.add_argument('platform', nargs='*', action=PlatformListAction, default=['all'], help="The platform to build for (default is all), one of: {0}.".format(', '.join([repr(platform) for platform in platforms])))
|
||||
args, additional_args = argparser.parse_known_args()
|
||||
|
||||
selected_platforms = []
|
||||
if args.platform == 'all':
|
||||
selected_platforms += ['armv7', 'arm64', 'i386', 'x86_64']
|
||||
elif args.platform == 'devices':
|
||||
selected_platforms += ['armv7', 'arm64']
|
||||
elif args.platform == 'simulators':
|
||||
selected_platforms += ['i386', 'x86_64']
|
||||
else:
|
||||
selected_platforms += [args.platform]
|
||||
for platform in args.platform:
|
||||
if platform == 'all':
|
||||
selected_platforms += archs_device + archs_simu
|
||||
elif platform == 'devices':
|
||||
selected_platforms += archs_device
|
||||
elif platform == 'simulators':
|
||||
selected_platforms += archs_simu
|
||||
else:
|
||||
selected_platforms += [platform]
|
||||
selected_platforms = list(set(selected_platforms))
|
||||
|
||||
retcode = 0
|
||||
makefile_platforms = []
|
||||
for platform in selected_platforms:
|
||||
target = prepare.targets['ios-' + platform]
|
||||
target = targets[platform]
|
||||
|
||||
if args.veryclean:
|
||||
target.veryclean()
|
||||
elif args.clean:
|
||||
if args.clean:
|
||||
target.clean()
|
||||
else:
|
||||
if args.debug:
|
||||
additional_args += ["-DENABLE_DEBUG_LOGS=YES"]
|
||||
retcode = prepare.run(target, args.debug, False, args.list_cmake_variables, args.force, additional_args)
|
||||
if retcode != 0:
|
||||
return retcode
|
||||
makefile_platforms += [platform]
|
||||
|
||||
if makefile_platforms:
|
||||
packages = os.listdir('WORK/ios-' + makefile_platforms[0] + '/Build')
|
||||
packages.sort()
|
||||
arch_targets = ""
|
||||
for arch in makefile_platforms:
|
||||
arch_targets += """
|
||||
{arch}: all-{arch}
|
||||
|
||||
{arch}-build:
|
||||
@for package in $(packages); do \\
|
||||
$(MAKE) {arch}-build-$$package; \\
|
||||
done
|
||||
|
||||
{arch}-clean:
|
||||
@for package in $(packages); do \\
|
||||
$(MAKE) {arch}-clean-$$package; \\
|
||||
done
|
||||
|
||||
{arch}-veryclean:
|
||||
@for package in $(packages); do \\
|
||||
$(MAKE) {arch}-veryclean-$$package; \\
|
||||
done
|
||||
|
||||
{arch}-build-%:
|
||||
rm -f WORK/ios-{arch}/Stamp/EP_$*/EP_$*-update; \\
|
||||
$(MAKE) -C WORK/ios-{arch}/cmake EP_$*
|
||||
|
||||
{arch}-clean-%:
|
||||
$(MAKE) -C WORK/ios-{arch}/Build/$* clean; \\
|
||||
rm -f WORK/ios-{arch}/Stamp/EP_$*/EP_$*-build; \\
|
||||
rm -f WORK/ios-{arch}/Stamp/EP_$*/EP_$*-install;
|
||||
|
||||
{arch}-veryclean-%:
|
||||
cat WORK/ios-{arch}/Build/$*/install_manifest.txt | xargs rm; \\
|
||||
rm -rf WORK/ios-{arch}/Build/$*/*; \\
|
||||
rm -f WORK/ios-{arch}/Stamp/EP_$*/*; \\
|
||||
echo "Run 'make {arch}-build-$*' to rebuild $* correctly.";
|
||||
|
||||
{arch}-veryclean-ffmpeg:
|
||||
$(MAKE) -C WORK/ios-{arch}/Build/ffmpeg uninstall; \\
|
||||
rm -rf WORK/ios-{arch}/Build/ffmpeg/*; \\
|
||||
rm -f WORK/ios-{arch}/Stamp/EP_ffmpeg/*; \\
|
||||
echo "Run 'make {arch}-build-ffmpeg' to rebuild ffmpeg correctly.";
|
||||
|
||||
{arch}-clean-openh264:
|
||||
cd WORK/ios-{arch}/Build/openh264; \\
|
||||
$(MAKE) -f ../../../../submodules/externals/openh264/Makefile clean; \\
|
||||
rm -f WORK/ios-{arch}/Stamp/EP_openh264/EP_openh264-build; \\
|
||||
rm -f WORK/ios-{arch}/Stamp/EP_openh264/EP_openh264-install;
|
||||
|
||||
{arch}-veryclean-openh264:
|
||||
rm -rf liblinphone-sdk/{arch}-apple-darwin.ios/include/wels; \\
|
||||
rm -f liblinphone-sdk/{arch}-apple-darwin.ios/lib/libopenh264.*; \\
|
||||
rm -rf WORK/ios-{arch}/Build/openh264/*; \\
|
||||
rm -f WORK/ios-{arch}/Stamp/EP_openh264/*; \\
|
||||
echo "Run 'make {arch}-build-openh264' to rebuild openh264 correctly.";
|
||||
|
||||
{arch}-veryclean-vpx:
|
||||
rm -rf liblinphone-sdk/{arch}-apple-darwin.ios/include/vpx; \\
|
||||
rm -f liblinphone-sdk/{arch}-apple-darwin.ios/lib/libvpx.*; \\
|
||||
rm -rf WORK/ios-{arch}/Build/vpx/*; \\
|
||||
rm -f WORK/ios-{arch}/Stamp/EP_vpx/*; \\
|
||||
echo "Run 'make {arch}-build-vpx' to rebuild vpx correctly.";
|
||||
""".format(arch=arch)
|
||||
multiarch = ""
|
||||
for arch in makefile_platforms[1:]:
|
||||
multiarch += \
|
||||
""" if test -f "$${arch}_path"; then \\
|
||||
all_paths=`echo $$all_paths $${arch}_path`; \\
|
||||
all_archs="$$all_archs,{arch}" ; \\
|
||||
else \\
|
||||
echo "WARNING: archive `basename $$archive` exists in {first_arch} tree but does not exists in {arch} tree: $${arch}_path."; \\
|
||||
fi; \\
|
||||
""".format(first_arch=makefile_platforms[0], arch=arch)
|
||||
makefile = """
|
||||
archs={archs}
|
||||
packages={packages}
|
||||
LINPHONE_IPHONE_VERSION=$(shell git describe --always)
|
||||
|
||||
.PHONY: all
|
||||
|
||||
all: build
|
||||
|
||||
{arch_targets}
|
||||
all-%:
|
||||
@for package in $(packages); do \\
|
||||
rm -f WORK/ios-$*/Stamp/EP_$$package/EP_$$package-update; \\
|
||||
done
|
||||
$(MAKE) -C WORK/ios-$*/cmake
|
||||
|
||||
build-%:
|
||||
@for arch in $(archs); do \\
|
||||
echo "==== starting build of $* for arch $$arch ===="; \\
|
||||
$(MAKE) $$arch-build-$*; \\
|
||||
done
|
||||
|
||||
clean-%:
|
||||
@for arch in $(archs); do \\
|
||||
echo "==== starting clean of $* for arch $$arch ===="; \\
|
||||
$(MAKE) $$arch-clean-$*; \\
|
||||
done
|
||||
|
||||
veryclean-%:
|
||||
@for arch in $(archs); do \\
|
||||
echo "==== starting veryclean of $* for arch $$arch ===="; \\
|
||||
$(MAKE) $$arch-veryclean-$*; \\
|
||||
done; \\
|
||||
echo "Run 'make build-$*' to rebuild $* correctly."
|
||||
|
||||
build: libs sdk
|
||||
|
||||
clean: $(addprefix clean-,$(packages))
|
||||
|
||||
veryclean: $(addprefix veryclean-,$(packages))
|
||||
|
||||
libs: $(addprefix all-,$(archs))
|
||||
archives=`find liblinphone-sdk/{first_arch}-apple-darwin.ios -name *.a` && \\
|
||||
mkdir -p liblinphone-sdk/apple-darwin && \\
|
||||
cp -rf liblinphone-sdk/{first_arch}-apple-darwin.ios/include liblinphone-sdk/apple-darwin/. && \\
|
||||
cp -rf liblinphone-sdk/{first_arch}-apple-darwin.ios/share liblinphone-sdk/apple-darwin/. && \\
|
||||
for archive in $$archives ; do \\
|
||||
armv7_path=`echo $$archive | sed -e "s/{first_arch}/armv7/"`; \\
|
||||
arm64_path=`echo $$archive | sed -e "s/{first_arch}/arm64/"`; \\
|
||||
i386_path=`echo $$archive | sed -e "s/{first_arch}/i386/"`; \\
|
||||
x86_64_path=`echo $$archive | sed -e "s/{first_arch}/x86_64/"`; \\
|
||||
destpath=`echo $$archive | sed -e "s/-debug//" | sed -e "s/{first_arch}-//" | sed -e "s/\.ios//"`; \\
|
||||
all_paths=`echo $$archive`; \\
|
||||
all_archs="{first_arch}"; \\
|
||||
mkdir -p `dirname $$destpath`; \\
|
||||
{multiarch} \\
|
||||
echo "[$$all_archs] Mixing `basename $$archive` in $$destpath"; \\
|
||||
lipo -create $$all_paths -output $$destpath; \\
|
||||
done && \\
|
||||
if ! test -f liblinphone-sdk/apple-darwin/lib/libtunnel.a ; then \\
|
||||
cp -f submodules/binaries/libdummy.a liblinphone-sdk/apple-darwin/lib/libtunnel.a ; \\
|
||||
fi
|
||||
|
||||
ipa: build
|
||||
xcodebuild -configuration Release \\
|
||||
&& xcrun -sdk iphoneos PackageApplication -v build/Release-iphoneos/linphone.app -o linphone-iphone.ipa
|
||||
|
||||
sdk: libs
|
||||
echo "Generating SDK zip file for version $(LINPHONE_IPHONE_VERSION)"
|
||||
zip -r liblinphone-iphone-sdk-$(LINPHONE_IPHONE_VERSION).zip \\
|
||||
liblinphone-sdk/apple-darwin \\
|
||||
liblinphone-tutorials \\
|
||||
-x liblinphone-tutorials/hello-world/build\* \\
|
||||
-x liblinphone-tutorials/hello-world/hello-world.xcodeproj/*.pbxuser \\
|
||||
-x liblinphone-tutorials/hello-world/hello-world.xcodeproj/*.mode1v3
|
||||
|
||||
pull-transifex:
|
||||
tx pull -af
|
||||
|
||||
push-transifex:
|
||||
&& ./Tools/generate_strings_files.sh && tx push -s -t -f --no-interactive
|
||||
|
||||
zipres:
|
||||
@tar -czf ios_assets.tar.gz Resources iTunesArtwork
|
||||
|
||||
help:
|
||||
@echo "(please read the README.md file first)"
|
||||
@echo ""
|
||||
@echo "Available architectures: {archs}"
|
||||
@echo "Available packages: {packages}"
|
||||
@echo ""
|
||||
@echo "Available targets:"
|
||||
@echo ""
|
||||
@echo " * all : builds all architectures and creates the liblinphone sdk"
|
||||
@echo " * zipres : creates a tar.gz file with all the resources (images)"
|
||||
@echo ""
|
||||
@echo "=== Advanced usage ==="
|
||||
@echo ""
|
||||
@echo " * build-[package] : builds the package for all architectures"
|
||||
@echo " * clean-[package] : clean the package for all architectures"
|
||||
@echo ""
|
||||
@echo " * [{arch_opts}]-build-[package] : builds a package for the selected architecture"
|
||||
@echo " * [{arch_opts}]-clean-[package] : clean the package for the selected architecture"
|
||||
@echo ""
|
||||
@echo " * sdk : re-add all generated libraries to the SDK. Use this only after a full build."
|
||||
@echo " * libs : after a rebuild of a subpackage, will mix the new libs in liblinphone-sdk/apple-darwin directory"
|
||||
""".format(archs=' '.join(makefile_platforms), arch_opts='|'.join(makefile_platforms), first_arch=makefile_platforms[0], arch_targets=arch_targets, packages=' '.join(packages), multiarch=multiarch)
|
||||
f = open('Makefile', 'w')
|
||||
f.write(makefile)
|
||||
f.close()
|
||||
warning(makefile_platforms)
|
||||
elif os.path.isfile('Makefile'):
|
||||
os.remove('Makefile')
|
||||
|
||||
return retcode
|
||||
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
Subproject commit 0a58e95c1d7f7da9035456f2b1bcfa832bfd2d7e
|
||||
Subproject commit dc37a9a01a9b69f49b6339cd2f5d999fcf584a89
|
||||
|
|
@ -1 +1 @@
|
|||
Subproject commit 4a4f757f66b02cf8834fd8d7a939bf54b245ad7e
|
||||
Subproject commit 7f0b84802a6e1d1f99efb95de4d9b460069a3f23
|
||||
|
|
@ -1 +1 @@
|
|||
Subproject commit 3465dedd6607d580572e397216bc73b6921a9cb2
|
||||
Subproject commit cf6ad6e18ce9707e8236a6ab2c0fd789bdb9287d
|
||||
2
submodules/externals/antlr3
vendored
2
submodules/externals/antlr3
vendored
|
|
@ -1 +1 @@
|
|||
Subproject commit 489f375fb391cb70d82b56f509c39cbf7fa0b706
|
||||
Subproject commit 812695383316c7227c06df2b30725a9e5e4a11a0
|
||||
2
submodules/externals/gsm
vendored
2
submodules/externals/gsm
vendored
|
|
@ -1 +1 @@
|
|||
Subproject commit 405fb3856f0b9e902dcb159ec6a3409ba6e78476
|
||||
Subproject commit 57d904f7fdc97e611b4a09ff7753d5d648ff82cd
|
||||
2
submodules/externals/speex
vendored
2
submodules/externals/speex
vendored
|
|
@ -1 +1 @@
|
|||
Subproject commit f0bbb55db823234366993ce4b64f2b14ab025260
|
||||
Subproject commit 415653bfef10b46d5e7bfa3ad70a68976b77e7b5
|
||||
2
submodules/externals/srtp
vendored
2
submodules/externals/srtp
vendored
|
|
@ -1 +1 @@
|
|||
Subproject commit 4338c102f5a4b8f89b7019ed66fb456e3e3359ae
|
||||
Subproject commit 37448b2aebeb5e9bd2d39d3a82f0721123cdd4a2
|
||||
1
submodules/externals/vo-amrwbenc
vendored
Submodule
1
submodules/externals/vo-amrwbenc
vendored
Submodule
|
|
@ -0,0 +1 @@
|
|||
Subproject commit 080af7540562e4adfbd3312837fe5fc6771c4cd0
|
||||
|
|
@ -1 +1 @@
|
|||
Subproject commit 9ab4928dcacaa1ef35a7bdc328d706a4569f29a3
|
||||
Subproject commit bc20f11963878a1f32511de59b05490093e5c9b8
|
||||
|
|
@ -1 +1 @@
|
|||
Subproject commit eb17e35a22301db309b51bd9d458fb00972bd4c3
|
||||
Subproject commit c2a0886a9350004e3da94d968cae9978c7472a9d
|
||||
|
|
@ -1 +1 @@
|
|||
Subproject commit afe5336871be478f54e794d4f649e2c1f18dcaff
|
||||
Subproject commit b5a2b070259ef0c4f404fa8ca87752b8b1259d76
|
||||
|
|
@ -1 +1 @@
|
|||
Subproject commit 5a8473c091d05d9eed67febdd555955f0b925900
|
||||
Subproject commit 172e97a83aa2a868fd3dbbd6e7d57ad7d55f3054
|
||||
|
|
@ -1 +1 @@
|
|||
Subproject commit dcb4798df328186b3d177d10af5145aafed8352e
|
||||
Subproject commit 06504344a367c033598a9dcaa6ff8387269e5a9a
|
||||
Loading…
Add table
Reference in a new issue