Apple アプリと Bazel

問題を報告 ソースを表示 Nightly · 7.4 . 7.3 7.2 7.1 7.0 6.5

このページでは、Bazel を使用して macOS と iOS をビルドする際に役立つリソースを紹介します。 できます。チュートリアル、ビルドルール、および Bazel を使用してこれらのプラットフォームのビルドとテストを行う場合に固有の情報へのリンクが含まれています。

Bazel の使用

macOS プロジェクトと iOS プロジェクトで Bazel を使用する際に役立つリソースは次のとおりです。

Bazel への移行

現在、Xcode を使用して macOS と iOS のプロジェクトをビルドしている場合は、次の手順に沿って操作します。 Bazel を使用したビルドを開始する手順を確認してください。

Apple アプリと新しいルール

: 新しいルールの作成は、高度なビルドとテストのシナリオを対象としています。Bazel の使用を開始する際には必要ありません。

以下のモジュール、構成フラグメント、プロバイダは、 Bazel の機能を拡張する 以下の点に注意してください。

Xcode の選択

ビルドに Xcode が必要な場合、Bazel は以下に基づいて適切なバージョンを選択します。 --xcode_config フラグと --xcode_version フラグ。--xcode_config は、使用可能な Xcode バージョンのセットを消費し、--xcode_version が渡されていない場合はデフォルト バージョンを設定します。このデフォルトは、 --xcode_version フラグ(ただし、Xcode のバージョンが --xcode_config ターゲットで表されます。

--xcode_config を渡さない場合、Bazel はホストマシンで使用可能な Xcode バージョンを表す自動生成された XcodeVersionConfig を使用します。デフォルトのバージョンは 最新の Xcode バージョンとして ビルドする必要がありますこれはローカル実行に適しています。

リモートビルドを実行する場合は、--xcode_configxcode_config versions 属性がリモートで利用可能なリストであるターゲット xcode_version であり、default 属性がこのいずれか 1 つ xcode_versions

動的実行を使用する場合は、--xcode_configxcode_config ターゲットの remote_versions 属性が available_xcodes リモートから利用可能な Xcode バージョンを含むターゲット local_versions 属性は available_xcodes ローカルで利用可能な Xcode バージョンを含むターゲットです。local_versions の場合は、自動生成された @local_config_xcode//:host_available_xcodes を使用することをおすすめします。デフォルトの Xcode バージョンは、相互に利用可能な最新バージョン(存在する場合)です。存在しない場合は、local_versions ターゲットのデフォルトです。デフォルトとして local_versions を使用する場合は、--experimental_prefer_mutual_default=false を渡します。