По причинам, изложенным в других ответах на этот вопрос, вы не можете легко наследовать ценности.
Я рекомендую определить ваши настройки в каскаде. Давайте предположим, что приложение является ваш префикс проекта и сделать это простое определение лишь несколько CFLAGS:
platform.xcconfig:
APP_PLATFORM_CFLAGS = -DMAS=1
project.xcconfig:
#include "platform.xcconfig"
APP_PROJECT_CFLAGS = -DBETA=1
целевой one.xcconfig:
#include "project.xcconfig"
APP_TARGET_CFLAGS = -DSUPER_COOL=1
#include "merge.xcconfig"
цель-два.xcconfig:
#include "project.xcconfig"
APP_TARGET_CFLAGS = -DULTRA_COOL=1
#include "merge.xcconfig"
merge.xcconfig:
OTHER_CFLAGS = $(inherited) $(APP_PLATFORM_CFLAGS) $(APP_PROJECT_CFLAGS) $(APP_TARGET_CFLAGS)
Тогда вы будете основывать каждый из ваших целей построения конфигураций на target-xxx.xcconfig
. Реальный проект будет использовать более сложные настройки, используя конфигурационный файл для проекта и другой для цели, но вы получите эту идею.
Кроме того, помните, что $(inherited)
относится к выше уровню в иерархии, а не ранее. Например, он наследуется от уровня проекта на целевом уровне. Не уверен, что это относится и к Xcode 4.
Это упрощение GTM, перейдите туда, чтобы узнать больше.
Не очень повезло с XCode 3.2 :( –