Ant execタスクを使用してxcodebuildを実行し、iOSプロジェクトhudsonをビルドします。 HudsonスレーブまたはiOSプロジェクトでSDKを更新した後、すべてのプロジェクトが失敗するため、SDKバージョンを指定しないようにスクリプトを作成できます。
ターゲットセットアップBase SDK - Latest iOS
のSDK 4.2以降、xcodeにはNiceオプションがあります。
そして、xcodebuildコマンドで-sdk
paramを提供する必要はありませんが、その後(と思う)xcodeプロジェクトから取得され、コミット中に誤ってターゲットをシミュレーターからデバイスに変更する可能性があるため、悪いです。
一定の何かが必要です。開発者のマシンでもこのantタスクを実行できるようにしたいので、すべてのマシンで設定することを繰り返したくないので、env変数を使用しない方がいいでしょう。
残念ながらxcodebuild -showsdks
は以下のみを提供します:
Mac OS X SDKs:
Mac OS X 10.4 -sdk macosx10.4
Mac OS X 10.5 -sdk macosx10.5
Mac OS X 10.6 -sdk macosx10.6
iOS SDKs:
iOS 4.2 -sdk iphoneos4.2
iOS Simulator SDKs:
Simulator - iOS 3.2 -sdk iphonesimulator3.2
Simulator - iOS 4.0 -sdk iphonesimulator4.0
Simulator - iOS 4.1 -sdk iphonesimulator4.1
Simulator - iOS 4.2 -sdk iphonesimulator4.2
-sdk iphoneosLatest
のようなものが必要です。私の唯一のアイデアは、xcodebuild -showsdks
の出力を何らかのスクリプトと比較することですが、このアイデアは好きではありません。
次を使用して、xcodebuildを最新のSDKで使用できます。
xcodebuild -sdk iphoneos
、デバイス用xcodebuild -sdk iphonesimulator
、シミュレータ用。これらのオプションは自動ビルドに使用し、XCode 3.2.5以来機能しています
xcodebuild -sdk iphoneos
(バージョン番号なし)これを実現します。
@jenningjのソリューションを試しましたが、うまくいきました。 Maciek Sawicki、これがあなたのために働くなら、あなたはそれを正しい解決策としてマークすべきです。
また、xcodebuild -showsdk
はxcodebuild -showsdks
。
試すことができます:xcodebuild -showsdks | grep -Eo "iphoneos([0-9]{1,}\.)+[0-9]{1,}"