2026-09-19 15:43:37 +02:00
|
|
|
#!/bin/zsh
|
|
|
|
|
set -euo pipefail
|
|
|
|
|
|
|
|
|
|
configuration="${1:?configuration is required}"
|
|
|
|
|
sdk="${2:?sdk is required}"
|
|
|
|
|
architecture="${3:?architecture is required}"
|
|
|
|
|
output="${4:?output directory is required}"
|
|
|
|
|
script_dir="${0:A:h}"
|
2026-09-21 00:11:01 +02:00
|
|
|
project="$script_dir/../../../native/apple/broadcast/VoiceCatBroadcast.xcodeproj"
|
2026-09-19 15:43:37 +02:00
|
|
|
|
|
|
|
|
mkdir -p "$output"
|
2026-09-19 19:33:10 +02:00
|
|
|
signing=()
|
2026-09-21 04:05:40 +02:00
|
|
|
versioning=(MARKETING_VERSION="${VOICECAT_DISPLAY_VERSION:-0.0.1}")
|
|
|
|
|
if [[ -n "${VOICECAT_BUILD_NUMBER:-}" ]]; then
|
|
|
|
|
versioning+=(CURRENT_PROJECT_VERSION="$VOICECAT_BUILD_NUMBER")
|
|
|
|
|
fi
|
2026-09-19 19:33:10 +02:00
|
|
|
if [[ "$sdk" == "iphonesimulator" ]]; then
|
|
|
|
|
signing+=(CODE_SIGNING_ALLOWED=NO)
|
2026-09-21 04:05:40 +02:00
|
|
|
elif [[ -n "${VOICECAT_BROADCAST_CODESIGN_KEY:-}" && -n "${VOICECAT_BROADCAST_CODESIGN_PROVISION:-}" ]]; then
|
|
|
|
|
signing+=(
|
|
|
|
|
DEVELOPMENT_TEAM="${VOICECAT_DEVELOPMENT_TEAM:?VOICECAT_DEVELOPMENT_TEAM is required for distribution signing}"
|
|
|
|
|
CODE_SIGN_STYLE=Manual
|
|
|
|
|
CODE_SIGN_IDENTITY="$VOICECAT_BROADCAST_CODESIGN_KEY"
|
|
|
|
|
PROVISIONING_PROFILE_SPECIFIER="$VOICECAT_BROADCAST_CODESIGN_PROVISION"
|
|
|
|
|
)
|
2026-09-19 22:40:48 +02:00
|
|
|
elif [[ -n "${VOICECAT_DEVELOPMENT_TEAM:-}" ]]; then
|
|
|
|
|
signing+=(DEVELOPMENT_TEAM="$VOICECAT_DEVELOPMENT_TEAM" CODE_SIGN_STYLE=Automatic)
|
|
|
|
|
if [[ "${VOICECAT_ALLOW_PROVISIONING_UPDATES:-}" == "1" ]]; then
|
|
|
|
|
signing=(-allowProvisioningUpdates "${signing[@]}")
|
|
|
|
|
fi
|
2026-09-19 19:33:10 +02:00
|
|
|
fi
|
2026-09-19 15:43:37 +02:00
|
|
|
xcodebuild \
|
|
|
|
|
-project "$project" \
|
2026-09-19 22:40:48 +02:00
|
|
|
-scheme VoiceCatBroadcast \
|
2026-09-19 15:43:37 +02:00
|
|
|
-configuration "$configuration" \
|
|
|
|
|
-sdk "$sdk" \
|
|
|
|
|
-arch "$architecture" \
|
2026-09-19 22:40:48 +02:00
|
|
|
-derivedDataPath "$output/derived" \
|
2026-09-19 15:43:37 +02:00
|
|
|
CONFIGURATION_BUILD_DIR="$output" \
|
2026-09-21 04:05:40 +02:00
|
|
|
"${versioning[@]}" \
|
2026-09-19 19:33:10 +02:00
|
|
|
"${signing[@]}" \
|
2026-09-19 15:43:37 +02:00
|
|
|
build
|
2026-09-19 19:33:10 +02:00
|
|
|
|
2026-09-19 22:40:48 +02:00
|
|
|
xcent=$(find "$output/derived" -name 'VoiceCatBroadcast.appex.xcent' -print -quit)
|
2026-09-19 19:33:10 +02:00
|
|
|
if [[ -f "$xcent" ]]; then
|
|
|
|
|
cp "$xcent" "$output/VoiceCatBroadcast.xcent"
|
|
|
|
|
else
|
2026-09-21 00:11:01 +02:00
|
|
|
cp "$script_dir/../../../native/apple/broadcast/VoiceCatBroadcast.entitlements" "$output/VoiceCatBroadcast.xcent"
|
2026-09-19 19:33:10 +02:00
|
|
|
fi
|