我正在开发一个Swift软件包,它应该依赖于桌面(MacOS或Linux)上的GLFW only,但不适用于iOS,因为GLFW不是为iOS构建的.
我该怎么办?
我有一个这样定义的系统库:
import PackageDescription
let package = Package(
name: "GLFWSystemLibrary",
products: [
.library(name: "CGLFW3", targets: ["CGLFW3"]),
],
dependencies: [],
targets: [
.systemLibrary(
name: "CGLFW3",
pkgConfig: "glfw3",
providers: [
.brew(["glfw"]),
.apt(["libglfw3"])
]
)
]
)
当我试图将其包含在iOS项目中时,我的构建失败了.
仅在依赖于此的库中有条件地包含CGLFW
就足够了吗?或者,我如何在Swift Package Manager中使依赖项有条件?
一、 我可以这样做吗?
#if !os(iOS)
import CGLFW
#endif
否则,我将如何实现这一点?