Xcode и номер версии iPhone SDK в путях — как с этим жить правильно?
Мне в наследство достался проект, который билдится скриптом, содержащим пути вида /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk
Если скрипт переезжает на машину с другой версией iPhone SDK, всё ломается.
Хотелось бы понять, как правильно прописывать такие пути с помощью переменной окружения, однако я не могу найти никаких переменных окружения, set | grep iPhoneOS молчит как рыба об лёд.
Можно разрубить Гордиев Узел написанием скрипта, ищущего проинсталлированные версии и определяющего правильный путь, но это костыли. Как сделать правильно?
Почему бы не использовать что-то типа ls -1d /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS*.sdk
для определения пути?
Не знаю только, как оно в OS X
В SDKs лежат системные библиотеки и прямого пути к ним в скрипте в любом случае быть не должно — нужно или опцию указывать или переменную окружения. То есть уже сейчас можно убрать эти пути, и вставить, скажем -miphoneos-version-min=4.2. Другой вопрос, как менять это 4.2 на другое значение.
Я, признаться, не совсем понимаю, зачем его менять на разных машинах — разве не правильнее билдить под минимальную подходяющу версию? Но допустим, нужно менять — тогда, наверное, правильнее создавать build configuration, где указывать target SDK. Если часть билда идет скриптом, он может считывать XCode variables из окружения.