我有一个包含大量目标的Xcode项目,我希望在Ad-hoc和Debug配置下构建的应用程序包含一个设置包,但不包含在Release配置下。如何在Xcode中有条件地包含基于构建配置的文件?
构建阶段似乎不允许使自己成为条件的配置(他们显然可以有条件的目标,但倍增项目中的目标数量将使其完全无法使用)。
这留下了编写自定义生成规则。我的计划是将Settings.bundle从所有目标中排除,并创建一个构建规则,将其有条件地复制到产品包中,但很难找到适用的示例。
我已经开始的构建规则将Process设置设置为“Source names with namesmatching:”和Settings.bundle作为名称。使用设置是“自定义脚本:”。
我的自定义脚本如下(与我的bash脚本是在货物邪教级别的警告):
if [${CONFIGURATION} = 'Debug'] then
cp -r ${INPUT_FILE_PATH} ${DERIVED_FILES_DIR}/.
fi
最后,我列为输出文件${DERIVED_FILES_DIR}/Settings.bundle
。
由于我在这里,它应该是显而易见的,它不工作。我的第一个问题是,是否有某处我可以查看构建规则的输出作为执行,以确保1)它实际上正在执行,并且2)我没有在某处出现一个愚蠢的语法错误。
另外,什么是复制输出到适当的位置(以环境变量的形式)?
这给我的语法错误,当我建立。弗兰克的解决方案,复制和粘贴,完美运作。 – Lance 2013-08-26 20:41:33
为了完全公平,这家伙的答案在三个月前发布。 – Puppy 2015-09-29 15:32:24