I am building an SPM package repository to distribute my XCFrameworks (built using Flutter CLI), and I want to conditionally set the paths for these binary targets based on the build configuration (Debug or Release). I've tried using conditional compilation with #if DEBUG and #else, and I've set the -DDEBUG flag in my Xcode project's build settings for the Debug configuration, but it is seems like the DEBUG variable is not accessible in the package's package.swift file. Here is some code for reference.
import PackageDescription
let package = Package(
name: "flutter_module_ios",
products: [
.library(
name: "flutter_module_ios",
targets: ["App", "Flutter"])
],
targets: [
.binaryTarget(
name: "App",
path: {
#if DEBUG
return "Debug/App.xcframework"
#else
return "Release/App.xcframework"
#endif
}()
),
.binaryTarget(
name: "Flutter",
path: {
#if DEBUG
return "Debug/Flutter.xcframework"
#else
return "Release/Flutter.xcframework"
#endif
}()
)
]
)
Is there a step I might be missing, or is there an alternative approach I should consider to achieve this conditional path setting for binary targets in Swift Package Manager?
Any help or insights would be greatly appreciated!