TypePHP 编译器
https://swoole.com/aot/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
53 lines
1.6 KiB
53 lines
1.6 KiB
#!/bin/sh
|
|
|
|
set -eu
|
|
|
|
project_dir=$(CDPATH= cd -- "$(dirname -- "$0")" && pwd)
|
|
executable="$project_dir/typephp_ios_hello"
|
|
bundle="$project_dir/dist/TypePHP iOS Hello.app"
|
|
profile=${TYPEPHP_IOS_PROVISIONING_PROFILE:-}
|
|
identity=${TYPEPHP_IOS_CODE_SIGN_IDENTITY:-}
|
|
bundle_identifier=${TYPEPHP_IOS_BUNDLE_IDENTIFIER:-}
|
|
|
|
if [ ! -x "$executable" ]; then
|
|
echo "Missing $executable; build ios.yml first." >&2
|
|
exit 1
|
|
fi
|
|
|
|
if [ -z "$profile" ] || [ ! -f "$profile" ]; then
|
|
echo "Set TYPEPHP_IOS_PROVISIONING_PROFILE to an iOS Development .mobileprovision file." >&2
|
|
exit 1
|
|
fi
|
|
|
|
if [ -z "$identity" ]; then
|
|
echo "Set TYPEPHP_IOS_CODE_SIGN_IDENTITY to an installed Apple Development identity." >&2
|
|
exit 1
|
|
fi
|
|
|
|
profile_plist=$(mktemp -t typephp-ios-profile.XXXXXX)
|
|
entitlements=$(mktemp -t typephp-ios-entitlements.XXXXXX)
|
|
trap 'rm -f "$profile_plist" "$entitlements"' EXIT HUP INT TERM
|
|
|
|
security cms -D -i "$profile" -o "$profile_plist"
|
|
plutil -extract Entitlements xml1 -o "$entitlements" "$profile_plist"
|
|
|
|
rm -rf "$bundle"
|
|
mkdir -p "$bundle"
|
|
cp "$project_dir/Info-iOS.plist" "$bundle/Info.plist"
|
|
if [ -n "$bundle_identifier" ]; then
|
|
plutil -replace CFBundleIdentifier -string "$bundle_identifier" "$bundle/Info.plist"
|
|
fi
|
|
cp "$executable" "$bundle/typephp_ios_hello"
|
|
cp "$profile" "$bundle/embedded.mobileprovision"
|
|
cp "$project_dir"/ios-assets/AppIcon*.png "$bundle/"
|
|
|
|
codesign \
|
|
--force \
|
|
--sign "$identity" \
|
|
--entitlements "$entitlements" \
|
|
--timestamp=none \
|
|
"$bundle"
|
|
codesign --verify --deep --strict --verbose=2 "$bundle"
|
|
|
|
echo "Created and signed $bundle"
|
|
echo "Install it with: xcrun devicectl device install app --device <device-id> '$bundle'"
|
|
|