#!/bin/sh set -eu root="$(CDPATH= cd -- "$(dirname -- "$0")/../../.." && pwd)" configuration="${CONFIGURATION:-Debug}" output="$root/dist/ios-managed-device" dotnet_host="${VOICECAT_DOTNET:-/usr/local/share/dotnet/dotnet}" while [ "$#" -gt 0 ]; do case "$1" in --configuration) configuration="$2"; shift 2 ;; --output) output="$2"; shift 2 ;; -h|--help) echo "usage: $0 [--configuration Debug|Release] [--output DIR]" echo "optional env: VOICECAT_DOTNET, VOICECAT_CODESIGN_KEY, VOICECAT_CODESIGN_PROVISION" exit 0 ;; *) echo "unknown argument: $1" >&2; exit 2 ;; esac done project="$root/clients/apple/dotnet/VoiceCat.iOS/VoiceCat.iOS.csproj" "$root/dotnet/build-native-ios.sh" "$dotnet_host" restore "$project" --locked-mode -p:VoiceCatIosStatic=true "$dotnet_host" restore "$project" --locked-mode -r ios-arm64 --no-dependencies set -- build "$project" -c "$configuration" -r ios-arm64 --no-restore -m:1 if [ -n "${VOICECAT_CODESIGN_KEY:-}" ]; then set -- "$@" -p:CodesignKey="$VOICECAT_CODESIGN_KEY"; fi if [ -n "${VOICECAT_CODESIGN_PROVISION:-}" ]; then set -- "$@" -p:CodesignProvision="$VOICECAT_CODESIGN_PROVISION"; fi "$dotnet_host" "$@" app="$root/clients/apple/dotnet/VoiceCat.iOS/bin/$configuration/net10.0-ios27.0/ios-arm64/VoiceCat.iOS.app" [ -d "$app" ] || { echo "device app was not produced at $app" >&2; exit 1; } mkdir -p "$output" /usr/bin/ditto "$app" "$output/VoiceCat.iOS.app" /usr/bin/codesign --verify --deep --strict "$output/VoiceCat.iOS.app" echo "$output/VoiceCat.iOS.app"