Мне нужно запустить собственный сценарий оболочки на шаге очистки в Xcode (точнее, в Xcode 9). У меня есть набор make-файлов, которые строят мои зависимости, сначала я вызывал этот скрипт на этапе запуска сценария, но затем выходные данные этих make-файлов никогда не очищались. Поэтому я подумал, что если я обработаю переменную Xcode environemnt ${ACTION}
в этом скрипте, он также сможет их очистить. Вопрос в том - скрипт не вызывается на чистую.
Было несколько сообщений по этому поводу, вот что я попробовал:
- Создание дополнительной совокупной цели. Я добавил цель и поместил скрипт, который обрабатывает
${ACTION}
из среды сборки, но этот скрипт никогда не выполняется после очистки. При очистке в журнале сборки есть только строка Clean.remove clean
.
- Создание цели внешней системы сборки (в некоторых старых постах указана цель внешнего сценария, но я не смог найти ее в Xcode 9). Затем это позволяет мне выполнить собственный сценарий (если я заменяю команду
/usr/bin/make
по умолчанию на мой сценарий), но в этом случае переменная окружения ${ACTION}
не устанавливается (я проверял это в выводе сборки, он всегда имеет export ACTION=
в нем), поэтому я не могу различить чистую и строительную фазы.
Что касается совокупного целевого объекта, у него есть свойство выходных файлов, если я их укажу - может ли это заставить Xcode их очистить?