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