У мене є проект Xcode з великою кількістю цілей, куди я хотів би включити набір налаштувань для програм, побудованих під конфігураціями Ad-hoc та Debug, але не під конфігурацією Release.
Фази збірки, здається, не дозволяють обумовлювати себе конфігурацією (вони, очевидно, можуть залежати від цілі, але подвоєння кількості цілей у проекті зробить його повністю непридатним).
Це залишає написання власного правила побудови. Я планую виключити Set.bundle з усіх цілей і створити правило збірки, яке умовно копіює його в пакет продуктів, але прикладні приклади дійсно важко знайти.
У створеному мною правилі побудови встановлено параметр Process на "Source files with names matching:" та Settings.bundle як назву. Параметр Використання - "Спеціальний сценарій:".
Мій спеціальний сценарій такий (із застереженням, що мій скрипт bash знаходиться на рівні культового вантажу):
if [${CONFIGURATION} = 'Debug'] then
cp -r ${INPUT_FILE_PATH} ${DERIVED_FILES_DIR}/.
fi
Нарешті, я вказав ${DERIVED_FILES_DIR}/Settings.bundle
як вихідний файл.
Оскільки я тут, повинно бути очевидно, що це не працює. Моє перше запитання - чи є десь, що я можу переглядати висновок правил збірки як виконання, щоб переконатися, що 1) воно насправді виконується, і що 2) У мене десь не виникла дурна синтаксична помилка.
Крім того, яке правильне розташування (у вигляді змінної середовища) для копіювання виводу?