chore(folio): nest iosApp under app/ for KotlinConf parity

Match KotlinConf-app's filesystem layout where every entry point (android,
ios, web, shared, ui-components) lives under app/. iosApp is still an Xcode
project, not a Gradle module, so settings.gradle.kts is unchanged.
This commit is contained in:
pj committed 2026-04-26 19:42:12 +07:00
1 parent 4083a316e4
commit a967e261e5
6 files changed
+13 -13

No files matched your search

+3 -3
View File
@@ -2,9 +2,9 @@
build/ build/
.kotlin/ .kotlin/
local.properties local.properties
iosApp/build/ app/iosApp/build/
iosApp/iosApp.xcodeproj/ app/iosApp/iosApp.xcodeproj/
iosApp/iosApp.xcodeproj/** app/iosApp/iosApp.xcodeproj/**
.DS_Store .DS_Store
sanderling/node_modules/ sanderling/node_modules/
sanderling/runs/ sanderling/runs/
+1 -1
View File
@@ -35,7 +35,7 @@ just ios # default device: iPhone 17 Pro
IOS_DEVICE="iPhone 15" just ios # pick a different simulator IOS_DEVICE="iPhone 15" just ios # pick a different simulator
``` ```
`just ios` regenerates `iosApp/iosApp.xcodeproj` from `iosApp/project.yml`, `just ios` regenerates `app/iosApp/iosApp.xcodeproj` from `app/iosApp/project.yml`,
builds the KMP framework (`Shared.framework` from `:app:shared`), links it builds the KMP framework (`Shared.framework` from `:app:shared`), links it
into the SwiftUI host, installs, and launches. into the SwiftUI host, installs, and launches.
@@ -19,7 +19,7 @@ targets:
sources: sources:
- iosApp - iosApp
dependencies: dependencies:
- framework: ../app/shared/build/bin/iosSimulatorArm64/debugFramework/Shared.framework - framework: ../shared/build/bin/iosSimulatorArm64/debugFramework/Shared.framework
embed: false embed: false
- sdk: libsqlite3.tbd - sdk: libsqlite3.tbd
settings: settings:
@@ -28,16 +28,16 @@ targets:
PRODUCT_NAME: iosApp PRODUCT_NAME: iosApp
INFOPLIST_FILE: iosApp/Info.plist INFOPLIST_FILE: iosApp/Info.plist
FRAMEWORK_SEARCH_PATHS: FRAMEWORK_SEARCH_PATHS:
- $(SRCROOT)/../app/shared/build/bin/$(KOTLIN_FRAMEWORK_DIR)/debugFramework - $(SRCROOT)/../shared/build/bin/$(KOTLIN_FRAMEWORK_DIR)/debugFramework
OTHER_LDFLAGS: OTHER_LDFLAGS:
- -ObjC - -ObjC
KOTLIN_FRAMEWORK_DIR: iosSimulatorArm64 KOTLIN_FRAMEWORK_DIR: iosSimulatorArm64
preBuildScripts: preBuildScripts:
- name: Build Kotlin framework - name: Build Kotlin framework
script: | script: |
cd "$SRCROOT/.." cd "$SRCROOT/../.."
ANDROID_HOME="${ANDROID_HOME:-$HOME/Library/Android/sdk}" \ ANDROID_HOME="${ANDROID_HOME:-$HOME/Library/Android/sdk}" \
./gradlew :app:shared:linkDebugFrameworkIosSimulatorArm64 ./gradlew :app:shared:linkDebugFrameworkIosSimulatorArm64
outputFiles: outputFiles:
- $(SRCROOT)/../app/shared/build/bin/iosSimulatorArm64/debugFramework/Shared.framework/Shared - $(SRCROOT)/../shared/build/bin/iosSimulatorArm64/debugFramework/Shared.framework/Shared
basedOnDependencyAnalysis: false basedOnDependencyAnalysis: false
+5 -5
View File
@@ -55,13 +55,13 @@ clean:
set -euo pipefail set -euo pipefail
export ANDROID_HOME="$(just _android-home)" export ANDROID_HOME="$(just _android-home)"
./gradlew clean ./gradlew clean
rm -rf iosApp/build rm -rf app/iosApp/build
# Regenerate iosApp.xcodeproj from project.yml. # Regenerate iosApp.xcodeproj from project.yml.
ios-gen: ios-gen:
#!/usr/bin/env bash #!/usr/bin/env bash
set -euo pipefail set -euo pipefail
cd iosApp && xcodegen generate cd app/iosApp && xcodegen generate
# Build + install + launch on a booted iOS simulator (boots IOS_DEVICE if none). # Build + install + launch on a booted iOS simulator (boots IOS_DEVICE if none).
ios: ios:
@@ -74,11 +74,11 @@ ios:
sleep 3 sleep 3
fi fi
just ios-gen just ios-gen
xcodebuild -project iosApp/iosApp.xcodeproj -scheme iosApp \ xcodebuild -project app/iosApp/iosApp.xcodeproj -scheme iosApp \
-destination 'platform=iOS Simulator,name={{ios_device}}' \ -destination 'platform=iOS Simulator,name={{ios_device}}' \
-derivedDataPath iosApp/build \ -derivedDataPath app/iosApp/build \
build | tail -5 build | tail -5
xcrun simctl install booted iosApp/build/Build/Products/Debug-iphonesimulator/iosApp.app xcrun simctl install booted app/iosApp/build/Build/Products/Debug-iphonesimulator/iosApp.app
xcrun simctl launch booted app.folio xcrun simctl launch booted app.folio
# Run 'sanderling test' against the folio app. Uses a connected device if one is # Run 'sanderling test' against the folio app. Uses a connected device if one is