Commit 7696fe9d authored by Benjamin REIS's avatar Benjamin REIS

Able to publish on app on itunes connect with our frameworks

parent af83317e
......@@ -66,6 +66,11 @@ Linphone for iPhone depends on liblinphone SDK. This SDK is generated from makef
**The resulting SDK is located in `liblinphone-sdk/` root directory.**
## Incorporating our SDK in your project
After the SDK has been built, add all the `.framework` files located in `liblinphone-sdk/apple-darwin/Frameworks` to your XCode project Embedded Frameworks.
Add a Run Script step to your build steps, put it after your step to embed frameworks, set it to use our `deploy.sh` script located in `liblinphone-sdk/apple-darwin/Tools`.
## Licensing: GPL third parties versus non GPL third parties
This SDK can be generated in 2 flavors:
......
APP_PATH="${TARGET_BUILD_DIR}/${WRAPPER_NAME}"
# This script loops through the frameworks embedded in the application and
# removes unused architectures.
find "$APP_PATH" -name '*.framework' -type d | while read -r FRAMEWORK
do
FRAMEWORK_EXECUTABLE_NAME=$(defaults read "$FRAMEWORK/Info.plist" CFBundleExecutable)
FRAMEWORK_EXECUTABLE_PATH="$FRAMEWORK/$FRAMEWORK_EXECUTABLE_NAME"
echo "Executable is $FRAMEWORK_EXECUTABLE_PATH"
EXTRACTED_ARCHS=()
for ARCH in $ARCHS
do
echo "Extracting $ARCH from $FRAMEWORK_EXECUTABLE_NAME"
lipo -extract "$ARCH" "$FRAMEWORK_EXECUTABLE_PATH" -o "$FRAMEWORK_EXECUTABLE_PATH-$ARCH"
EXTRACTED_ARCHS+=("$FRAMEWORK_EXECUTABLE_PATH-$ARCH")
done
echo "Merging extracted architectures: ${ARCHS}"
lipo -o "$FRAMEWORK_EXECUTABLE_PATH-merged" -create "${EXTRACTED_ARCHS[@]}"
rm "${EXTRACTED_ARCHS[@]}"
echo "Replacing original executable with thinned version"
rm "$FRAMEWORK_EXECUTABLE_PATH"
mv "$FRAMEWORK_EXECUTABLE_PATH-merged" "$FRAMEWORK_EXECUTABLE_PATH"
done
\ No newline at end of file
......@@ -24,7 +24,7 @@
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>3.16.4</string>
<string>3.16.5</string>
<key>CFBundleURLTypes</key>
<array>
<dict>
......@@ -53,7 +53,7 @@
</dict>
</array>
<key>CFBundleVersion</key>
<string>1</string>
<string>2</string>
<key>ITSAppUsesNonExemptEncryption</key>
<true/>
<key>ITSEncryptionExportComplianceCode</key>
......
......@@ -3042,6 +3042,7 @@
1D60588E0D05DD3D006BFB54 /* Sources */,
1D60588F0D05DD3D006BFB54 /* Frameworks */,
8CDC89061EAF89A8006B5652 /* Embed Frameworks */,
8CB438A61EE6A65D0006F944 /* ShellScript */,
);
buildRules = (
);
......@@ -3824,6 +3825,19 @@
shellPath = /bin/sh;
shellScript = $SRCROOT/Tools/git_version.sh;
};
8CB438A61EE6A65D0006F944 /* ShellScript */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
);
inputPaths = (
);
outputPaths = (
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = $SRCROOT/Tools/deploy.sh;
};
/* End PBXShellScriptBuildPhase section */
/* Begin PBXSourcesBuildPhase section */
......@@ -4869,7 +4883,7 @@
CODE_SIGN_IDENTITY = "iPhone Developer";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
COPY_PHASE_STRIP = NO;
ENABLE_BITCODE = NO;
ENABLE_BITCODE = YES;
FRAMEWORK_SEARCH_PATHS = (
"$(inherited)",
"$(PROJECT_DIR)/liblinphone-sdk/apple-darwin/Frameworks",
......@@ -4924,7 +4938,7 @@
CODE_SIGN_IDENTITY = "iPhone Developer";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
COPY_PHASE_STRIP = YES;
ENABLE_BITCODE = NO;
ENABLE_BITCODE = YES;
ENABLE_NS_ASSERTIONS = NO;
FRAMEWORK_SEARCH_PATHS = (
"$(inherited)",
......@@ -4973,7 +4987,7 @@
CODE_SIGN_IDENTITY = "iPhone Developer";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
COPY_PHASE_STRIP = YES;
ENABLE_BITCODE = NO;
ENABLE_BITCODE = YES;
ENABLE_NS_ASSERTIONS = NO;
FRAMEWORK_SEARCH_PATHS = (
"$(inherited)",
......@@ -5022,7 +5036,7 @@
CODE_SIGN_IDENTITY = "iPhone Developer";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
COPY_PHASE_STRIP = YES;
ENABLE_BITCODE = NO;
ENABLE_BITCODE = YES;
ENABLE_NS_ASSERTIONS = NO;
FRAMEWORK_SEARCH_PATHS = (
"$(inherited)",
......
......@@ -338,6 +338,9 @@ ipa: build
\t&& xcrun -sdk iphoneos PackageApplication -v build/Release-iphoneos/linphone.app -o $$PWD/linphone-iphone.ipa
zipsdk: sdk
\trm -rf liblinphone-sdk/apple-darwin/Tools &&\\
\tmkdir -p liblinphone-sdk/apple-darwin/Tools &&\\
\tcp -f Tools/deploy.sh liblinphone-sdk/apple-darwin/Tools/.; \\
\techo "Generating SDK zip file for version $(LINPHONE_IPHONE_VERSION)"
\tzip -r liblinphone-iphone-sdk-$(LINPHONE_IPHONE_VERSION).zip \\
\tliblinphone-sdk/apple-darwin \\
......
bctoolbox @ 62f10910
Subproject commit e401c0a91f81ff2a22b713151617ba4e7994c855
Subproject commit 62f10910daba210669af7ec08867942b1bdba973
cmake-builder @ 03484fa6
Subproject commit 5a83566d9ce58234daa0d7e88f1798e817096f30
Subproject commit 03484fa6332113033eda07e3a0b000c5f1b7dc02
linphone @ 883606f2
Subproject commit 8469ebcfc2aadad6783ba9b8ca17d19e44f1a477
Subproject commit 883606f238704cc0789c88d048e862aaf76aaf79
mediastreamer2 @ 880c008c
Subproject commit b65b55375b9ff15374d9af5f4936fbc5f1552363
Subproject commit 880c008c5ee37395e0dd8364beeb7c2656552a9e
msamr @ d86b907b
Subproject commit aaa046142033c4ec646e0e1b6f3641177490aa10
Subproject commit d86b907b31eb7ecd6a3fd4409d5c9633d4366164
mscodec2 @ 86468a37
Subproject commit 3fec10bdbc3fa5452874eafe1907969554a2ce46
Subproject commit 86468a37ba68a497fa45f4bec99c2d27480f9dd7
msopenh264 @ 5544086f
Subproject commit 3a398b4000f29c67e010057f718c136ca245a9a8
Subproject commit 5544086f478c13150eda5df683d914ecbf13ea89
mssilk @ 3a61f5de
Subproject commit fef0c397c1d2dfc3b8b0951e3db0b9b5cb5d34b9
Subproject commit 3a61f5decf634f5fb311b2c5f2984525fccd81d9
mswebrtc @ 419a98f1
Subproject commit 265c3bf1bfae31ed43766afb473782ec7e782898
Subproject commit 419a98f17430a1ab9b66f436251dd2c1f4103231
msx264 @ 1898b96a
Subproject commit 78bf5cc3bca0d597b2cbea8178fd68cd67c8edf5
Subproject commit 1898b96a946c61b866c09c63e60622cf32dd2d2e
ortp @ baf804e4
Subproject commit 34e829b22a3b0b2e8f0557f31c2ca12be34e2b9b
Subproject commit baf804e45f0fe9c8f156c76627083cc868fd12db
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment