我目前有一些我需要构建的iPhone应用程序的特殊"风味".理想情况下,我想为每个"风味"设置一个方案,每个方案将定义(或设置)一个或多个预处理器定义,我可以使用它们在我的代码中进行分支,甚至可能预处理我的info.plist文件.这显然可以通过多个目标完成,但由于我可以拥有应用程序的许多不同"风格",因此使用方案来保持目标数量下降会很棒.我目前的想法是在一个预操作脚本中添加这些预处理器定义,但我不能在我的生活中找到任何更新GCC_PREPROCESSOR_DEFINITIONS的方法.由于它是一个环境变量,我不应该有权附加到GCC_PREPROCESSOR_DEFINITIONS吗?
Dus*_*tin 15
更糟糕的情况是,您可以为该方案执行预构建脚本.您必须为每个方案包含脚本:

我更愿意将它附加到配置:

然后,您可以轻松地为各种配置添加预处理器宏,就像我在这里进行调试一样:

<ProjectName> _Prefix.pch文件是放置影响整个程序的宏的好地方,就像我在这里:

在我的示例中,我们在不处于调试模式时有效地关闭控制台输出,从而提供一点速度提升.
为了满足我允许方案设置预处理器定义的要求,我提出的最佳解决方案是让方案预执行和动作后脚本修改xcconfig文件.反过来,该文件更新构建配置,设置预处理器定义,甚至允许我定义预处理器定义以有条件地修改info.plist.如果其他人沿着此路线走,请确保考虑源控件如何处理此文件.
本文的问题和相关答案对我有帮助:如何在xcconfig变量中追加值?
| 归档时间: |
|
| 查看次数: |
12330 次 |
| 最近记录: |