mirror of
https://github.com/FluxaMedia/fluxa.git
synced 2026-07-28 20:52:49 +00:00
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.
69 lines
2.4 KiB
YAML
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
|