diff --git a/README.md b/README.md index 1b7ddbb9c..c5f168028 100644 --- a/README.md +++ b/README.md @@ -34,7 +34,7 @@ Interested in helping translate Linphone? Contribute [on Transifex](https://www. ## Report bugs and submit patchs -If you want to dig through Linphone code or report a bug, please read CONTRIBUTING.md first. You should also read this README entirely ;-). +If you want to dig through Linphone code or report a bug, please read `CONTRIBUTING.md` first. You should also read this `README` entirely ;-). # Building the SDK @@ -50,7 +50,7 @@ Linphone for iPhone depends on liblinphone SDK. This SDK is generated from makef This SDK can be generated in 2 flavors: -* GPL third parties enabled means that liblinphone includes GPL third parties like FFmpeg or X264. If you choose this flavor, your final application **must comply with GPL in any case**. This is the default mode. +* GPL third parties enabled means that liblinphone includes GPL third parties like FFmpeg. If you choose this flavor, your final application **must comply with GPL in any case**. This is the default mode. * NO GPL third parties means that Linphone will only use non GPL code except for `liblinphone`, `mediastreamer2`, `oRTP` and `belle-sip`. If you choose this flavor, your final application is **still subject to GPL except if you have a [commercial license for the mentioned libraries](http://www.belledonne-communications.com/products.html)**. To generate the liblinphone multi arch SDK without GPL third parties, invoke: @@ -63,7 +63,7 @@ You can enable non-free codecs by using `-DENABLE_NON_FREE_CODECS=ON` and `-DENA ./prepare.py --list-features -You can for instance enable X264 by using: +You can for instance enable X264 using: ./prepare.py -DENABLE_NON_FREE_CODECS=ON -DENABLE_X264=ON [other options] diff --git a/linphone.xcodeproj/project.pbxproj b/linphone.xcodeproj/project.pbxproj index a1e117a38..2f25dae4b 100755 --- a/linphone.xcodeproj/project.pbxproj +++ b/linphone.xcodeproj/project.pbxproj @@ -541,6 +541,7 @@ 6375A1FF1C760E17007A24E2 /* libbctoolbox.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 6375A1FE1C760E17007A24E2 /* libbctoolbox.a */; }; 6375A2041C761CFC007A24E2 /* libbctoolbox.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 6375A1FE1C760E17007A24E2 /* libbctoolbox.a */; }; 6377AC801BDE4069007F7625 /* UIBackToCallButton.m in Sources */ = {isa = PBXBuildFile; fileRef = 6377AC7F1BDE4069007F7625 /* UIBackToCallButton.m */; }; + 637835A51CFD971D00599382 /* libbv16.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 637835A41CFD971D00599382 /* libbv16.a */; }; 6381DA7D1C1AD5EA00DF3BBD /* UIBouncingView.m in Sources */ = {isa = PBXBuildFile; fileRef = 6381DA7C1C1AD5EA00DF3BBD /* UIBouncingView.m */; }; 638F1A621C2021B2004B8E02 /* DialerView~ipad.xib in Resources */ = {isa = PBXBuildFile; fileRef = 638F1A601C2021B2004B8E02 /* DialerView~ipad.xib */; }; 638F1A881C2167C2004B8E02 /* CallView~ipad.xib in Resources */ = {isa = PBXBuildFile; fileRef = 638F1A861C2167C2004B8E02 /* CallView~ipad.xib */; }; @@ -1459,6 +1460,7 @@ 6375A1FE1C760E17007A24E2 /* libbctoolbox.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libbctoolbox.a; path = "liblinphone-sdk/apple-darwin/lib/libbctoolbox.a"; sourceTree = ""; }; 6377AC7E1BDE4068007F7625 /* UIBackToCallButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UIBackToCallButton.h; sourceTree = ""; }; 6377AC7F1BDE4069007F7625 /* UIBackToCallButton.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UIBackToCallButton.m; sourceTree = ""; }; + 637835A41CFD971D00599382 /* libbv16.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libbv16.a; path = "liblinphone-sdk/apple-darwin/lib/libbv16.a"; sourceTree = ""; }; 6381DA7B1C1AD5EA00DF3BBD /* UIBouncingView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UIBouncingView.h; sourceTree = ""; }; 6381DA7C1C1AD5EA00DF3BBD /* UIBouncingView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UIBouncingView.m; sourceTree = ""; }; 638F1A611C2021B2004B8E02 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = "Base.lproj/DialerView~ipad.xib"; sourceTree = ""; }; @@ -1764,6 +1766,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 637835A51CFD971D00599382 /* libbv16.a in Frameworks */, 63FD3F091CA17F9100E9AECC /* libmbedcrypto.a in Frameworks */, 63FD3F0A1CA17F9100E9AECC /* libmbedtls.a in Frameworks */, 63FD3F0B1CA17F9100E9AECC /* libmbedx509.a in Frameworks */, @@ -2147,6 +2150,7 @@ 29B97323FDCFA39411CA2CEA /* Frameworks */ = { isa = PBXGroup; children = ( + 637835A41CFD971D00599382 /* libbv16.a */, 63FD3F061CA17F9100E9AECC /* libmbedcrypto.a */, 63FD3F071CA17F9100E9AECC /* libmbedtls.a */, 63FD3F081CA17F9100E9AECC /* libmbedx509.a */, diff --git a/prepare.py b/prepare.py index 204c325ae..0ef142782 100755 --- a/prepare.py +++ b/prepare.py @@ -86,13 +86,14 @@ ios_targets = { ios_virtual_targets = { 'devices': ['armv7', 'arm64'], - 'simulators': ['i386', 'x86_64'] + 'simulators': ['i386', 'x86_64'], + 'all': ['i386', 'x86_64', 'armv7', 'arm64'] } class IOSPreparator(prepare.Preparator): def __init__(self, targets=ios_targets, virtual_targets=ios_virtual_targets): - prepare.Preparator.__init__(self, targets, virtual_targets=virtual_targets) + prepare.Preparator.__init__(self, targets, default_targets=['armv7', 'arm64', 'x86_64'], virtual_targets=virtual_targets) self.veryclean = True self.show_gpl_disclaimer = True self.argparser.add_argument('-ac', '--all-codecs', help="Enable all codecs, including the non-free ones. Final application must comply with their respective license (see README.md).", action='store_true') @@ -103,24 +104,25 @@ class IOSPreparator(prepare.Preparator): self.additional_args += ["-DLINPHONE_IOS_DEPLOYMENT_TARGET=" + self.extract_deployment_target()] self.additional_args += ["-DLINPHONE_BUILDER_DUMMY_LIBRARIES=" + ' '.join(self.extract_libs_list())] if self.args.all_codecs: - self.additional_args += ["-DENABLE_GPL_THIRD_PARTIES=YES"] - self.additional_args += ["-DENABLE_NON_FREE_CODECS=YES"] - self.additional_args += ["-DENABLE_AMRNB=YES"] - self.additional_args += ["-DENABLE_AMRWB=YES"] - self.additional_args += ["-DENABLE_G729=YES"] - self.additional_args += ["-DENABLE_GSM=YES"] - self.additional_args += ["-DENABLE_ILBC=YES"] - self.additional_args += ["-DENABLE_ISAC=YES"] - self.additional_args += ["-DENABLE_OPUS=YES"] - self.additional_args += ["-DENABLE_SILK=YES"] - self.additional_args += ["-DENABLE_SPEEX=YES"] - self.additional_args += ["-DENABLE_FFMPEG=YES"] - self.additional_args += ["-DENABLE_H263=YES"] - self.additional_args += ["-DENABLE_H263P=YES"] - self.additional_args += ["-DENABLE_MPEG4=YES"] - self.additional_args += ["-DENABLE_OPENH264=YES"] - self.additional_args += ["-DENABLE_VPX=YES"] - self.additional_args += ["-DENABLE_X264=YES"] + self.additional_args += ["-DENABLE_GPL_THIRD_PARTIES=ON"] + self.additional_args += ["-DENABLE_NON_FREE_CODECS=ON"] + self.additional_args += ["-DENABLE_AMRNB=ON"] + self.additional_args += ["-DENABLE_AMRWB=ON"] + self.additional_args += ["-DENABLE_BV16=ON"] + self.additional_args += ["-DENABLE_G729=ON"] + self.additional_args += ["-DENABLE_GSM=ON"] + self.additional_args += ["-DENABLE_ILBC=ON"] + self.additional_args += ["-DENABLE_ISAC=ON"] + self.additional_args += ["-DENABLE_OPUS=ON"] + self.additional_args += ["-DENABLE_SILK=ON"] + self.additional_args += ["-DENABLE_SPEEX=ON"] + self.additional_args += ["-DENABLE_FFMPEG=ON"] + self.additional_args += ["-DENABLE_H263=ON"] + self.additional_args += ["-DENABLE_H263P=ON"] + self.additional_args += ["-DENABLE_MPEG4=ON"] + self.additional_args += ["-DENABLE_OPENH264=ON"] + self.additional_args += ["-DENABLE_VPX=ON"] + self.additional_args += ["-DENABLE_X264=ON"] def clean(self): prepare.Preparator.clean(self) diff --git a/submodules/cmake-builder b/submodules/cmake-builder index 3645c90a2..4a4f51f45 160000 --- a/submodules/cmake-builder +++ b/submodules/cmake-builder @@ -1 +1 @@ -Subproject commit 3645c90a20ce865cfaca62b88a981c1cd1c27a87 +Subproject commit 4a4f51f455f5d1b344b17b97388fb359ac8517ed