以编程方式将源代码添加到 Xcode 目标



我正在使用protobuf从protofile生成swift类(我为此目的编写了一个脚本(。现在我需要将所有生成的文件添加到 Xcode 项目中的目标中。

如何以编程方式执行此操作?也许是构建阶段中的脚本或 macOS 中的其他类型的操作(自动器?

CocoaPods 使用此项目来修改项目文件: https://github.com/CocoaPods/Xcodeproj

使用 Xcode 中内置的功能可以做到这一点(我们已经用 c++ 做到了,但 swift 也应该可以做到(:

在目标中,添加与原型文件的扩展名匹配的自定义 shell 脚本生成规则。

使用"${INPUT_FILE_PATH}""${SCRIPT_OUTPUT_FILE_0}"调用脚本。

如果输出文件的扩展名与另一个生成规则匹配,则将执行该规则。因此,在您的情况下,将构建规则的输出文件设置为${DERIVED_FILE_DIR}/${INPUT_FILE_BASE}.swift以便将其发送到 swift 编译器。

现在转到目标的编译源代码构建阶段并添加原型文件。

你可以通过 Xcode "Build Rules" 来做到这一点。

检查此项目,该项目利用"构建规则"生成源代码文件并将它们从protobuf添加到项目中

https://github.com/microsoft/plcrashreporter

最新更新