我有一个拥有大量目标的 Xcode 项目,我想在其中包含一个在 Ad-hoc 和 Debug 配置下构建的应用程序的设置包,但不包含在发布配置下。
构建阶段似乎不允许自己以配置为条件(它们显然可以以目标为条件,但是将项目中的目标数量增加一倍将使其完全无法使用)。
这样就只剩下编写自定义生成规则了。我的计划是从所有目标中排除 Settings.bundle,并创建一个构建规则,有条件地将其复制到产品包中,但是很难找到适用的示例。
我已经启动的构建规则将 Process 设置为“与名称匹配的源文件:”,并将 Settings.bundle 作为名称。Use 设置为“ Custom script:”。
我的自定义脚本如下(注意,我的 bash 脚本处于货物狂热级别) :
if [${CONFIGURATION} = 'Debug'] then
cp -r ${INPUT_FILE_PATH} ${DERIVED_FILES_DIR}/.
fi
最后,我将 ${DERIVED_FILES_DIR}/Settings.bundle列为输出文件。
既然我来了,很明显这不管用。我的第一个问题是,我是否可以在某个地方将构建规则的输出视为执行,以确保1)它实际上正在执行,2)我没有在某个地方出现愚蠢的语法错误。
此外,复制输出的正确位置(以环境变量的形式)是什么?