2009-08-25 6 views
2

В XCode, как я могу вызвать «скрипт оболочки», который является скриптом PERL, который копирует файлы .app и .dsym в другой каталог? Я хочу передать имя проекта и/или корневой каталог проекта в сценарий. Я хочу, чтобы сценарий вызывался каждый раз, когда я строил в режимах выпуска и распространения, но не в режиме отладки.XCode Post Build Copy File Actions

Thanx in Advance.

-isdi-

ответ

5

Щелкните правой кнопкой мыши на цель и выберите Add-> New Build синхронизма> New Run Script Построить Фазу.

Внутри текстовой области «Script», добавьте:

if [ ${CONFIGURATION} != "Debug" ] 
then 
    /usr/bin/perl "${PROJECT_DIR}/myperlscript.pl" "${PRODUCT_NAME}" "${PROJECT_DIR}" 
fi 

Изменить местоположение и имя myperlscript.pl быть место и название вашего сценария.

Не забудьте переместить Run Script шаг после Link Binary With Libraries, так как вы копируете построенный .app.

(также может добавить «Perl» тег на вопрос)

+0

Прохладный. Thanx. Я не помечал его языком, потому что я предполагаю, что могу заменить часть perl командной строки на использование php или python или что-то еще. – ISDi

4

Для кого-то, кто будет интересно, вы также можете сделать простую копию с помощью

[Нажмите на имени схемы] -> Изменить схему ... -> [Выбрать схему] -> Запустить «Целевой» -> Пост-действия

и добавить команду cp. В моем случае, для быстрого тестирования и простоты использования, я хотел скопировать мой двоичный файл обратно в каталог проекта, чтобы я мог обрабатывать некоторые файлы данных. Я использовал следующее:

cp ${TARGET_BUILD_DIR}/${TARGET_NAME} ${PROJECT_DIR}/"binaryFileName"