fluxa/appleApp/project.yml
KhooLy a0db322fed fix: move Apple catalog/detail/discover/search snapshot DTOs from shared to core
Xcode's embedAndSignAppleFrameworkForXcode task for :shared: is
intermittently disabled by the Kotlin Gradle Plugin's own IDE/index-build
detection (onlyIf 'Task is enabled' is false), silently skipping the
framework embed and leaving these types unavailable to Swift. core's
framework already embeds reliably for iOS (matching tvOS), so these plain
DTOs move there instead; the Compose-dependent DataSource wrappers stay in
shared, which already re-exports core.
2026-07-28 19:04:13 +03:00

69 lines
2.4 KiB
YAML

name: FluxaApple
options:
xcodeVersion: "16.4"
deploymentTarget:
iOS: "18.5"
tvOS: "17.0"
settings:
base:
GENERATE_INFOPLIST_FILE: YES
HEADER_SEARCH_PATHS: "$(SRCROOT)/Generated/FluxaRustCoreFFI"
LIBRARY_SEARCH_PATHS: "$(SRCROOT)/Generated"
OTHER_LDFLAGS[sdk=iphoneos*]: "-lfluxa_core-ios -lfluxa_streaming_engine-ios"
OTHER_LDFLAGS[sdk=iphonesimulator*]: "-lfluxa_core-ios-simulator -lfluxa_streaming_engine-ios-simulator"
OTHER_LDFLAGS[sdk=appletvos*]: "-lfluxa_core-tvos"
OTHER_LDFLAGS[sdk=appletvsimulator*]: "-lfluxa_core-tvos-simulator"
targets:
FluxaIos:
type: application
platform: iOS
sources:
- path: Shared
- path: AppleCore
- path: iOS
- path: Generated/FluxaRustCore.swift
resources:
- path: ../core/src/commonMain/resources/i18n
dependencies:
- sdk: UIKit.framework
- sdk: AVFoundation.framework
- sdk: AVKit.framework
preBuildScripts:
- name: Build Fluxa Rust Core
script: scripts/build-rust-core-xcframework.sh
basedOnDependencyAnalysis: false
- name: Build FluxaCore
script: ../gradlew -p .. :core:embedAndSignAppleFrameworkForXcode
basedOnDependencyAnalysis: false
- name: Build FluxaShared
script: ../gradlew -p .. :shared:embedAndSignAppleFrameworkForXcode
basedOnDependencyAnalysis: false
FluxaTvos:
type: application
platform: tvOS
sources:
- path: AppleCore
excludes:
- FluxaAppleAddonCatalogResolver.swift
- FluxaAppleAddonResourceLoader.swift
- FluxaAppleAddonStoreManager.swift
- FluxaAppleCatalogBootstrap.swift
- FluxaAppleCatalogLoader.swift
- FluxaApplePluginRepositoryManager.swift
- path: tvOS
- path: Generated/FluxaRustCore.swift
resources:
- path: ../core/src/commonMain/resources/i18n
preBuildScripts:
- name: Build Fluxa Rust Core
script: scripts/build-rust-core-xcframework.sh
basedOnDependencyAnalysis: false
- name: Build FluxaCore
script: ../gradlew -p .. :core:embedAndSignAppleFrameworkForXcode
basedOnDependencyAnalysis: false
- name: Build FluxaData
script: ../gradlew -p .. :data:embedAndSignAppleFrameworkForXcode
basedOnDependencyAnalysis: false
- name: Build FluxaPlayer
script: ../gradlew -p .. :player:embedAndSignAppleFrameworkForXcode
basedOnDependencyAnalysis: false