Por las razones expuestas en otras respuestas a esta pregunta, no puede heredar valores fácilmente.
Recomiendo definir sus configuraciones en cascada. Vamos a suponer que APP es el prefijo de su proyecto y crea esta simple definición de sólo unos pocos CFLAGS:
platform.xcconfig:
APP_PLATFORM_CFLAGS = -DMAS=1
project.xcconfig:
#include "platform.xcconfig"
APP_PROJECT_CFLAGS = -DBETA=1
meta-one.xcconfig:
#include "project.xcconfig"
APP_TARGET_CFLAGS = -DSUPER_COOL=1
#include "merge.xcconfig"
target-two.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)
A continuación, podrás basan cada uno de sus objetivos crear configuraciones de target-xxx.xcconfig
. Un proyecto real utilizará configuraciones más complejas, utilizando un archivo de configuración para el proyecto y otro diferente para el objetivo, pero se entiende la idea.
Además, recuerde que se refiere a $(inherited)
mayor nivel en la jerarquía, no anterior. Por ejemplo, hereda del nivel de Proyecto en el nivel de Destino. No estoy seguro de si esto se aplica a Xcode 4 también.
Esta es una simplificación de GTM, vaya allí para obtener más información.
No tuve mucha suerte con XCode 3.2 :( –