Files
sanderling/examples/folio/app/iosApp/project.yml

52 lines
1.5 KiB
YAML

name: iosApp
options:
bundleIdPrefix: app.folio
deploymentTarget:
iOS: "15.0"
xcodeVersion: "16.0"
settings:
base:
ENABLE_USER_SCRIPT_SANDBOXING: NO
SWIFT_VERSION: "5.0"
ONLY_ACTIVE_ARCH: YES
EXCLUDED_ARCHS[sdk=iphonesimulator*]: x86_64
targets:
iosApp:
type: application
platform: iOS
sources:
- iosApp
dependencies:
- sdk: libsqlite3.tbd
settings:
base:
PRODUCT_BUNDLE_IDENTIFIER: app.folio
PRODUCT_NAME: iosApp
INFOPLIST_FILE: iosApp/Info.plist
ASSETCATALOG_COMPILER_APPICON_NAME: AppIcon
# The Kotlin framework slice differs by SDK: device builds link the
# iosArm64 framework, simulator builds the iosSimulatorArm64 one. The
# search path and the prebuild gradle task both follow this variable.
KOTLIN_FRAMEWORK_DIR[sdk=iphoneos*]: iosArm64
KOTLIN_FRAMEWORK_DIR[sdk=iphonesimulator*]: iosSimulatorArm64
FRAMEWORK_SEARCH_PATHS:
- $(SRCROOT)/../shared/build/bin/$(KOTLIN_FRAMEWORK_DIR)/debugFramework
OTHER_LDFLAGS:
- -ObjC
- -framework
- Shared
preBuildScripts:
- name: Build Kotlin framework
script: |
cd "$SRCROOT/../.."
if [[ "$PLATFORM_NAME" == iphoneos ]]; then
task=linkDebugFrameworkIosArm64
else
task=linkDebugFrameworkIosSimulatorArm64
fi
ANDROID_HOME="${ANDROID_HOME:-$HOME/Library/Android/sdk}" \
./gradlew :app:shared:$task
basedOnDependencyAnalysis: false