Files
Martin Bektchiev f3643c2a6d feat(ios): Embed XCFrameworks to zip
NPM doesn't support symlinks and as a workaround we're
embedding all XCFrameworks in a zip archive and extracting
them with a postinstall script
2019-08-14 11:10:31 +03:00

45 lines
995 B
Bash
Executable File

#!/bin/sh
echo "Set exit on simple errors"
set -e
echo "Use dumb terminal"
export TERM=dumb
rm -rf dist/package/platforms/ios || true
mkdir -p dist/package/platforms/ios
echo "Build iOS"
cd ios
./build.sh
cd ..
echo "Zip ios/TNSWidgets/build/*.xcframework to dist/package/platforms/ios"
(
XCFRAMEWORKS_ZIPFILENAME="$PWD/dist/package/platforms/ios/XCFrameworks.zip"
cd ios/TNSWidgets/build
zip -q -r --symlinks $XCFRAMEWORKS_ZIPFILENAME *.xcframework
)
cp ios/TNSWidgets/build/*.framework.dSYM.zip dist/package/platforms/ios
if [ "$1" ]
then
echo "Suffix package.json's version with tag: $1"
sed -i.bak 's/\(\"version\"\:[[:space:]]*\"[^\"]*\)\"/\1-'$1'"/g' ./dist/package/package.json
fi
if [ "$SKIP_PACK" ]
then
echo "SKIP pack"
else
echo "Copy NPM artefacts"
cp .npmignore LICENSE README.md package.json dist/package
echo "NPM pack"
cd dist/package
PACKAGE="$(npm pack)"
cd ../..
mv dist/package/$PACKAGE dist/$PACKAGE
echo "Output: dist/$PACKAGE"
fi