2015-05-28 4 views
2

У меня есть несколько устаревших проектов, которые клиенты иногда просят внести незначительные изменения. Некоторые из них ломаются при построении с версиями SDK Xcode/iOS больше, чем X. Я хотел бы использовать некоторые сценарии времени сборки в этих проектах, чтобы выплескивать ошибку, если вы строите неправильную версию Xcode. Есть ли какая-либо переменная среды или что-то, на что я могу посмотреть, чтобы проверить это? У меня есть несколько разных версий Xcode, поэтому я не могу просто развернуть фактический Xcode .app и проверить там. Благодарю.Любой способ получить версию xcode, используемую во время сборки?

+0

ближе всего я мог бы найти в документации это [ 'GCC_VERSION'] (https://developer.apple.com/library/ios/documentation/DeveloperTools/Reference/XcodeBuildSettingRef/1-Build_Setting_Reference/build_setting_ref .html). – JAL

ответ

0

Вы можете написать скрипт, который получает работать как шаг сборки с этим в ней:

/Developer/usr/bin/xcodebuild -version

+0

Это не переменная среды. – JAL

+0

Это не так. Я не мог найти переменную окружения для этого. Поэтому я представил следующее лучшее, что можно было бы спросить во время сборки. – Almo

+0

Спасибо Almo, но это просто распечатывает самую последнюю версию xcode, которую я установил (или, похоже, так или иначе). Вот почему я надеялся на что-то вроде переменной среды. – wermy

0

Вы можете добавить сценарий, как это для предотвращения другой XCode версии компиляции (только принимаем XCode 7.3)

XCODE_VERSION_TEAM="0730" 

if [ ${XCODE_VERSION_ACTUAL} != ${XCODE_VERSION_TEAM} ]; then 
    echo -n "error: Only accept Xcode v" 
    echo -n ${XCODE_VERSION_TEAM:1:1}.${XCODE_VERSION_TEAM:2:1}.${XCODE_VERSION_TEAM:3:1} 
    echo " for compile. See 'Run Script Phase'." 
    return -1 
fi 
Смежные вопросы