如何使用Swift Package Manager确定Swift代码中的配置

时间:2017-04-10 19:01:37

标签: swift swift-package-manager

我正在使用Swift Package Manager创建应用程序,我需要知道项目所依据的配置,即DebugRelease。我试图远离使用.xcodeproj文件。如果有可能,有人让我知道。我将在下面粘贴一个简单的示例,但只要知道除了下面的代码之外是否有更好的方法来处理配置,请提交答案。

示例:

// main.swift

#if DEBUG
  print("Im in Debug!!")
#else
  print("Im in Release!!")
#endif

1 个答案:

答案 0 :(得分:8)

自Swift 3.1起,程序包管理器不提供在Package.swift文件中自定义构建设置的选项(此功能是团队roadmap for Swift 4的一部分)。但是,您可以在调用-Xswiftcswift build时使用swift test标志将自定义构建设置传递给编译器。

要在调试模式下设置DEBUG标志,请像这样调用swift build

swift build --configuration debug -Xswiftc "-D" -Xswiftc "DEBUG"

对于发布版本,您可以按照惯例执行:

swift build --configuration release

还有-XlinkerXcc分别将标志传递给链接器和C编译器。