2010-08-10 80 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