2010-08-10 61 views
2

我正在移植一个用MacOS构建的项目。我们将当前源版本号编译到我们的代码中,该代码用于在代码级别跟踪文件和库之间的版本兼容性。如何在XCode中动态设置构建选项(-D)?

-DSRC_REVISION=12345 

在我们现有的构建系统12345是由被称为化妆,变成了每次化妆时运行构建选项脚本输出(如文本)。

我该如何在XCode中做同样的事情。

回答

1

你可以在.h文件中使用#define而不是在编译时使用-D吗?

更改你的脚本写有“version.h中”包括:

#define SRC_REVISION 12345 

,然后再向每个源文件的那个文件(或者将其设置为prefix header所以你不必明确地将其包含在每个文件中)。

+0

除非它不是自动的,否则这将起作用:i)驾驶XCode的人需要知道有脚本可以运行,ii)他们需要记住每次更新源代码树时都要运行该脚本。 – user48956 2010-08-10 18:11:00

+0

通过添加“Add”>“New Build Phase”>“New Run Script Build Phase”来构建version.h,解决了这个问题。谢谢。 – user48956 2010-08-11 01:36:23