1つのメインCocoaアプリケーション、多数のプラグイン、および2つのヘルパーアプリを含むプロジェクトがあります。ヘルパーアプリには独自のターゲットがあり、プラグインなしでアプリをビルドできるようにしたいので、メインアプリには独自のターゲット(AppTargetと呼びます)がありますが、通常はすべてを集約ターゲット(TargetAと呼びます)でビルドします。また、TargetAを備えた別の集約ターゲット、別のプラグイン、および追加のコピーファイルビルドフェーズ(TargetB)があります。これはすべて期待どおりに機能します。TargetAを含み、実行シェルスクリプトビルドフェーズがある(ただしまだない)新しい集約ターゲットTargetCを作成しようとしています。
私が遭遇している問題は、GCC_PREPROCESSOR_DEFINITIONSを使用して条件付きコンパイル(#ifdef TARGETC ... #endif)用のシンボルTARGETCを#defineしようとしているが、それがビルドパラメーターに含まれていないことです。ビルドログで、アプリの動作がビルドログと一致します-GCC_PREPROCESSOR_DEFINITIONSが失敗しました(TARGETCとTARGETC = 1の両方を試しました。OTHER_CFLAGSユーザー定義設定を追加しようとしました(-DTARGETC = 1に設定)が、それもうまくいきませんでした。
ドキュメントには、集約ターゲットのユーザー定義設定がサブターゲットに細流化すると記載されていますが、これは1レベルしか下がらないようです。TargetAはそれを取得している可能性がありますが、AppTargetはそうではありません。これはバグですか、予想される動作ですか、それとも私は何か間違ったことをしていますか?