コマンドライン リファレンス

bazel [<startup options>] <command> [<args>]
または
bazel [<startup options>] <command> [<args>] -- [<target patterns>]
ターゲット パターンの構文については、ユーザーガイドをご覧ください。

オプションの構文

オプションは、さまざまな方法で Bazel に渡すことができます。値を必要とするオプションは、等号またはスペースを使用して渡すことができます。

--<option>=<value>
--<option> <value>
一部のオプションには 1 文字の短縮形があります。その場合、短縮形は 1 つのダッシュとスペースで渡す必要があります。
-<short_form> <value>

ブール値オプションは次のように有効にできます。

--<option>
--<option>=[true|yes|1]
で、次のように無効にします。
--no<option>
--<option>=[false|no|0]

通常、トライステート オプションはデフォルトで自動に設定されています。次のように強制的に有効にできます。

--<option>=[true|yes|1]
または次のように強制的に無効にします。
--no<option>
--<option>=[false|no|0]

コマンド

aquery 指定されたターゲットを分析し、アクション グラフをクエリします。
build 指定されたターゲットをビルドします。
canonicalize-flags bazel オプションのリストを正規化します。
clean 出力ファイルを削除し、必要に応じてサーバーを停止します。
coverage 指定されたテスト ターゲットのコード カバレッジ レポートを生成します。
cquery 指定されたターゲットを構成とともに読み込み、分析し、クエリします。
dump bazel サーバー プロセスの内部状態をダンプします。
fetch ターゲットの前提条件となる外部リポジトリを取得します。
help コマンドのヘルプまたはインデックスを出力します。
info bazel サーバーに関するランタイム情報を表示します。
license このソフトウェアのライセンスを出力します。
mobile-install モバイル デバイスにターゲットをインストールします。
mod Bzlmod 外部依存関係グラフをクエリします
print_action ファイルのコンパイルに使用するコマンドライン引数を出力します。
query 依存関係グラフ クエリを実行します。
run 指定されたターゲットを実行します。
shutdown bazel サーバーを停止します。
test 指定されたテスト ターゲットをビルドして実行します。
vendor 外部リポジトリを --vendor_dir フラグで指定されたフォルダに取得します。
version bazel のバージョン情報を出力します。

起動オプション

コマンドの前に表示され、クライアントによって解析されるオプション:
--[no]autodetect_server_javabase デフォルト: "true"

--noautodetect_server_javabase が渡されると、Bazel は bazel サーバーの実行にローカル JDK を使用せず、終了します。

タグ: affects_outputsloses_incremental_state

--[no]batch のデフォルト: 「false」

設定されている場合、Bazel は標準のクライアント/サーバー モードではなく、サーバーのないクライアント プロセスとして実行されます。これは非推奨であり、削除されます。サーバーが残らないようにするには、サーバーを明示的にシャットダウンすることをおすすめします。

タグ: loses_incremental_statebazel_internal_configurationdeprecated

--[no]batch_cpu_scheduling のデフォルト: 「false」

Linux のみ。Blaze には「batch」CPU スケジューリングを使用します。このポリシーは、非インタラクティブなワークロードで、nice 値を下げたくない場合に便利です。「man 2 sched_setscheduler」をご覧ください。false の場合、Bazel はシステムコールを実行しません。

タグ: host_machine_resource_optimizations

--bazelrc=<path> の複数の用途が蓄積される

Bazel オプションのデフォルト値を含むユーザーの .bazelrc ファイルの場所。/dev/null は、以降のすべての --bazelrc が無視されることを示します。これは、リリースビルドなどでユーザー rc ファイルの検索を無効にする場合に便利です。このオプションは複数回指定することもできます。たとえば、--bazelrc=x.rc --bazelrc=y.rc --bazelrc=/dev/null --bazelrc=z.rc を使用すると、次のようになります。

  1. x.rc と y.rc が読み取られます。
  2. 前の /dev/null により、z.rc は無視されます。指定しない場合、Bazel は次の 2 つの場所(ワークスペース ディレクトリ、ユーザーのホーム ディレクトリ)で最初に見つかった .bazelrc ファイルを使用します。注: コマンドライン オプションは、常に bazelrc のオプションよりも優先されます。

タグ: changes_inputs

--[no]block_for_lock デフォルト: "true"

--noblock_for_lock が渡されると、Bazel は実行中のコマンドの完了を待たずにすぐに終了します。

タグ: eagerness_to_exit

--[no]client_debug のデフォルト: 「false」

true の場合、クライアントからのデバッグ情報を stderr に記録します。このオプションを変更しても、サーバーは再起動されません。

タグ: affects_outputsbazel_monitoring

--connect_timeout_secs=<an integer> のデフォルト: 「30」

クライアントがサーバーへの接続を試みるたびに待機する時間

タグ: bazel_internal_configuration

--digest_function=<hash function> デフォルト: 説明を参照

ファイル ダイジェストの計算に使用するハッシュ関数。

タグ: loses_incremental_statebazel_internal_configuration

--experimental_cgroup_parent=<path> デフォルト: 説明を参照

bazel サーバーを起動する cgroup の絶対パス。サーバー プロセスは、サポートされている各コントローラに対して指定された cgroup で開始されます。たとえば、このフラグの値が /build/bazel で、CPU コントローラとメモリ コントローラがそれぞれ /sys/fs/cgroup/cpu と /sys/fs/cgroup/memory にマウントされている場合、サーバーは cgroup /sys/fs/cgroup/cpu/build/bazel と /sys/fs/cgroup/memory/build/bazel で起動します。指定された cgroup が 1 つ以上のコントローラで書き込み可能でない場合でも、エラーにはなりません。このオプションは、cgroup をサポートしていないプラットフォームでは効果がありません。

タグ: bazel_monitoringexecution

--[no]experimental_run_in_user_cgroup のデフォルト: 「false」

true の場合、Bazel サーバーは systemd-run で実行され、ユーザーが cgroup を所有します。このフラグは Linux でのみ有効です。

タグ: bazel_monitoringexecution

--failure_detail_out=<path> デフォルト: 説明を参照

設定されている場合、サーバーで障害が発生し、通常どおり gRPC で報告できない場合に、failure_detail protobuf メッセージを書き込む場所を指定します。それ以外の場合、ロケーションは ${OUTPUT_BASE}/failure_detail.rawproto になります。

タグ: affects_outputsloses_incremental_state

--[no]home_rc デフォルト: "true"

$HOME/.bazelrc でホーム bazelrc ファイルを探すかどうか

タグ: changes_inputs

--[no]idle_server_tasks デフォルト: "true"

サーバーがアイドル状態のときに System.gc() を実行する

タグ: loses_incremental_statehost_machine_resource_optimizations

--[no]ignore_all_rc_files のデフォルト: 「false」

他の rc 変更フラグの値に関係なく、すべての rc ファイルを無効にします。これらのフラグが起動オプションのリストで後から指定された場合でも同様です。

タグ: changes_inputs

--io_nice_level={-1,0,1,2,3,4,5,6,7} のデフォルト: 「-1」

Linux のみ。sys_ioprio_set システムコールを使用して、ベスト エフォート IO スケジューリングのレベルを 0 ~ 7 の範囲で設定します。0 が最も優先度が高く、7 が最も優先度が低くなります。予測スケジューラは優先度 4 までしか考慮しない場合があります。負の値に設定すると、Bazel はシステムコールを実行しません。

タグ: host_machine_resource_optimizations

--local_startup_timeout_secs=<an integer> デフォルト: 「120」

クライアントがサーバーへの接続を待機する最大時間

タグ: bazel_internal_configuration

--macos_qos_class=<a string> のデフォルト: "default"

macOS で実行されている場合に、bazel サーバーの QoS サービス クラスを設定します。このフラグは他のすべてのプラットフォームには影響しませんが、変更なしで rc ファイルを共有できるようにするためにサポートされています。指定可能な値は、user-interactive、user-initiated、default、utility、background です。

タグ: host_machine_resource_optimizations

--max_idle_secs=<integer> のデフォルト: 「10800」

ビルドサーバーがシャットダウンする前にアイドル状態で待機する秒数。0 は、サーバーがシャットダウンされないことを意味します。これはサーバーの起動時にのみ読み取られます。このオプションを変更しても、サーバーは再起動されません。

タグ: eagerness_to_exitloses_incremental_state

--output_base=<path> デフォルト: 説明を参照

設定すると、すべてのビルド出力が書き込まれる出力場所を指定します。それ以外の場合、場所は ${OUTPUT_ROOT}/blaze${USER}/${MD5_OF_WORKSPACE_ROOT} になります。注: この値に対して Bazel の呼び出しごとに異なるオプションを指定すると、新しい Bazel サーバーが起動する可能性があります。Bazel は、指定された出力ベースごとに 1 つのサーバーを起動します。通常、ワークスペースごとに 1 つの出力ベースがありますが、このオプションを使用すると、ワークスペースごとに複数の出力ベースを設定して、同じクライアントの複数のビルドを同じマシンで同時に実行できます。Bazel サーバーをシャットダウンする方法については、「bazel help shutdown」をご覧ください。

タグ: affects_outputsloses_incremental_state

--output_user_root=<path> デフォルト: 説明を参照

すべてのビルド出力が書き込まれるユーザー固有のディレクトリ。デフォルトでは $USER の関数ですが、定数を指定することで、共同作業を行うユーザー間でビルド出力を共有できます。

タグ: affects_outputsloses_incremental_state

--[no]preemptible のデフォルト: 「false」

true の場合、別のコマンドが開始されると、コマンドがプリエンプトされる可能性があります。

タグ: eagerness_to_exit

--[no]quiet のデフォルト: 「false」

true の場合、コンソールに情報メッセージは出力されず、エラーのみが出力されます。このオプションを変更しても、サーバーは再起動されません。

タグ: affects_outputsbazel_monitoring

--server_jvm_out=<path> デフォルト: 説明を参照

サーバーの JVM の出力を書き込む場所。設定されていない場合、デフォルトで output_base のロケーションが使用されます。

タグ: affects_outputsloses_incremental_state

--[no]shutdown_on_low_sys_mem のデフォルト: 「false」

max_idle_secs が設定されていて、ビルドサーバーがしばらくアイドル状態になっている場合、システムの空き RAM が少なくなるとサーバーをシャットダウンします。Linux と MacOS のみ。

タグ: eagerness_to_exitloses_incremental_state

--[no]system_rc デフォルト: "true"

システム全体の bazelrc を検索するかどうか。

タグ: changes_inputs

--[no]unlimit_coredumps のデフォルト: 「false」

サーバー(JVM を含む)とクライアントのコアダンプを一般的な条件で可能にするため、ソフト コアダンプの上限をハード上限まで引き上げます。このフラグを bazelrc に一度設定しておけば、実際にコアダンプをトリガーする条件が発生したときにコアダンプを取得できます。

タグ: bazel_internal_configuration

true の場合、ファイル コピーではなく、Windows に実際のシンボリック リンクが作成されます。Windows デベロッパー モードが有効になっており、Windows 10 バージョン 1703 以降が必要です。

タグ: bazel_internal_configuration

--[no]workspace_rc デフォルト: "true"

$workspace/.bazelrc でワークスペース bazelrc ファイルを探すかどうか

タグ: changes_inputs

その他のオプション(他のカテゴリに分類されないもの):
--host_jvm_args=<jvm_arg> の複数の用途が蓄積される

Blaze を実行する JVM に渡すフラグ。

--host_jvm_debug

JVM の起動フラグを追加する便利なオプション。これにより、起動中に JDWP 準拠のデバッガ(Eclipse など)からポート 5005 に接続するまで JVM が待機します。

展開すると次のようになります。
  --host_jvm_args=-agentlib:jdwp=transport=dt_socket,server=y,address=5005

--server_javabase=<jvm path> のデフォルト: ""

Bazel 自体の実行に使用される JVM のパス。

すべてのコマンドに共通のオプション

コマンドの前に表示され、クライアントによって解析されるオプション:
--distdir=<a path> の複数の用途が蓄積される

ネットワークにアクセスしてアーカイブをダウンロードする前に、アーカイブを検索する場所を追加します。

タグ: bazel_internal_configuration

設定されている場合、リポジトリ キャッシュはコピーではなく、キャッシュ ヒットの場合にファイルをハードリンクします。これは、ディスク容量を節約するためのものです。

タグ: bazel_internal_configuration

--experimental_repository_downloader_retries=<an integer> のデフォルト: 「5」

ダウンロード エラーを再試行する最大回数。0 に設定すると、再試行は無効になります。

タグ: experimental

--experimental_scale_timeouts=<a double> のデフォルト: 「1.0」

Starlark リポジトリ ルールのすべてのタイムアウトをこの係数でスケーリングします。このようにして、ソースコードを変更せずに、ルール作成者が想定したよりも遅いマシンで外部リポジトリを動作させることができます。

タグ: bazel_internal_configurationexperimental

--http_connector_attempts=<an integer> のデフォルト: 「8」

http ダウンロードの最大試行回数。

タグ: bazel_internal_configuration

--http_connector_retry_max_timeout=<An immutable length of time.> デフォルト: 「0s」

HTTP ダウンロードの再試行の最大タイムアウト。値が 0 の場合、最大タイムアウトは定義されません。

タグ: bazel_internal_configuration

--http_max_parallel_downloads=<an integer> のデフォルト: 「8」

並列 HTTP ダウンロードの最大数。

タグ: bazel_internal_configuration

--http_timeout_scaling=<a double> のデフォルト: 「1.0」

http ダウンロードに関連するすべてのタイムアウトを指定された係数でスケーリング

タグ: bazel_internal_configuration

--repo_contents_cache=<a path> デフォルト: 説明を参照

取得したリポジトリ ディレクトリを含むリポジトリ コンテンツ キャッシュの場所を指定します。このディレクトリはワークスペース間で共有できます。引数として空の文字列を指定すると、リポジトリ コンテンツ キャッシュが無効になります。それ以外の場合は、デフォルトの「<--repository_cache>/contents」が使用されます。つまり、'--repository_cache=' を設定すると、'--repo_contents_cache=<some_path>' も設定されていない限り、デフォルトでリポジトリ コンテンツ キャッシュも無効になります。

タグ: bazel_internal_configuration

--repo_contents_cache_gc_idle_delay=<An immutable length of time.> のデフォルト: 「5m」

リポジトリ コンテンツ キャッシュのガベージ コレクションが行われる前にサーバーがアイドル状態を維持する必要がある時間を指定します。

タグ: bazel_internal_configuration

--repo_contents_cache_gc_max_age=<An immutable length of time.> のデフォルト: 「14d」

リポジトリ コンテンツ キャッシュ内のエントリがガベージ コレクションの対象になるまでの未使用期間を指定します。0 に設定すると、重複するエントリのみがガベージ コレクションされます。

タグ: bazel_internal_configuration

--repository_cache=<a path> デフォルト: 説明を参照

外部リポジトリの取得中に取得したダウンロード値のキャッシュ保存場所を指定します。引数として空の文字列を指定すると、キャッシュが無効になります。それ以外の場合は、デフォルトの '<--output_user_root>/cache/repos/v1' が使用されます。

タグ: bazel_internal_configuration

--[no]repository_disable_download のデフォルト: 「false」

設定されている場合、リポジトリのフェッチ中に ctx.download{,_and_extract} を使用したダウンロードは許可されません。ネットワーク アクセスは完全に無効化されません。ctx.execute は、インターネットにアクセスする任意の実行可能ファイルをまだ実行できます。

タグ: bazel_internal_configuration

ビルド実行を制御するオプション:
--experimental_ui_max_stdouterr_bytes=<an integer in (-1)-1073741819 range> デフォルト: 「1048576」

コンソールに出力される stdout / stderr ファイルの最大サイズ。-1 は上限がないことを意味します。

タグ: execution

--gc_churning_threshold=<an integer in 0-100 range> のデフォルト: 「100」

呼び出しが 1 分以上実行された後、Blaze が呼び出しの経過時間のこの割合以上をフル GC に費やした場合、Blaze は処理を中止して OOM で失敗します。値 100 は、この理由で諦めないことを意味します。

タグ: host_machine_resource_optimizations

--gc_churning_threshold_if_multiple_top_level_targets=<an integer> のデフォルト: 「-1」

[0, 100] の値に設定され、これがトップレベル ターゲット(ビルドなど、クエリ以外)を受け取るコマンドで、そのようなトップレベル ターゲットが複数ある場合、--gc_churning_threshold をオーバーライドします。複数のトップレベル ターゲットがある場合に、より積極的な OOMing 動作(--gc_churning_threshold よりも低い値)を構成するのに役立ちます。これにより、Bazel の呼び出し元は分割して再試行できますが、トップレベル ターゲットが 1 つしかない場合は、より積極的でない動作になります。

タグ: host_machine_resource_optimizations

--gc_thrashing_threshold=<an integer in 0-100 range> のデフォルト: 「100」

GcThrashingDetector がメモリ負荷の高いイベントを上限(--gc_thrashing_limits)に対して考慮する、占有されたテニュアード スペースの割合(0 ~ 100)。100 に設定すると、GcThrashingDetector は無効になります。

タグ: host_machine_resource_optimizations

アクションの実行に使用されるツールチェーンを構成するオプション:
--[no]incompatible_enable_proto_toolchain_resolution のデフォルト: 「false」

true の場合、proto 言語ルールは protobuf リポジトリからツールチェーンを定義します。

タグ: loading_and_analysisincompatible_change

ユーザーが目的の出力を構成し、その存在ではなく値に影響を与えるオプション:
--bep_maximum_open_remote_upload_files=<an integer> のデフォルト: 「-1」

BEP アーティファクトのアップロード中に許可される開いているファイルの最大数。

タグ: affects_outputs

--remote_download_all

すべてのリモート出力をローカルマシンにダウンロードします。このフラグは --remote_download_outputs=all のエイリアスです。

展開すると次のようになります。
  --remote_download_outputs=all

タグ: affects_outputs

--remote_download_minimal

リモートビルドの出力をローカルマシンにダウンロードしません。このフラグは --remote_download_outputs=minimal のエイリアスです。

展開すると次のようになります。
  --remote_download_outputs=minimal

タグ: affects_outputs

--remote_download_outputs=<all, minimal or toplevel> デフォルト: "toplevel"

「minimal」に設定すると、ローカル アクションで必要なものを除き、リモートビルドの出力はローカルマシンにダウンロードされません。「toplevel」に設定すると、「minimal」と同様に動作しますが、最上位のターゲットの出力もローカルマシンにダウンロードします。どちらのオプションも、ネットワーク帯域幅がボトルネックになっている場合は、ビルド時間を大幅に短縮できます。

タグ: affects_outputs

リモートビルドの出力をローカルマシンにダウンロードする代わりに、シンボリック リンクを作成します。シンボリック リンクのターゲットは、テンプレート文字列の形式で指定できます。このテンプレート文字列には、それぞれオブジェクトのハッシュとサイズ(バイト単位)に展開される {hash} と {size_bytes} を含めることができます。たとえば、これらのシンボリック リンクは、CAS からオンデマンドでオブジェクトを読み込む FUSE ファイル システムを指す場合があります。

タグ: affects_outputs

--remote_download_toplevel

最上位のターゲットのリモート出力のみをローカルマシンにダウンロードします。このフラグは --remote_download_outputs=toplevel のエイリアスです。

展開すると次のようになります。
  --remote_download_outputs=toplevel

タグ: affects_outputs

--repo_env=<a 'name[=value]' assignment with an optional value part or the special syntax '=name' to unset a variable> の複数の用途が蓄積される

リポジトリ ルールでのみ使用できる追加の環境変数を指定します。リポジトリ ルールは環境全体を認識しますが、この方法ではコマンドライン フラグと <code>.bazelrc</code> エントリを使用して変数を設定できます。特別な構文 <code>=NAME</code> を使用すると、変数を明示的に設定解除できます。

タグ: action_command_lines

Bazel が有効なビルド入力(ルール定義、フラグの組み合わせなど)を厳密に適用する方法に影響するオプション:
--[no]allow_experimental_loads のデフォルト: 「false」

有効にすると、試験運用版の .bzls の読み込みでエラーではなく警告のみが発行されます。

タグ: build_file_semantics

--[no]check_bzl_visibility デフォルト: "true"

無効にすると、.bzl の読み込みの可視性エラーが警告に降格されます。

タグ: build_file_semantics

--[no]incompatible_enforce_starlark_utf8 のデフォルト: 「warning」

有効(または「error」に設定)の場合、Starlark ファイルが UTF-8 でエンコードされていないと失敗します。「warning」に設定されている場合は、代わりに警告を発行します。「off」に設定されている場合、Bazel は Starlark ファイルが UTF-8 でエンコードされていると想定しますが、この想定は検証されません。UTF-8 でエンコードされていない Starlark ファイルは、Bazel の動作に一貫性がなくなる原因となる可能性があります。

タグ: loading_and_analysisincompatible_change

このオプションは、Starlark 言語のセマンティクス、または BUILD ファイル、.bzl ファイル、WORKSPACE ファイルからアクセス可能なビルド API に影響します。
--[no]experimental_bzl_visibility デフォルト: "true"

有効にすると、最上位の評価中に .bzl ファイルが呼び出して、load() ステートメントの目的で可視性を設定できる visibility() 関数が追加されます。

タグ: loading_and_analysisexperimental

--[no]experimental_cc_shared_library のデフォルト: 「false」

true に設定すると、ルール cc_shared_library に必要なルール属性と Starlark API メソッドが使用可能になります。

タグ: build_file_semanticsloading_and_analysisexperimental

--[no]experimental_disable_external_package のデフォルト: 「false」

true に設定すると、自動生成された //external パッケージは使用できなくなります。Bazel は引き続きファイル「external/BUILD」を解析できませんが、名前のないパッケージから external/ に到達する glob は機能します。

タグ: loading_and_analysisloses_incremental_stateexperimental

--[no]experimental_dormant_deps のデフォルト: 「false」

true に設定すると、attr.label(materializer=)、attr(for_dependency_resolution=)、attr.dormant_label()、attr.dormant_label_list()、rule(for_dependency_resolution=) が許可されます。

タグ: build_file_semanticsexperimental

--[no]experimental_enable_android_migration_apis のデフォルト: 「false」

true に設定すると、Android Starlark の移行をサポートするために必要な API が有効になります。

タグ: build_file_semantics

--[no]experimental_enable_first_class_macros デフォルト: "true"

true に設定すると、シンボリック マクロを定義するための macro() 構造体が有効になります。

タグ: build_file_semantics

--[no]experimental_enable_scl_dialect デフォルト: "true"

true に設定すると、load() ステートメントで .scl ファイルを使用できます。

タグ: build_file_semantics

--[no]experimental_enable_starlark_set デフォルト: "true"

true の場合、Starlark で set データ型と set() コンストラクタを有効にします。

タグ: build_file_semanticsexperimental

--[no]experimental_google_legacy_api のデフォルト: 「false」

true に設定すると、Google のレガシーコードに関連する試験運用版の Starlark ビルド API が公開されます。

タグ: loading_and_analysisexperimental

--[no]experimental_isolated_extension_usages のデフォルト: 「false」

true の場合、<a href="https://bazel.build/rules/lib/globals/module#use_extension"><code>use_extension</code></a> 関数の<code>isolate</code> パラメータを有効にします。

タグ: loading_and_analysis

--[no]experimental_platforms_api のデフォルト: 「false」

true に設定すると、デバッグに役立つプラットフォーム関連の Starlark API が有効になります。

タグ: loading_and_analysisexperimental

--[no]experimental_repo_remote_exec のデフォルト: 「false」

true に設定すると、repository_rule にリモート実行機能が追加されます。

タグ: build_file_semanticsloading_and_analysisexperimental

--[no]experimental_repository_ctx_execute_wasm のデフォルト: 「false」

true の場合、repository_ctx の load_wasm メソッドと execute_wasm メソッドが有効になります。

タグ: loading_and_analysisexperimental

--[no]experimental_sibling_repository_layout のデフォルト: 「false」

true に設定すると、メイン以外のリポジトリは実行ルートのメイン リポジトリへのシンボリック リンクとして配置されます。つまり、すべてのリポジトリは $output_base/execution_root ディレクトリの直接の子です。これにより、$output_base/execution_root/main/external が実際のトップレベルの「external」ディレクトリ用に解放されるという副作用があります。

タグ: action_command_linesbazel_internal_configurationloading_and_analysisloses_incremental_stateexperimental

--[no]experimental_single_package_toolchain_binding のデフォルト: 「false」

有効になっている場合、register_toolchain 関数に複数のパッケージを参照する可能性のあるターゲット パターンを含めることはできません。

タグ: loading_and_analysisincompatible_change

--[no]experimental_starlark_types のデフォルト: 「false」

型アノテーションと型チェックを有効にします。アノテーションが許可される場所は、--experimental_starlark_types_allowed_paths によってさらに制御されます。

タグ: loading_and_analysisexperimental

--experimental_starlark_types_allowed_paths=<comma-separated list of options> のデフォルト: ""

Starlark 型アノテーションが許可される正規のラベル接頭辞のリスト。

タグ: loading_and_analysisexperimental

--[no]incompatible_allow_tags_propagation デフォルト: "true"

true に設定すると、タグはターゲットからアクションの実行要件に伝播されます。それ以外の場合、タグは伝播されません。詳しくは、https://github.com/bazelbuild/bazel/issues/8830 をご覧ください。

タグ: build_file_semanticsexperimental

--[no]incompatible_always_check_depset_elements デフォルト: "true"

すべてのコンストラクタで、depsets に追加された要素の有効性をチェックします。要素は不変である必要がありますが、これまで depset(direct=...) コンストラクタはチェックを忘れていました。depset 要素ではリストではなくタプルを使用します。詳しくは、https://github.com/bazelbuild/bazel/issues/10313 をご覧ください。

タグ: build_file_semanticsincompatible_change

--incompatible_autoload_externally=<comma-separated set of options> デフォルト: "+@rules_cc"

以前は Bazel の一部であったが、現在はそれぞれの外部リポジトリから取得されるルールのカンマ区切りのリスト(またはその他のシンボル)。このフラグは、Bazel からルールを移行しやすくするために使用することを目的としています。https://github.com/bazelbuild/bazel/issues/23043 もご覧ください。ファイル内で自動読み込みされるシンボルは、Bazel 組み込みの定義が外部リポジトリの正規の新しい定義に置き換えられたかのように動作します。BUILD ファイルの場合、これは基本的に load() ステートメントを暗黙的に追加することを意味します。.bzl ファイルの場合、自動読み込みされたシンボルがルールであるかどうかに応じて、load() ステートメントまたは native オブジェクトのフィールドの変更のいずれかになります。Bazel は、自動読み込み可能なすべてのシンボルのハードコードされたリストを保持します。このフラグに表示されるのは、これらのシンボルのみです。Bazel は、各シンボルについて、外部リポジトリ内の新しい定義の場所と、サイクルを回避するために自動読み込みしてはならない特別なリポジトリのセットを認識しています。このフラグのリスト項目「+foo」により、foo の除外リポジトリを除き、シンボル foo が自動読み込みされます。除外リポジトリ内では、Bazel で定義されたバージョンの foo が引き続き使用できます。「foo」のリスト項目は上記のように自動読み込みをトリガーしますが、Bazel で定義されたバージョンの foo は除外されたリポジトリでは使用できません。これにより、foo の外部リポジトリが foo の古い Bazel 実装に依存しないようになります。-foo のリスト項目は自動読み込みをトリガーしませんが、Bazel で定義された foo のバージョンをワークスペース全体でアクセスできないようにします。これは、ワークスペースで foo の定義を Bazel から削除する準備ができていることを検証するために使用されます。このフラグでシンボルが指定されていない場合、シンボルは通常どおり機能し続けます。自動読み込みは行われず、Bazel で定義されたバージョンも抑制されません。構成については、https://github.com/bazelbuild/bazel/blob/master/src/main/java/com/google/devtools/build/lib/packages/AutoloadSymbols.java をご覧ください。ショートカットとして、リポジトリ全体を使用することもできます。たとえば、+@rules_python はすべての Python ルールを自動読み込みします。

タグ: loses_incremental_statebuild_file_semanticsincompatible_change

--[no]incompatible_disable_autoloads_in_main_repo デフォルト: "true"

メイン リポジトリで自動読み込み(--incompatible_autoload_externally で設定)が有効になっているかどうかを制御します。有効にすると、以前に Bazel の一部だったルール(またはその他のシンボル)に読み込みステートメントが必要になります。buildifier を使用して追加します。

タグ: loading_and_analysisincompatible_change

--[no]incompatible_disable_objc_library_transition デフォルト: "true"

objc_library のカスタム トランジションを無効にして、代わりにトップレベルのターゲットから継承する(Bazel では何もしない)

タグ: build_file_semanticsincompatible_change

--[no]incompatible_disable_starlark_host_transitions のデフォルト: 「false」

true に設定されている場合、ルール属性は「cfg = "host"」を設定できません。代わりに、ルールで「cfg = "exec"」を設定する必要があります。

タグ: loading_and_analysisincompatible_change

--[no]incompatible_disable_target_default_provider_fields のデフォルト: 「false」

true に設定すると、フィールド構文を介してデフォルト プロバイダを利用する機能が無効になります。代わりに provider-key 構文を使用してください。たとえば、files にアクセスするために ctx.attr.dep.files を使用する代わりに、`ctx.attr.dep[DefaultInfo].files を使用します。詳しくは、https://github.com/bazelbuild/bazel/issues/9014 をご覧ください。

タグ: build_file_semanticsincompatible_change

--incompatible_disable_transitions_on=<comma-separated set of options> のデフォルト: ""

遷移の入力または出力で使用できないフラグのカンマ区切りリスト。

タグ: loading_and_analysisincompatible_changenon_configurable

--[no]incompatible_disallow_ctx_resolve_tools デフォルト: "true"

true に設定すると、非推奨の ctx.resolve_tools API の呼び出しは常に失敗します。この API の使用は、ctx.actions.run または ctx.actions.run_shell の実行可能ファイルまたはツール引数に置き換える必要があります。

タグ: loading_and_analysisincompatible_change

--[no]incompatible_disallow_empty_glob デフォルト: "true"

true に設定すると、glob() の allow_empty 引数のデフォルト値は False になります。

タグ: build_file_semanticsincompatible_change

--[no]incompatible_enable_deprecated_label_apis デフォルト: "true"

有効にすると、サポート終了となった特定の API(native.repository_name、Label.workspace_name、Label.relative)を使用できます。

タグ: loading_and_analysis

--[no]incompatible_fail_on_unknown_attributes デフォルト: "true"

有効にすると、不明な属性が None に設定されているターゲットは失敗します。

タグ: loading_and_analysisincompatible_change

--[no]incompatible_fix_package_group_reporoot_syntax デフォルト: "true"

package_group の packages 属性で、値「//...」の意味を、任意のリポジトリ内のすべてのパッケージではなく、現在のリポジトリ内のすべてのパッケージを参照するように変更します。「//...」の代わりに特別な値「public」を使用すると、以前の動作を取得できます。このフラグを使用するには、--incompatible_package_group_has_public_syntax も有効にする必要があります。

タグ: build_file_semanticsincompatible_change

--[no]incompatible_locations_prefers_executable デフォルト: "true"

実行可能ファイルを提供するターゲットが、ファイルの数が 1 でない場合に、$(locations ...) 展開の下の <code>DefaultInfo.files</code> のファイルではなく、実行可能ファイルに展開されるかどうか。

タグ: loading_and_analysisincompatible_change

--[no]incompatible_no_attr_license デフォルト: "true"

true に設定すると、関数 attr.license が無効になります。

タグ: build_file_semanticsincompatible_change

--[no]incompatible_no_implicit_file_export のデフォルト: 「false」

設定されている場合、(使用されている)ソースファイルは、明示的にエクスポートされない限り、パッケージ プライベートになります。https://github.com/bazelbuild/proposals/blob/master/designs/2019-10-24-file-visibility.md をご覧ください。

タグ: build_file_semanticsincompatible_change

--[no]incompatible_no_implicit_watch_label デフォルト: "true"

true の場合、Label が渡された <code>repository_ctx</code> のメソッドは、<code>watch = "no"</code> であっても、そのラベルのファイルに対する変更を自動的に監視しなくなります。また、<code>repository_ctx.path</code> は、返されたパスが監視される原因にならなくなります。代わりに <code>repository_ctx.watch</code> を使用してください。

タグ: loading_and_analysisincompatible_change

--[no]incompatible_no_rule_outputs_param のデフォルト: 「false」

true に設定すると、rule() Starlark 関数の outputs パラメータが無効になります。

タグ: build_file_semanticsincompatible_change

--[no]incompatible_package_group_has_public_syntax デフォルト: "true"

package_group の packages 属性で、「public」または「private」を記述して、それぞれすべてのパッケージまたはパッケージなしを参照できるようにします。

タグ: build_file_semanticsincompatible_change

--[no]incompatible_resolve_select_keys_eagerly のデフォルト: 「false」

有効にすると、.bzl ファイルの select() に渡された辞書の文字列キーは、最終的に読み込まれる BUILD ファイルを基準に解釈されるのではなく、ファイルに関連するラベルにすぐに解決されます。

タグ: loading_and_analysisincompatible_change

--[no]incompatible_run_shell_command_string デフォルト: "true"

true に設定すると、actions.run_shell のコマンド パラメータは文字列のみを受け入れます。

タグ: build_file_semanticsincompatible_change

--[no]incompatible_simplify_unconditional_selects_in_rule_attrs デフォルト: "true"

true の場合、無条件の選択のみを含む構成可能なルール属性を簡略化します。たとえば、["a"] + select("//conditions:default", ["b"]) がルール属性に割り当てられている場合、["a", "b"] として保存されます。このオプションは、シンボリック マクロの属性や属性のデフォルト値には影響しません。

タグ: build_file_semanticsincompatible_change

--[no]incompatible_stop_exporting_build_file_path のデフォルト: 「false」

true に設定すると、非推奨の ctx.build_file_path は使用できなくなります。代わりに ctx.label.package + '/BUILD' を使用できます。

タグ: loading_and_analysisincompatible_change

--[no]incompatible_stop_exporting_language_modules のデフォルト: 「false」

有効にすると、特定の言語固有のモジュール(cc_common など)はユーザーの .bzl ファイルで使用できなくなり、それぞれのルール リポジトリからのみ呼び出すことができます。

タグ: loading_and_analysisincompatible_change

--[no]incompatible_unambiguous_label_stringification デフォルト: "true"

true の場合、Bazel はラベル @//foo:bar を //foo:bar ではなく @//foo:bar に文字列化します。これは str() や % 演算子などの動作にのみ影響し、repr() の動作は変更されません。詳細については、https://github.com/bazelbuild/bazel/issues/15916 をご覧ください。

タグ: loading_and_analysisincompatible_change

--[no]incompatible_use_cc_configure_from_rules_cc のデフォルト: 「false」

true の場合、Bazel は @bazel_tools から cc_configure を使用できなくなります。詳細と移行手順については、https://github.com/bazelbuild/bazel/issues/10134 をご覧ください。

タグ: loading_and_analysisincompatible_change

--max_computation_steps=<a long integer> のデフォルト: 「0」

BUILD ファイルで実行できる Starlark 計算ステップの最大数(0 は上限なしを意味します)。

タグ: build_file_semantics

--nested_set_depth_limit=<an integer> のデフォルト: 「3500」

deps の内部グラフ(NestedSet とも呼ばれます)の最大深度。この深度を超えると、depset() コンストラクタは失敗します。

タグ: loading_and_analysis

--repositories_without_autoloads=<comma-separated set of options> のデフォルト: ""

自動読み込みを追加しない追加のリポジトリ(Bazel が認識しているハードコードされたリポジトリ以外)のリスト。通常、これには、自動的に読み込まれるリポジトリによって推移的に依存しているリポジトリが含まれます(そのため、サイクルが作成される可能性があります)。

タグ: loses_incremental_statebuild_file_semanticsincompatible_change

Bzlmod の出力とセマンティクスに関連するオプション:
--allow_yanked_versions=<a string> の複数の用途が蓄積される

解決された依存関係グラフで許可されるモジュールのバージョンを &lt;module1&gt;@&lt;version1&gt;,&lt;module2&gt;@&lt;version2&gt; の形式で指定しました。これは、そのモジュールが取得元のレジストリで yanked と宣言されている場合でも許可されます(NonRegistryOverride から取得されていない場合)。そうしないと、削除されたバージョンが原因で解決が失敗します。BZLMOD_ALLOW_YANKED_VERSIONS 環境変数を使用して、許可する yanked バージョンを定義することもできます。このチェックは、キーワード「all」を使用して無効にできます(推奨されません)。

タグ: loading_and_analysis

--check_bazel_compatibility=<error, warning or off> のデフォルト: 「error」

Bazel モジュールの Bazel バージョンの互換性を確認します。有効な値は、解決の失敗にエスカレーションする error、チェックを無効にする off、不一致が検出されたときに警告を出力する warning です。

タグ: loading_and_analysis

--check_direct_dependencies=<off, warning or error> のデフォルト: 「warning」

ルート モジュールで宣言された直接の bazel_dep 依存関係が、解決された依存関係グラフで取得したバージョンと同じかどうかを確認します。有効な値は、チェックを無効にする off、不一致が検出されたときに警告を出力する warning、解決の失敗にエスカレーションする error です。

タグ: loading_and_analysis

--[no]ignore_dev_dependency のデフォルト: 「false」

true の場合、Bazel はルート モジュールの MODULE.bazel で dev_dependency として宣言された bazel_depuse_extension を無視します。このフラグの値に関係なく、ルート モジュールでない場合、MODULE.bazel では常に開発依存関係が無視されます。

タグ: loading_and_analysis

--lockfile_mode=<off, update, refresh or error> のデフォルト: 「update」

ロックファイルの使用方法と使用するかどうかを指定します。有効な値は、ロックファイルを使用して変更がある場合に更新する update、リモート レジストリから可変情報(取り消されたバージョンと以前に欠落していたモジュール)を随時更新する refresh、ロックファイルを使用するが最新でない場合はエラーをスローする error、ロックファイルから読み取りも書き込みもしない off です。

タグ: loading_and_analysis

--module_mirrors=<comma-separated list of options> デフォルト: 説明を参照

Bazel モジュールのソース URL が見つかる URL のカンマ区切りのリスト。レジストリで指定されたミラー URL に加えて、それよりも優先されます。レジストリで指定されていないミラーの使用を無効にするには、この値を空の値に設定します。ミラーのデフォルト セットは時間の経過とともに変更される可能性がありますが、ミラーからのすべてのダウンロードは、レジストリに保存されているハッシュによって検証されます(したがって、ロックファイルによって固定されます)。

タグ: loading_and_analysis

--override_module=<an equals-separated mapping of module name to path> の複数の用途が蓄積される

<モジュール名>=<パス> の形式でローカルパスを使用してモジュールをオーバーライドします。指定されたパスが絶対パスの場合は、そのまま使用されます。指定されたパスが相対パスの場合は、現在の作業ディレクトリからの相対パスになります。指定されたパスが「%workspace%」で始まる場合、そのパスはワークスペースのルート(bazel info workspace の出力)を基準とした相対パスになります。指定されたパスが空の場合、以前のオーバーライドをすべて削除します。

--registry=<a string> の複数の用途が蓄積される

Bazel モジュールの依存関係の検索に使用するレジストリを指定します。順序は重要です。モジュールはまず前のレジストリで検索され、前のレジストリにない場合にのみ後のレジストリにフォールバックされます。

タグ: changes_inputs

--vendor_dir=<a path> デフォルト: 説明を参照

ベンダーモードで外部リポジトリを保持するディレクトリを指定します。これは、リポジトリをフェッチするためか、ビルド中に使用するためかによって異なります。パスは、絶対パスまたはワークスペース ディレクトリからの相対パスとして指定できます。

タグ: loading_and_analysis

ビルド時間の最適化をトリガーするオプション:
--gc_thrashing_limits=<comma separated pairs of <period>:<count>> デフォルト: "1s:2,20s:3,1m:5"

上限に達すると、GcThrashingDetector が OOM で Bazel をクラッシュさせます。各上限は <period>:<count> として指定します。ここで、period は期間、count は正の整数です。<period> 内で <count> 回連続してフル GC を実行した後も、テニュアード スペース(オールド ジェン ヒープ)の --gc_thrashing_threshold パーセント以上が占有されたままの場合、OOM がトリガーされます。複数の上限をカンマ区切りで指定できます。

タグ: host_machine_resource_optimizations

--[no]heuristically_drop_nodes のデフォルト: 「false」

true の場合、Blaze は関連する File ノードと DirectoryListing ノードが完了した後、FileState ノードと DirectoryListingState ノードを削除してメモリを節約します。これらのノードが再び必要になる可能性は低いと予想されます。その場合は、プログラムで再評価されます。

タグ: loses_incremental_state

--[no]incompatible_do_not_split_linking_cmdline デフォルト: "true"

true の場合、Bazel はリンクに使用されるコマンドライン フラグを変更しなくなり、どのフラグをパラメータ ファイルに含め、どのフラグを含めないかを個別に決定することもなくなります。詳しくは、https://github.com/bazelbuild/bazel/issues/7670 をご覧ください。

タグ: loading_and_analysisincompatible_change

--[no]keep_state_after_build デフォルト: "true"

false の場合、Blaze はビルドが完了すると、このビルドのインメモリ状態を破棄します。以降のビルドでは、このビルドに対する増分はなくなります。

タグ: loses_incremental_state

--skyframe_high_water_mark_full_gc_drops_per_invocation=<an integer, >= 0> のデフォルト: 「10」

Bazel の内部 Skyframe エンジンの詳細構成のフラグ。Bazel は、保持されたヒープの使用率が --skyframe_high_water_mark_threshold で設定されたしきい値を超えたことを検出すると、完全な GC イベントが発生したときに、この呼び出しごとに最大でこの回数まで、不要な一時的な Skyframe 状態を削除します。デフォルトは 10 です。0 は、フル GC イベントでドロップがトリガーされないことを意味します。上限に達すると、フル GC イベントが発生し、保持されたヒープの割合のしきい値を超えた場合でも、Skyframe の状態はドロップされなくなります。

タグ: host_machine_resource_optimizations

--skyframe_high_water_mark_minor_gc_drops_per_invocation=<an integer, >= 0> のデフォルト: 「10」

Bazel の内部 Skyframe エンジンの詳細構成のフラグ。Bazel は、保持されたヒープの使用率が --skyframe_high_water_mark_threshold で設定されたしきい値を超えたことを検出すると、マイナー GC イベントが発生したときに、不要な一時的な Skyframe 状態を呼び出しごとに最大この回数まで削除します。デフォルトは 10 です。0 は、マイナー GC イベントがドロップをトリガーしないことを意味します。上限に達すると、マイナー GC イベントが発生して保持されたヒープの割合のしきい値を超えても、Skyframe の状態は破棄されなくなります。

タグ: host_machine_resource_optimizations

--skyframe_high_water_mark_threshold=<an integer> のデフォルト: 「85」

Bazel の内部 Skyframe エンジンの詳細構成のフラグ。Bazel は、保持されたヒープの使用率がこのしきい値以上であることを検出すると、不要な一時的な Skyframe 状態を削除します。この値を調整すると、GC スラッシングが(i)この一時状態のメモリ使用量によって発生し、(ii)必要なときに状態を再構成するよりもコストが高い場合に、GC スラッシングの実経過時間の影響を軽減できる可能性があります。

タグ: host_machine_resource_optimizations

--[no]track_incremental_state デフォルト: "true"

false の場合、Blaze はこのビルドのメモリを節約するために、増分ビルドでの無効化と再評価を可能にするデータを保持しません。以降のビルドでは、このビルドとの増分はなくなります。通常、この値を false に設定する場合は --batch を指定します。

タグ: loses_incremental_state

ロギングの冗長性、形式、場所に影響するオプション:
--[no]announce_rc のデフォルト: 「false」

rc オプションをアナウンスするかどうか。

タグ: affects_outputs

--[no]attempt_to_print_relative_paths のデフォルト: 「false」

メッセージの場所部分を印刷するときに、ワークスペース ディレクトリまたは --package_path で指定されたディレクトリのいずれかに対する相対パスを使用しようとします。

タグ: terminal_output

--bes_backend=<a string> のデフォルト: ""

ビルド イベント サービス(BES)のバックエンド エンドポイントを [SCHEME://]HOST[:PORT] 形式で指定します。デフォルトでは、BES アップロードは無効になっています。サポートされているスキームは grpc と grpcs(TLS が有効な grpc)です。スキームが指定されていない場合、Bazel は grpcs を想定します。

タグ: affects_outputs

--[no]bes_check_preceding_lifecycle_events のデフォルト: 「false」

PublishBuildToolEventStreamRequest で check_preceding_lifecycle_events_present フィールドを設定します。これにより、BES は現在のツールイベントに一致する InvocationAttemptStarted イベントと BuildEnqueued イベントを以前に受信したかどうかを確認します。

タグ: affects_outputs

--bes_header=<a 'name=value' assignment> の複数の用途が蓄積される

BES リクエストに含めるヘッダーを NAME=VALUE 形式で指定します。フラグを複数回指定することで、複数のヘッダーを渡すことができます。同じ名前の複数の値は、カンマ区切りのリストに変換されます。

タグ: affects_outputs

--bes_instance_name=<a string> デフォルト: 説明を参照

BES がアップロードされた BEP を保持するインスタンス名を指定します。デフォルトは null です。

タグ: affects_outputs

--bes_keywords=<comma-separated list of options> の複数の用途が蓄積される

BES に公開されるデフォルトのキーワード セット(「command_name=<command_name>」、「protocol_name=BEP」)に追加する通知キーワードのリストを指定します。デフォルトは none です。

タグ: affects_outputs

--[no]bes_lifecycle_events デフォルト: "true"

BES ライフサイクル イベントを公開するかどうかを指定します。(デフォルトは「true」)。

タグ: affects_outputs

--bes_oom_finish_upload_timeout=<An immutable length of time.> のデフォルト: 「10m」

OOM 発生時に BES/BEP のアップロードが完了するまで Bazel が待機する時間を指定します。このフラグは、JVM が GC スラッシングを繰り返してユーザー スレッドを処理できない場合に、終了を保証します。

タグ: bazel_monitoring

--bes_outerr_buffer_size=<an integer> のデフォルト: 「10240」

進行状況イベントとして報告される前に BEP でバッファリングされる stdout または stderr の最大サイズを指定します。個々の書き込みは、--bes_outerr_chunk_size までの指定値よりも大きい場合でも、単一のイベントで報告されます。

タグ: affects_outputs

--bes_outerr_chunk_size=<an integer> デフォルト: 「1048576」

単一のメッセージで BEP に送信される stdout または stderr の最大サイズを指定します。

タグ: affects_outputs

--bes_proxy=<a string> デフォルト: 説明を参照

プロキシを介して Build Event Service に接続します。現在、このフラグは Unix ドメイン ソケット(unix:/path/to/socket)の構成にのみ使用できます。

--bes_results_url=<a string> のデフォルト: ""

ユーザーが BES バックエンドにストリーミングされた情報を表示できるベース URL を指定します。Bazel は、呼び出し ID が付加された URL をターミナルに出力します。

タグ: terminal_output

--bes_system_keywords=<comma-separated list of options> の複数の用途が蓄積される

--bes_keywords で指定されたキーワードに「user_keyword=」接頭辞を付けずに、直接含める通知キーワードのリストを指定します。--bes_lifecycle_events=false を設定し、PublishLifecycleEvent を呼び出すときにキーワードを含めるビルド サービス オペレーターを対象としています。このフラグを使用するビルド サービス オペレーターは、ユーザーがフラグ値をオーバーライドできないようにする必要があります。

タグ: affects_outputs

--bes_timeout=<An immutable length of time.> デフォルト: 「0s」

ビルドとテストの完了後に、Bazel が BES/BEP のアップロード完了を待機する時間を指定します。有効なタイムアウトは、自然数の後に単位(日(d)、時間(h)、分(m)、秒(s)、ミリ秒(ms))を付けたものです。デフォルト値は「0」で、タイムアウトがないことを意味します。

タグ: affects_outputs

--bes_upload_mode=<wait_for_upload_complete, nowait_for_upload_complete or fully_async> デフォルト: "wait_for_upload_complete"

ビルド イベント サービスのアップロードでビルドの完了をブロックするか、呼び出しを直ちに終了してバックグラウンドでアップロードを完了するかを指定します。

  • wait_for_upload_complete: 現在の呼び出しの最後に、すべてのイベント(ライフサイクル イベントを含む。該当する場合)がアップロードされ、バックエンドによって確認されるまでブロックします。
  • nowait_for_upload_complete: 次の呼び出しの開始時に、すべてのイベント(ライフサイクル イベントを含む。該当する場合)がアップロードされ、バックエンドによって確認されるまでブロックします。
  • fully_async: すべてのイベントがアップロードされるまで、次の呼び出しの開始時にブロックしますが、確認応答は待機しません。(一時的な)障害が発生した場合、イベントが失われる可能性があります。このモードでは、バックエンドがストリームを不完全として報告する可能性があります。FinishInvocationAttempt または FinishBuild ライフサイクル イベントが送信される保証はありません。

タグ: eagerness_to_exit

--build_event_binary_file=<a string> のデフォルト: ""

空でない場合は、ビルドイベント プロトコルの表現の varint 区切りバイナリ表現をそのファイルに書き込みます。このオプションは、--bes_upload_mode=wait_for_upload_complete を暗黙的に示します。

タグ: affects_outputs

--[no]build_event_binary_file_path_conversion デフォルト: "true"

ビルド イベント プロトコルのバイナリ ファイル表現のパスを、可能な限りグローバルに有効な URI に変換します。無効にすると、file:// URI スキームが常に使用されます

タグ: affects_outputs

--build_event_binary_file_upload_mode=<wait_for_upload_complete, nowait_for_upload_complete or fully_async> デフォルト: "wait_for_upload_complete"

--build_event_binary_file の Build Event Service アップロードでビルドの完了をブロックするか、呼び出しを直ちに終了してバックグラウンドでアップロードを完了するかを指定します。「wait_for_upload_complete」(デフォルト)、「nowait_for_upload_complete」、「fully_async」のいずれか。

タグ: eagerness_to_exit

--build_event_json_file=<a string> のデフォルト: ""

空でない場合は、ビルド イベント プロトコルの JSON シリアル化をそのファイルに書き込みます。このオプションは、--bes_upload_mode=wait_for_upload_complete を暗黙的に示します。

タグ: affects_outputs

--[no]build_event_json_file_path_conversion デフォルト: "true"

ビルド イベント プロトコルの JSON ファイル表現のパスを、可能な限りグローバルに有効な URI に変換します。無効にすると、file:// URI スキームが常に使用されます

タグ: affects_outputs

--build_event_json_file_upload_mode=<wait_for_upload_complete, nowait_for_upload_complete or fully_async> デフォルト: "wait_for_upload_complete"

--build_event_json_file の Build Event Service アップロードでビルドの完了をブロックするか、呼び出しを直ちに終了してバックグラウンドでアップロードを完了するかを指定します。「wait_for_upload_complete」(デフォルト)、「nowait_for_upload_complete」、「fully_async」のいずれか。

タグ: eagerness_to_exit

--build_event_max_named_set_of_file_entries=<an integer> のデフォルト: 「5000」

1 つの named_set_of_files イベントのエントリの最大数。2 より小さい値は無視され、イベントの分割は行われません。これは、ビルド イベント プロトコルの最大イベント サイズを制限するためのものですが、イベント サイズを直接制御するものではありません。イベントの合計サイズは、セットの構造とファイルおよび URI の長さの関数です。これらの長さは、ハッシュ関数によって異なる場合があります。

タグ: affects_outputs

--[no]build_event_publish_all_actions のデフォルト: 「false」

すべてのアクションを公開するかどうか。

タグ: affects_outputs

--build_event_text_file=<a string> のデフォルト: ""

空でない場合は、ビルドイベント プロトコルのテキスト表現をそのファイルに書き込みます。

タグ: affects_outputs

--[no]build_event_text_file_path_conversion デフォルト: "true"

ビルド イベント プロトコルのテキスト ファイル表現のパスを、可能な限りグローバルに有効な URI に変換します。無効にすると、file:// URI スキームが常に使用されます

タグ: affects_outputs

--build_event_text_file_upload_mode=<wait_for_upload_complete, nowait_for_upload_complete or fully_async> デフォルト: "wait_for_upload_complete"

--build_event_text_file のビルド イベント サービスのアップロードで、ビルドの完了をブロックするか、呼び出しを直ちに終了してバックグラウンドでアップロードを完了するかを指定します。「wait_for_upload_complete」(デフォルト)、「nowait_for_upload_complete」、「fully_async」のいずれか。

タグ: eagerness_to_exit

--build_event_upload_max_retries=<an integer> のデフォルト: 「4」

Bazel がビルドイベントのアップロードを再試行する最大回数。

タグ: bazel_internal_configuration

--[no]experimental_bep_target_summary のデフォルト: 「false」

TargetSummary イベントを公開するかどうか。

--[no]experimental_build_event_expand_filesets のデフォルト: 「false」

true の場合、出力ファイルを表示するときに BEP でファイルセットを展開します。

タグ: affects_outputs

--experimental_build_event_output_group_mode=<an output group name followed by an OutputGroupFileMode, e.g. default=both> の複数の用途が蓄積される

出力グループのファイルが TargetComplete/AspectComplete BEP イベントでどのように表されるかを指定します。値は、出力グループ名を「NAMED_SET_OF_FILES_ONLY」、「INLINE_ONLY」、「BOTH」のいずれかに割り当てたものです。デフォルト値は 'NAMED_SET_OF_FILES_ONLY' です。出力グループが繰り返される場合は、最後に表示される値が使用されます。デフォルト値は、カバレッジ アーティファクトのモードを BOTH に設定します。--experimental_build_event_output_group_mode=baseline.lcov=both

タグ: affects_outputs

--experimental_build_event_upload_retry_minimum_delay=<An immutable length of time.> のデフォルト: 「1 秒」

BEP アップロードが失敗した場合の指数バックオフ再試行の初期最小遅延。(指数: 1.6)

タグ: bazel_internal_configuration

--experimental_build_event_upload_strategy=<a string> デフォルト: 説明を参照

ビルドイベント プロトコルで参照されるアーティファクトのアップロード方法を選択します。Bazel では、有効なオプションは「local」と「remote」です。デフォルト値は「local」です。

タグ: affects_outputs

--[no]experimental_collect_load_average_in_profiler デフォルト: "true"

有効にすると、プロファイラはシステムの全体的なロードアベレージを収集します。

タグ: bazel_monitoring

--[no]experimental_collect_pressure_stall_indicators のデフォルト: 「false」

有効にすると、プロファイラは Linux PSI データを収集します。

タグ: bazel_monitoring

--[no]experimental_collect_resource_estimation のデフォルト: 「false」

有効にすると、プロファイラはローカル アクションの CPU とメモリの使用量の推定値を収集します。

タグ: bazel_monitoring

--[no]experimental_collect_skyframe_counts_in_profiler のデフォルト: 「false」

有効にすると、プロファイラは、構成されたターゲットやアクションの実行などの主要な関数タイプについて、Skyframe グラフ内の SkyFunction の数を経時的に収集します。プロファイリングの単位時間ごとに Skyframe グラフ全体を訪問するため、パフォーマンスに影響する可能性があります。このフラグは、パフォーマンスが重要な測定値には使用しないでください。

タグ: bazel_monitoring

--[no]experimental_collect_system_network_usage デフォルト: "true"

有効にすると、プロファイラはシステムのネットワーク使用量を収集します。

タグ: bazel_monitoring

--[no]experimental_collect_worker_data_in_profiler デフォルト: "true"

有効にすると、プロファイラはワーカーの集計リソースデータを収集します。

タグ: bazel_monitoring

--experimental_command_profile=<cpu, wall, alloc or lock> デフォルト: 説明を参照

コマンドの実行中に Java Flight Recorder プロファイルを記録します。サポートされているプロファイリング イベントタイプ(cpu、wall、alloc、lock)のいずれかを引数として指定する必要があります。プロファイルは、出力ベース ディレクトリのイベントタイプにちなんだ名前のファイルに書き込まれます。このフラグの構文とセマンティクスは、将来的に追加のプロファイル タイプや出力形式をサポートするために変更される可能性があります。自己責任で使用してください。

--experimental_profile_additional_tasks=<phase, action, discover_inputs, action_check, action_lock, action_update, action_complete, action_rewinding, bzlmod, info, create_package, remote_execution, local_execution, scanner, local_parse, upload_time, remote_process_time, remote_queue, remote_setup, fetch, local_process_time, vfs_stat, vfs_dir, vfs_readlink, vfs_md5, vfs_xattr, vfs_delete, vfs_open, vfs_read, vfs_write, vfs_glob, vfs_vmfs_stat, vfs_vmfs_dir, vfs_vmfs_read, wait, thread_name, thread_sort_index, skyframe_eval, skyfunction, critical_path, critical_path_component, handle_gc_notification, local_action_counts, starlark_parser, starlark_user_fn, starlark_builtin_fn, starlark_user_compiled_fn, starlark_repository_fn, action_fs_staging, remote_cache_check, remote_download, remote_network, filesystem_traversal, worker_execution, worker_setup, worker_borrow, worker_working, worker_copying_outputs, credential_helper, conflict_check, dynamic_lock, repository_fetch, repository_vendor, repo_cache_gc_wait, spawn_log, rpc, skycache, wasm_load, wasm_exec or unknown> の複数の用途が蓄積される

プロファイルに含める追加のプロファイル タスクを指定します。

タグ: bazel_monitoring

--[no]experimental_profile_include_primary_output のデフォルト: 「false」

アクション イベントに、アクションのプライマリ出力への実行パスを含む追加の「out」属性を含めます。

タグ: bazel_monitoring

--[no]experimental_profile_include_target_configuration のデフォルト: 「false」

アクション イベントの JSON プロファイル データにターゲット構成ハッシュを含めます。

タグ: bazel_monitoring

--[no]experimental_profile_include_target_label のデフォルト: 「false」

アクション イベントの JSON プロファイル データにターゲット ラベルを含めます。

タグ: bazel_monitoring

--[no]experimental_record_metrics_for_all_mnemonics のデフォルト: 「false」

BEP ActionSummary と BuildGraphMetrics の出力を制御し、ActionData のニーモニックの数と、BuildGraphMetrics.AspectCount/RuleClassCount で報告されるエントリの数を制限します。デフォルトでは、タイプ数は上位 20 個に制限されます。ActionData の場合は実行されたアクションの数、RuleClass と Asepcts の場合はインスタンスの数で制限されます。このオプションを設定すると、すべてのニーモニック、ルールクラス、アスペクトの統計情報が書き込まれます。

--[no]experimental_record_skyframe_metrics のデフォルト: 「false」

Skykeys、RuleClasses、Aspects に関する Skyframe 指標の計算コストなど、BEP BuildGraphMetrics の出力を制御します。このフラグを false に設定すると、BEP に BuildGraphMetrics.rule_count と aspectfields が入力されなくなります。

--[no]experimental_run_bep_event_include_residue のデフォルト: 「false」

コマンドラインの残余物を含む可能性のある実行ビルド イベントに、コマンドラインの残余物を含めるかどうか。デフォルトでは、残余物は、残余物を含む可能性のある実行コマンド ビルドイベントに含まれません。

タグ: affects_outputs

--[no]experimental_stream_log_file_uploads のデフォルト: 「false」

ログファイルのアップロードをディスクに書き込むのではなく、リモート ストレージに直接ストリーミングします。

タグ: affects_outputs

--experimental_workspace_rules_log_file=<a path> デフォルト: 説明を参照

特定の Workspace Rules イベントを、区切り文字で区切られた WorkspaceEvent プロトコルとしてこのファイルに記録します。

--[no]generate_json_trace_profile デフォルト: "auto"

有効にすると、Bazel はビルドをプロファイリングし、JSON 形式のプロファイルをアウトプット ベースのファイルに書き込みます。chrome://tracing に読み込んでプロファイルを表示します。デフォルトでは、Bazel はすべてのビルドのようなコマンドとクエリのプロファイルを書き込みます。

タグ: bazel_monitoring

--[no]heap_dump_on_oom のデフォルト: 「false」

OOM がスローされた場合にヒープダンプを手動で出力するかどうか(--gc_thrashing_limits に達したことによる手動 OOM を含む)。ダンプは <output_base>/<invocation_id>.heapdump.hprof に書き込まれます。このオプションは、手動 OOM には効果がない -XX:+HeapDumpOnOutOfMemoryError を効果的に置き換えます。

タグ: bazel_monitoring

--jvm_heap_histogram_internal_object_pattern=<a valid Java regular expression> のデフォルト: "jdk\.internal\.vm\.Filler.+"

JDK21 以降の JVM ヒープメモリ収集のマッチング ロジックをオーバーライドする正規表現。揮発性の内部 G1 GC 実装の詳細に依存してクリーンなメモリ指標を取得しています。このオプションを使用すると、バイナリ リリースを待つことなく、その内部実装の変更に適応できます。JDK Matcher.find() に渡される

--[no]legacy_important_outputs のデフォルト: 「false」

これは、TargetComplete イベントで以前の important_outputs フィールドの生成を抑制するために使用します。important_outputs は、Bazel から ResultStore/BTX への統合に必要です。

タグ: affects_outputs

--logging=<0 <= an integer <= 6> のデフォルト: 「3」

ロギングレベル。

タグ: affects_outputs

--memory_profile=<a path> デフォルト: 説明を参照

設定されている場合、フェーズの終了時にメモリ使用量データを指定されたファイルに書き込み、ビルドの終了時に安定したヒープをマスターログに書き込みます。

タグ: bazel_monitoring

--memory_profile_stable_heap_parameters=<integers, separated by a comma expected in pairs> デフォルト: 「1,0」

ビルドの最後に安定したヒープのメモリ プロファイルの計算を調整。カンマで区切られた偶数の整数にする必要があります。各ペアの最初の整数は、実行する GC の数です。各ペアの 2 番目の整数は、GC 間の待機時間(秒単位)です。例: 2,4,4,0 は、4 秒の一時停止を伴う 2 回の GC の後に、一時停止なしの 4 回の GC が続くことを意味します。

タグ: bazel_monitoring

--profile=<a path> デフォルト: 説明を参照

設定されている場合、Bazel をプロファイリングし、指定されたファイルにデータを書き込みます。詳細については、https://bazel.build/advanced/performance/json-trace-profile をご覧ください。

タグ: bazel_monitoring

--profiles_to_retain=<an integer> のデフォルト: 「5」

出力ベースに保持するプロファイルの数。出力ベースにこの数を超えるプロファイルがある場合、合計数が上限を下回るまで古いものから削除されます。

タグ: bazel_monitoring

--[no]record_full_profiler_data のデフォルト: 「false」

デフォルトでは、Bazel プロファイラは、高速だが多数のイベント(ファイルの統計情報の取得など)の集計データのみを記録します。このオプションを有効にすると、プロファイラは各イベントを記録するため、プロファイリング データはより正確になりますが、パフォーマンスに大きな影響が出ます。--profile も使用されている場合にのみ有効になります。

タグ: bazel_monitoring

--[no]redirect_local_instrumentation_output_writes のデフォルト: 「false」

true でサポートされている場合、計測出力は、bazel が実行されているマシンとは別のマシンにローカルで書き込まれるようにリダイレクトされます。

タグ: bazel_monitoring

--remote_print_execution_messages=<failure, success or all> のデフォルト: 「failure」

リモート実行メッセージを印刷するタイミングを選択します。有効な値は、失敗時のみ出力する failure、成功時のみ出力する success、常に出力する all です。

タグ: terminal_output

--[no]slim_profile デフォルト: "true"

プロファイルが大きくなりすぎた場合に、イベントを統合して JSON プロファイルのサイズを縮小します。

タグ: bazel_monitoring

--starlark_cpu_profile=<a string> のデフォルト: ""

すべての Starlark スレッドによる CPU 使用率の pprof プロファイルを指定されたファイルに書き込みます。

タグ: bazel_monitoring

--tool_tag=<a string> のデフォルト: ""

この Bazel 呼び出しの属性を設定するツール名。

タグ: affects_outputsbazel_monitoring

--ui_event_filters=<Convert list of comma separated event kind to list of filters> の複数の用途が蓄積される

UI に表示するイベントを指定します。先頭に +/- を使用してデフォルトのイベントを追加または削除したり、直接割り当ててデフォルトのセットを完全にオーバーライドしたりできます。サポートされているイベントの種類には、INFO、DEBUG、ERROR などがあります。

タグ: terminal_output

--[no]write_command_log のデフォルト: 「false」

command.log ファイルを書き込むかどうか

タグ: bazel_monitoring

リモート キャッシュ保存と実行のオプション:
--downloader_config=<a path> デフォルト: 説明を参照

リモート ダウンローダーを構成するファイルを指定します。このファイルは行で構成され、各行はディレクティブ(allowblockrewrite)で始まり、その後にホスト名(allowblock の場合)または 2 つのパターンが続きます。1 つは照合するパターン、もう 1 つは代替 URL として使用するパターンです。後方参照は $1 から始まります。同じ URL に対して複数の rewrite ディレクティブを指定できます。この場合、複数の URL が返されます。

--experimental_circuit_breaker_strategy=<failure> デフォルト: 説明を参照

サーキット ブレーカーで使用する戦略を指定します。使用可能な戦略は「failure」です。オプションの値が無効な場合、オプションが設定されていない場合と同じ動作になります。

タグ: execution

--experimental_remote_cache_compression_threshold=<an integer> のデフォルト: 「100」

zstd で圧縮/解凍するために必要な最小 BLOB サイズ。--remote_cache_compression が設定されていない限り、効果はありません。

--[no]experimental_remote_cache_lease_extension のデフォルト: 「false」

true に設定すると、Bazel はビルド中にリモート アクションの出力のリースを延長します。これを行うには、FindMissingBlobs 呼び出しをリモート キャッシュに定期的に送信します。頻度は --experimental_remote_cache_ttl の値に基づきます。

--experimental_remote_cache_ttl=<An immutable length of time.> のデフォルト: 「3h」

ダイジェストが最近参照された後(ActionResult や FindMissingBlobs など)、リモート キャッシュ内の BLOB の保証された最小 TTL。Bazel は、BLOB の TTL に基づいていくつかの最適化を行います(増分ビルドで GetActionResult を繰り返し呼び出さないなど)。サーバーがダイジェストを返してから Bazel がダイジェストを受け取るまでの間にギャップがあるため、値は実際の TTL より少し小さく設定する必要があります。

タグ: execution

--experimental_remote_capture_corrupted_outputs=<a path> デフォルト: 説明を参照

破損した出力がキャプチャされるディレクトリのパス。

--[no]experimental_remote_discard_merkle_trees デフォルト: "true"

true に設定すると、GetActionResult() と Execute() の呼び出し時に、入力ルートの Merkle ツリーと関連する入力マッピングのメモリ内コピーが破棄されます。これにより、メモリ使用量が大幅に削減されますが、リモート キャッシュのミスと再試行時に Bazel が再計算する必要があります。

--experimental_remote_downloader=<a string> デフォルト: 説明を参照

リモート ダウンロード プロキシとして使用されるリモート アセット API エンドポイント URI。サポートされているスキーマは、grpc、grpcs(TLS が有効な grpc)、unix(ローカル UNIX ソケット)です。スキーマが指定されていない場合、Bazel はデフォルトで grpcs を使用します。https://github.com/bazelbuild/remote-apis/blob/master/build/bazel/remote/asset/v1/remote_asset.proto をご覧ください。

--[no]experimental_remote_downloader_local_fallback のデフォルト: 「false」

リモート ダウンローダーが失敗した場合にローカル ダウンローダーにフォールバックするかどうか。

--[no]experimental_remote_downloader_propagate_credentials のデフォルト: 「false」

netrc と認証情報ヘルパーからリモート ダウンローダー サーバーに認証情報を伝播するかどうか。サーバー実装では、新しい http_header_url:&lt;url-index&gt;:&lt;header-key&gt; 修飾子をサポートする必要があります。ここで、&lt;url-index&gt; は FetchBlobRequest の uris フィールド内の URL の 0 ベースの位置です。URL 固有のヘッダーは、グローバル ヘッダーよりも優先されます。

--[no]experimental_remote_execution_keepalive のデフォルト: 「false」

リモート実行呼び出しにキープアライブを使用するかどうか。

--experimental_remote_failure_rate_threshold=<an integer in 0-100 range> のデフォルト: 「10」

特定の期間に許容される失敗率をパーセンテージで設定します。この期間が経過すると、リモート キャッシュ/エグゼキュータへの呼び出しが停止します。デフォルト値は 10 です。0 に設定すると、制限がなくなります。

タグ: execution

--experimental_remote_failure_window_interval=<An immutable length of time.> のデフォルト: 「60s」

リモート リクエストの失敗率が計算される間隔。値がゼロまたは負の場合、失敗期間は実行の全期間として計算されます。使用できる単位は、日(d)、時間(h)、分(m)、秒(s)、ミリ秒(ms)です。単位を省略すると、値は秒として解釈されます。

タグ: execution

--[no]experimental_remote_mark_tool_inputs のデフォルト: 「false」

true に設定すると、Bazel は入力をリモート エグゼキュータのツール入力としてマークします。これを使用して、リモートの永続ワーカーを実装できます。

--[no]experimental_remote_merkle_tree_cache のデフォルト: 「false」

true に設定すると、リモート キャッシュ ヒットのチェック速度を向上させるために、マークルツリーの計算がメモ化されます。キャッシュのメモリ フットプリントは、--experimental_remote_merkle_tree_cache_size によって制御されます。

--experimental_remote_merkle_tree_cache_size=<a long integer> のデフォルト: 「1000」

リモート キャッシュ ヒットのチェック速度を向上させるためにメモ化する Merkle ツリーの数。キャッシュは Java のソフト参照の処理に従って自動的にプルーニングされますが、設定が高すぎるとメモリ不足エラーが発生する可能性があります。0 に設定すると、キャッシュ サイズは無制限になります。最適な値はプロジェクトのサイズによって異なります。デフォルトは 1000 です。

--experimental_remote_output_service=<a string> デフォルト: 説明を参照

リモート出力サービス エンドポイントの HOST または HOST:PORT。サポートされているスキーマは、grpc、grpcs(TLS が有効な grpc)、unix(ローカル UNIX ソケット)です。スキーマが指定されていない場合、Bazel はデフォルトで grpcs を使用します。TLS を無効にするには、grpc:// または unix: スキーマを指定します。

--experimental_remote_output_service_output_path_prefix=<a string> のデフォルト: ""

--experimental_remote_output_service によって管理される出力ディレクトリのコンテンツが配置されるパス。ビルドで使用される実際の出力ディレクトリは、このパスの子孫であり、出力サービスによって決定されます。

--[no]experimental_remote_require_cached のデフォルト: 「false」

true に設定すると、リモートで実行できるすべてのアクションがキャッシュに保存されるように強制します。保存されない場合はビルドが失敗します。これは、キャッシュに保存されるべきアクションが実際にキャッシュに保存されているかどうかを、新しい結果をキャッシュに誤って挿入することなく確認できるため、非決定論の問題のトラブルシューティングに役立ちます。

--experimental_remote_scrubbing_config=<Converts to a Scrubber> デフォルト: 説明を参照

指定された構成ファイルを使用してリモート キャッシュキーのスクラビングを有効にします。構成ファイルはテキスト形式のプロトコル バッファである必要があります(src/main/protobuf/remote_scrubbing.proto を参照)。

この機能は、異なるプラットフォームで実行されるが同じプラットフォームをターゲットとするアクション間で、リモート/ディスク キャッシュを共有しやすくすることを目的としています。不適切な設定を行うと、キャッシュ エントリが誤って共有され、ビルドが正しく行われない可能性があるため、慎重に使用する必要があります。

スクラブはアクションの実行方法には影響しません。アクションの結果を取得または保存する目的で、リモート キャッシュキーまたはディスク キャッシュキーがどのように計算されるかにのみ影響します。スクラブされたアクションはリモート実行と互換性がないため、常にローカルで実行されます。

スクラビング構成を変更しても、ローカル ファイル システムまたは内部キャッシュに存在する出力は無効になりません。影響を受けるアクションを再実行するには、クリーンビルドが必要です。

この機能を正常に使用するには、--experimental_platform_in_output_dir(出力接頭辞を正規化するため)と --incompatible_strict_action_env(環境変数を正規化するため)とともにカスタム --host_platform を設定することをおすすめします。

--[no]guard_against_concurrent_changes のデフォルト: "lite"

これを「full」に設定すると、アクションのすべての入力ファイルの ctime をチェックしてから、リモート キャッシュにアップロードできます。Linux カーネルがファイルの書き込みを遅延させ、誤検出が発生する場合があります。デフォルトは「lite」で、メイン リポジトリのソースファイルのみをチェックします。これを「off」に設定すると、すべてのチェックが無効になります。入力としてソースファイルを使用するアクションの実行中にソースファイルが変更されると、キャッシュが汚染される可能性があるため、おすすめしません。

タグ: execution

--[no]remote_accept_cached デフォルト: "true"

リモート キャッシュに保存されたアクションの結果を受け入れるかどうか。

--remote_build_event_upload=<all or minimal> のデフォルト: "minimal"

「all」に設定すると、BEP で参照されるすべてのローカル出力がリモート キャッシュにアップロードされます。「minimal」に設定すると、BEP で参照されるローカル出力は、BEP のコンシューマーにとって重要なファイル(テストログやタイミング プロファイルなど)を除き、リモート キャッシュにアップロードされません。bytestream:// スキーマは、ファイルがリモート キャッシュにない場合でも、ファイルの URI に常に使用されます。デフォルトは「minimal」です。

--remote_bytestream_uri_prefix=<a string> デフォルト: 説明を参照

ビルド イベント ストリームに書き込まれる bytestream:// URI で使用されるホスト名とインスタンス名。このオプションは、プロキシを使用してビルドを実行するときに設定できます。これにより、--remote_executor と --remote_instance_name の値がリモート実行サービスの正規名に対応しなくなります。設定しない場合、デフォルトで「${hostname}/${instance_name}」になります。

--remote_cache=<a string> デフォルト: 説明を参照

キャッシュ保存エンドポイントの URI。サポートされているスキーマは、http、https、grpc、grpcs(TLS が有効な grpc)、unix(ローカル UNIX ソケット)です。スキーマが指定されていない場合、Bazel はデフォルトで grpcs を使用します。TLS を無効にするには、grpc://、http://、unix: スキーマを指定します。https://bazel.build/remote/caching をご覧ください。

--[no]remote_cache_async デフォルト: "true"

true の場合、アクションの結果のディスクまたはリモート キャッシュへのアップロードは、アクションの完了をブロックするのではなく、バックグラウンドで行われます。一部のアクションはバックグラウンド アップロードと互換性がないため、このフラグが設定されていてもブロックされることがあります。

--[no]remote_cache_compression のデフォルト: 「false」

有効にすると、サイズが --experimental_remote_cache_compression_threshold 以上の場合に、zstd でキャッシュ BLOB を圧縮/解凍します。

--remote_cache_header=<a 'name=value' assignment> の複数の用途が蓄積される

キャッシュ リクエストに含めるヘッダーを指定します(--remote_cache_header=Name=Value)。フラグを複数回指定することで、複数のヘッダーを渡すことができます。同じ名前の複数の値は、カンマ区切りのリストに変換されます。

--remote_default_exec_properties=<a 'name=value' assignment> の複数の用途が蓄積される

実行プラットフォームで exec_properties がまだ設定されていない場合に、リモート実行プラットフォームとして使用されるデフォルトの exec プロパティを設定します。

タグ: affects_outputs

--remote_default_platform_properties=<a string> のデフォルト: ""

実行プラットフォームで remote_execution_properties が設定されていない場合に、リモート実行 API に設定するデフォルトのプラットフォーム プロパティを設定します。この値は、リモート実行の実行プラットフォームとしてホスト プラットフォームが選択されている場合にも使用されます。

--remote_download_regex=<a valid Java regular expression> の複数の用途が蓄積される

--remote_download_outputs に関係なく、パスがこのパターンに一致するリモートビルドの出力を強制的にダウンロードします。このフラグを繰り返すことで、複数のパターンを指定できます。

タグ: affects_outputs

--remote_downloader_header=<a 'name=value' assignment> の複数の用途が蓄積される

リモート ダウンローダー リクエストに含めるヘッダーを指定します(--remote_downloader_header=Name=Value)。フラグを複数回指定することで、複数のヘッダーを渡すことができます。同じ名前の複数の値は、カンマ区切りのリストに変換されます。

--remote_exec_header=<a 'name=value' assignment> の複数の用途が蓄積される

実行リクエストに含めるヘッダーを指定します(--remote_exec_header=Name=Value)。フラグを複数回指定することで、複数のヘッダーを渡すことができます。同じ名前の複数の値は、カンマ区切りのリストに変換されます。

--remote_execution_priority=<an integer> のデフォルト: 「0」

リモートで実行されるアクションの相対的な優先度。特定の優先度の値の意味はサーバーによって異なります。

--remote_executor=<a string> デフォルト: 説明を参照

リモート実行エンドポイントの HOST または HOST:PORT。サポートされているスキーマは、grpc、grpcs(TLS が有効な grpc)、unix(ローカル UNIX ソケット)です。スキーマが指定されていない場合、Bazel はデフォルトで grpcs を使用します。TLS を無効にするには、grpc:// または unix: スキーマを指定します。

--remote_grpc_log=<a path> デフォルト: 説明を参照

指定した場合、gRPC 呼び出し関連の詳細をログに記録するファイルへのパス。このログは、一連のシリアル化された com.google.devtools.build.lib.remote.logging.RemoteExecutionLog.LogEntry protobuf で構成されています。各メッセージには、メソッド LogEntry.writeDelimitedTo(OutputStream) によって実行されるように、次のシリアル化された protobuf メッセージのサイズを示す varint が接頭辞として付加されています。

--remote_header=<a 'name=value' assignment> の複数の用途が蓄積される

リクエストに含めるヘッダーを指定します(--remote_header=Name=Value)。フラグを複数回指定することで、複数のヘッダーを渡すことができます。同じ名前の複数の値は、カンマ区切りのリストに変換されます。

--remote_instance_name=<a string> のデフォルト: ""

リモート実行 API で instance_name として渡す値。

--[no]remote_local_fallback のデフォルト: 「false」

リモート実行が失敗した場合に、スタンドアロンのローカル実行戦略にフォールバックするかどうか。

--remote_local_fallback_strategy=<a string> のデフォルト: 「local」

非推奨です。詳しくは、https://github.com/bazelbuild/bazel/issues/7480 をご覧ください。

--remote_max_connections=<an integer> のデフォルト: 「100」

リモート キャッシュ/エグゼキュータへの同時接続数の上限を設定します。デフォルト値は 100 です。0 に設定すると、制限がなくなります。HTTP リモート キャッシュの場合、1 つの TCP 接続で一度に 1 つのリクエストを処理できるため、Bazel は最大で --remote_max_connections の同時リクエストを行うことができます。gRPC リモート キャッシュ/エグゼキュータの場合、通常 1 つの gRPC チャネルで 100 件以上の同時リクエストを処理できるため、Bazel は約 --remote_max_connections * 100 件の同時リクエストを行うことができます。

タグ: host_machine_resource_optimizations

--remote_proxy=<a string> デフォルト: 説明を参照

プロキシを介してリモート キャッシュに接続します。現在、このフラグは Unix ドメイン ソケット(unix:/path/to/socket)の構成にのみ使用できます。

--remote_result_cache_priority=<an integer> のデフォルト: 「0」

リモート キャッシュに保存されるリモート アクションの相対優先度。特定の優先度の値の意味はサーバーによって異なります。

--remote_retries=<an integer> のデフォルト: 「5」

一時的なエラーを再試行する最大回数。0 に設定すると、再試行は無効になります。

--remote_retry_max_delay=<An immutable length of time.> デフォルト: "5s"

リモート再試行の最大バックオフ遅延。使用できる単位は、日(d)、時間(h)、分(m)、秒(s)、ミリ秒(ms)です。単位を省略すると、値は秒として解釈されます。

--remote_timeout=<An immutable length of time.> のデフォルト: 「60s」

リモート実行とキャッシュ呼び出しを待機する最大時間。REST キャッシュの場合、これは接続と読み取りの両方のタイムアウトです。使用できる単位は、日(d)、時間(h)、分(m)、秒(s)、ミリ秒(ms)です。単位を省略すると、値は秒として解釈されます。

--[no]remote_upload_local_results デフォルト: "true"

リモート キャッシュがサポートしており、ユーザーがローカルで実行されたアクションの結果をリモート キャッシュにアップロードする権限を持っている場合に、アップロードするかどうか。

--[no]remote_verify_downloads デフォルト: "true"

true に設定すると、Bazel はすべてのリモート ダウンロードのハッシュサムを計算し、期待値と一致しない場合はリモートでキャッシュに保存された値を破棄します。

その他のオプション(他のカテゴリに分類されないもの):
--build_metadata=<a 'name=value' assignment> の複数の用途が蓄積される

ビルドイベントで指定するカスタムの Key-Value 文字列ペア。

タグ: terminal_output

--color=<yes, no or auto> デフォルト: "auto"

ターミナル コントロールを使用して出力を色付けします。

--config=<a string> の複数の用途が蓄積される

rc ファイルから追加の構成セクションを選択します。また、すべての <command> について、<command>:<config> というセクションが存在する場合は、そのセクションからオプションを取得します。このセクションが .rc ファイルに存在しない場合、Blaze はエラーで失敗します。構成セクションと、それらに相当するフラグの組み合わせは、tools/*.blazerc 構成ファイルにあります。

--credential_helper=<Path to a credential helper. It may be absolute, relative to the PATH environment variable, or %workspace%-relative. The path be optionally prefixed by a scope followed by an '='. The scope is a domain name, optionally with a single leading '*' wildcard component. A helper applies to URIs matching its scope, with more specific scopes preferred. If a helper has no scope, it applies to every URI.> の複数の用途が蓄積される

リポジトリの取得、リモート キャッシュと実行、ビルド イベント サービス用の認証情報の取得に使用する、<a href="https://github.com/EngFlow/credential-helper-spec">認証情報ヘルパー仕様</a>に準拠した認証情報ヘルパーを構成します。

ヘルパーによって指定された認証情報は、--google_default_credentials--google_credentials.netrc ファイル、または repository_ctx.download()repository_ctx.download_and_extract() の auth パラメータによって指定された認証情報よりも優先されます。

複数回指定して、複数のヘルパーを設定できます。

手順については、https://blog.engflow.com/2023/10/09/configuring-bazels-credential-helper/ をご覧ください。

--credential_helper_cache_duration=<An immutable length of time.> のデフォルト: 「30m」

認証情報ヘルパーが有効期限を返さない場合に、認証情報をキャッシュに保存する期間。このフラグの値を変更すると、キャッシュがクリアされます。

--credential_helper_timeout=<An immutable length of time.> のデフォルト: 「10s」

認証情報ヘルパーのタイムアウトを構成します。

このタイムアウト内にレスポンスがない認証情報ヘルパーは、呼び出しに失敗します。

--curses=<yes, no or auto> デフォルト: "auto"

ターミナル カーソル制御を使用して、スクロール出力を最小限に抑えます。

--disk_cache=<a path> デフォルト: 説明を参照

Bazel がアクションとアクションの出力を読み書きできるディレクトリのパス。ディレクトリが存在しない場合は作成されます。

--[no]enable_platform_specific_config デフォルト: "true"

true の場合、Bazel は bazelrc ファイルからホスト OS 固有の構成行を取得します。たとえば、ホスト OS が Linux で bazel build を実行すると、Bazel は build:linux で始まる行をピックアップします。サポートされている OS 識別子は、linux、macos、windows、freebsd、openbsd です。このフラグを有効にすることは、Linux で --config=linux、Windows で --config=windows などを指定することと同じです。

--experimental_action_cache_gc_idle_delay=<An immutable length of time.> のデフォルト: 「5m」

アクション キャッシュのガベージ コレクションが試行されるまでサーバーがアイドル状態を維持する必要がある時間。--experimental_action_cache_gc_max_age がゼロでない限り、効果はありません。

タグ: host_machine_resource_optimizations

--experimental_action_cache_gc_max_age=<An immutable length of time.> のデフォルト: 「0」

ゼロ以外の値に設定すると、アクション キャッシュが定期的にガベージ コレクションされ、この期間よりも古いエントリが削除されます。ガベージ コレクションは、--experimental_action_cache_gc_idle_delay フラグと --experimental_action_cache_gc_threshold フラグで指定されたとおりに、サーバーがアイドル状態になったときにバックグラウンドで実行されます。

タグ: host_machine_resource_optimizations

--experimental_action_cache_gc_threshold=<an integer in 0-100 range> のデフォルト: 「10」

ガベージ コレクションをトリガーするために必要な古いアクション キャッシュ エントリの割合。--experimental_action_cache_gc_max_age がゼロでない限り、効果はありません。

タグ: host_machine_resource_optimizations

--experimental_disk_cache_gc_idle_delay=<An immutable length of time.> のデフォルト: 「5m」

ディスク キャッシュのガベージ コレクションが発生するまでサーバーがアイドル状態を維持する必要がある時間。ガベージ コレクション ポリシーを指定するには、--experimental_disk_cache_gc_max_size または --experimental_disk_cache_gc_max_age を設定します。

--experimental_disk_cache_gc_max_age=<An immutable length of time.> のデフォルト: 「0」

正の値に設定すると、ディスク キャッシュは定期的にガベージ コレクションされ、この年齢より古いエントリが削除されます。--experimental_disk_cache_gc_max_size と組み合わせて設定すると、両方の条件が適用されます。ガベージ コレクションは、--experimental_disk_cache_gc_idle_delay フラグで指定された時間が経過し、サーバーがアイドル状態になったときにバックグラウンドで実行されます。

--experimental_disk_cache_gc_max_size=<a size in bytes, optionally followed by a K, M, G or T multiplier> のデフォルト: 「0」

正の値に設定すると、ディスク キャッシュは定期的にガベージ コレクションされ、このサイズを超えないように維持されます。--experimental_disk_cache_gc_max_age と組み合わせて設定すると、両方の条件が適用されます。ガベージ コレクションは、--experimental_disk_cache_gc_idle_delay フラグで指定された時間が経過し、サーバーがアイドル状態になったときにバックグラウンドで実行されます。

--[no]experimental_enable_thread_dump のデフォルト: 「false」

スレッド ダンプを有効にするかどうか。true の場合、Bazel はすべてのスレッド(仮想スレッドを含む)の状態を --experimental_thread_dump_interval ごとに、または --experimental_thread_dump_action_execution_inactivity_duration の間アクションの実行が非アクティブになった後に、ファイルにダンプします。ダンプは <output_base>/server/thread_dumps/ ディレクトリに書き込まれます。

タグ: bazel_monitoring

--experimental_install_base_gc_max_age=<An immutable length of time.> のデフォルト: 「30d」

インストール ベースがガベージ コレクションの対象になるまでの未使用期間。ゼロ以外の場合、サーバーはアイドル時に他のインストール ベースのガベージ コレクションを試みます。

タグ: host_machine_resource_optimizations

--[no]experimental_rule_extension_api デフォルト: "true"

試験運用版のルール拡張 API とサブルール API を有効にする

タグ: loading_and_analysisexperimental

--experimental_thread_dump_action_execution_inactivity_duration=<An immutable length of time.> のデフォルト: 「0」

この期間、アクションの実行が非アクティブな場合にスレッドをダンプします。0 の場合、アクション実行が非アクティブな状態のときにスレッド ダンプは書き込まれません。

タグ: bazel_monitoring

--experimental_thread_dump_interval=<An immutable length of time.> のデフォルト: 「0」

スレッドを定期的にダンプする頻度。ゼロの場合、スレッド ダンプは定期的に書き込まれません。

タグ: bazel_monitoring

--[no]experimental_windows_watchfs のデフォルト: 「false」

true の場合、--watchfs の試験運用版の Windows サポートが有効になります。それ以外の場合、--watchfs は Windows では動作しません。--watchfs も有効にしてください。

--google_auth_scopes=<comma-separated list of options> デフォルト: "https://www.googleapis.com/auth/cloud-platform"

Google Cloud 認証スコープのカンマ区切りのリスト。

--google_credentials=<a string> デフォルト: 説明を参照

認証情報を取得するファイルを指定します。詳細については、https://cloud.google.com/docs/authentication をご覧ください。

--[no]google_default_credentials のデフォルト: 「false」

認証に「Google アプリケーションのデフォルト認証情報」を使用するかどうか。詳細については、https://cloud.google.com/docs/authentication をご覧ください。デフォルトでは無効にされています。

--grpc_keepalive_time=<An immutable length of time.> デフォルト: 説明を参照

送信 gRPC 接続のキープアライブ ping を構成します。この値が設定されている場合、Bazel は接続で読み取りオペレーションが行われなくなってからこの時間が経過すると、ping を送信します。ただし、保留中の gRPC 呼び出しが 1 つ以上ある場合に限ります。時間は秒単位で扱われます。1 秒未満の値を設定するとエラーになります。デフォルトでは、キープアライブ ping は無効になっています。この設定を有効にする前に、サービス オーナーと調整する必要があります。たとえば、このフラグに 30 秒の値を設定するには、--grpc_keepalive_time=30s とします。

--grpc_keepalive_timeout=<An immutable length of time.> のデフォルト: 「20s」

送信 gRPC 接続のキープアライブ タイムアウトを構成します。--grpc_keepalive_time でキープアライブ ping が有効になっている場合、Bazel はこの時間内に ping 応答を受信しないと接続をタイムアウトします。時間は秒単位で扱われます。1 秒未満の値を設定するとエラーになります。キープアライブ ping が無効になっている場合、この設定は無視されます。

--[no]incompatible_disable_non_executable_java_binary のデフォルト: 「false」

true の場合、java_binary は常に実行可能になります。create_executable 属性は削除されます。

タグ: loading_and_analysisincompatible_change

--[no]incompatible_repo_env_ignores_action_env デフォルト: "true"

true の場合、<code>--action_env=NAME=VALUE</code> はリポジトリ ルールとモジュール拡張機能の環境に影響しなくなります。

タグ: loading_and_analysisincompatible_change

--inject_repository=<an equals-separated mapping of repository name to path> の複数の用途が蓄積される

<リポジトリ名>=<パス> の形式でローカルパスを持つ新しいリポジトリを追加します。これは --enable_bzlmod でのみ有効になり、use_repo_rule を介してルート モジュールの MODULE.bazel ファイルに対応する local_repository を追加するのと同等です。指定されたパスが絶対パスの場合は、そのまま使用されます。指定されたパスが相対パスの場合は、現在の作業ディレクトリを基準とする相対パスになります。指定されたパスが「%workspace%」で始まる場合、そのパスはワークスペースのルート(bazel info workspace の出力)を基準とした相対パスになります。指定されたパスが空の場合、以前の挿入をすべて削除します。

--invocation_id=<a UUID> のデフォルト: ""

実行中のコマンドの UUID 形式の一意の識別子。明示的に指定する場合は、呼び出し元が一意性を確保する必要があります。UUID は stderr、BEP、リモート実行プロトコルに出力されます。

タグ: bazel_monitoringbazel_internal_configuration

--override_repository=<an equals-separated mapping of repository name to path> の複数の用途が蓄積される

<repository name>=<path> の形式で、ローカルパスを使用してリポジトリをオーバーライドします。指定されたパスが絶対パスの場合は、そのまま使用されます。指定されたパスが相対パスの場合は、現在の作業ディレクトリからの相対パスになります。指定されたパスが「%workspace%」で始まる場合、そのパスはワークスペースのルート(bazel info workspace の出力)を基準とした相対パスになります。指定されたパスが空の場合、以前のオーバーライドをすべて削除します。

--[no]progress_in_terminal_title のデフォルト: 「false」

ターミナルのタイトルにコマンドの進行状況を表示します。複数のターミナル タブがある場合に、bazel が何をしているかを確認するのに便利です。

--[no]show_progress デフォルト: "true"

ビルド中に進行状況メッセージを表示します。

--show_progress_rate_limit=<a double> デフォルト: 「0.2」

出力の進行状況メッセージ間の最小秒数。

--[no]show_timestamps のデフォルト: 「false」

メッセージにタイムスタンプを含める

--tls_certificate=<a string> デフォルト: 説明を参照

サーバー証明書の署名で信頼される TLS 証明書のパスを指定します。

--tls_client_certificate=<a string> デフォルト: 説明を参照

使用する TLS クライアント証明書を指定します。クライアント認証を有効にするには、クライアント鍵も指定する必要があります。

--tls_client_key=<a string> デフォルト: 説明を参照

使用する TLS クライアント鍵を指定します。クライアント認証を有効にするには、クライアント証明書も指定する必要があります。

--ui_actions_shown=<an integer> のデフォルト: 「8」

詳細な進行状況バーに表示される同時アクションの数。各アクションは別の行に表示されます。進行状況バーには常に 1 つ以上の値が表示され、1 未満のすべての数値は 1 にマッピングされます。

タグ: terminal_output

--[no]watchfs のデフォルト: 「false」

Linux/macOS: true の場合、bazel はすべてのファイルをスキャンして変更を検出するのではなく、オペレーティング システムのファイル監視サービスを使用してローカルの変更を検出します。Windows の場合: 現在、このフラグは非動作ですが、--experimental_windows_watchfs と組み合わせて有効にできます。すべての OS: ワークスペースがネットワーク ファイル システムにあり、ファイルがリモートマシンで編集されている場合、動作は未定義です。

Aquery オプション

build からすべてのオプションを継承します。

クエリの出力とセマンティクスに関連するオプション:
--aspect_deps=<off, conservative or precise> のデフォルト: 「conservative」

出力形式が {xml,proto,record} のいずれかの場合にアスペクトの依存関係を解決する方法。「off」はアスペクトの依存関係が解決されないことを意味し、「conservative」(デフォルト)は直接依存関係のルールクラスが指定されているかどうかに関係なく、宣言されたすべてのアスペクトの依存関係が追加されることを意味し、「precise」は直接依存関係のルールクラスが指定されている場合に、アクティブになる可能性のあるアスペクトのみが追加されることを意味します。正確モードでは、単一のターゲットを評価するために他のパッケージを読み込む必要があるため、他のモードよりも遅くなります。また、正確モードでも完全に正確ではないことに注意してください。アスペクトを計算するかどうかの決定は分析フェーズで行われますが、このフェーズは「bazel query」の実行中には実行されません。

タグ: build_file_semantics

--[no]consistent_labels のデフォルト: 「false」

有効にすると、すべてのクエリ コマンドは、<code>Label</code> インスタンスに適用された Starlark <code>str</code> 関数によってラベルが出力されるかのようにラベルを出力します。これは、ルールによって出力されたさまざまなクエリ コマンドやラベルの出力を照合する必要があるツールに役立ちます。有効になっていない場合、出力フォーマッタは、出力の可読性を高めるために、実際のリポジトリ名(メイン リポジトリに対する相対名)を自由に出力できます。

タグ: terminal_output

--[no]experimental_explicit_aspects のデフォルト: 「false」

aquery、cquery: アスペクトで生成されたアクションを出力に含めるかどうか。query: no-op(アスペクトは常にフォローされます)。

タグ: terminal_output

--[no]graph:factored デフォルト: "true"

true の場合、グラフは「因数分解」されて出力されます。つまり、トポロジ的に同等のノードがマージされ、ラベルが連結されます。このオプションは --output=graph にのみ適用されます。

タグ: terminal_output

--graph:node_limit=<an integer> のデフォルト: 「512」

出力のグラフノードのラベル文字列の最大長。長いラベルは切り捨てられます。-1 は切り捨てなしを意味します。このオプションは --output=graph にのみ適用されます。

タグ: terminal_output

--[no]implicit_deps デフォルト: "true"

有効にすると、クエリが動作する依存関係グラフに暗黙的な依存関係が含まれます。暗黙的な依存関係とは、BUILD ファイルで明示的に指定されていないが、bazel によって追加される依存関係のことです。cquery の場合、このオプションは解決されたツールチェーンのフィルタリングを制御します。

タグ: build_file_semantics

--[no]include_artifacts デフォルト: "true"

出力にアクションの入力と出力の名前を含めます(大きくなる可能性があります)。

タグ: terminal_output

--[no]include_aspects デフォルト: "true"

aquery、cquery: アスペクトで生成されたアクションを出力に含めるかどうか。query: no-op(アスペクトは常にフォローされます)。

タグ: terminal_output

--[no]include_commandline デフォルト: "true"

アクション コマンドラインの内容を出力に含めます(大きくなる可能性があります)。

タグ: terminal_output

--[no]include_file_write_contents のデフォルト: 「false」

FileWrite、SourceSymlinkManifest、RepoMappingManifest アクションのファイルの内容を含めます(大きくなる可能性があります)。

タグ: terminal_output

--[no]include_param_files のデフォルト: 「false」

コマンドで使用されるパラメータ ファイルの内容を含めます(サイズが大きくなる可能性があります)。注: このフラグを有効にすると、--include_commandline フラグが自動的に有効になります。

タグ: terminal_output

--[no]include_pruned_inputs デフォルト: "true"

アクションの実行中に削除されたアクション入力が含まれます。入力が検出され、以前の呼び出しで実行されたアクションにのみ影響します。--include_artifacts も設定されている場合にのみ有効になります。

タグ: terminal_output

--[no]incompatible_package_group_includes_double_slash デフォルト: "true"

有効にすると、package_group の packages 属性を出力するときに、先頭の // が省略されなくなります。

タグ: terminal_outputincompatible_change

--[no]infer_universe_scope のデフォルト: 「false」

設定されていて、--universe_scope が設定されていない場合、--universe_scope の値はクエリ式の固有のターゲット パターンのリストとして推測されます。ユニバース スコープ関数(allrdeps など)を使用するクエリ式に対して推論される --universe_scope 値は、目的の値ではない可能性があります。このオプションは、実行する内容を理解している場合にのみ使用してください。詳細と例については、https://bazel.build/reference/query#sky-query をご覧ください。--universe_scope が設定されている場合、このオプションの値は無視されます。注: このオプションは query にのみ適用されます(cquery には適用されません)。

タグ: loading_and_analysis

--[no]line_terminator_null のデフォルト: 「false」

各形式が改行ではなく \0 で終了するかどうか。

タグ: terminal_output

--[no]nodep_deps デフォルト: "true"

有効にすると、「nodep」属性の依存関係が、クエリが動作する依存関係グラフに含まれます。「nodep」属性の一般的な例は「visibility」です。info build-language の出力を実行して解析し、ビルド言語のすべての「nodep」属性について学習します。

タグ: build_file_semantics

--output=<a string> のデフォルト: "text"

aquery の結果を出力する形式。aquery で使用できる値は、text、textproto、proto、streamed_proto、jsonproto です。

タグ: terminal_output

--output_file=<a string> のデフォルト: ""

指定すると、クエリ結果がこのファイルに直接書き込まれ、Bazel の標準出力ストリーム(stdout)には何も出力されません。ベンチマークでは、通常 <code>bazel query &gt; file</code> よりも高速です。

タグ: terminal_output

--[no]proto:default_values デフォルト: "true"

true の場合、BUILD ファイルで値が明示的に指定されていない属性が含まれます。それ以外の場合は省略されます。このオプションは --output=proto に適用されます

タグ: terminal_output

--[no]proto:definition_stack のデフォルト: 「false」

definition_stack proto フィールドに入力します。このフィールドには、ルールクラスが定義された時点の Starlark 呼び出しスタックがルール インスタンスごとに記録されます。

タグ: terminal_output

--[no]proto:flatten_selects デフォルト: "true"

有効にすると、select() で作成された構成可能な属性がフラット化されます。リスト型の場合、フラット化された表現は、選択マップの各値を 1 回だけ含むリストです。スカラー型は null にフラット化されます。

タグ: build_file_semantics

--[no]proto:include_attribute_source_aspects のデフォルト: 「false」

各 Attribute の source_aspect_name proto フィールドに、属性の取得元となったソース アスペクトを入力します(取得元がない場合は空の文字列)。

タグ: terminal_output

--[no]proto:include_starlark_rule_env デフォルト: "true"

生成された $internal_attr_hash 属性の値で starlark 環境を使用します。これにより、starlark ルール定義(とその推移的なインポート)がこの識別子の一部になります。

タグ: terminal_output

--[no]proto:include_synthetic_attribute_hash のデフォルト: 「false」

$internal_attr_hash 属性を計算して入力するかどうか。

タグ: terminal_output

--[no]proto:instantiation_stack のデフォルト: 「false」

各ルールのインスタンス化呼び出しスタックを設定します。これにはスタックが存在する必要があります。

タグ: terminal_output

--[no]proto:locations デフォルト: "true"

位置情報を proto 出力に出力するかどうか。

タグ: terminal_output

--proto:output_rule_attrs=<comma-separated list of options> のデフォルト: "all"

出力に含める属性のカンマ区切りのリスト。デフォルトはすべての属性です。属性を出力しない場合は、空の文字列に設定します。このオプションは --output=proto に適用されます。

タグ: terminal_output

--[no]proto:rule_classes のデフォルト: 「false」

各ルールの rule_class_key フィールドに入力します。また、特定の rule_class_key を持つ最初のルールについては、rule_class_info proto フィールドにも入力します。rule_class_key フィールドはルールクラスを一意に識別し、rule_class_info フィールドは Stardoc 形式のルールクラス API 定義です。

タグ: terminal_output

--[no]proto:rule_inputs_and_outputs デフォルト: "true"

rule_input フィールドと rule_output フィールドに値を設定するかどうか。

タグ: terminal_output

--query_file=<a string> のデフォルト: ""

設定すると、クエリはコマンドラインではなく、ここで指定された名前のファイルから読み取られます。ここでファイルとコマンドライン クエリの両方を指定するとエラーになります。

タグ: changes_inputs

--[no]relative_locations のデフォルト: 「false」

true の場合、xml と proto の出力の BUILD ファイルの場所は相対パスになります。デフォルトでは、出力される場所は絶対パスであり、マシン間で一貫性がありません。このオプションを true に設定すると、マシン間で一貫した結果が得られます。

タグ: terminal_output

--[no]skyframe_state のデフォルト: 「false」

追加の分析を行わずに、現在の Action Graph を Skyframe からダンプします。注: 現在、--skyframe_state でターゲットを指定することはサポートされていません。このフラグは、--output=proto または --output=textproto でのみ使用できます。

タグ: terminal_output

--[no]tool_deps デフォルト: "true"

クエリ: 無効にすると、クエリが動作する依存関係グラフに「実行構成」の依存関係が含まれなくなります。通常、'proto_library' ルールから Protocol Compiler への依存関係エッジなどの「実行構成」は、同じ「ターゲット」プログラムの一部ではなく、ビルド中に実行されるツールを指します。Cquery: 無効にすると、この構成済みターゲットを検出した最上位ターゲットから実行遷移をクロスする構成済みターゲットがすべてフィルタされます。つまり、最上位のターゲットがターゲット構成にある場合、ターゲット構成にある構成済みのターゲットのみが返されます。トップレベルのターゲットが exec 構成にある場合、exec 構成のターゲットのみが返されます。このオプションでは、解決済みのツールチェーンは除外されません。

タグ: build_file_semantics

--universe_scope=<comma-separated list of options> のデフォルト: ""

ターゲット パターンのセット(加算と減算)のカンマ区切り。クエリは、指定されたターゲットの推移閉包によって定義されたユニバースで実行される場合があります。このオプションは、query コマンドと cquery コマンドで使用されます。cquery の場合、このオプションの入力はすべての回答がビルドされるターゲットであるため、このオプションは構成と遷移に影響する可能性があります。このオプションが指定されていない場合、トップレベル ターゲットはクエリ式から解析されたターゲットと見なされます。注: cquery の場合、このオプションを指定しないと、クエリ式から解析されたターゲットがトップレベル オプションでビルドできない場合にビルドが失敗する可能性があります。

タグ: loading_and_analysis

ビルド実行を制御するオプション:
--[no]experimental_persistent_aar_extractor のデフォルト: 「false」

ワーカーを使用して永続的な aar エクストラクタを有効にします。

タグ: executionexperimental

--[no]experimental_remotable_source_manifests のデフォルト: 「false」

ソース マニフェスト アクションをリモート可能にするかどうか

タグ: loading_and_analysisexecutionexperimental

--[no]experimental_split_coverage_postprocessing のデフォルト: 「false」

true の場合、Bazel は新しいスポーンでテストのカバレッジ後処理を実行します。

タグ: executionexperimental

--[no]experimental_strict_fileset_output のデフォルト: 「false」

このオプションを有効にすると、ファイルセットはすべての出力アーティファクトを通常のファイルとして扱います。ディレクトリをトラバースしたり、シンボリック リンクを認識したりすることはありません。

タグ: executionexperimental

--[no]incompatible_modify_execution_info_additive デフォルト: "true"

有効にすると、複数の --modify_execution_info フラグを渡すことで、追加されます。無効になっている場合は、最後のフラグのみが考慮されます。

タグ: executionaffects_outputsloading_and_analysisincompatible_change

--modify_execution_info=<regex=[+-]key,regex=[+-]key,...> の複数の用途が蓄積される

アクションのニーモニックに基づいて、アクションの実行情報からキーを追加または削除します。実行情報をサポートするアクションにのみ適用されます。多くの一般的なアクション(Genrule、CppCompile、Javac、StarlarkAction、TestRunner など)は実行情報をサポートしています。複数の値を指定する場合は、順序が重要です。これは、多くの正規表現が同じニーモニックに適用される可能性があるためです。

構文: "regex=[+-]key,regex=[+-]key,..."。

例: '.=+x,.=-y,.=+z' は、すべてのアクションの実行情報に 'x' と 'z' を追加し、'y' を削除します。「Genrule=+requires-x」は、すべての Genrule アクションの実行情報に「requires-x」を追加します。'(?!Genrule).=-requires-x' は、Genrule 以外のアクションの実行情報から 'requires-x' を削除します。

タグ: executionaffects_outputsloading_and_analysis

--persistent_android_dex_desugar

ワーカーを使用して、永続的な Android dex と desugar アクションを有効にします。

展開すると次のようになります。
  --internal_persistent_android_dex_desugar
  --strategy=Desugar=worker
  --strategy=DexBuilder=worker

タグ: host_machine_resource_optimizationsexecution

--persistent_android_resource_processor

ワーカーを使用して永続的な Android リソース プロセッサを有効にします。

次のように展開されます。
  --internal_persistent_busybox_tools
  --strategy=AaptPackage=worker
  --strategy=AndroidResourceParser=worker
  --strategy=AndroidResourceValidator=worker
  --strategy=AndroidResourceCompiler=worker
  --strategy=RClassGenerator=worker
  --strategy=AndroidResourceLink=worker
  --strategy=AndroidAapt2=worker
  --strategy=AndroidAssetMerger=worker
  --strategy=AndroidResourceMerger=worker
  --strategy=AndroidCompiledResourceMerger=worker
  --strategy=ManifestMerger=worker
  --strategy=AndroidManifestMerger=worker
  --strategy=Aapt2Optimize=worker
  --strategy=AARGenerator=worker
  --strategy=ProcessDatabinding=worker
  --strategy=GenerateDataBindingBaseClasses=worker

タグ: host_machine_resource_optimizationsexecution

--persistent_multiplex_android_dex_desugar

ワーカーを使用して、永続的な多重化された Android dex アクションと desugar アクションを有効にします。

展開すると次のようになります。
  --persistent_android_dex_desugar
  --internal_persistent_multiplex_android_dex_desugar

タグ: host_machine_resource_optimizationsexecution

--persistent_multiplex_android_resource_processor

ワーカーを使用して、永続的な多重化 Android リソース プロセッサを有効にします。

次のように展開されます。
  --persistent_android_resource_processor
  --modify_execution_info=AaptPackage=+supports-multiplex-workers
  --modify_execution_info=AndroidResourceParser=+supports-multiplex-workers
  --modify_execution_info=AndroidResourceValidator=+supports-multiplex-workers
  --modify_execution_info=AndroidResourceCompiler=+supports-multiplex-workers
  --modify_execution_info=RClassGenerator=+supports-multiplex-workers
  --modify_execution_info=AndroidResourceLink=+supports-multiplex-workers
  --modify_execution_info=AndroidAapt2=+supports-multiplex-workers
  --modify_execution_info=AndroidAssetMerger=+supports-multiplex-workers
  --modify_execution_info=AndroidResourceMerger=+supports-multiplex-workers
  --modify_execution_info=AndroidCompiledResourceMerger=+supports-multiplex-workers
  --modify_execution_info=ManifestMerger=+supports-multiplex-workers
  --modify_execution_info=AndroidManifestMerger=+supports-multiplex-workers
  --modify_execution_info=Aapt2Optimize=+supports-multiplex-workers
  --modify_execution_info=AARGenerator=+supports-multiplex-workers

タグ: host_machine_resource_optimizationsexecution

--persistent_multiplex_android_tools

永続的で多重化された Android ツール(dexing、desugaring、リソース処理)を有効にします。

展開すると次のようになります。
  --internal_persistent_multiplex_busybox_tools
  --persistent_multiplex_android_resource_processor
  --persistent_multiplex_android_dex_desugar

タグ: host_machine_resource_optimizationsexecution

--[no]use_target_platform_for_tests のデフォルト: 「false」

true の場合、テスト実行グループではなく、テストの実行にターゲット プラットフォームを使用します。

タグ: execution

アクションの実行に使用されるツールチェーンを構成するオプション:
--android_compiler=<a string> デフォルト: 説明を参照

Android ターゲット コンパイラ。

タグ: affects_outputsloading_and_analysisloses_incremental_state

--android_manifest_merger=<legacy, android or force_android> デフォルト: 「android」

android_binary ルールで使用するマニフェスト マージャーを選択します。レガシー マージャーから Android マニフェスト マージャーへの移行を支援するフラグ。

タグ: affects_outputsloading_and_analysisloses_incremental_state

--android_platforms=<a build target label> のデフォルト: ""

android_binary ターゲットが使用するプラットフォームを設定します。複数のプラットフォームが指定されている場合、バイナリはファット APK で、指定された各ターゲット プラットフォームのネイティブ バイナリが含まれます。

タグ: changes_inputsloading_and_analysisloses_incremental_state

--cc_output_directory_tag=<a string> のデフォルト: ""

構成ディレクトリに追加する接尾辞を指定します。

タグ: affects_outputs

--compiler=<a string> デフォルト: 説明を参照

ターゲットのコンパイルに使用する C++ コンパイラ。

タグ: loading_and_analysisexecution

--coverage_output_generator=<a build target label> デフォルト: "@bazel_tools//tools/test:lcov_merger"

未加工のカバレッジ レポートの後処理に使用されるバイナリの場所。これはバイナリ ターゲットである必要があります。デフォルトは「//tools/test:lcov_merger」です。

タグ: changes_inputsaffects_outputsloading_and_analysis

--coverage_report_generator=<a build target label> default: "@bazel_tools//tools/test:coverage_report_generator"

カバレッジ レポートの生成に使用されるバイナリの場所。これはバイナリ ターゲットである必要があります。デフォルトは「//tools/test:coverage_report_generator」です。

タグ: changes_inputsaffects_outputsloading_and_analysis

--coverage_support=<a build target label> default: "@bazel_tools//tools/test:coverage_support"

コード カバレッジを収集するすべてのテスト アクションの入力で必要なサポート ファイルの場所。デフォルトは「//tools/test:coverage_support」です。

タグ: changes_inputsaffects_outputsloading_and_analysis

--custom_malloc=<a build target label> デフォルト: 説明を参照

カスタム malloc 実装を指定します。この設定は、ビルドルールの malloc 属性をオーバーライドします。

タグ: changes_inputsaffects_outputs

--[no]experimental_include_xcode_execution_requirements のデフォルト: 「false」

設定されている場合は、すべての Xcode アクションに「requires-xcode:{version}」実行要件を追加します。Xcode のバージョンにハイフン付きのラベルがある場合は、「requires-xcode-label:{version_label}」実行要件も追加します。

タグ: loses_incremental_stateloading_and_analysisexecutionexperimental

--[no]experimental_prefer_mutual_xcode デフォルト: "true"

true の場合、ローカルとリモートの両方で使用可能な最新の Xcode を使用します。false の場合、または相互に利用可能なバージョンがない場合は、xcode-select で選択されたローカルの Xcode バージョンを使用します。

タグ: loses_incremental_stateexperimental

--extra_execution_platforms=<comma-separated list of options> のデフォルト: ""

アクションを実行するための実行プラットフォームとして使用できるプラットフォーム。プラットフォームは、正確なターゲットとして指定することも、ターゲット パターンとして指定することもできます。これらのプラットフォームは、register_execution_platforms() によって WORKSPACE ファイルで宣言されたプラットフォームよりも前に考慮されます。このオプションは 1 回のみ設定できます。後で設定したインスタンスは、以前のフラグ設定をオーバーライドします。

タグ: execution

--extra_toolchains=<comma-separated list of options> の複数の用途が蓄積される

ツールチェーン解決時に考慮されるツールチェーン ルール。ツールチェーンは、正確なターゲットとして指定することも、ターゲット パターンとして指定することもできます。これらのツールチェーンは、register_toolchains() によって WORKSPACE ファイルで宣言されたツールチェーンよりも前に考慮されます。

タグ: affects_outputschanges_inputsloading_and_analysis

--grte_top=<a label> デフォルト: 説明を参照

チェックインされた libc ライブラリのラベル。デフォルト値は crosstool ツールチェーンによって選択され、オーバーライドする必要はほとんどありません。

タグ: action_command_linesaffects_outputs

--host_compiler=<a string> デフォルト: 説明を参照

オペレーションなしフラグ。今後のリリースで削除される予定です。

タグ: loading_and_analysisexecution

--host_grte_top=<a label> デフォルト: 説明を参照

指定した場合、この設定は exec 構成の libc 最上位ディレクトリ(--grte_top)をオーバーライドします。

タグ: action_command_linesaffects_outputs

--host_platform=<a build target label> default: "@bazel_tools//tools:host_platform"

ホストシステムを説明するプラットフォーム ルールのラベル。

タグ: affects_outputschanges_inputsloading_and_analysis

--[no]incompatible_bazel_test_exec_run_under デフォルト: "true"

有効にすると、"bazel test --run_under=//:runner" は実行構成で "//:runner" をビルドします。無効にすると、ターゲット構成で「//:runner」がビルドされます。Bazel は実行マシンでテストを実行するため、後者の方がより正確です。これは「bazel run」には影響しません。これは常にターゲット構成で「`--run_under=//foo」をビルドします。

タグ: affects_outputsincompatible_change

--[no]incompatible_builtin_objc_strip_action デフォルト: "true"

objc リンクの一部としてストリップ アクションを出力するかどうか。

タグ: action_command_linesincompatible_change

--[no]incompatible_dont_enable_host_nonhost_crosstool_features デフォルト: "true"

true の場合、Bazel は c++ ツールチェーンで「host」機能と「nonhost」機能を有効にしません(詳しくは、https://github.com/bazelbuild/bazel/issues/7407 をご覧ください)。

タグ: loading_and_analysisincompatible_change

--[no]incompatible_enable_apple_toolchain_resolution のデフォルト: 「false」

ツールチェーン解決を使用して、apple ルール(Starlark とネイティブ)の Apple SDK を選択

タグ: loading_and_analysisincompatible_change

--[no]incompatible_remove_legacy_whole_archive デフォルト: "true"

true の場合、Bazel はデフォルトでライブラリの依存関係をアーカイブ全体としてリンクしません(移行手順については、https://github.com/bazelbuild/bazel/issues/7362 を参照)。

タグ: loading_and_analysisincompatible_change

--[no]incompatible_strip_executable_safely のデフォルト: 「false」

true の場合、実行可能ファイルのストリップ アクションは -x フラグを使用します。これにより、動的シンボルの解決が中断されません。

タグ: action_command_linesincompatible_change

--[no]interface_shared_objects デフォルト: "true"

ツールチェーンでサポートされている場合は、インターフェース共有オブジェクトを使用します。現在、すべての ELF ツールチェーンがこの設定をサポートしています。

タグ: loading_and_analysisaffects_outputsaffects_outputs

--ios_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

iOS アプリケーションのビルドに使用する iOS SDK のバージョンを指定します。指定しない場合、'xcode_version' のデフォルトの iOS SDK バージョンが使用されます。

タグ: loses_incremental_state

--macos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

macOS アプリケーションのビルドに使用する macOS SDK のバージョンを指定します。指定しない場合、'xcode_version' のデフォルトの macOS SDK バージョンを使用します。

タグ: loses_incremental_state

--minimum_os_version=<a string> デフォルト: 説明を参照

コンパイルの対象となる最小 OS バージョン。

タグ: loading_and_analysisaffects_outputs

--platform_mappings=<a main workspace-relative path> のデフォルト: ""

プラットフォームが設定されていない場合に使用するプラットフォーム、またはプラットフォームがすでに存在する場合に設定するフラグを記述するマッピング ファイルの場所。メインのワークスペースのルートを基準とした相対パスにする必要があります。デフォルトは「platform_mappings」(ワークスペース ルート直下のファイル)です。

タグ: affects_outputschanges_inputsloading_and_analysisnon_configurable

--platforms=<a build target label> のデフォルト: ""

現在のコマンドのターゲット プラットフォームを記述するプラットフォーム ルールのラベル。

タグ: affects_outputschanges_inputsloading_and_analysis

--python_path=<a string> デフォルト: 説明を参照

ターゲット プラットフォームで Python ターゲットを実行するために呼び出される Python インタープリタの絶対パス。非推奨。--incompatible_use_python_toolchains で無効になります。

タグ: loading_and_analysisaffects_outputs

--tvos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

tvOS アプリケーションのビルドに使用する tvOS SDK のバージョンを指定します。指定しない場合、'xcode_version' のデフォルトの tvOS SDK バージョンを使用します。

タグ: loses_incremental_state

--[no]use_platforms_in_apple_crosstool_transition のデフォルト: 「false」

必要に応じて、apple_crosstool_transition が以前の --cpu の代わりに --platforms フラグの値を使用するようにフォールバックします。

タグ: loading_and_analysis

--watchos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

watchOS アプリケーションのビルドに使用する watchOS SDK のバージョンを指定します。指定しない場合、'xcode_version' のデフォルトの watchOS SDK バージョンが使用されます。

タグ: loses_incremental_state

--xcode_version=<a string> デフォルト: 説明を参照

指定された場合、関連するビルド アクションに指定されたバージョンの Xcode を使用します。指定しない場合、Xcode のエグゼキュータのデフォルト バージョンが使用されます。

タグ: loses_incremental_state

--xcode_version_config=<a build target label> default: "@bazel_tools//tools/cpp:host_xcodes"

ビルド構成で Xcode のバージョンを選択するために使用される xcode_config ルールのラベル。

タグ: loses_incremental_stateloading_and_analysis

コマンドの出力を制御するオプション:
--[no]apple_generate_dsym のデフォルト: 「false」

デバッグ シンボル(.dSYM)ファイルを生成するかどうか。

タグ: affects_outputsaction_command_lines

true の場合、すべてのターゲットのランファイル シンボリック リンク フォレストをビルドします。false の場合、ローカル アクション、テスト、実行コマンドで必要な場合にのみ書き込みます。

タグ: affects_outputs

--[no]build_runfile_manifests デフォルト: "true"

true の場合、すべてのターゲットの runfiles マニフェストを書き込みます。false の場合は省略します。false の場合、ローカルテストは実行されません。

タグ: affects_outputs

--[no]build_test_dwp のデフォルト: 「false」

有効にすると、C++ テストを静的にビルドして fission を使用する場合、テスト バイナリの .dwp ファイルも自動的にビルドされます。

タグ: loading_and_analysisaffects_outputs

--cc_proto_library_header_suffixes=<comma-separated set of options> デフォルト: ".pb.h"

cc_proto_library が作成するヘッダー ファイルの接尾辞を設定します。

タグ: affects_outputsloading_and_analysis

--cc_proto_library_source_suffixes=<comma-separated set of options> デフォルト: ".pb.cc"

cc_proto_library が作成するソースファイルの接尾辞を設定します。

タグ: affects_outputsloading_and_analysis

--[no]experimental_proto_descriptor_sets_include_source_info のデフォルト: 「false」

proto_library で代替の Java API バージョンの追加アクションを実行します。

タグ: affects_outputsloading_and_analysisexperimental

--[no]experimental_save_feature_state のデフォルト: 「false」

有効化された機能とリクエストされた機能の状態をコンパイルの出力として保存します。

タグ: affects_outputsexperimental

--fission=<a set of compilation modes> デフォルト: 「no」

C++ のコンパイルとリンクに fission を使用するコンパイル モードを指定します。{'fastbuild', 'dbg', 'opt'} の任意の組み合わせ、またはすべてのモードを有効にする特別な値 'yes'、すべてのモードを無効にする特別な値 'no' を指定できます。

タグ: loading_and_analysisaction_command_linesaffects_outputs

--[no]incompatible_always_include_files_in_data デフォルト: "true"

true の場合、ネイティブ ルールはデータ依存関係の <code>DefaultInfo.files</code> をランファイルに追加します。これは、Starlark ルールの推奨動作(https://bazel.build/extending/rules#runfiles_features_to_avoid)と一致します。

タグ: affects_outputsincompatible_change

--[no]incompatible_compact_repo_mapping_manifest のデフォルト: 「false」

有効にすると、<binary>.repo_mapping ファイルは、ランファイルを提供する拡張機能によって生成されたリポジトリごとに 1 回ではなく、モジュール拡張機能のリポジトリ マッピングを 1 回だけ出力します。

タグ: affects_outputsincompatible_change

--incompatible_disable_select_on=<comma-separated set of options> のデフォルト: ""

select() での使用が無効になっているフラグのリスト。

タグ: loading_and_analysisincompatible_changenon_configurable

--[no]incompatible_filegroup_runfiles_for_data デフォルト: "true"

true の場合、srcs 属性にリストされているターゲットの runfile は、filegroup をデータ依存関係として使用するターゲットで使用できます。

タグ: incompatible_change

--[no]objc_generate_linkmap のデフォルト: 「false」

リンクマップ ファイルを生成するかどうかを指定します。

タグ: affects_outputs

--[no]save_temps のデフォルト: 「false」

設定すると、gcc からの一時的な出力が保存されます。これには、.s ファイル(アセンブラ コード)、.i ファイル(プリプロセスされた C)、.ii ファイル(プリプロセスされた C++)が含まれます。

タグ: affects_outputs

ユーザーが目的の出力を構成し、その存在ではなく値に影響を与えるオプション:
--action_env=<a 'name[=value]' assignment with an optional value part or the special syntax '=name' to unset a variable> の複数の用途が蓄積される

ターゲット構成を持つアクションで使用可能な環境変数のセットを指定します。変数は <code>name</code&gt> で指定できます。この場合、値は呼び出し環境から取得されます。また、<code>name=value</code&gt> ペアで指定することもできます。この場合、値は呼び出し環境とは無関係に設定されます。さらに、<code>=name</code&gt> で指定することもできます。この場合、その名前の変数は設定解除されます。このオプションは複数回使用できます。同じ変数に指定されたオプションは後勝ちになり、異なる変数のオプションは累積されます。<br><code>--incompatible_repo_env_ignores_action_env</code> が true でない限り、すべての <code>name=value</code> ペアはリポジトリ ルールで使用できます。

タグ: action_command_lines

--allowed_cpu_values=<comma-separated set of options> のデフォルト: ""

--cpu フラグに指定できる値。

タグ: changes_inputsaffects_outputs

--[no]android_databinding_use_androidx デフォルト: "true"

AndroidX 互換のデータ バインディング ファイルを生成します。これはデータバインディング v2 でのみ使用されます。このフラグは no-op です。

タグ: affects_outputsloading_and_analysisloses_incremental_stateexperimental

--[no]android_databinding_use_v3_4_args デフォルト: "true"

3.4.0 引数で Android データバインディング v2 を使用します。このフラグは no-op です。

タグ: affects_outputsloading_and_analysisloses_incremental_stateexperimental

--android_dynamic_mode=<off, default or fully> のデフォルト: 「off」

cc_binary が共有ライブラリを明示的に作成しない場合に、Android ルールの C++ 依存関係を動的にリンクするかどうかを決定します。「default」は、bazel が動的にリンクするかどうかを選択することを意味します。「fully」は、すべてのライブラリが動的にリンクされることを意味します。「off」は、すべてのライブラリがほぼ静的モードでリンクされることを意味します。

タグ: affects_outputsloading_and_analysis

--android_manifest_merger_order=<alphabetical, alphabetical_by_configuration or dependency> のデフォルト: 「alphabetical」

Android バイナリのマニフェスト マージツールに渡されるマニフェストの順序を設定します。ALPHABETICAL は、マニフェストが execroot を基準としたパスで並べ替えられることを意味します。ALPHABETICAL_BY_CONFIGURATION は、マニフェストが出力ディレクトリ内の構成ディレクトリに相対的なパスで並べ替えられることを意味します。DEPENDENCY は、各ライブラリのマニフェストが依存関係のマニフェストの前に来るようにマニフェストが順序付けられることを意味します。

タグ: action_command_linesexecution

--[no]android_resource_shrinking のデフォルト: 「false」

ProGuard を使用する android_binary APK のリソース圧縮を有効にします。

タグ: affects_outputsloading_and_analysis

--[no]build_python_zip デフォルト: "auto"

Python 実行可能 zip をビルドします。Windows ではオン、他のプラットフォームではオフ

タグ: affects_outputs

--catalyst_cpus=<comma-separated list of options> の複数の用途が蓄積される

Apple Catalyst バイナリをビルドするアーキテクチャのカンマ区切りリスト。

タグ: loses_incremental_stateloading_and_analysis

--[no]collect_code_coverage のデフォルト: 「false」

指定すると、Bazel はコードを計測し(可能な場合はオフライン計測を使用)、テスト中にカバレッジ情報を収集します。--instrumentation_filter に一致するターゲットのみが影響を受けます。通常、このオプションは直接指定しないでください。代わりに「bazel coverage」コマンドを使用してください。

タグ: affects_outputs

--compilation_mode=<fastbuild, dbg or opt> [-c] デフォルト: "fastbuild"

バイナリのビルドモードを指定します。値: 「fastbuild」、「dbg」、「opt」。

タグ: affects_outputsaction_command_lines

--conlyopt=<a string> の複数の用途が蓄積される

C ソースファイルをコンパイルするときに gcc に渡す追加オプション。

タグ: action_command_linesaffects_outputs

--copt=<a string> の複数の用途が蓄積される

gcc に渡す追加オプション。

タグ: action_command_linesaffects_outputs

--cpu=<a string> のデフォルト: ""

非推奨: このフラグは、下位互換性を確保するためのレガシー プラットフォーム マッピングはありますが、Blaze では内部的に使用されません。このフラグは使用しないでください。代わりに、適切なプラットフォーム定義で --platforms を使用してください。

タグ: changes_inputsaffects_outputs

--cs_fdo_absolute_path=<a string> デフォルト: 説明を参照

CSFDO プロファイル情報を使用してコンパイルを最適化します。プロファイル ファイル、未加工またはインデックス付きの LLVM プロファイル ファイルを含む zip ファイルの絶対パス名を指定します。

タグ: affects_outputs

--cs_fdo_instrument=<a string> デフォルト: 説明を参照

コンテキスト依存の FDO 計測でバイナリを生成します。Clang/LLVM コンパイラでは、実行時に未加工のプロファイル ファイルがダンプされるディレクトリ名も受け入れます。

タグ: affects_outputs

--cs_fdo_profile=<a build target label> デフォルト: 説明を参照

最適化に使用されるコンテキスト依存プロファイルを表す cs_fdo_profile。

タグ: affects_outputs

--cxxopt=<a string> の複数の用途が蓄積される

C++ ソースファイルをコンパイルするときに gcc に渡す追加オプション。

タグ: action_command_linesaffects_outputs

--define=<a 'name=value' assignment> の複数の用途が蓄積される

各 --define オプションは、ビルド変数の割り当てを指定します。変数に複数の値がある場合は、最後の値が優先されます。

タグ: changes_inputsaffects_outputs

--dynamic_mode=<off, default or fully> のデフォルト: "default"

C++ バイナリを動的にリンクするかどうかを決定します。「default」は、Bazel が動的にリンクするかどうかを選択することを意味します。「fully」は、すべてのライブラリが動的にリンクされることを意味します。「off」は、すべてのライブラリがほぼ静的モードでリンクされることを意味します。

タグ: loading_and_analysisaffects_outputs

--[no]enable_propeller_optimize_absolute_paths デフォルト: "true"

設定されている場合、プロペラ最適化の絶対パスを使用するとエラーが発生します。

タグ: affects_outputs

--[no]enable_remaining_fdo_absolute_paths デフォルト: "true"

設定されている場合、FDO の絶対パスを使用するとエラーが発生します。

タグ: affects_outputs

--[no]enable_runfiles デフォルト: "auto"

ランファイル シンボリック リンク ツリーを有効にします。デフォルトでは、Windows ではオフ、他のプラットフォームではオンです。

タグ: affects_outputs

--exec_aspects=<comma-separated list of options> の複数の用途が蓄積される

トップレベルのターゲットであるかどうかに関係なく、exec 構成のターゲットに適用されるアスペクトのカンマ区切りリスト。この機能は試験運用版であり、変更される可能性があります。

タグ: loading_and_analysis

--experimental_action_listener=<a build target label> の複数の用途が蓄積される

アスペクトに置き換えられたため、非推奨になりました。action_listener を使用して、既存のビルド アクションに extra_action をアタッチします。

タグ: executionexperimental

--[no]experimental_android_compress_java_resources のデフォルト: 「false」

APK の Java リソースを圧縮する

タグ: affects_outputsloading_and_analysisexperimental

--[no]experimental_android_databinding_v2 デフォルト: "true"

Android データ バインディング v2 を使用します。このフラグは no-op です。

タグ: affects_outputsloading_and_analysisloses_incremental_stateexperimental

--[no]experimental_android_resource_shrinking のデフォルト: 「false」

ProGuard を使用する android_binary APK のリソース圧縮を有効にします。

タグ: affects_outputsloading_and_analysisexperimental

--[no]experimental_android_rewrite_dexes_with_rex のデフォルト: 「false」

rex ツールを使用して dex ファイルを書き換える

タグ: affects_outputsloading_and_analysisloses_incremental_stateexperimental

--[no]experimental_collect_code_coverage_for_generated_files のデフォルト: 「false」

指定すると、Bazel は生成されたファイルの収集カバレッジ情報も生成します。

タグ: affects_outputsexperimental

--experimental_objc_fastbuild_options=<comma-separated list of options> のデフォルト: 「-O0,-DDEBUG=1」

これらの文字列を objc fastbuild コンパイラ オプションとして使用します。

タグ: action_command_lines

--[no]experimental_omitfp のデフォルト: 「false」

true の場合、スタック アンワインドに libunwind を使用し、-fomit-frame-pointer と -fasynchronous-unwind-tables でコンパイルします。

タグ: action_command_linesaffects_outputsexperimental

--experimental_output_paths=<off or strip> のデフォルト: 「off」

出力ツリーのどの場所にルールがその出力を書き込むか(特にマルチプラットフォーム / マルチ構成ビルドの場合)に使用するモデル。これは試験運用版です。詳しくは、https://github.com/bazelbuild/bazel/issues/6526 をご覧ください。Starlark アクションは、'execution_requirements' 辞書にキー 'supports-path-mapping' を追加することで、パス マッピングを選択できます。

タグ: loses_incremental_statebazel_internal_configurationaffects_outputsexecution

--experimental_override_platform_cpu_name=<a 'label=value' assignment> の複数の用途が蓄積される

各エントリは label=value の形式にする必要があります。ここで、label はプラットフォームを指し、values は $(TARGET_CPU) make 変数と出力パスでプラットフォームの CPU 名をオーバーライドする目的の短縮名です。--experimental_platform_in_output_dir、--incompatible_target_cpu_from_platform、--incompatible_bep_cpu_from_platform が true の場合にのみ使用されます。命名の優先度が最も高い。

タグ: affects_outputsexperimental

--[no]experimental_platform_in_output_dir のデフォルト: 「false」

true の場合、CPU の代わりにターゲット プラットフォームの短縮名が出力ディレクトリ名に使用されます。auto の場合、これは exec 構成にのみ適用されます。正確なスキームは試験運用であり、変更される可能性があります。まず、--platforms オプションの値が 1 つだけではないまれなケースでは、platforms オプションのハッシュが使用されます。次に、現在のプラットフォームの短縮名が --experimental_override_name_platform_in_output_dir で登録されている場合は、その短縮名が使用されます。次に、--experimental_use_platforms_in_output_dir_legacy_heuristic が設定されている場合は、現在のプラットフォーム ラベルに基づく短縮名を使用します。最後に、プラットフォーム オプションのハッシュが最後の手段として使用されます。

タグ: affects_outputsexperimental

--[no]experimental_py_binaries_include_label のデフォルト: 「false」

py_binary ターゲットには、スタンピングが無効になっている場合でもラベルが含まれます。

タグ: affects_outputsexperimental

--[no]experimental_use_llvm_covmap のデフォルト: 「false」

指定した場合、collect_code_coverage が有効になっていると、Bazel は gcov ではなく llvm-cov カバレッジ マップ情報を生成します。

タグ: changes_inputsaffects_outputsloading_and_analysisexperimental

--[no]experimental_use_platforms_in_output_dir_legacy_heuristic デフォルト: "true"

このフラグは、移行またはテストの推奨戦略の一部としてのみ使用してください。このヒューリスティックには既知の欠陥があるため、--experimental_override_name_platform_in_output_dir のみに依存するように移行することをおすすめします。

タグ: affects_outputsexperimental

--fdo_instrument=<a string> デフォルト: 説明を参照

FDO 計測でバイナリを生成します。Clang/LLVM コンパイラでは、実行時に未加工のプロファイル ファイルがダンプされるディレクトリ名も受け入れます。

タグ: affects_outputs

--fdo_optimize=<a string> デフォルト: 説明を参照

FDO プロファイル情報を使用してコンパイルを最適化します。.gcda ファイルツリーを含む zip ファイル、自動プロファイルを含む afdo ファイル、または LLVM プロファイル ファイルの名前を指定します。このフラグは、ラベルとして指定されたファイル(例: //foo/bar:file.afdo。対応するパッケージに exports_files ディレクティブを追加する必要がある場合があります)と、fdo_profile ターゲットを指すラベルも受け入れます。このフラグは fdo_profile ルールに置き換えられます。

タグ: affects_outputs

--fdo_prefetch_hints=<a build target label> デフォルト: 説明を参照

キャッシュ プリフェッチ ヒントを使用します。

タグ: affects_outputs

--fdo_profile=<a build target label> デフォルト: 説明を参照

最適化に使用するプロファイルを表す fdo_profile。

タグ: affects_outputs

--features=<a string> の複数の用途が蓄積される

指定された機能は、ターゲット構成でビルドされたターゲットに対してデフォルトで有効または無効になります。-<feature> を指定すると、機能が無効になります。除外機能は常に非除外機能をオーバーライドします。--host_features もご覧ください

タグ: changes_inputsaffects_outputs

--[no]force_pic のデフォルト: 「false」

有効にすると、すべての C++ コンパイルで位置独立コード(「-fPIC」)が生成され、リンクでは PIC 以外のライブラリよりも PIC 事前構築済みライブラリが優先され、リンクでは位置独立実行可能ファイル(「-pie」)が生成されます。

タグ: loading_and_analysisaffects_outputs

--host_action_env=<a 'name[=value]' assignment with an optional value part or the special syntax '=name' to unset a variable> の複数の用途が蓄積される

実行構成を持つアクションで使用可能な環境変数のセットを指定します。変数は名前で指定できます。この場合、値は呼び出し環境から取得されます。また、name=value ペアで指定することもできます。この場合、値は呼び出し環境とは無関係に設定されます。さらに、<code>=name</code> で指定することもできます。この場合、その名前の変数は設定解除されます。このオプションは複数回使用できます。同じ変数に指定されたオプションは後勝ちとなり、異なる変数のオプションは累積されます。

タグ: action_command_lines

--host_compilation_mode=<fastbuild, dbg or opt> デフォルト: "opt"

ビルド中に使用されるツールのビルドモードを指定します。値: 「fastbuild」、「dbg」、「opt」。

タグ: affects_outputsaction_command_lines

--host_conlyopt=<a string> の複数の用途が蓄積される

実行構成で C(C++ ではない)ソースファイルをコンパイルするときに C コンパイラに渡す追加オプション。

タグ: action_command_linesaffects_outputs

--host_copt=<a string> の複数の用途が蓄積される

実行構成でビルドされたツールに対して C コンパイラに渡す追加オプション。

タグ: action_command_linesaffects_outputs

--host_cpu=<a string> のデフォルト: ""

ホスト CPU。

タグ: changes_inputsaffects_outputs

--host_cxxopt=<a string> の複数の用途が蓄積される

実行構成でビルドされたツール用に C++ コンパイラに渡す追加オプション。

タグ: action_command_linesaffects_outputs

--host_features=<a string> の複数の用途が蓄積される

指定された機能は、exec 構成でビルドされたターゲットに対してデフォルトで有効または無効になります。-<feature> を指定すると、機能が無効になります。除外機能は常に非除外機能をオーバーライドします。

タグ: changes_inputsaffects_outputs

--host_linkopt=<a string> の複数の用途が蓄積される

実行構成でツールをリンクするときにリンカーに渡す追加オプション。

タグ: action_command_linesaffects_outputs

--host_macos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

ホスト ターゲットの最小互換性のある macOS バージョン。指定しない場合、macos_sdk_version が使用されます。

タグ: loses_incremental_state

--host_per_file_copt=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths followed by an @ and a comma separated list of options> の複数の用途が蓄積される

実行構成で特定のファイルをコンパイルするときに、C/C++ コンパイラに選択的に渡す追加オプション。このオプションは複数回渡すことができます。構文: regex_filter@option_1,option_2,...,option_n。ここで、regex_filter は、正規表現パターン(--instrumentation_filter も参照)の include と exclude のリストを表します。option_1 から option_n は、任意のコマンドライン オプションを表します。オプションにカンマが含まれている場合は、バックスラッシュで囲む必要があります。オプションには @ を含めることができます。文字列の分割には最初の @ のみが使用されます。例: --host_per_file_copt=//foo/.*.cc,-//foo/bar.cc@-O0 は、//foo/ 内の bar.cc 以外のすべての cc ファイルの gcc コマンドラインに -O0 コマンドライン オプションを追加します。

タグ: action_command_linesaffects_outputs

--[no]incompatible_auto_exec_groups のデフォルト: 「false」

有効にすると、ルールで使用されるツールチェーンごとに実行グループが自動的に作成されます。このルールを機能させるには、アクションで toolchain パラメータを指定する必要があります。詳細については、https://github.com/bazelbuild/bazel/issues/17134 をご覧ください。

タグ: affects_outputsincompatible_change

--[no]incompatible_merge_genfiles_directory デフォルト: "true"

true の場合、genfiles ディレクトリは bin ディレクトリに折りたたまれます。

タグ: affects_outputsincompatible_change

--[no]incompatible_target_cpu_from_platform デフォルト: "true"

指定されている場合、ターゲット プラットフォームの CPU 制約(@platforms//cpu:cpu)の値を使用して、$(TARGET_CPU) メイク変数を設定します。

タグ: loading_and_analysisincompatible_change

--[no]instrument_test_targets のデフォルト: 「false」

カバレッジが有効な場合に、テストルールの計測を考慮するかどうかを指定します。設定すると、--instrumentation_filter で指定されたテストルールがインストルメント化されます。それ以外の場合、テストルールは常にカバレッジ計測から除外されます。

タグ: affects_outputs

--instrumentation_filter=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths> デフォルト: "-/javatests[/:],-/test/java[/:]"

カバレッジが有効になっている場合、指定された正規表現ベースのフィルタに含まれる名前のルールのみが計測されます。代わりに、接頭辞「-」が付いたルールが除外されます。--instrument_test_targets が有効になっていない限り、テスト以外のルールのみが計測されます。

タグ: affects_outputs

--ios_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

ターゲット シミュレータとデバイスの最小互換性 iOS バージョン。指定しない場合、'ios_sdk_version' が使用されます。

タグ: loses_incremental_state

--ios_multi_cpus=<comma-separated list of options> の複数の用途が蓄積される

ios_application のビルドに使用するアーキテクチャのカンマ区切りのリスト。結果として、指定されたすべてのアーキテクチャを含むユニバーサル バイナリが生成されます。

タグ: loses_incremental_stateloading_and_analysis

--[no]legacy_whole_archive デフォルト: "true"

非推奨。--incompatible_remove_legacy_whole_archive に置き換えられました(詳しくは https://github.com/bazelbuild/bazel/issues/7362 をご覧ください)。オンの場合、linkshared=True で、linkopts に linkstatic=True または '-static' のいずれかがある cc_binary ルールに --whole-archive を使用します。これは下位互換性のためにのみ存在します。より良い方法は、必要に応じて alwayslink=1 を使用することです。

タグ: action_command_linesaffects_outputsdeprecated

--linkopt=<a string> の複数の用途が蓄積される

リンク時に gcc に渡す追加オプション。

タグ: action_command_linesaffects_outputs

--ltobackendopt=<a string> の複数の用途が蓄積される

LTO バックエンド ステップに渡す追加オプション(--features=thin_lto の下)。

タグ: action_command_linesaffects_outputs

--ltoindexopt=<a string> の複数の用途が蓄積される

LTO インデックス作成ステップに渡す追加オプション(--features=thin_lto の下)。

タグ: action_command_linesaffects_outputs

--macos_cpus=<comma-separated list of options> の複数の用途が蓄積される

Apple macOS バイナリをビルドするアーキテクチャのカンマ区切りリスト。

タグ: loses_incremental_stateloading_and_analysis

--macos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

ターゲットの互換性のある最小 macOS バージョン。指定しない場合、macos_sdk_version が使用されます。

タグ: loses_incremental_state

--memprof_profile=<a build target label> デフォルト: 説明を参照

memprof プロファイルを使用します。

タグ: affects_outputs

--[no]objc_debug_with_GLIBCXX のデフォルト: 「false」

設定されていて、コンパイル モードが「dbg」に設定されている場合、GLIBCXX_DEBUG、GLIBCXX_DEBUG_PEDANTIC、GLIBCPP_CONCEPT_CHECKS を定義します。

タグ: action_command_lines

--[no]objc_enable_binary_stripping のデフォルト: 「false」

リンクされたバイナリでシンボルとデッドコードの削除を行うかどうか。このフラグと --compilation_mode=opt の両方が指定されている場合、バイナリのストリッピングが実行されます。

タグ: action_command_lines

--objccopt=<a string> の複数の用途が蓄積される

Objective-C/C++ ソースファイルをコンパイルするときに gcc に渡す追加オプション。

タグ: action_command_lines

--per_file_copt=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths followed by an @ and a comma separated list of options> の複数の用途が蓄積される

特定のファイルをコンパイルするときに gcc に選択的に渡す追加オプション。このオプションは複数回渡すことができます。構文: regex_filter@option_1,option_2,...,option_n。ここで、regex_filter は、正規表現パターン(--instrumentation_filter も参照)の include と exclude のリストを表します。option_1 から option_n は、任意のコマンドライン オプションを表します。オプションにカンマが含まれている場合は、バックスラッシュで囲む必要があります。オプションには @ を含めることができます。文字列の分割には最初の @ のみが使用されます。例: --per_file_copt=//foo/.*.cc,-//foo/bar.cc@-O0 は、//foo/ のすべての cc ファイル(bar.cc を除く)の gcc コマンドラインに -O0 コマンドライン オプションを追加します。

タグ: action_command_linesaffects_outputs

--per_file_ltobackendopt=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths followed by an @ and a comma separated list of options> の複数の用途が蓄積される

特定のバックエンド オブジェクトをコンパイルするときに、LTO バックエンドに選択的に渡す追加オプション(--features=thin_lto の下)。このオプションは複数回渡すことができます。構文: regex_filter@option_1,option_2,...,option_n。ここで、regex_filter は、正規表現パターンの include と exclude のリストを表します。option_1 から option_n は、任意のコマンドライン オプションを表します。オプションにカンマが含まれている場合は、バックスラッシュで囲む必要があります。オプションには @ を含めることができます。文字列の分割には最初の @ のみが使用されます。例: --per_file_ltobackendopt=//foo/.*.o,-//foo/bar.o@-O0 は、//foo/ のすべての o ファイル(bar.o を除く)の LTO バックエンド コマンドラインに -O0 コマンドライン オプションを追加します。

タグ: action_command_linesaffects_outputs

--platform_suffix=<a string> デフォルト: 説明を参照

構成ディレクトリに追加する接尾辞を指定します。

タグ: loses_incremental_stateaffects_outputsloading_and_analysis

--propeller_optimize=<a build target label> デフォルト: 説明を参照

Propeller プロファイル情報を使用してビルド ターゲットを最適化します。Propeller プロファイルは、cc プロファイルと ld プロファイルの 2 つのファイルのうち少なくとも 1 つで構成されている必要があります。このフラグは、プロペラ プロファイル入力ファイルを参照する必要があるビルドラベルを受け取ります。たとえば、ラベルを定義する BUILD ファイル(a/b/BUILD:propeller_optimize)は、name = "propeller_profile", cc_profile = "propeller_cc_profile.txt", ld_profile = "propeller_ld_profile.txt" となります。これらのファイルを Bazel に認識させるには、対応するパッケージに exports_files ディレクティブを追加する必要がある場合があります。このオプションは、--propeller_optimize=//a/b:propeller_profile のように使用する必要があります。

タグ: action_command_linesaffects_outputs

--propeller_optimize_absolute_cc_profile=<a string> デフォルト: 説明を参照

Propeller 最適化ビルドの cc_profile ファイルの絶対パス名。

タグ: affects_outputs

--propeller_optimize_absolute_ld_profile=<a string> デフォルト: 説明を参照

Propeller 最適化ビルドの ld_profile ファイルの絶対パス名。

タグ: affects_outputs

--run_under=<a prefix in front of command> デフォルト: 説明を参照

「test」コマンドと「run」コマンドの実行可能ファイルの前に追加する接頭辞。値が「foo -bar」で、実行コマンドラインが「test_binary -baz」の場合、最終的なコマンドラインは「foo -bar test_binary -baz」になります。これは実行可能ターゲットのラベルにすることもできます。たとえば、'valgrind'、'strace'、'strace -c'、'valgrind --quiet --num-callers=20'、'//package:target'、'//package:target --options' などがあります。

タグ: action_command_lines

--[no]share_native_deps デフォルト: "true"

true の場合、同一の機能を含むネイティブ ライブラリが異なるターゲット間で共有されます

タグ: loading_and_analysisaffects_outputs

--[no]stamp のデフォルト: 「false」

バイナリに日付、ユーザー名、ホスト名、ワークスペース情報などをスタンプします。

タグ: affects_outputs

--strip=<always, sometimes or never> のデフォルト: 「sometimes」

バイナリと共有ライブラリをストリップするかどうかを指定します(「-Wl,--strip-debug」を使用)。デフォルト値の 'sometimes' は、--compilation_mode=fastbuild の場合にのみストリップすることを意味します。

タグ: affects_outputs

--stripopt=<a string> の複数の用途が蓄積される

「<name>.stripped」バイナリを生成するときに strip に渡す追加のオプション。

タグ: action_command_linesaffects_outputs

--tvos_cpus=<comma-separated list of options> の複数の用途が蓄積される

Apple tvOS バイナリをビルドするアーキテクチャのカンマ区切りのリスト。

タグ: loses_incremental_stateloading_and_analysis

--tvos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

ターゲット シミュレータとデバイスの最小互換性のある tvOS バージョン。指定しない場合、「tvos_sdk_version」が使用されます。

タグ: loses_incremental_state

--visionos_cpus=<comma-separated list of options> の複数の用途が蓄積される

Apple visionOS バイナリをビルドするアーキテクチャのカンマ区切りのリスト。

タグ: loses_incremental_stateloading_and_analysis

--watchos_cpus=<comma-separated list of options> の複数の用途が蓄積される

Apple watchOS バイナリをビルドするアーキテクチャのカンマ区切りのリスト。

タグ: loses_incremental_stateloading_and_analysis

--watchos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

ターゲット シミュレータとデバイスの最小互換 watchOS バージョン。指定しない場合、'watchos_sdk_version' が使用されます。

タグ: loses_incremental_state

--xbinary_fdo=<a build target label> デフォルト: 説明を参照

XbinaryFDO プロファイル情報を使用してコンパイルを最適化します。デフォルトのクロスバイナリ プロファイルの名前を指定します。このオプションを --fdo_instrument、--fdo_optimize、--fdo_profile と組み合わせて使用すると、xbinary_fdo が指定されていないかのように、これらのオプションが常に優先されます。

タグ: affects_outputs

Bazel が有効なビルド入力(ルール定義、フラグの組み合わせなど)を厳密に適用する方法に影響するオプション:
--[no]check_visibility デフォルト: "true"

無効にすると、ターゲット依存関係の可視性エラーが警告に降格されます。

タグ: build_file_semanticsnon_configurable

--[no]desugar_for_android デフォルト: "true"

dexing の前に Java 8 バイトコードを desugar するかどうか。

タグ: affects_outputsloading_and_analysisloses_incremental_state

--[no]desugar_java8_libs のデフォルト: 「false」

レガシー デバイス向けアプリにサポートされている Java 8 ライブラリを含めるかどうか。

タグ: affects_outputsloading_and_analysisloses_incremental_stateexperimental

--[no]enforce_constraints デフォルト: "true"

各ターゲットと互換性のある環境をチェックし、同じ環境をサポートしていない依存関係がターゲットにある場合はエラーを報告します

タグ: build_file_semantics

--[no]experimental_check_desugar_deps デフォルト: "true"

Android バイナリレベルで正しい脱糖を再確認するかどうか。

タグ: eagerness_to_exitloading_and_analysisexperimental

--[no]experimental_enforce_transitive_visibility のデフォルト: 「false」

true の場合、package() が transitive_visibility 属性を設定して、依存できるパッケージを制限できるようにします。

タグ: build_file_semanticsexperimental

--experimental_one_version_enforcement=<off, warning or error> デフォルト: 「OFF」

有効にすると、java_binary ルールのクラスパスに同じクラスファイルの複数のバージョンを含めることができなくなります。この強制により、ビルドが破損したり、警告が表示されたりする可能性があります。

タグ: loading_and_analysis

--experimental_strict_java_deps=<off, warn, error, strict or default> のデフォルト: "default"

true の場合、Java ターゲットが直接使用されるすべてのターゲットを依存関係として明示的に宣言していることを確認します。

タグ: build_file_semanticseagerness_to_exit

--[no]incompatible_check_testonly_for_output_files のデフォルト: 「false」

有効になっている場合、生成ルールの testonly を調べて、出力ファイルである前提条件ターゲットの testonly を確認します。これは公開設定の確認と一致します。

タグ: build_file_semanticsincompatible_change

--[no]incompatible_disable_native_android_rules のデフォルト: 「false」

有効にすると、ネイティブの Android ルールの直接使用が無効になります。https://github.com/bazelbuild/rules_android の Starlark Android ルールを使用してください。

タグ: eagerness_to_exitincompatible_change

--[no]incompatible_disable_native_apple_binary_rule のデフォルト: 「false」

何もしません。下位互換性のためにここに残されています。

タグ: eagerness_to_exitincompatible_change

--[no]one_version_enforcement_on_java_tests デフォルト: "true"

有効で、experimental_one_version_enforcement が NONE 以外の値に設定されている場合、java_test ターゲットに 1 つのバージョンを適用します。このフラグを無効にすると、潜在的な 1 バージョン違反を見逃す代わりに、増分テストのパフォーマンスを向上させることができます。

タグ: loading_and_analysis

--python_native_rules_allowlist=<a build target label> デフォルト: 説明を参照

--incompatible_python_disallow_native_rules を適用するときに使用する許可リスト(package_group ターゲット)。

タグ: loading_and_analysis

--[no]strict_filesets のデフォルト: 「false」

このオプションを有効にすると、パッケージ境界を越えるファイルセットがエラーとして報告されます。

タグ: build_file_semanticseagerness_to_exit

--strict_proto_deps=<off, warn, error, strict or default> のデフォルト: 「error」

OFF でない限り、proto_library ターゲットが直接使用されるすべてのターゲットを依存関係として明示的に宣言していることを確認します。

タグ: build_file_semanticseagerness_to_exitincompatible_change

--strict_public_imports=<off, warn, error, strict or default> のデフォルト: 「off」

OFF でない限り、proto_library ターゲットが「import public」で使用されるすべてのターゲットをエクスポートとして明示的に宣言していることを確認します。

タグ: build_file_semanticseagerness_to_exitincompatible_change

--[no]strict_system_includes のデフォルト: 「false」

true の場合、システム インクルード パス(-isystem)で見つかったヘッダーも宣言する必要があります。

タグ: loading_and_analysiseagerness_to_exit

--target_environment=<a build target label> の複数の用途が蓄積される

このビルドのターゲット環境を宣言します。「環境」ルールへのラベル参照である必要があります。指定した場合、すべての最上位ターゲットはこの環境と互換性がある必要があります。

タグ: changes_inputs

ビルドの署名出力に影響するオプション:
--apk_signing_method=<v1, v2, v1_v2 or v4> デフォルト: "v1_v2"

APK の署名に使用する実装

タグ: action_command_linesaffects_outputsloading_and_analysis

--[no]device_debug_entitlements デフォルト: "true"

設定されていて、コンパイル モードが「opt」でない場合、objc アプリは署名時にデバッグ利用資格を含みます。

タグ: changes_inputs

--ios_signing_cert_name=<a string> デフォルト: 説明を参照

iOS 署名に使用する証明書名。設定されていない場合は、プロビジョニング プロファイルにフォールバックします。codesign の man ページ(SIGNING IDENTITIES)に記載されているように、証明書のキーチェーン ID の設定または証明書の共通名(サブストリング)の場合があります。

タグ: action_command_lines

このオプションは、Starlark 言語のセマンティクス、または BUILD ファイル、.bzl ファイル、WORKSPACE ファイルからアクセス可能なビルド API に影響します。
--[no]incompatible_disallow_sdk_frameworks_attributes のデフォルト: 「false」

true の場合、objc_library と objc_import で sdk_frameworks 属性と weak_sdk_frameworks 属性を許可しません。

タグ: build_file_semanticsincompatible_change

true の場合、objc_library と objc_import の alwayslink 属性のデフォルト値を true にします。

タグ: build_file_semanticsincompatible_change

--[no]incompatible_python_disallow_native_rules のデフォルト: 「false」

true の場合、組み込みの py_* ルールを使用するとエラーが発生します。代わりに rule_python ルールを使用する必要があります。詳細と移行手順については、https://github.com/bazelbuild/bazel/issues/17773 をご覧ください。

タグ: loading_and_analysisincompatible_change

テスト環境またはテストランナーの動作を制御するオプション:
--[no]allow_analysis_failures のデフォルト: 「false」

true の場合、ルール ターゲットの分析が失敗すると、ビルドの失敗ではなく、エラーの説明を含む AnalysisFailureInfo のインスタンスがターゲットに伝播されます。

タグ: loading_and_analysisexperimental

--analysis_testing_deps_limit=<an integer> のデフォルト: 「2000」

for_analysis_testing 構成の移行を含むルール属性を使用して、推移的依存関係の最大数を設定します。この上限を超えると、ルールエラーが発生します。

タグ: loading_and_analysis

--[no]break_build_on_parallel_dex2oat_failure のデフォルト: 「false」

true の場合、dex2oat アクションの失敗により、テスト実行時に dex2oat が実行されるのではなく、ビルドが中断されます。

タグ: loading_and_analysisexperimental

--default_test_resources=<a resource name followed by equal and 1 float or 4 float, e.g memory=10,30,60,100> の複数の用途が蓄積される

テストのデフォルトのリソース量をオーバーライドします。想定される形式は <resource>=<value> です。<value> として 1 つの正の数値を指定すると、すべてのテストサイズのデフォルトのリソースがオーバーライドされます。カンマ区切りの 4 つの数値を指定すると、それぞれ小、中、大、巨大なテストサイズの割り当て量がオーバーライドされます。値は HOST_RAM/HOST_CPU にすることもできます。オプションで [-|]<float> を続けることもできます(例: memory=HOST_RAM.1,HOST_RAM*.2,HOST_RAM*.3,HOST_RAM*.4)。このフラグで指定されたデフォルトのテストリソースは、タグで指定された明示的なリソースによってオーバーライドされます。

--[no]experimental_android_use_parallel_dex2oat のデフォルト: 「false」

android_test を高速化するために、dex2oat を並列で使用します。

タグ: loading_and_analysishost_machine_resource_optimizationsexperimental

--[no]ios_memleaks のデフォルト: 「false」

ios_test ターゲットでメモリリークのチェックを有効にします。

タグ: action_command_lines

--ios_simulator_device=<a string> デフォルト: 説明を参照

シミュレータで iOS アプリケーションを実行する際にシミュレートするデバイス(「iPhone 6」など)。デバイスのリストを取得するには、シミュレータを実行するマシンで「xcrun simctl list devicetypes」を実行します。

タグ: test_runner

--ios_simulator_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

実行またはテスト時にシミュレータで実行する iOS のバージョン。ルールでターゲット デバイスが指定されている場合、ios_test ルールでは無視されます。

タグ: test_runner

--runs_per_test=<a positive integer or test_regex@runs. This flag may be passed more than once> の複数の用途が蓄積される

各テストを実行する回数を指定します。これらの試行が何らかの理由で失敗した場合、テスト全体が失敗とみなされます。通常、指定する値は整数です。例: --runs_per_test=3 は、すべてのテストを 3 回実行します。別の構文: regex_filter@runs_per_test。ここで、runs_per_test は整数値、regex_filter は正規表現パターン(--instrumentation_filter も参照)のリストを表します。例: --runs_per_test=//foo/.,-//foo/bar/.@3 は、foo/bar の下にあるテストを除く //foo/のすべてのテストを 3 回実行します。このオプションは複数回渡すことができます。一致する引数のうち、最後に渡されたものが優先されます。一致するものがなければ、テストは 1 回だけ実行されます。

--test_env=<a 'name[=value]' assignment with an optional value part or the special syntax '=name' to unset a variable> の複数の用途が蓄積される

テストランナー環境に挿入する追加の環境変数を指定します。変数は <code>name</code> で指定できます。この場合、値は Bazel クライアント環境から読み取られます。また、<code>name=value</code> ペアで指定することもできます。以前に設定した変数は、<code>=name</code> で設定解除できます。このオプションは、複数の変数を指定するために複数回使用できます。「bazel test」コマンドでのみ使用されます。

タグ: test_runner

--test_timeout=<a single integer or comma-separated list of 4 integers> のデフォルト: 「-1」

テスト タイムアウトのデフォルトのテスト タイムアウト値(秒単位)をオーバーライドします。正の整数値を 1 つ指定すると、すべてのカテゴリがオーバーライドされます。カンマ区切りの 4 つの整数を指定すると、短時間、中時間、長時間、永続のタイムアウトが(この順序で)オーバーライドされます。どちらの形式でも、値 -1 は、そのカテゴリのデフォルトのタイムアウトを使用するように blaze に指示します。

--[no]zip_undeclared_test_outputs のデフォルト: 「false」

true の場合、未宣言のテスト出力は zip ファイルにアーカイブされます。

タグ: test_runner

ビルド時間の最適化をトリガーするオプション:
--[no]experimental_filter_library_jar_with_program_jar のデフォルト: 「false」

ProGuard ProgramJar をフィルタして、LibraryJar にも存在するクラスを削除します。

タグ: action_command_linesexperimental

--[no]experimental_inmemory_dotd_files デフォルト: "true"

有効にすると、C++ の .d ファイルはディスクに書き込まれるのではなく、リモート ビルドノードからメモリに直接渡されます。

タグ: loading_and_analysisexecutionaffects_outputsexperimental

--[no]experimental_inmemory_jdeps_files デフォルト: "true"

有効にすると、Java コンパイルから生成された依存関係(.jdeps)ファイルは、ディスクに書き込まれるのではなく、リモート ビルドノードからメモリに直接渡されます。

タグ: loading_and_analysisexecutionaffects_outputsexperimental

--[no]experimental_retain_test_configuration_across_testonly のデフォルト: 「false」

有効にすると、--trim_test_configuration は testonly=1 とマークされたルールのテスト構成をトリムしません。これは、テスト以外のルールが cc_test ルールに依存している場合に、アクションの競合の問題を軽減することを目的としています。--trim_test_configuration が false の場合、効果はありません。

タグ: loading_and_analysisloses_incremental_stateexperimental

--[no]experimental_unsupported_and_brittle_include_scanning のデフォルト: 「false」

入力ファイルから #include 行を解析して、C/C++ コンパイルの入力を絞り込むかどうか。これにより、コンパイル入力ツリーのサイズが縮小され、パフォーマンスと増分性が向上します。ただし、インクルード スキャナは C プリプロセッサのセマンティクスを完全に実装していないため、ビルドを中断する可能性もあります。特に、動的な #include ディレクティブを理解せず、プリプロセッサの条件付きロジックを無視します。ご自身の責任で操作するようお願いいたします。このフラグに関連する問題が報告された場合は、クローズされます。

タグ: loading_and_analysisexecutionchanges_inputsexperimental

--[no]incremental_dexing デフォルト: "true"

各 Jar ファイルの dexing のほとんどの作業を行います。

タグ: affects_outputsloading_and_analysisloses_incremental_state

--[no]objc_use_dotd_pruning デフォルト: "true"

設定すると、clang によって出力された .d ファイルが、objc コンパイルに渡される入力セットのプルーニングに使用されます。

タグ: changes_inputsloading_and_analysis

--[no]process_headers_in_dependencies のデフォルト: 「false」

ターゲット //a:a をビルドするときに、//a:a が依存するすべてのターゲットのヘッダーを処理します(ツールチェーンでヘッダー処理が有効になっている場合)。

タグ: execution

--[no]trim_test_configuration デフォルト: "true"

有効にすると、ビルドの最上位レベルより下のテスト関連オプションがクリアされます。このフラグが有効になっている場合、テストは非テストルールの依存関係としてビルドできませんが、テスト関連のオプションを変更しても非テストルールが再分析されることはありません。

タグ: loading_and_analysisloses_incremental_state

ロギングの冗長性、形式、場所に影響するオプション:
--toolchain_resolution_debug=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths> のデフォルト: "-.*"

ツールチェーンの解決中にデバッグ情報を出力します。このフラグは正規表現を受け取り、ツールチェーン タイプと特定のターゲットに対してチェックして、デバッグするものを確認します。複数の正規表現はカンマで区切ることができ、各正規表現は個別にチェックされます。注: このフラグの出力は非常に複雑であり、ツールチェーン解決の専門家にとってのみ有用である可能性があります。

タグ: terminal_output

--[no]verbose_visibility_errors のデフォルト: 「false」

有効にすると、可視性エラーに診断情報が追加されます。

タグ: build_file_semanticsnon_configurable

他のカテゴリに分類されない Bazel コマンドへの汎用入力を指定または変更するオプション:
--flag_alias=<a 'name=value' flag alias> の複数の用途が蓄積される

Starlark フラグの短縮名を設定します。引数として「<key>=<value>」の形式の Key-Value ペアを 1 つ取ります。

タグ: changes_inputsnon_configurable

--[no]incompatible_default_to_explicit_init_py のデフォルト: 「false」

このフラグは、デフォルトの動作を変更して、Python ターゲットの runfiles で init.py ファイルが自動的に作成されないようにします。具体的には、py_binary または py_test ターゲットの legacy_create_init が「auto」(デフォルト)に設定されている場合、このフラグが設定されている場合にのみ false として扱われます。https://github.com/bazelbuild/bazel/issues/10076 をご覧ください。

タグ: affects_outputsincompatible_change

その他のオプション(他のカテゴリに分類されないもの):
--[no]cache_test_results [-t] デフォルト: "auto"

「auto」に設定されている場合、Bazel は次の条件を満たす場合にのみテストを再実行します。(1)Bazel がテストまたはその依存関係の変更を検出した場合、(2)テストが外部としてマークされている場合、(3)--runs_per_test で複数のテスト実行がリクエストされた場合、(4)テストが以前に失敗した場合。[はい] に設定すると、Bazel は外部としてマークされたテストを除くすべてのテスト結果をキャッシュに保存します。「no」に設定すると、Bazel はテスト結果をキャッシュに保存しません。

--[no]experimental_cancel_concurrent_tests のデフォルト: 「never」

「on_failed」または「on_passed」の場合、Blaze はその結果で最初に実行されたテストで、同時に実行されているテストをキャンセルします。これは、--runs_per_test_detects_flakes と組み合わせて使用する場合にのみ有用です。

タグ: affects_outputsloading_and_analysisexperimental

--[no]experimental_fetch_all_coverage_outputs のデフォルト: 「false」

true の場合、Bazel はカバレッジ実行中に各テストのカバレッジ データ ディレクトリ全体を取得します。

タグ: affects_outputsloading_and_analysisexperimental

--[no]experimental_generate_llvm_lcov のデフォルト: 「false」

true の場合、clang のカバレッジで LCOV レポートが生成されます。

タグ: affects_outputsloading_and_analysisexperimental

--experimental_java_classpath=<off, javabuilder, bazel or bazel_no_fallback> デフォルト: "bazel"

Java コンパイルのクラスパスを削減します。

--[no]experimental_run_android_lint_on_java_rules のデフォルト: 「false」

java_* ソースを検証するかどうか。

タグ: affects_outputsexperimental

--[no]explicit_java_test_deps のデフォルト: 「false」

TestRunner の deps から誤って取得するのではなく、java_test で JUnit または Hamcrest への依存関係を明示的に指定します。現時点では bazel でのみ動作します。

--host_java_launcher=<a build target label> デフォルト: 説明を参照

ビルド中に実行されるツールで使用される Java ランチャー。

--host_javacopt=<a string> の複数の用途が蓄積される

ビルド中に実行されるツールをビルドするときに javac に渡す追加のオプション。

--host_jvmopt=<a string> の複数の用途が蓄積される

ビルド中に実行されるツールをビルドするときに Java VM に渡す追加のオプション。これらのオプションは、各 java_binary ターゲットの VM 起動オプションに追加されます。

--[no]incompatible_check_sharding_support デフォルト: "true"

true の場合、テスト ランナーが TEST_SHARD_STATUS_FILE のパスにあるファイルにタッチしてシャーディングをサポートしていることを示さないと、Bazel はシャーディングされたテストを失敗させます。false の場合、シャーディングをサポートしていないテストランナーでは、各シャードですべてのテストが実行されます。

タグ: incompatible_change

--[no]incompatible_exclusive_test_sandboxed デフォルト: "true"

true の場合、排他的テストはサンドボックス化された戦略で実行されます。ローカルで排他的なテスト実行を強制する「local」タグを追加

タグ: incompatible_change

--[no]incompatible_strict_action_env のデフォルト: 「false」

true の場合、Bazel は PATH に静的な値を持つ環境を使用し、LD_LIBRARY_PATH を継承しません。クライアントから特定の環境変数を継承する場合は、--action_env=ENV_VARIABLE を使用します。ただし、共有キャッシュが使用されている場合、この操作を行うとユーザー間のキャッシュ保存が妨げられる可能性があります。

タグ: loading_and_analysisincompatible_change

--j2objc_translation_flags=<comma-separated list of options> の複数の用途が蓄積される

J2ObjC ツールに渡す追加オプション。

--java_debug

Java テストの Java 仮想マシンが、テストを開始する前に JDWP 準拠のデバッガ(jdb など)からの接続を待機するようにします。-test_output=streamed を意味します。

展開すると次のようになります。
  --test_arg=--wrapper_script_flag=--debug
  --test_output=streamed
  --test_strategy=exclusive
  --test_timeout=9999
  --nocache_test_results

--[no]java_deps デフォルト: "true"

Java ターゲットごとに依存関係情報(現時点ではコンパイル時のクラスパス)を生成します。

--[no]java_header_compilation デフォルト: "true"

ソースから直接 ijar をコンパイルします。

--java_language_version=<a string> のデフォルト: ""

Java 言語のバージョン

--java_launcher=<a build target label> デフォルト: 説明を参照

Java バイナリのビルド時に使用する Java ランチャー。このフラグが空の文字列に設定されている場合、JDK ランチャーが使用されます。「launcher」属性はこのフラグをオーバーライドします。

--java_runtime_version=<a string> のデフォルト: 「local_jdk」

Java ランタイムのバージョン

--javacopt=<a string> の複数の用途が蓄積される

javac に渡す追加のオプション。

--jvmopt=<a string> の複数の用途が蓄積される

Java VM に渡す追加オプション。これらのオプションは、各 java_binary ターゲットの VM 起動オプションに追加されます。

--legacy_main_dex_list_generator=<a build target label> デフォルト: 説明を参照

旧式の multidex をコンパイルするときに、メイン DEX に含める必要があるクラスのリストを生成するために使用するバイナリを指定します。

--optimizing_dexer=<a build target label> デフォルト: 説明を参照

シャーディングなしで dexing を行うために使用するバイナリを指定します。

--plugin=<a build target label> の複数の用途が蓄積される

ビルドで使用するプラグイン。現在は java_plugin で動作します。

--proguard_top=<a build target label> デフォルト: 説明を参照

Java バイナリをビルドする際にコード削除に使用する ProGuard のバージョンを指定します。

--proto_compiler=<a build target label> デフォルト: "@bazel_tools//tools/proto:protoc"

proto-compiler のラベル。

タグ: affects_outputsloading_and_analysis

--[no]proto_profile デフォルト: "true"

profile_path を proto コンパイラに渡すかどうか。

タグ: affects_outputsloading_and_analysis

--proto_profile_path=<a build target label> デフォルト: 説明を参照

profile_path として proto コンパイラに渡すプロファイル。設定されていないが、--proto_profile が true(デフォルト)の場合、--fdo_optimize からパスを推測します。

タグ: affects_outputsloading_and_analysis

--proto_toolchain_for_cc=<a build target label> デフォルト: "@bazel_tools//tools/proto:cc_toolchain"

C++ proto のコンパイル方法を記述する proto_lang_toolchain() のラベル

タグ: affects_outputsloading_and_analysis

--proto_toolchain_for_j2objc=<a build target label> default: "@bazel_tools//tools/j2objc:j2objc_proto_toolchain"

j2objc プロトコルをコンパイルする方法を記述する proto_lang_toolchain() のラベル

タグ: affects_outputsloading_and_analysis

--proto_toolchain_for_java=<a build target label> デフォルト: "@bazel_tools//tools/proto:java_toolchain"

Java proto のコンパイル方法を記述する proto_lang_toolchain() のラベル

タグ: affects_outputsloading_and_analysis

--proto_toolchain_for_javalite=<a build target label> default: "@bazel_tools//tools/proto:javalite_toolchain"

JavaLite プロトコルをコンパイルする方法を記述する proto_lang_toolchain() のラベル

タグ: affects_outputsloading_and_analysis

--protocopt=<a string> の複数の用途が蓄積される

protobuf コンパイラに渡す追加オプション。

タグ: affects_outputs

--[no]runs_per_test_detects_flakes のデフォルト: 「false」

true の場合、少なくとも 1 つの実行/試行が成功し、少なくとも 1 つの実行/試行が失敗したシャードは FLAKY ステータスになります。

--shell_executable=<a path> デフォルト: 説明を参照

Bazel が使用するシェル実行可能ファイルへの絶対パス。これが設定されておらず、最初の Bazel 呼び出し(Bazel サーバーを起動する)で BAZEL_SH 環境変数が設定されている場合、Bazel はそれを使用します。どちらも設定されていない場合、Bazel は実行されているオペレーティング システムに応じてハードコードされたデフォルトのパスを使用します(Windows: c:/msys64/usr/bin/bash.exe、FreeBSD: /usr/local/bin/bash、その他すべて: /bin/bash)。bash と互換性のないシェルを使用すると、生成されたバイナリのビルドエラーやランタイム エラーが発生する可能性があります。

タグ: loading_and_analysis

--test_arg=<a string> の複数の用途が蓄積される

テスト実行ファイルに渡す追加のオプションと引数を指定します。複数回使用して、複数の引数を指定できます。複数のテストが実行される場合、各テストは同じ引数を受け取ります。「bazel test」コマンドでのみ使用されます。

--test_filter=<a string> デフォルト: 説明を参照

テスト フレームワークに転送するフィルタを指定します。実行するテストを制限するために使用されます。なお、これはビルドされるターゲットには影響しません。

--test_result_expiration=<an integer> のデフォルト: 「-1」

このオプションは非推奨であり、効果はありません。

--[no]test_runner_fail_fast のデフォルト: 「false」

テストランナーに fail fast オプションを転送します。テストランナーは、最初の失敗で実行を停止する必要があります。

--test_sharding_strategy=<explicit, disabled or forced=k where k is the number of shards to enforce> デフォルト: "explicit"

テスト シャーディングの戦略を指定します。shard_count ビルド属性が存在する場合にのみシャーディングを使用する場合は、explicit を指定します。テスト シャーディングを絶対に使用しない場合は「disabled」。'shard_count' ビルド属性に関係なく、テストに 'k' シャードを強制適用するには、'forced=k' を使用します。

--tool_java_language_version=<a string> のデフォルト: ""

ビルド中に必要なツールを実行するために使用される Java 言語のバージョン

--tool_java_runtime_version=<a string> デフォルト: "remotejdk_11"

ビルド中にツールを実行するために使用される Java ランタイム バージョン

--[no]use_ijars デフォルト: "true"

このオプションを有効にすると、Java コンパイルでインターフェース jar が使用されます。これにより、増分コンパイルが高速化されますが、エラー メッセージが異なる場合があります。

ビルド オプション

ビルド実行を制御するオプション:
--[no]allow_one_action_on_resource_unavailable デフォルト: "true"

設定されている場合、リソースが不足しているか使用できない場合でも、少なくとも 1 つのアクションを実行できます。

タグ: execution

--[no]check_up_to_date のデフォルト: 「false」

ビルドは実行せず、最新かどうかを確認するだけです。すべてのターゲットが最新の状態であれば、ビルドは正常に完了します。実行する必要があるステップがある場合は、エラーが報告され、ビルドが失敗します。

タグ: execution

--dynamic_local_execution_delay=<an integer> のデフォルト: 「1000」

ビルド中にリモート実行が少なくとも 1 回高速だった場合、ローカル実行を何ミリ秒遅延させる必要がありますか?

タグ: executionhost_machine_resource_optimizations

--dynamic_local_strategy=<a '[name=]value1[,..,valueN]' assignment> の複数の用途が蓄積される

指定されたニーモニックに使用するローカル戦略(順序付き)。最初に適用可能な戦略が使用されます。たとえば、worker,sandboxed は、ワーカー戦略を使用して永続ワーカーをサポートするアクションを実行し、サンドボックス戦略を使用して他のすべてのアクションを実行します。ニーモニックが指定されていない場合、戦略のリストはすべてのニーモニックのフォールバックとして使用されます。デフォルトのフォールバック リストは worker,sandboxed です。experimental_local_lockfree_output が設定されている場合は worker,sandboxed,standalone です。[mnemonic=]local_strategy[,local_strategy,...] を受け取ります。

タグ: executionhost_machine_resource_optimizations

--dynamic_remote_strategy=<a '[name=]value1[,..,valueN]' assignment> の複数の用途が蓄積される

指定されたニーモニックに使用するリモート戦略(順序付き)。最初に適用可能な戦略が使用されます。ニーモニックが指定されていない場合、戦略のリストはすべてのニーモニックのフォールバックとして使用されます。デフォルトのフォールバック リストは remote であるため、通常、このフラグを明示的に設定する必要はありません。[mnemonic=]remote_strategy[,remote_strategy,...] を受け取ります

タグ: executionhost_machine_resource_optimizations

--[no]experimental_async_execution のデフォルト: 「false」

true に設定すると、Bazel は仮想スレッドでアクションを実行できます。進行中のアクションの数は、--jobs で上限が設定されます。

タグ: host_machine_resource_optimizationsexecutionincompatible_change

--experimental_async_execution_max_concurrent_actions=<an integer> のデフォルト: 「5000」

非同期実行で実行する同時アクションの最大数。値が --jobs より小さい場合は、--jobs にクランプされます。

タグ: host_machine_resource_optimizationsexecution

--experimental_docker_image=<a string> のデフォルト: ""

docker 戦略を使用し、アクション自体にプラットフォームの説明の remote_execution_properties に container-image 属性がまだない場合に、サンドボックス化されたアクションの実行に使用する Docker イメージ名(「ubuntu:latest」など)を指定します。このフラグの値は「docker run」にそのまま渡されるため、Docker 自体と同じ構文とメカニズムがサポートされます。

タグ: execution

--[no]experimental_docker_use_customized_images デフォルト: "true"

有効にすると、現在のユーザーの uid と gid が Docker イメージに挿入されてから使用されます。ビルドやテストがコンテナ内の名前とホーム ディレクトリを持つユーザーに依存している場合は、これが必要です。この機能はデフォルトで有効になっていますが、自動画像カスタマイズ機能が機能しない場合や、この機能が不要であることがわかっている場合は、無効にできます。

タグ: execution

--[no]experimental_dynamic_exclude_tools デフォルト: "true"

設定すると、「ツール用」にビルドされたターゲットは動的実行の対象になりません。このようなターゲットは増分ビルドされる可能性が非常に低いため、ローカル サイクルを費やす価値はありません。

タグ: executionhost_machine_resource_optimizations

--experimental_dynamic_local_load_factor=<a double> のデフォルト: 「0」

動的実行からローカルマシンにどれだけの負荷をかけるかを制御します。このフラグは、動的実行で同時にスケジュールするアクションの数を調整します。これは、Blaze が使用可能と考える CPU の数に基づいており、--local_resources=cpu= フラグで制御できます。このフラグが 0 の場合、すべてのアクションはローカルですぐにスケジュールされます。0 より大きい場合、ローカルでスケジュールされたアクションの量は、使用可能な CPU の数によって制限されます。1 未満の場合、負荷係数は、スケジュールを待機しているアクションの数が多い場合に、ローカルでスケジュールされたアクションの数を減らすために使用されます。これにより、ローカルマシンがほとんど貢献しないクリーンビルドの場合に、ローカルマシンの負荷が軽減されます。

タグ: executionhost_machine_resource_optimizations

--experimental_dynamic_slow_remote_time=<An immutable length of time.> のデフォルト: 「0」

0 より大きい場合、リモート タイムアウトを回避するためにローカル実行を優先する前に、動的に実行されるアクションがリモートでのみ実行される必要がある時間。これにより、リモート実行システムで一部の問題が隠蔽される可能性があります。リモート実行の問題をモニタリングせずに、この機能をオンにしないでください。

タグ: executionhost_machine_resource_optimizations

--[no]experimental_enable_docker_sandbox のデフォルト: 「false」

Docker ベースのサンドボックスを有効にします。Docker がインストールされていない場合、このオプションは無効です。

タグ: execution

--[no]experimental_inmemory_sandbox_stashes のデフォルト: 「false」

true に設定すると、reuse_sandbox_directories のスタッシュされたサンドボックスの内容がメモリ内で追跡されます。これにより、再利用時に必要な I/O 量が削減されます。このフラグは、ビルドによっては実時間を短縮する可能性があります。ビルドによっては、このフラグで大量の追加メモリが使用される可能性があります。

タグ: host_machine_resource_optimizationsexecution

--experimental_sandbox_async_tree_delete_idle_threads=<an integer, or a keyword ("auto", "HOST_CPUS", "HOST_RAM"), optionally followed by an operation ([-|*]<float>) eg. "auto", "HOST_CPUS*.5"> のデフォルト: 「4」

0 の場合、アクションが完了するとすぐにサンドボックスが削除され、アクションの完了がブロックされます。0 より大きい場合、アクションの完了をブロックせずに、バックグラウンドで非同期的にサンドボックスが削除されます。非同期削除では、コマンドの実行中は単一のスレッドが使用されますが、サーバーがアイドル状態になると、このフラグの値と同じ数のスレッドに増加します。CPU の数と同じ数のスレッドを使用するには、auto に設定します。サーバーのシャットダウンは、保留中の非同期削除をブロックします。

タグ: host_machine_resource_optimizationsexecution

--experimental_sandbox_enforce_resources_regexp=<a valid Java regular expression> のデフォルト: ""

true の場合、ニーモニックが入力された正規表現と一致するアクションのリソース リクエストは、上限として適用されます。リソースタイプがサポートしている場合は、--experimental_sandbox_limits の値がオーバーライドされます。たとえば、cpu:3 と resources:memory:10 を宣言するテストは、最大 3 個の CPU と 10 メガバイトのメモリで実行されます。

タグ: execution

--experimental_sandbox_limits=<a named double, 'name=value', where value is an integer, or a keyword ("auto", "HOST_CPUS", "HOST_RAM"), optionally followed by an operation ([-|*]<float>) eg. "auto", "HOST_CPUS*.5"> の複数の用途が蓄積される

0 より大きい場合、各 Linux サンドボックスは、指定されたリソースに対して指定された量に制限されます。--incompatible_use_new_cgroup_implementation が必要で、--experimental_sandbox_memory_limit_mb をオーバーライドします。cgroups v1 または v2 と、ユーザーの cgroups ディレクトリに対する権限が必要です。

タグ: execution

--experimental_sandbox_memory_limit_mb=<an integer number of MBs, or "HOST_RAM", optionally followed by [-|*]<float>.> のデフォルト: 「0」

0 より大きい場合、各 Linux サンドボックスは指定されたメモリ量(MB 単位)に制限されます。cgroups v1 または v2 と、ユーザーの cgroups ディレクトリに対する権限が必要です。

タグ: execution

--[no]experimental_shrink_worker_pool のデフォルト: 「false」

有効にすると、ワーカーのメモリ負荷が高い場合にワーカープールを縮小できます。このフラグは、フラグ experimental_total_worker_memory_limit_mb が有効になっている場合にのみ機能します。

タグ: executionhost_machine_resource_optimizations

--experimental_total_worker_memory_limit_mb=<an integer number of MBs, or "HOST_RAM", optionally followed by [-|*]<float>.> のデフォルト: 「0」

この上限がゼロより大きい場合、すべてのワーカーのメモリ使用量の合計が上限を超えると、アイドル状態のワーカーが強制終了される可能性があります。

タグ: executionhost_machine_resource_optimizations

--[no]experimental_use_hermetic_linux_sandbox のデフォルト: 「false」

true に設定されている場合、ルートをマウントせず、sandbox_add_mount_pair で指定されたもののみをマウントします。入力ファイルは、サンドボックスからシンボリック リンクされるのではなく、サンドボックスにハードリンクされます。アクション入力ファイルがサンドボックスとは異なるファイル システムにある場合、入力ファイルはコピーされます。

タグ: execution

--[no]experimental_use_windows_sandbox のデフォルト: 「false」

Windows サンドボックスを使用してアクションを実行します。「yes」の場合、--experimental_windows_sandbox_path で指定されたバイナリは有効で、サポートされているバージョンの sandboxfs に対応している必要があります。「auto」の場合、バイナリがないか、互換性がない可能性があります。

タグ: execution

--experimental_windows_sandbox_path=<a string> デフォルト: "BazelSandbox.exe"

--experimental_use_windows_sandbox が true の場合に使用する Windows サンドボックス バイナリへのパス。名前が指定されていない場合は、PATH で見つかったその名前の最初のバイナリを使用します。

タグ: execution

--experimental_worker_allowlist=<comma-separated set of options> デフォルト: 説明を参照

空でない場合、指定されたワーカーキーのニーモニックを持つ永続ワーカーのみを使用できます。

タグ: executionhost_machine_resource_optimizations

--[no]experimental_worker_cancellation のデフォルト: 「false」

有効にすると、Bazel はサポートするワーカーにキャンセル リクエストを送信する場合があります。

タグ: execution

--experimental_worker_memory_limit_mb=<an integer number of MBs, or "HOST_RAM", optionally followed by [-|*]<float>.> のデフォルト: 「0」

この上限がゼロより大きい場合、ワーカーのメモリ使用量が上限を超えると、ワーカーが強制終了される可能性があります。動的実行と --experimental_dynamic_ignore_local_signals=9 を併用しない場合、ビルドがクラッシュする可能性があります。

タグ: executionhost_machine_resource_optimizations

--experimental_worker_metrics_poll_interval=<An immutable length of time.> デフォルト: "5s"

ワーカー指標の収集と、場合によっては削除の試行の間隔。パフォーマンス上の理由から、1 秒未満にすることはできません。

タグ: executionhost_machine_resource_optimizations

--[no]experimental_worker_multiplex_sandboxing のデフォルト: 「false」

有効にすると、実行要件が「supports-multiplex-sandboxing」のマルチプレックス ワーカーは、ワーク リクエストごとに個別のサンドボックス ディレクトリを使用して、サンドボックス環境で実行されます。このフラグに関係なく、実行要件のある多重化ワーカーは、動的実行戦略で実行されるときに常にサンドボックス化されます。

タグ: execution

--[no]experimental_worker_sandbox_hardening のデフォルト: 「false」

有効にすると、実装で許可されている場合、ワーカーは強化されたサンドボックスで実行されます。ハードニングが有効になっている場合、tmp ディレクトリはワーカーごとに異なります。

タグ: execution

--experimental_worker_sandbox_inmemory_tracking=<a string> の複数の用途が蓄積される

サンドボックス ディレクトリの内容がメモリ内で追跡されるワーカー鍵ニーモニック。これにより、メモリ使用量が増加する代わりにビルド パフォーマンスが向上する可能性があります。サンドボックス化されたワーカーにのみ影響します。異なるニーモニックに対して複数回指定できます。

タグ: execution

--[no]experimental_worker_strict_flagfiles のデフォルト: 「false」

有効にすると、ワーカーの仕様に準拠していないワーカーのアクション引数でエラーが発生します。ワーカー引数の引数リストの最後には、@flagfile 引数が 1 つだけ必要です。

タグ: execution

--genrule_strategy=<comma-separated list of options> のデフォルト: ""

genrule の実行方法を指定します。このフラグは段階的に廃止されます。代わりに、--spawn_strategy=<value> を使用してすべてのアクションを制御するか、--strategy=Genrule=<value> を使用して genrule のみを制御します。

タグ: execution

--[no]incompatible_use_new_cgroup_implementation デフォルト: "true"

true の場合、cgroup の新しい実装を使用します。以前の実装ではメモリ コントローラのみがサポートされ、--experimental_sandbox_limits の値は無視されます。

タグ: execution

--[no]internal_spawn_scheduler デフォルト: "true"

Blaze でスポーン スケジューラが有効になっているかどうかを判断できるようにするためのプレースホルダ オプション。

タグ: executionhost_machine_resource_optimizations

--jobs=<an integer, or a keyword ("auto", "HOST_CPUS", "HOST_RAM"), optionally followed by an operation ([-|*]<float>) eg. "auto", "HOST_CPUS*.5"> [-j] デフォルト: "auto"

実行する同時ジョブの数。整数またはキーワード(「auto」、「HOST_CPUS」、「HOST_RAM」)を受け取ります。必要に応じて、演算([-|]<float>)を続けることができます。例: 「auto」、「HOST_CPUS.5」。値は 1 ~ 5,000 の範囲で指定してください。2,500 を超える値はメモリの問題を引き起こす可能性があります。「auto」は、ホストリソースに基づいて妥当なデフォルトを計算します。

タグ: host_machine_resource_optimizationsexecution

--[no]keep_going [-k] デフォルト: "false"

エラーが発生した後も、できる限り続行します。失敗したターゲットとそれに依存するターゲットは分析できませんが、これらのターゲットの他の前提条件は分析できます。

タグ: eagerness_to_exit

--loading_phase_threads=<an integer, or a keyword ("auto", "HOST_CPUS", "HOST_RAM"), optionally followed by an operation ([-|*]<float>) eg. "auto", "HOST_CPUS*.5"> デフォルト: "auto"

読み込み/分析フェーズで使用する並列スレッドの数。整数またはキーワード(「auto」、「HOST_CPUS」、「HOST_RAM」)を受け取ります。必要に応じて、演算([-|]<float>)を続けることができます。例: 「auto」、「HOST_CPUS.5」。「auto」は、ホストリソースに基づいて適切なデフォルトを設定します。1 以上の値を設定してください。

タグ: bazel_internal_configuration

--[no]reuse_sandbox_directories デフォルト: "true"

true に設定すると、サンドボックス化された非ワーカー実行で使用されるディレクトリを再利用して、不要な設定費用を回避できます。

タグ: host_machine_resource_optimizationsexecution

--sandbox_base=<a string> のデフォルト: ""

サンドボックスがこのパスの下にサンドボックス ディレクトリを作成できるようにします。ビルドやテストに多数の入力ファイルがある場合、tmpfs のパス(/run/shm など)を指定すると、パフォーマンスが大幅に向上する可能性があります。注: アクションの実行によって生成された出力ファイルと中間ファイルを保持するには、tmpfs に十分な RAM と空き容量が必要です。

タグ: host_machine_resource_optimizationsexecution

--[no]sandbox_enable_loopback_device デフォルト: "true"

true の場合、ローカル アクション用に linux-sandbox ネットワーク Namespace にループバック デバイスが設定されます。

タグ: execution

--[no]sandbox_explicit_pseudoterminal のデフォルト: 「false」

サンドボックス化されたアクションの疑似ターミナルの作成を明示的に有効にします。一部の Linux ディストリビューションでは、擬似端末が機能するように、サンドボックス内でプロセスのグループ ID を「tty」に設定する必要があります。このフラグが問題の原因となっている場合は、このフラグを無効にして他のグループを使用できるようにします。

タグ: execution

--sandbox_tmpfs_path=<an absolute path> の複数の用途が蓄積される

サンドボックス化されたアクションの場合、この絶対パスに空の書き込み可能なディレクトリをマウントします(サンドボックス化の実装でサポートされている場合。それ以外の場合は無視されます)。

タグ: host_machine_resource_optimizationsexecution

--[no]skip_incompatible_explicit_targets のデフォルト: 「false」

コマンドラインで明示的に指定された互換性のないターゲットをスキップします。デフォルトでは、このようなターゲットをビルドするとエラーが発生しますが、このオプションを有効にすると、エラーは発生せずにスキップされます。参照: https://bazel.build/extending/platforms#skipping-incompatible-targets

タグ: loading_and_analysis

--spawn_strategy=<comma-separated list of options> のデフォルト: ""

スポーン アクションのデフォルトの実行方法を指定します。優先度の高い順に並べた戦略のカンマ区切りのリストを指定します。Bazel は、アクションごとに、そのアクションを実行できる優先度が最も高い戦略を選択します。デフォルト値は「remote,worker,sandboxed,local」です。詳しくは、https://blog.bazel.build/2019/06/19/list-strategy.html をご覧ください。

タグ: execution

--strategy=<a '[name=]value1[,..,valueN]' assignment> の複数の用途が蓄積される

他のスポーン アクションのコンパイルを分散する方法を指定します。優先度の高い順に並べた戦略のカンマ区切りのリストを指定します。Bazel は、アクションごとに、そのアクションを実行できる優先度が最も高い戦略を選択します。デフォルト値は「remote,worker,sandboxed,local」です。このフラグは、--spawn_strategy で設定された値(およびニーモニック Genrule で使用されている場合は --genrule_strategy)をオーバーライドします。詳しくは、https://blog.bazel.build/2019/06/19/list-strategy.html をご覧ください。

タグ: execution

--strategy_regexp=<a '<RegexFilter>=value[,value]' assignment> の複数の用途が蓄積される

特定の regex_filter に一致する説明を持つスポーン アクションの実行に使用するスポーン戦略をオーバーライドします。regex_filter の照合について詳しくは、--per_file_copt をご覧ください。説明に一致する最後の regex_filter が使用されます。このオプションは、戦略を指定する他のフラグをオーバーライドします。例: --strategy_regexp=//foo..cc,-//foo/bar=local は、説明が //foo..cc に一致し、//foo/bar に一致しないアクションを実行する際にローカル戦略を使用することを意味します。例: --strategy_regexp='Compiling.*/bar=local --strategy_regexp=Compiling=sandboxed は、'Compiling //foo/bar/baz' を 'local' 戦略で実行しますが、順序を逆にすると 'sandboxed' で実行します。

タグ: execution

--worker_extra_flag=<a 'name=value' assignment> の複数の用途が蓄積される

--persistent_worker に加えてワーカー プロセスに渡される追加のコマンドフラグ。ニーモニックをキーとして使用します(例: --worker_extra_flag=Javac=--debug)。

タグ: executionhost_machine_resource_optimizations

--worker_max_instances=<[name=]value, where value is an integer, or a keyword ("auto", "HOST_CPUS", "HOST_RAM"), optionally followed by an operation ([-|*]<float>) eg. "auto", "HOST_CPUS*.5"> の複数の用途が蓄積される

「ワーカー」戦略を使用する場合、各種類の永続ワーカーのインスタンスをいくつ起動できますか?[name=value] として指定して、ニーモニックごとに異なる値を指定できます。この上限はワーカーキーに基づいており、ワーカーキーはニーモニックだけでなく、起動フラグと環境に基づいて区別されます。そのため、このフラグで指定された数よりも多くのワーカーがニーモニックごとに存在する場合もあります。整数またはキーワード(「auto」、「HOST_CPUS」、「HOST_RAM」)を受け取ります。必要に応じて、演算([-|]<float>)を続けることができます。例: 「auto」、「HOST_CPUS.5」。「auto」は、マシンの容量に基づいて妥当なデフォルト値を計算します。「=value」は、指定されていないニーモニックのデフォルトを設定します。

タグ: executionhost_machine_resource_optimizations

--worker_max_multiplex_instances=<[name=]value, where value is an integer, or a keyword ("auto", "HOST_CPUS", "HOST_RAM"), optionally followed by an operation ([-|*]<float>) eg. "auto", "HOST_CPUS*.5"> の複数の用途が蓄積される

--worker_multiplex で「worker」戦略を使用する場合、多重化ワーカー プロセスが並行して受信できる WorkRequest の数。[name=value] として指定して、ニーモニックごとに異なる値を指定できます。この上限はワーカーキーに基づいており、ワーカーキーはニーモニックだけでなく、起動フラグと環境に基づいて区別されます。そのため、このフラグで指定された数よりも多くのワーカーがニーモニックごとに存在する場合もあります。整数またはキーワード(「auto」、「HOST_CPUS」、「HOST_RAM」)を受け取ります。必要に応じて、演算([-|]<float>)を続けることができます。例: 「auto」、「HOST_CPUS.5」。「auto」は、マシンの容量に基づいて妥当なデフォルト値を計算します。「=value」は、指定されていないニーモニックのデフォルトを設定します。

タグ: executionhost_machine_resource_optimizations

--[no]worker_multiplex デフォルト: "true"

有効にすると、ワーカーが多重化をサポートしている場合、ワーカーは多重化を使用します。

タグ: executionhost_machine_resource_optimizations

--[no]worker_quit_after_build のデフォルト: 「false」

有効にすると、ビルドが完了した後にすべてのワーカーが終了します。

タグ: executionhost_machine_resource_optimizations

--[no]worker_sandboxing のデフォルト: 「false」

有効にすると、シングルプレックス ワーカーはサンドボックス環境で実行されます。このフラグに関係なく、ダイナミック実行戦略で実行されている場合、Singleplex ワーカーは常にサンドボックス化されます。

タグ: execution

--[no]worker_verbose のデフォルト: 「false」

有効にすると、ワーカーの起動時やシャットダウン時などに詳細なメッセージが出力されます。

コマンドの出力を制御するオプション:
--[no]build デフォルト: "true"

ビルドを実行します。これは通常の動作です。--nobuild を指定すると、ビルド アクションの実行前にビルドが停止し、パッケージの読み込みと分析のフェーズが正常に完了した場合にゼロが返されます。このモードは、これらのフェーズのテストに役立ちます。

タグ: executionaffects_outputs

--[no]experimental_use_validation_aspect のデフォルト: 「false」

アスペクトを使用して検証アクションを実行するかどうか(テストとの並列処理用)。

タグ: executionaffects_outputs

--output_groups=<comma-separated list of options> の複数の用途が蓄積される

カンマ区切りの出力グループ名のリスト。各グループ名の先頭には、オプションで + または - を付けることができます。+ が付いたグループは出力グループのデフォルト セットに追加され、- が付いたグループはデフォルト セットから削除されます。1 つ以上のグループに接頭辞が付いていない場合、出力グループのデフォルト セットは省略されます。たとえば、--output_groups=+foo,+bar はデフォルト セット、foo、bar の和集合をビルドしますが、--output_groups=foo,bar はデフォルト セットをオーバーライドして foo と bar のみをビルドします。

タグ: executionaffects_outputs

--[no]run_validations デフォルト: "true"

ビルドの一部として検証アクションを実行するかどうか。https://bazel.build/extending/rules#validation_actions をご覧ください。

タグ: executionaffects_outputs

--serialized_frontier_profile=<a string> のデフォルト: ""

シリアル化されたフロンティア バイトのプロファイルをダンプします。出力パスを指定します。

タグ: bazel_monitoring

ユーザーが目的の出力を構成し、その存在ではなく値に影響を与えるオプション:
--aspects=<comma-separated list of options> の複数の用途が蓄積される

トップレベル ターゲットに適用するアスペクトのカンマ区切りのリスト。リスト内で、アスペクト some_aspect が required_aspect_providers を介して必須アスペクト プロバイダを指定している場合、some_aspect は、アスペクト リストでその前に言及されたすべてのアスペクトの後に実行されます。これらのアスペクトの広告プロバイダは、some_aspect の必須アスペクト プロバイダを満たしています。また、some_aspect は、requires 属性で指定されたすべての必須アスペクトの後に実行されます。これにより、some_aspect はこれらのアスペクトのプロバイダの値にアクセスできるようになります。<bzl-file-label>%<aspect_name>(例: '//tools:my_def.bzl%my_aspect')。ここで、'my_aspect' はファイル tools/my_def.bzl のトップレベルの値です。

--bep_maximum_open_remote_upload_files=<an integer> のデフォルト: 「-1」

BEP アーティファクトのアップロード中に許可される開いているファイルの最大数。

タグ: affects_outputs

このフラグは、便宜的なシンボリック リンク(ビルド後にワークスペースに表示されるシンボリック リンク)の管理方法を制御します。可能な値: normal(デフォルト): ビルドで決定されたとおりに、各種類のコンビニエンス シンボリック リンクが作成または削除されます。 clean: すべてのシンボリック リンクが無条件で削除されます。 ignore: シンボリック リンクは作成もクリーンアップもされません。 log_only: 「normal」が渡されたかのようにログメッセージを生成しますが、実際にはファイル システム オペレーションは実行しません(ツールに便利です)。--symlink_prefix の現在の値によって名前が生成されたシンボリック リンクのみが影響を受けます。接頭辞が変更された場合、既存のシンボリック リンクはそのまま残ります。

タグ: affects_outputs

このフラグは、build eventConvenienceSymlinksIdentified を BuildEventProtocol に投稿するかどうかを制御します。値が true の場合、BuildEventProtocol に convenienceSymlinksIdentified のエントリが追加され、ワークスペースで作成されたすべてのコンビニエンス シンボリック リンクが一覧表示されます。false の場合、BuildEventProtocol の convenienceSymlinksIdentified エントリは空になります。

タグ: affects_outputs

--remote_download_all

すべてのリモート出力をローカルマシンにダウンロードします。このフラグは --remote_download_outputs=all のエイリアスです。

展開すると次のようになります。
  --remote_download_outputs=all

タグ: affects_outputs

--remote_download_minimal

リモートビルドの出力をローカルマシンにダウンロードしません。このフラグは --remote_download_outputs=minimal のエイリアスです。

展開すると次のようになります。
  --remote_download_outputs=minimal

タグ: affects_outputs

--remote_download_outputs=<all, minimal or toplevel> デフォルト: "toplevel"

「minimal」に設定すると、ローカル アクションで必要なものを除き、リモートビルドの出力はローカルマシンにダウンロードされません。「toplevel」に設定すると、「minimal」と同様に動作しますが、最上位のターゲットの出力もローカルマシンにダウンロードします。どちらのオプションも、ネットワーク帯域幅がボトルネックになっている場合は、ビルド時間を大幅に短縮できます。

タグ: affects_outputs

リモートビルドの出力をローカルマシンにダウンロードする代わりに、シンボリック リンクを作成します。シンボリック リンクのターゲットは、テンプレート文字列の形式で指定できます。このテンプレート文字列には、それぞれオブジェクトのハッシュとサイズ(バイト単位)に展開される {hash} と {size_bytes} を含めることができます。たとえば、これらのシンボリック リンクは、CAS からオンデマンドでオブジェクトを読み込む FUSE ファイル システムを指す場合があります。

タグ: affects_outputs

--remote_download_toplevel

最上位のターゲットのリモート出力のみをローカルマシンにダウンロードします。このフラグは --remote_download_outputs=toplevel のエイリアスです。

展開すると次のようになります。
  --remote_download_outputs=toplevel

タグ: affects_outputs

ビルド後に作成される便利なシンボリック リンクの接頭辞。省略すると、デフォルト値はビルドツールの名前の後にハイフンが続いたものになります。「/」が渡された場合、シンボリック リンクは作成されず、警告も出力されません。警告: 「/」の特別な機能はまもなく非推奨になります。代わりに --experimental_convenience_symlinks=ignore を使用してください。

タグ: affects_outputs

Bazel が有効なビルド入力(ルール定義、フラグの組み合わせなど)を厳密に適用する方法に影響するオプション:
--[no]experimental_docker_privileged のデフォルト: 「false」

有効にすると、Bazel はアクションの実行時に --privileged フラグを 'docker run' に渡します。これはビルドで必要になる可能性がありますが、密閉性が低下する可能性もあります。

タグ: execution

オペレーションなし

タグ: host_machine_resource_optimizationsexecution

--sandbox_add_mount_pair=<a single path or a 'source:target' pair> の複数の用途が蓄積される

サンドボックスにマウントするパスペアを追加。

タグ: execution

--sandbox_block_path=<a string> の複数の用途が蓄積される

サンドボックス化されたアクションの場合、このパスへのアクセスを禁止します。

タグ: execution

--[no]sandbox_default_allow_network デフォルト: "true"

アクションのネットワーク アクセスをデフォルトで許可します。この機能は、すべてのサンドボックス実装で動作するとは限りません。

タグ: execution

--[no]sandbox_fake_hostname のデフォルト: 「false」

サンドボックス化されたアクションの現在のホスト名を「localhost」に変更します。

タグ: execution

--[no]sandbox_fake_username のデフォルト: 「false」

サンドボックス化されたアクションの現在のユーザー名を「nobody」に変更します。

タグ: execution

--sandbox_writable_path=<a string> の複数の用途が蓄積される

サンドボックス化されたアクションの場合、サンドボックス内の既存のディレクトリを書き込み可能にします(サンドボックス化の実装でサポートされている場合。サポートされていない場合は無視されます)。

タグ: execution

このオプションは、Starlark 言語のセマンティクス、または BUILD ファイル、.bzl ファイル、WORKSPACE ファイルからアクセス可能なビルド API に影響します。
--[no]incompatible_config_setting_private_default_visibility のデフォルト: 「false」

incompatible_enforce_config_setting_visibility=false の場合、これは noop です。それ以外の場合、このフラグが false の場合、明示的な公開設定属性のない config_setting は //visibility:public になります。このフラグが true の場合、config_setting は他のすべてのルールと同じ公開設定ロジックに従います。https://github.com/bazelbuild/bazel/issues/12933 をご覧ください。

タグ: loading_and_analysisincompatible_change

--[no]incompatible_enforce_config_setting_visibility デフォルト: "true"

true の場合、config_setting の公開設定の制限を適用します。false の場合、すべての config_setting がすべてのターゲットに表示されます。https://github.com/bazelbuild/bazel/issues/12932 をご覧ください。

タグ: loading_and_analysisincompatible_change

テスト環境またはテストランナーの動作を制御するオプション:
--[no]check_tests_up_to_date のデフォルト: 「false」

テストは実行せず、最新かどうかを確認するだけです。すべてのテスト結果が最新の場合、テストは正常に完了します。テストのビルドまたは実行が必要な場合、エラーが報告され、テストは失敗します。このオプションは、--check_up_to_date の動作を暗黙的に示します。

タグ: execution

--flaky_test_attempts=<a positive integer, the string "default", or test_regex@attempts. This flag may be passed more than once> の複数の用途が蓄積される

テストが失敗した場合、各テストは指定された回数まで再試行されます。合格に複数回の試行が必要だったテストは、テストの概要で「FLAKY」とマークされます。通常、指定される値は整数または文字列「default」です。整数の場合、すべてのテストが N 回まで実行されます。「default」の場合、通常のテストは 1 回のみ試行され、ルールで明示的に不安定とマークされたテスト(flaky=1 属性)は 3 回試行されます。代替構文: regex_filter@flaky_test_attempts。ここで、flaky_test_attempts は上記のとおりです。regex_filter は、正規表現パターン(--runs_per_test も参照)の包含リストと除外リストを表します。例: --flaky_test_attempts=//foo/.,-//foo/bar/.@3 は、foo/bar の下にあるテストを除く //foo/のすべてのテストを 3 回実行します。このオプションは複数回渡すことができます。一致する引数のうち、最後に渡されたものが優先されます。一致するものがない場合、上記の「default」と同じ動作になります。

タグ: execution

--local_test_jobs=<an integer, or a keyword ("auto", "HOST_CPUS", "HOST_RAM"), optionally followed by an operation ([-|*]<float>) eg. "auto", "HOST_CPUS*.5"> デフォルト: "auto"

同時に実行するローカル テストジョブの最大数。整数またはキーワード(「auto」、「HOST_CPUS」、「HOST_RAM」)を受け取ります。必要に応じて、演算([-|]<float>)を続けることができます。例: 「auto」、「HOST_CPUS.5」。0 は、ローカル リソースが同時に実行されるローカルテスト ジョブの数を制限することを意味します。これを --jobs の値より大きく設定しても効果はありません。

タグ: execution

--[no]test_keep_going デフォルト: "true"

無効にすると、合格しなかったテストがあると、ビルド全体が停止します。デフォルトでは、一部のテストが合格しなくても、すべてのテストが実行されます。

タグ: execution

--test_strategy=<a string> のデフォルト: ""

テストの実行時に使用する戦略を指定します。

タグ: execution

--test_tmpdir=<a path> デフォルト: 説明を参照

'bazel test' が使用するベースの一時ディレクトリを指定します。

ビルド時間の最適化をトリガーするオプション:
--cache_computed_file_digests=<a long integer> のデフォルト: 「50000」

0 より大きい場合、Bazel は、必要になるたびにディスクからダイジェストを再計算するのではなく、メタデータに基づいてファイル ダイジェストをメモリにキャッシュに保存するように構成されます。これを 0 に設定すると、すべてのファイル変更をファイル メタデータから記録できるわけではないため、正確性が確保されます。0 以外の場合、この数値はキャッシュに保存されるファイル ダイジェストの数としてキャッシュのサイズを示します。

--experimental_active_directories=<comma-separated list of options> のデフォルト: ""

Skyfocus とリモート分析キャッシュ用の Active Directory。ワークスペースのルートを基準とするパスをカンマ区切りで指定します。これはステートフル フラグです。1 つを定義すると、新しいセットで再定義されるまで、以降の呼び出しで保持されます。

タグ: host_machine_resource_optimizations

--[no]experimental_cpu_load_scheduling のデフォルト: 「false」

アクションを 1 つずつ推定するのではなく、CPU 負荷に基づく試験運用版のローカル実行スケジューリングを有効にします。試験的なスケジューリングでは、コア数の多い高性能マシンで大規模なローカルビルドを行う場合に大きなメリットがあることが示されています。--local_resources=cpu=HOST_CPUS で使用することをおすすめします

タグ: execution

--experimental_dynamic_ignore_local_signals=<a comma-separated list of signal numbers> デフォルト: 説明を参照

OS シグナル番号のリストを受け取ります。動的実行のローカル ブランチがこれらのシグナルのいずれかで強制終了された場合、代わりにリモート ブランチが終了できるようになります。永続ワーカーの場合、これはワーカー プロセスを強制終了するシグナルにのみ影響します。

タグ: execution

--[no]experimental_enable_skyfocus のデフォルト: 「false」

true の場合、--experimental_active_directories を使用して、増分ビルドの Bazel のメモリ フットプリントを削減します。この機能は「空フォーカス」と呼ばれます。

タグ: host_machine_resource_optimizations

--local_cpu_resources=<an integer, or "HOST_CPUS", optionally followed by [-|*]<float>.> デフォルト: 「HOST_CPUS」

ローカルで実行されるビルド アクションで使用する Bazel で利用可能なローカル CPU コアの合計数を明示的に設定します。整数または「HOST_CPUS」を受け取ります。オプションで [-|]<float> を続けることができます(例: HOST_CPUS.5(使用可能な CPU コアの半分を使用する場合)。デフォルトでは、Bazel はシステム構成をクエリして、使用可能な CPU コア数を推定します。

タグ: host_machine_resource_optimizations

--local_extra_resources=<a named float, 'name=value'> の複数の用途が蓄積される

Bazel で使用できる追加リソースの数を設定します。文字列と浮動小数点数のペアを受け取ります。複数回使用して、複数のタイプの追加リソースを指定できます。Bazel は、使用可能な追加リソースと必要な追加リソースに基づいて、同時に実行されるアクションを制限します。テストでは、「resources:<resoucename>:<amount>」形式のタグを使用して、必要な追加リソースの量を宣言できます。このフラグでは、使用可能な CPU、RAM、リソースを設定できません。

タグ: host_machine_resource_optimizations

--local_ram_resources=<an integer number of MBs, or "HOST_RAM", optionally followed by [-|*]<float>.> デフォルト: 「HOST_RAM*.67」

ローカルで実行されるビルド アクションで使用できるローカルホストの RAM の合計量(MB 単位)を Bazel に明示的に設定します。整数または「HOST_RAM」を受け取ります。オプションで [-|]<float> を続けることができます(例: HOST_RAM.5(使用可能な RAM の半分を使用する場合)。デフォルトでは、("HOST_RAM*.67")、Bazel はシステム構成をクエリして使用可能な RAM の量を推定し、その 67% を使用します。

タグ: host_machine_resource_optimizations

--local_resources=<a named double, 'name=value', where value is an integer, or a keyword ("auto", "HOST_CPUS", "HOST_RAM"), optionally followed by an operation ([-|*]<float>) eg. "auto", "HOST_CPUS*.5"> の複数の用途が蓄積される

Bazel で使用できるリソースの数を設定します。float または HOST_RAM/HOST_CPUS への割り当てを受け取ります。オプションで [-|]<float> が続きます(例: memory=HOST_RAM.5 は、使用可能な RAM の半分を使用します)。複数回使用して、複数のタイプのリソースを指定できます。Bazel は、利用可能なリソースと必要なリソースに基づいて、同時に実行されるアクションを制限します。テストは、「resources:<resource name>:<amount>」形式のタグを使用して、必要なリソースの量を宣言できます。--local_{cpu|ram|extra}_resources で指定されたリソースをオーバーライドします。

タグ: host_machine_resource_optimizations

ロギングの冗長性、形式、場所に影響するオプション:
--build_event_upload_max_retries=<an integer> のデフォルト: 「4」

Bazel がビルドイベントのアップロードを再試行する最大回数。

タグ: bazel_internal_configuration

--[no]debug_spawn_scheduler のデフォルト: 「false」
--[no]experimental_bep_target_summary のデフォルト: 「false」

TargetSummary イベントを公開するかどうか。

--[no]experimental_build_event_expand_filesets のデフォルト: 「false」

true の場合、出力ファイルを表示するときに BEP でファイルセットを展開します。

タグ: affects_outputs

--experimental_build_event_output_group_mode=<an output group name followed by an OutputGroupFileMode, e.g. default=both> の複数の用途が蓄積される

出力グループのファイルが TargetComplete/AspectComplete BEP イベントでどのように表されるかを指定します。値は、出力グループ名を「NAMED_SET_OF_FILES_ONLY」、「INLINE_ONLY」、「BOTH」のいずれかに割り当てたものです。デフォルト値は 'NAMED_SET_OF_FILES_ONLY' です。出力グループが繰り返される場合は、最後に表示される値が使用されます。デフォルト値は、カバレッジ アーティファクトのモードを BOTH に設定します。--experimental_build_event_output_group_mode=baseline.lcov=both

タグ: affects_outputs

--experimental_build_event_upload_retry_minimum_delay=<An immutable length of time.> のデフォルト: 「1 秒」

BEP アップロードが失敗した場合の指数バックオフ再試行の初期最小遅延。(指数: 1.6)

タグ: bazel_internal_configuration

--experimental_build_event_upload_strategy=<a string> デフォルト: 説明を参照

ビルドイベント プロトコルで参照されるアーティファクトのアップロード方法を選択します。Bazel では、有効なオプションは「local」と「remote」です。デフォルト値は「local」です。

タグ: affects_outputs

--[no]experimental_docker_verbose のデフォルト: 「false」

有効にすると、Bazel は Docker サンドボックス戦略に関する詳細なメッセージを出力します。

タグ: execution

--experimental_frontier_violation_check=<strict, warn or disabled_for_testing> デフォルト: 「strict」

フロンティア(アクティブ ディレクトリ外)の変更による潜在的な誤りを処理する戦略

タグ: eagerness_to_exit

--[no]experimental_frontier_violation_verbose のデフォルト: 「false」

true の場合、Bazel は Skycache の違反を修正する手順を出力します。

タグ: terminal_output

--[no]experimental_materialize_param_files_directly のデフォルト: 「false」

パラメータ ファイルをマテリアライズする場合は、ディスクに直接書き込みます。

タグ: execution

--[no]experimental_run_bep_event_include_residue のデフォルト: 「false」

コマンドラインの残余物を含む可能性のある実行ビルド イベントに、コマンドラインの残余物を含めるかどうか。デフォルトでは、残余物は、残余物を含む可能性のある実行コマンド ビルドイベントに含まれません。

タグ: affects_outputs

--experimental_skyfocus_dump_keys=<none, count or verbose> のデフォルト: 「none」

Skyfocus のデバッグ用。フォーカスされた SkyKey(ルート、リーフ、フォーカスされた依存関係、フォーカスされた逆依存関係)をダンプします。

タグ: terminal_output

--[no]experimental_skyfocus_dump_post_gc_stats のデフォルト: 「false」

Skyfocus のデバッグ用。有効にすると、フォーカス前後に手動 GC をトリガーして、ヒープサイズの削減を報告します。これにより、Skyfocus のレイテンシが増加します。

タグ: terminal_output

--[no]experimental_stream_log_file_uploads のデフォルト: 「false」

ログファイルのアップロードをディスクに書き込むのではなく、リモート ストレージに直接ストリーミングします。

タグ: affects_outputs

--explain=<a path> デフォルト: 説明を参照

ビルドの実行された各ステップをビルドシステムで説明します。説明は、指定されたログファイルに書き込まれます。

タグ: affects_outputs

--[no]ignore_unsupported_sandboxing のデフォルト: 「false」

このシステムでサンドボックス実行がサポートされていない場合、警告を出力しない。

タグ: terminal_output

--[no]legacy_important_outputs のデフォルト: 「false」

これは、TargetComplete イベントで以前の important_outputs フィールドの生成を抑制するために使用します。important_outputs は、Bazel から ResultStore/BTX への統合に必要です。

タグ: affects_outputs

--[no]materialize_param_files のデフォルト: 「false」

リモート アクションの実行やキャッシュ保存を使用している場合でも、中間パラメータ ファイルを出力ツリーに書き込みます。アクションのデバッグに役立ちます。これは、--subcommands と --verbose_failures で暗黙的に指定されます。

タグ: execution

--max_config_changes_to_show=<an integer> のデフォルト: 「3」

ビルド オプションの変更により分析キャッシュを破棄するときに、指定された数の変更されたオプション名を表示します。指定された数値が -1 の場合、変更されたすべてのオプションが表示されます。

タグ: terminal_output

--max_test_output_bytes=<an integer> のデフォルト: 「-1」

--test_output が「errors」または「all」の場合に生成できるテストログの最大サイズを指定します。テスト出力が過度にノイズを含んでいて、出力が過剰になるのを防ぐのに役立ちます。テスト ヘッダーはログサイズに含まれます。負の値は上限がないことを意味します。出力はすべてかゼロかです。

タグ: test_runnerterminal_outputexecution

--output_filter=<a valid Java regular expression> デフォルト: 説明を参照

指定された正規表現に一致する名前のルールに関する警告とアクションの出力のみを表示します。

タグ: affects_outputs

--progress_report_interval=<an integer in 0-3600 range> のデフォルト: 「0」

実行中のジョブに関するレポートの間隔(秒単位)。デフォルト値の 0 は、最初のレポートが 10 秒後に印刷され、次に 30 秒後に印刷され、その後は 1 分ごとに進捗状況がレポートされることを意味します。--curses が有効になっている場合、進行状況は 1 秒ごとに報告されます。

タグ: affects_outputs

--remote_analysis_json_log=<a string> デフォルト: 説明を参照

設定されている場合、リモート分析のキャッシュ保存の動作の詳細なログを含む JSON ファイルがこの場所に書き込まれます。現在の作業ディレクトリを基準とする相対パスとして解釈されます。

タグ: bazel_monitoring

--remote_print_execution_messages=<failure, success or all> のデフォルト: 「failure」

リモート実行メッセージを印刷するタイミングを選択します。有効な値は、失敗時のみ出力する failure、成功時のみ出力する success、常に出力する all です。

タグ: terminal_output

--[no]sandbox_debug のデフォルト: 「false」

サンドボックス機能のデバッグ機能を有効にします。これには、ビルド後にサンドボックスのルート コンテンツが変更されないことと、実行時に追加のデバッグ情報が出力されることの 2 つが含まれます。これは、入力ファイルが欠落しているなどの原因で発生した障害をデバッグする際に、Bazel または Starlark ルールのデベロッパーに役立ちます。

タグ: terminal_output

--show_result=<an integer> のデフォルト: 「1」

ビルドの結果を表示します。ターゲットごとに、最新の状態になったかどうか、なった場合はビルドされた出力ファイルのリストを示します。出力されたファイルは、シェルにコピーして実行するのに便利な文字列です。このオプションには整数引数が必要です。これは、結果情報が出力されないターゲットのしきい値です。したがって、ゼロを指定するとメッセージが抑制され、MAX_INT を指定すると結果が常に印刷されます。デフォルトは 1 です。ターゲットに対して何もビルドされなかった場合、出力をしきい値以下に保つために、結果が省略されることがあります。

タグ: affects_outputs

--[no]subcommands [-s] デフォルト: "false"

ビルド中に実行されたサブコマンドを表示します。関連するフラグ: --execution_log_json_file、--execution_log_binary_file(ツールフレンドリーな形式でサブコマンドをファイルにロギングする場合)。

タグ: terminal_output

--test_output=<summary, errors, all or streamed> のデフォルト: 「summary」

必要な出力モードを指定します。有効な値は、テスト ステータスの概要のみを出力する「summary」、失敗したテストのテストログも出力する「errors」、すべてのテストのログを出力する「all」、すべてのテストのログをリアルタイムで出力する「streamed」です(これにより、--test_strategy の値に関係なく、テストがローカルで 1 つずつ実行されます)。

タグ: test_runnerterminal_outputexecution

--test_summary=<short, terse, detailed, none or testcase> のデフォルト: 「short」

テストの概要の形式を指定します。有効な値は、実行されたテストに関する情報のみを出力する「short」、実行されたテストのうち失敗したテストに関する情報のみを出力する「terse」、失敗したテストケースに関する詳細情報を出力する「detailed」、テストケースの解決策の概要を出力し、失敗したテストケースに関する詳細情報を出力しない「testcase」、概要を省略する「none」です。

タグ: terminal_output

--[no]verbose_failures のデフォルト: 「false」

コマンドが失敗した場合は、コマンドライン全体を出力します。

タグ: terminal_output

他のカテゴリに分類されない Bazel コマンドへの汎用入力を指定または変更するオプション:
--aspects_parameters=<a 'name=value' assignment> の複数の用途が蓄積される

コマンドライン アスペクト パラメータの値を指定します。各パラメータ値は <param_name>=<param_value> で指定します。たとえば、'my_param=my_val' の場合、'my_param' は --aspects リストのいずれかのアスペクトのパラメータ、またはリスト内のアスペクトで必要なパラメータです。このオプションは複数回使用できます。ただし、同じパラメータに複数の値を割り当てることはできません。

タグ: loading_and_analysis

--target_pattern_file=<a string> のデフォルト: ""

設定すると、ビルドはコマンドラインではなく、ここで指定された名前のファイルからパターンを読み取ります。ここでファイルとコマンドライン パターンを指定するとエラーになります。

タグ: changes_inputs

リモート キャッシュ保存と実行のオプション:
--experimental_circuit_breaker_strategy=<failure> デフォルト: 説明を参照

サーキット ブレーカーで使用する戦略を指定します。使用可能な戦略は「failure」です。オプションの値が無効な場合、オプションが設定されていない場合と同じ動作になります。

タグ: execution

--experimental_remote_cache_compression_threshold=<an integer> のデフォルト: 「100」

zstd で圧縮/解凍するために必要な最小 BLOB サイズ。--remote_cache_compression が設定されていない限り、効果はありません。

--experimental_remote_cache_eviction_retries=<an integer> のデフォルト: 「5」

ビルドで一時的なリモート キャッシュ エラーが発生し、ビルドが失敗する可能性がある場合に再試行する最大回数。たとえば、アーティファクトがリモート キャッシュから削除された場合や、特定のキャッシュ障害が発生した場合に適用されます。試行ごとに新しい呼び出し ID が生成されます。

タグ: execution

--[no]experimental_remote_cache_lease_extension のデフォルト: 「false」

true に設定すると、Bazel はビルド中にリモート アクションの出力のリースを延長します。これを行うには、FindMissingBlobs 呼び出しをリモート キャッシュに定期的に送信します。頻度は --experimental_remote_cache_ttl の値に基づきます。

--experimental_remote_cache_ttl=<An immutable length of time.> のデフォルト: 「3h」

ダイジェストが最近参照された後(ActionResult や FindMissingBlobs など)、リモート キャッシュ内の BLOB の保証された最小 TTL。Bazel は、BLOB の TTL に基づいていくつかの最適化を行います(増分ビルドで GetActionResult を繰り返し呼び出さないなど)。サーバーがダイジェストを返してから Bazel がダイジェストを受け取るまでの間にギャップがあるため、値は実際の TTL より少し小さく設定する必要があります。

タグ: execution

--experimental_remote_capture_corrupted_outputs=<a path> デフォルト: 説明を参照

破損した出力がキャプチャされるディレクトリのパス。

--[no]experimental_remote_discard_merkle_trees デフォルト: "true"

true に設定すると、GetActionResult() と Execute() の呼び出し時に、入力ルートの Merkle ツリーと関連する入力マッピングのメモリ内コピーが破棄されます。これにより、メモリ使用量が大幅に削減されますが、リモート キャッシュのミスと再試行時に Bazel が再計算する必要があります。

--experimental_remote_downloader=<a string> デフォルト: 説明を参照

リモート ダウンロード プロキシとして使用されるリモート アセット API エンドポイント URI。サポートされているスキーマは、grpc、grpcs(TLS が有効な grpc)、unix(ローカル UNIX ソケット)です。スキーマが指定されていない場合、Bazel はデフォルトで grpcs を使用します。https://github.com/bazelbuild/remote-apis/blob/master/build/bazel/remote/asset/v1/remote_asset.proto をご覧ください。

--[no]experimental_remote_downloader_local_fallback のデフォルト: 「false」

リモート ダウンローダーが失敗した場合にローカル ダウンローダーにフォールバックするかどうか。

--[no]experimental_remote_downloader_propagate_credentials のデフォルト: 「false」

netrc と認証情報ヘルパーからリモート ダウンローダー サーバーに認証情報を伝播するかどうか。サーバー実装では、新しい http_header_url:&lt;url-index&gt;:&lt;header-key&gt; 修飾子をサポートする必要があります。ここで、&lt;url-index&gt; は FetchBlobRequest の uris フィールド内の URL の 0 ベースの位置です。URL 固有のヘッダーは、グローバル ヘッダーよりも優先されます。

--[no]experimental_remote_execution_keepalive のデフォルト: 「false」

リモート実行呼び出しにキープアライブを使用するかどうか。

--experimental_remote_failure_rate_threshold=<an integer in 0-100 range> のデフォルト: 「10」

特定の期間に許容される失敗率をパーセンテージで設定します。この期間が経過すると、リモート キャッシュ/エグゼキュータへの呼び出しが停止します。デフォルト値は 10 です。0 に設定すると、制限がなくなります。

タグ: execution

--experimental_remote_failure_window_interval=<An immutable length of time.> のデフォルト: 「60s」

リモート リクエストの失敗率が計算される間隔。値がゼロまたは負の場合、失敗期間は実行の全期間として計算されます。使用できる単位は、日(d)、時間(h)、分(m)、秒(s)、ミリ秒(ms)です。単位を省略すると、値は秒として解釈されます。

タグ: execution

--[no]experimental_remote_mark_tool_inputs のデフォルト: 「false」

true に設定すると、Bazel は入力をリモート エグゼキュータのツール入力としてマークします。これを使用して、リモートの永続ワーカーを実装できます。

--[no]experimental_remote_merkle_tree_cache のデフォルト: 「false」

true に設定すると、リモート キャッシュ ヒットのチェック速度を向上させるために、マークルツリーの計算がメモ化されます。キャッシュのメモリ フットプリントは、--experimental_remote_merkle_tree_cache_size によって制御されます。

--experimental_remote_merkle_tree_cache_size=<a long integer> のデフォルト: 「1000」

リモート キャッシュ ヒットのチェック速度を向上させるためにメモ化する Merkle ツリーの数。キャッシュは Java のソフト参照の処理に従って自動的にプルーニングされますが、設定が高すぎるとメモリ不足エラーが発生する可能性があります。0 に設定すると、キャッシュ サイズは無制限になります。最適な値はプロジェクトのサイズによって異なります。デフォルトは 1000 です。

--experimental_remote_output_service=<a string> デフォルト: 説明を参照

リモート出力サービス エンドポイントの HOST または HOST:PORT。サポートされているスキーマは、grpc、grpcs(TLS が有効な grpc)、unix(ローカル UNIX ソケット)です。スキーマが指定されていない場合、Bazel はデフォルトで grpcs を使用します。TLS を無効にするには、grpc:// または unix: スキーマを指定します。

--experimental_remote_output_service_output_path_prefix=<a string> のデフォルト: ""

--experimental_remote_output_service によって管理される出力ディレクトリのコンテンツが配置されるパス。ビルドで使用される実際の出力ディレクトリは、このパスの子孫であり、出力サービスによって決定されます。

--[no]experimental_remote_require_cached のデフォルト: 「false」

true に設定すると、リモートで実行できるすべてのアクションがキャッシュに保存されるように強制します。保存されない場合はビルドが失敗します。これは、キャッシュに保存されるべきアクションが実際にキャッシュに保存されているかどうかを、新しい結果をキャッシュに誤って挿入することなく確認できるため、非決定論の問題のトラブルシューティングに役立ちます。

--experimental_remote_scrubbing_config=<Converts to a Scrubber> デフォルト: 説明を参照

指定された構成ファイルを使用してリモート キャッシュキーのスクラビングを有効にします。構成ファイルはテキスト形式のプロトコル バッファである必要があります(src/main/protobuf/remote_scrubbing.proto を参照)。

この機能は、異なるプラットフォームで実行されるが同じプラットフォームをターゲットとするアクション間で、リモート/ディスク キャッシュを共有しやすくすることを目的としています。不適切な設定を行うと、キャッシュ エントリが誤って共有され、ビルドが正しく行われない可能性があるため、慎重に使用する必要があります。

スクラブはアクションの実行方法には影響しません。アクションの結果を取得または保存する目的で、リモート キャッシュキーまたはディスク キャッシュキーがどのように計算されるかにのみ影響します。スクラブされたアクションはリモート実行と互換性がないため、常にローカルで実行されます。

スクラビング構成を変更しても、ローカル ファイル システムまたは内部キャッシュに存在する出力は無効になりません。影響を受けるアクションを再実行するには、クリーンビルドが必要です。

この機能を正常に使用するには、--experimental_platform_in_output_dir(出力接頭辞を正規化するため)と --incompatible_strict_action_env(環境変数を正規化するため)とともにカスタム --host_platform を設定することをおすすめします。

--[no]guard_against_concurrent_changes のデフォルト: "lite"

これを「full」に設定すると、アクションのすべての入力ファイルの ctime をチェックしてから、リモート キャッシュにアップロードできます。Linux カーネルがファイルの書き込みを遅延させ、誤検出が発生する場合があります。デフォルトは「lite」で、メイン リポジトリのソースファイルのみをチェックします。これを「off」に設定すると、すべてのチェックが無効になります。入力としてソースファイルを使用するアクションの実行中にソースファイルが変更されると、キャッシュが汚染される可能性があるため、おすすめしません。

タグ: execution

--[no]remote_accept_cached デフォルト: "true"

リモート キャッシュに保存されたアクションの結果を受け入れるかどうか。

--remote_build_event_upload=<all or minimal> のデフォルト: "minimal"

「all」に設定すると、BEP で参照されるすべてのローカル出力がリモート キャッシュにアップロードされます。「minimal」に設定すると、BEP で参照されるローカル出力は、BEP のコンシューマーにとって重要なファイル(テストログやタイミング プロファイルなど)を除き、リモート キャッシュにアップロードされません。bytestream:// スキーマは、ファイルがリモート キャッシュにない場合でも、ファイルの URI に常に使用されます。デフォルトは「minimal」です。

--remote_bytestream_uri_prefix=<a string> デフォルト: 説明を参照

ビルド イベント ストリームに書き込まれる bytestream:// URI で使用されるホスト名とインスタンス名。このオプションは、プロキシを使用してビルドを実行するときに設定できます。これにより、--remote_executor と --remote_instance_name の値がリモート実行サービスの正規名に対応しなくなります。設定しない場合、デフォルトで「${hostname}/${instance_name}」になります。

--remote_cache=<a string> デフォルト: 説明を参照

キャッシュ保存エンドポイントの URI。サポートされているスキーマは、http、https、grpc、grpcs(TLS が有効な grpc)、unix(ローカル UNIX ソケット)です。スキーマが指定されていない場合、Bazel はデフォルトで grpcs を使用します。TLS を無効にするには、grpc://、http://、unix: スキーマを指定します。https://bazel.build/remote/caching をご覧ください。

--[no]remote_cache_async デフォルト: "true"

true の場合、アクションの結果のディスクまたはリモート キャッシュへのアップロードは、アクションの完了をブロックするのではなく、バックグラウンドで行われます。一部のアクションはバックグラウンド アップロードと互換性がないため、このフラグが設定されていてもブロックされることがあります。

--[no]remote_cache_compression のデフォルト: 「false」

有効にすると、サイズが --experimental_remote_cache_compression_threshold 以上の場合に、zstd でキャッシュ BLOB を圧縮/解凍します。

--remote_cache_header=<a 'name=value' assignment> の複数の用途が蓄積される

キャッシュ リクエストに含めるヘッダーを指定します(--remote_cache_header=Name=Value)。フラグを複数回指定することで、複数のヘッダーを渡すことができます。同じ名前の複数の値は、カンマ区切りのリストに変換されます。

--remote_default_exec_properties=<a 'name=value' assignment> の複数の用途が蓄積される

実行プラットフォームで exec_properties がまだ設定されていない場合に、リモート実行プラットフォームとして使用されるデフォルトの exec プロパティを設定します。

タグ: affects_outputs

--remote_default_platform_properties=<a string> のデフォルト: ""

実行プラットフォームで remote_execution_properties が設定されていない場合に、リモート実行 API に設定するデフォルトのプラットフォーム プロパティを設定します。この値は、リモート実行の実行プラットフォームとしてホスト プラットフォームが選択されている場合にも使用されます。

--remote_download_regex=<a valid Java regular expression> の複数の用途が蓄積される

--remote_download_outputs に関係なく、パスがこのパターンに一致するリモートビルドの出力を強制的にダウンロードします。このフラグを繰り返すことで、複数のパターンを指定できます。

タグ: affects_outputs

--remote_downloader_header=<a 'name=value' assignment> の複数の用途が蓄積される

リモート ダウンローダー リクエストに含めるヘッダーを指定します(--remote_downloader_header=Name=Value)。フラグを複数回指定することで、複数のヘッダーを渡すことができます。同じ名前の複数の値は、カンマ区切りのリストに変換されます。

--remote_exec_header=<a 'name=value' assignment> の複数の用途が蓄積される

実行リクエストに含めるヘッダーを指定します(--remote_exec_header=Name=Value)。フラグを複数回指定することで、複数のヘッダーを渡すことができます。同じ名前の複数の値は、カンマ区切りのリストに変換されます。

--remote_execution_priority=<an integer> のデフォルト: 「0」

リモートで実行されるアクションの相対的な優先度。特定の優先度の値の意味はサーバーによって異なります。

--remote_executor=<a string> デフォルト: 説明を参照

リモート実行エンドポイントの HOST または HOST:PORT。サポートされているスキーマは、grpc、grpcs(TLS が有効な grpc)、unix(ローカル UNIX ソケット)です。スキーマが指定されていない場合、Bazel はデフォルトで grpcs を使用します。TLS を無効にするには、grpc:// または unix: スキーマを指定します。

--remote_grpc_log=<a path> デフォルト: 説明を参照

指定した場合、gRPC 呼び出し関連の詳細をログに記録するファイルへのパス。このログは、一連のシリアル化された com.google.devtools.build.lib.remote.logging.RemoteExecutionLog.LogEntry protobuf で構成されています。各メッセージには、メソッド LogEntry.writeDelimitedTo(OutputStream) によって実行されるように、次のシリアル化された protobuf メッセージのサイズを示す varint が接頭辞として付加されています。

--remote_header=<a 'name=value' assignment> の複数の用途が蓄積される

リクエストに含めるヘッダーを指定します(--remote_header=Name=Value)。フラグを複数回指定することで、複数のヘッダーを渡すことができます。同じ名前の複数の値は、カンマ区切りのリストに変換されます。

--remote_instance_name=<a string> のデフォルト: ""

リモート実行 API で instance_name として渡す値。

--[no]remote_local_fallback のデフォルト: 「false」

リモート実行が失敗した場合に、スタンドアロンのローカル実行戦略にフォールバックするかどうか。

--remote_local_fallback_strategy=<a string> のデフォルト: 「local」

非推奨です。詳しくは、https://github.com/bazelbuild/bazel/issues/7480 をご覧ください。

--remote_max_connections=<an integer> のデフォルト: 「100」

リモート キャッシュ/エグゼキュータへの同時接続数の上限を設定します。デフォルト値は 100 です。0 に設定すると、制限がなくなります。HTTP リモート キャッシュの場合、1 つの TCP 接続で一度に 1 つのリクエストを処理できるため、Bazel は最大で --remote_max_connections の同時リクエストを行うことができます。gRPC リモート キャッシュ/エグゼキュータの場合、通常 1 つの gRPC チャネルで 100 件以上の同時リクエストを処理できるため、Bazel は約 --remote_max_connections * 100 件の同時リクエストを行うことができます。

タグ: host_machine_resource_optimizations

--remote_proxy=<a string> デフォルト: 説明を参照

プロキシを介してリモート キャッシュに接続します。現在、このフラグは Unix ドメイン ソケット(unix:/path/to/socket)の構成にのみ使用できます。

--remote_result_cache_priority=<an integer> のデフォルト: 「0」

リモート キャッシュに保存されるリモート アクションの相対優先度。特定の優先度の値の意味はサーバーによって異なります。

--remote_retries=<an integer> のデフォルト: 「5」

一時的なエラーを再試行する最大回数。0 に設定すると、再試行は無効になります。

--remote_retry_max_delay=<An immutable length of time.> デフォルト: "5s"

リモート再試行の最大バックオフ遅延。使用できる単位は、日(d)、時間(h)、分(m)、秒(s)、ミリ秒(ms)です。単位を省略すると、値は秒として解釈されます。

--remote_timeout=<An immutable length of time.> のデフォルト: 「60s」

リモート実行とキャッシュ呼び出しを待機する最大時間。REST キャッシュの場合、これは接続と読み取りの両方のタイムアウトです。使用できる単位は、日(d)、時間(h)、分(m)、秒(s)、ミリ秒(ms)です。単位を省略すると、値は秒として解釈されます。

--[no]remote_upload_local_results デフォルト: "true"

リモート キャッシュがサポートしており、ユーザーがローカルで実行されたアクションの結果をリモート キャッシュにアップロードする権限を持っている場合に、アップロードするかどうか。

--[no]remote_verify_downloads デフォルト: "true"

true に設定すると、Bazel はすべてのリモート ダウンロードのハッシュサムを計算し、期待値と一致しない場合はリモートでキャッシュに保存された値を破棄します。

その他のオプション(他のカテゴリに分類されないもの):
--[no]allow_analysis_cache_discard デフォルト: "true"

ビルドシステムの変更により分析キャッシュを破棄する場合、このオプションを false に設定すると、bazel はビルドを続行するのではなく終了します。このオプションは、discard_analysis_cache も設定されている場合は無効です。

タグ: eagerness_to_exit

--auto_output_filter=<none, all, packages or subpackages> のデフォルト: 「none」

--output_filter が指定されていない場合、このオプションの値を使用してフィルタが自動的に作成されます。使用できる値は、'none'(何もフィルタしない / すべてを表示)、'all'(すべてをフィルタする / 何も表示しない)、'packages'(Blaze コマンドラインで指定されたパッケージのルールからの出力を含める)、'subpackages'('packages' と同様だが、サブパッケージも含む)です。「packages」と「subpackages」の値の場合(//java/foo と //javatests/foo は 1 つのパッケージとして扱われます)。

--[no]build_manual_tests のデフォルト: 「false」

「manual」タグが付けられたテスト ターゲットを強制的にビルドします。「manual」テストは処理から除外されます。このオプションは、ビルドを強制します(実行はされません)。

--build_tag_filters=<comma-separated list of options> のデフォルト: ""

タグのカンマ区切りのリストを指定します。各タグの前に「-」を付けると、除外するタグを指定できます。少なくとも 1 つの追加タグを含み、除外タグを含まないターゲットのみがビルドされます。このオプションは、「test」コマンドで実行されるテストのセットには影響しません。これらのテストは、テスト フィルタリング オプション(「--test_tag_filters」など)によって制御されます。

--[no]build_tests_only のデフォルト: 「false」

指定した場合、*_test ルールと test_suite ルールのみがビルドされ、コマンドラインで指定された他のターゲットは無視されます。デフォルトでは、リクエストされたものがすべてビルドされます。

--combined_report=<none or lcov> のデフォルト: 「lcov」

目的の累積カバレッジ レポートのタイプを指定します。現時点では LCOV のみがサポートされています。

--[no]compile_one_dependency のデフォルト: 「false」

引数ファイルの単一の依存関係をコンパイルします。これは、IDE でソースファイルの構文をチェックする場合に便利です。たとえば、ソースファイルに依存する単一のターゲットを再ビルドして、編集/ビルド/テストのサイクルでできるだけ早くエラーを検出できます。この引数は、フラグ以外のすべての引数の解釈方法に影響します。ビルドのターゲットではなく、ソースファイル名として解釈されます。各ソース ファイル名について、それに依存する任意のターゲットがビルドされます。

--deleted_packages=<comma-separated list of package names> の複数の用途が蓄積される

ビルドシステムが、パッケージパスのどこかに表示されていても存在しないとみなすパッケージ名のカンマ区切りリスト。既存のパッケージ「x」のサブパッケージ「x/y」を削除する場合は、このオプションを使用します。たとえば、クライアントで x/y/BUILD を削除した後、別の package_path エントリによってまだ提供されているラベル「//x:y/z」が検出されると、ビルドシステムがエラーを報告することがあります。--deleted_packages x/y を指定すると、この問題を回避できます。

--[no]discard_analysis_cache のデフォルト: 「false」

分析フェーズが完了したら、すぐに分析キャッシュを破棄します。メモリ使用量を約 10% 削減しますが、増分ビルドが遅くなります。

--disk_cache=<a path> デフォルト: 説明を参照

Bazel がアクションとアクションの出力を読み書きできるディレクトリのパス。ディレクトリが存在しない場合は作成されます。

--embed_label=<a one-line string> のデフォルト: ""

バイナリにソース コントロール リビジョンまたはリリース ラベルを埋め込む

--execution_log_binary_file=<a path> デフォルト: 説明を参照

src/main/protobuf/spawn.proto に従って、実行されたスポーンを長さ区切り SpawnExec プロトコルとしてこのファイルに記録します。--execution_log_compact_file を優先します。これは、大幅に小さく、生成コストも低くなります。関連するフラグ: --execution_log_compact_file(コンパクト形式。相互に排他的)、--execution_log_json_file(テキスト JSON 形式。相互に排他的)、--execution_log_sort(実行ログを並べ替えるかどうか)、--subcommands(ターミナル出力でサブコマンドを表示する場合)。

--execution_log_compact_file=<a path> デフォルト: 説明を参照

src/main/protobuf/spawn.proto に従って、実行されたスポーンを長さ区切りの ExecLogEntry プロトコルとしてこのファイルに記録します。ファイル全体が zstd 圧縮されます。関連するフラグ: --execution_log_binary_file(バイナリ protobuf 形式。相互に排他的)、--execution_log_json_file(テキスト JSON 形式。相互に排他的)、--subcommands(ターミナル出力でサブコマンドを表示する場合)。

--execution_log_json_file=<a path> デフォルト: 説明を参照

src/main/protobuf/spawn.proto に従って、実行されたスポーンを SpawnExec プロトの改行区切りの JSON 表現としてこのファイルに記録します。--execution_log_compact_file を優先します。これは、大幅に小さく、生成コストも低くなります。関連するフラグ: --execution_log_compact_file(コンパクト形式。相互に排他的)、--execution_log_binary_file(バイナリ protobuf 形式。相互に排他的)、--execution_log_sort(実行ログを並べ替えるかどうか)、--subcommands(ターミナル出力にサブコマンドを表示するかどうか)。

--[no]execution_log_sort デフォルト: "true"

実行ログを並べ替えて、呼び出し間でログを比較しやすくするかどうか。呼び出しの最後に CPU とメモリの使用量が大幅に増加する可能性を回避するには、false に設定します。ただし、ログが非決定的な実行順序で生成されます。バイナリ形式と JSON 形式にのみ適用されます。コンパクト形式は並べ替えられません。

--[no]expand_test_suites デフォルト: "true"

分析の前に、test_suite ターゲットを構成テストに展開します。このフラグがオン(デフォルト)の場合、テストスイートに属するテストに否定ターゲット パターンが適用されます。オフの場合、適用されません。このフラグをオフにすると、コマンドラインで最上位のアスペクトが適用された場合に、test_suite ターゲットを分析できるようになります。

タグ: loading_and_analysis

--experimental_disk_cache_gc_idle_delay=<An immutable length of time.> のデフォルト: 「5m」

ディスク キャッシュのガベージ コレクションが発生するまでサーバーがアイドル状態を維持する必要がある時間。ガベージ コレクション ポリシーを指定するには、--experimental_disk_cache_gc_max_size または --experimental_disk_cache_gc_max_age を設定します。

--experimental_disk_cache_gc_max_age=<An immutable length of time.> のデフォルト: 「0」

正の値に設定すると、ディスク キャッシュは定期的にガベージ コレクションされ、この年齢より古いエントリが削除されます。--experimental_disk_cache_gc_max_size と組み合わせて設定すると、両方の条件が適用されます。ガベージ コレクションは、--experimental_disk_cache_gc_idle_delay フラグで指定された時間が経過し、サーバーがアイドル状態になったときにバックグラウンドで実行されます。

--experimental_disk_cache_gc_max_size=<a size in bytes, optionally followed by a K, M, G or T multiplier> のデフォルト: 「0」

正の値に設定すると、ディスク キャッシュは定期的にガベージ コレクションされ、このサイズを超えないように維持されます。--experimental_disk_cache_gc_max_age と組み合わせて設定すると、両方の条件が適用されます。ガベージ コレクションは、--experimental_disk_cache_gc_idle_delay フラグで指定された時間が経過し、サーバーがアイドル状態になったときにバックグラウンドで実行されます。

--experimental_extra_action_filter=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths> のデフォルト: ""

アスペクトに置き換えられたため、非推奨になりました。extra_actions をスケジュールするターゲットのセットをフィルタします。

--[no]experimental_extra_action_top_level_only のデフォルト: 「false」

アスペクトに置き換えられたため、非推奨になりました。最上位のターゲットの extra_actions のみをスケジュールします。

--experimental_spawn_scheduler

アクションをローカルとリモートで並行して実行することで、動的実行を有効にします。Bazel は各アクションをローカルとリモートで生成し、最初に完了したアクションを選択します。アクションがワーカーをサポートしている場合、ローカル アクションは永続ワーカー モードで実行されます。個々のアクションのニーモニックで動的実行を有効にするには、代わりに --internal_spawn_scheduler フラグと --strategy=&lt;mnemonic&gt;=dynamic フラグを使用します。

展開すると次のようになります。
  --internal_spawn_scheduler
  --spawn_strategy=dynamic

--[no]fetch デフォルト: "true"

コマンドが外部依存関係を取得できるようにします。false に設定すると、コマンドは依存関係のキャッシュ バージョンを使用します。キャッシュ バージョンが存在しない場合、コマンドは失敗します。

--local_termination_grace_seconds=<an integer> のデフォルト: 「15」

タイムアウトによるローカル プロセスの終了から強制シャットダウンまでの待機時間。

--package_path=<colon-separated list of options> デフォルト: "%workspace%"

パッケージの検索場所をコロンで区切ったリスト。「%workspace%」で始まる要素は、囲んでいるワークスペースを基準としています。省略した場合や空の場合、デフォルトは「bazel info default-package-path」の出力です。

--[no]show_loading_progress デフォルト: "true"

有効にすると、Bazel が「パッケージの読み込み中:」というメッセージを出力します。

--test_lang_filters=<comma-separated list of options> のデフォルト: ""

テスト言語のカンマ区切りリストを指定します。各言語の前に「-」を付けると、除外する言語を指定できます。指定された言語で記述されたテスト ターゲットのみが検出されます。各言語に使用する名前は、*_test ルールの言語接頭辞(「cc」、「java」、「py」など)と同じにする必要があります。このオプションは、--build_tests_only の動作とテストコマンドに影響します。

--test_size_filters=<comma-separated list of values: small, medium, large, or enormous> のデフォルト: ""

テストサイズのカンマ区切りリストを指定します。各サイズの前に「-」を付けると、除外するサイズを指定できます。含まれるサイズが 1 つ以上あり、除外されるサイズが含まれていないテスト ターゲットのみが検出されます。このオプションは、--build_tests_only の動作とテスト コマンドに影響します。

--test_tag_filters=<comma-separated list of options> のデフォルト: ""

テストタグのカンマ区切りリストを指定します。各タグの前に「-」を付けると、除外するタグを指定できます。含まれるタグを 1 つ以上含み、除外されるタグを含まないテスト ターゲットのみが検出されます。このオプションは、--build_tests_only の動作とテスト コマンドに影響します。

--test_timeout_filters=<comma-separated list of values: short, moderate, long, or eternal> のデフォルト: ""

テスト タイムアウトのカンマ区切りリストを指定します。各タイムアウトの前に「-」を付けると、除外するタイムアウトを指定できます。含まれるタイムアウトが 1 つ以上あり、除外されるタイムアウトが含まれていないテスト ターゲットのみが検出されます。このオプションは、--build_tests_only の動作とテスト コマンドに影響します。

--workspace_status_command=<path> のデフォルト: ""

ビルドの開始時に呼び出され、ワークスペースのステータス情報を Key-Value ペアの形式で提供するコマンド。詳細な仕様については、ユーザー マニュアルをご覧ください。例については、tools/buildstamp/get_workspace_status もご覧ください。

ビルド実行を制御するオプション:
--[no]experimental_persistent_aar_extractor のデフォルト: 「false」

ワーカーを使用して永続的な aar エクストラクタを有効にします。

タグ: executionexperimental

--[no]experimental_remotable_source_manifests のデフォルト: 「false」

ソース マニフェスト アクションをリモート可能にするかどうか

タグ: loading_and_analysisexecutionexperimental

--[no]experimental_split_coverage_postprocessing のデフォルト: 「false」

true の場合、Bazel は新しいスポーンでテストのカバレッジ後処理を実行します。

タグ: executionexperimental

--[no]experimental_strict_fileset_output のデフォルト: 「false」

このオプションを有効にすると、ファイルセットはすべての出力アーティファクトを通常のファイルとして扱います。ディレクトリをトラバースしたり、シンボリック リンクを認識したりすることはありません。

タグ: executionexperimental

--[no]incompatible_modify_execution_info_additive デフォルト: "true"

有効にすると、複数の --modify_execution_info フラグを渡すことで、追加されます。無効になっている場合は、最後のフラグのみが考慮されます。

タグ: executionaffects_outputsloading_and_analysisincompatible_change

--modify_execution_info=<regex=[+-]key,regex=[+-]key,...> の複数の用途が蓄積される

アクションのニーモニックに基づいて、アクションの実行情報からキーを追加または削除します。実行情報をサポートするアクションにのみ適用されます。多くの一般的なアクション(Genrule、CppCompile、Javac、StarlarkAction、TestRunner など)は実行情報をサポートしています。複数の値を指定する場合は、順序が重要です。これは、多くの正規表現が同じニーモニックに適用される可能性があるためです。

構文: "regex=[+-]key,regex=[+-]key,..."。

例: '.=+x,.=-y,.=+z' は、すべてのアクションの実行情報に 'x' と 'z' を追加し、'y' を削除します。「Genrule=+requires-x」は、すべての Genrule アクションの実行情報に「requires-x」を追加します。'(?!Genrule).=-requires-x' は、Genrule 以外のアクションの実行情報から 'requires-x' を削除します。

タグ: executionaffects_outputsloading_and_analysis

--persistent_android_dex_desugar

ワーカーを使用して、永続的な Android dex と desugar アクションを有効にします。

展開すると次のようになります。
  --internal_persistent_android_dex_desugar
  --strategy=Desugar=worker
  --strategy=DexBuilder=worker

タグ: host_machine_resource_optimizationsexecution

--persistent_android_resource_processor

ワーカーを使用して永続的な Android リソース プロセッサを有効にします。

次のように展開されます。
  --internal_persistent_busybox_tools
  --strategy=AaptPackage=worker
  --strategy=AndroidResourceParser=worker
  --strategy=AndroidResourceValidator=worker
  --strategy=AndroidResourceCompiler=worker
  --strategy=RClassGenerator=worker
  --strategy=AndroidResourceLink=worker
  --strategy=AndroidAapt2=worker
  --strategy=AndroidAssetMerger=worker
  --strategy=AndroidResourceMerger=worker
  --strategy=AndroidCompiledResourceMerger=worker
  --strategy=ManifestMerger=worker
  --strategy=AndroidManifestMerger=worker
  --strategy=Aapt2Optimize=worker
  --strategy=AARGenerator=worker
  --strategy=ProcessDatabinding=worker
  --strategy=GenerateDataBindingBaseClasses=worker

タグ: host_machine_resource_optimizationsexecution

--persistent_multiplex_android_dex_desugar

ワーカーを使用して、永続的な多重化された Android dex アクションと desugar アクションを有効にします。

展開すると次のようになります。
  --persistent_android_dex_desugar
  --internal_persistent_multiplex_android_dex_desugar

タグ: host_machine_resource_optimizationsexecution

--persistent_multiplex_android_resource_processor

ワーカーを使用して、永続的な多重化 Android リソース プロセッサを有効にします。

次のように展開されます。
  --persistent_android_resource_processor
  --modify_execution_info=AaptPackage=+supports-multiplex-workers
  --modify_execution_info=AndroidResourceParser=+supports-multiplex-workers
  --modify_execution_info=AndroidResourceValidator=+supports-multiplex-workers
  --modify_execution_info=AndroidResourceCompiler=+supports-multiplex-workers
  --modify_execution_info=RClassGenerator=+supports-multiplex-workers
  --modify_execution_info=AndroidResourceLink=+supports-multiplex-workers
  --modify_execution_info=AndroidAapt2=+supports-multiplex-workers
  --modify_execution_info=AndroidAssetMerger=+supports-multiplex-workers
  --modify_execution_info=AndroidResourceMerger=+supports-multiplex-workers
  --modify_execution_info=AndroidCompiledResourceMerger=+supports-multiplex-workers
  --modify_execution_info=ManifestMerger=+supports-multiplex-workers
  --modify_execution_info=AndroidManifestMerger=+supports-multiplex-workers
  --modify_execution_info=Aapt2Optimize=+supports-multiplex-workers
  --modify_execution_info=AARGenerator=+supports-multiplex-workers

タグ: host_machine_resource_optimizationsexecution

--persistent_multiplex_android_tools

永続的で多重化された Android ツール(dexing、desugaring、リソース処理)を有効にします。

展開すると次のようになります。
  --internal_persistent_multiplex_busybox_tools
  --persistent_multiplex_android_resource_processor
  --persistent_multiplex_android_dex_desugar

タグ: host_machine_resource_optimizationsexecution

--[no]use_target_platform_for_tests のデフォルト: 「false」

true の場合、テスト実行グループではなく、テストの実行にターゲット プラットフォームを使用します。

タグ: execution

アクションの実行に使用されるツールチェーンを構成するオプション:
--android_compiler=<a string> デフォルト: 説明を参照

Android ターゲット コンパイラ。

タグ: affects_outputsloading_and_analysisloses_incremental_state

--android_manifest_merger=<legacy, android or force_android> デフォルト: 「android」

android_binary ルールで使用するマニフェスト マージャーを選択します。レガシー マージャーから Android マニフェスト マージャーへの移行を支援するフラグ。

タグ: affects_outputsloading_and_analysisloses_incremental_state

--android_platforms=<a build target label> のデフォルト: ""

android_binary ターゲットが使用するプラットフォームを設定します。複数のプラットフォームが指定されている場合、バイナリはファット APK で、指定された各ターゲット プラットフォームのネイティブ バイナリが含まれます。

タグ: changes_inputsloading_and_analysisloses_incremental_state

--cc_output_directory_tag=<a string> のデフォルト: ""

構成ディレクトリに追加する接尾辞を指定します。

タグ: affects_outputs

--compiler=<a string> デフォルト: 説明を参照

ターゲットのコンパイルに使用する C++ コンパイラ。

タグ: loading_and_analysisexecution

--coverage_output_generator=<a build target label> デフォルト: "@bazel_tools//tools/test:lcov_merger"

未加工のカバレッジ レポートの後処理に使用されるバイナリの場所。これはバイナリ ターゲットである必要があります。デフォルトは「//tools/test:lcov_merger」です。

タグ: changes_inputsaffects_outputsloading_and_analysis

--coverage_report_generator=<a build target label> default: "@bazel_tools//tools/test:coverage_report_generator"

カバレッジ レポートの生成に使用されるバイナリの場所。これはバイナリ ターゲットである必要があります。デフォルトは「//tools/test:coverage_report_generator」です。

タグ: changes_inputsaffects_outputsloading_and_analysis

--coverage_support=<a build target label> default: "@bazel_tools//tools/test:coverage_support"

コード カバレッジを収集するすべてのテスト アクションの入力で必要なサポート ファイルの場所。デフォルトは「//tools/test:coverage_support」です。

タグ: changes_inputsaffects_outputsloading_and_analysis

--custom_malloc=<a build target label> デフォルト: 説明を参照

カスタム malloc 実装を指定します。この設定は、ビルドルールの malloc 属性をオーバーライドします。

タグ: changes_inputsaffects_outputs

--[no]experimental_include_xcode_execution_requirements のデフォルト: 「false」

設定されている場合は、すべての Xcode アクションに「requires-xcode:{version}」実行要件を追加します。Xcode のバージョンにハイフン付きのラベルがある場合は、「requires-xcode-label:{version_label}」実行要件も追加します。

タグ: loses_incremental_stateloading_and_analysisexecutionexperimental

--[no]experimental_prefer_mutual_xcode デフォルト: "true"

true の場合、ローカルとリモートの両方で使用可能な最新の Xcode を使用します。false の場合、または相互に利用可能なバージョンがない場合は、xcode-select で選択されたローカルの Xcode バージョンを使用します。

タグ: loses_incremental_stateexperimental

--extra_execution_platforms=<comma-separated list of options> のデフォルト: ""

アクションを実行するための実行プラットフォームとして使用できるプラットフォーム。プラットフォームは、正確なターゲットとして指定することも、ターゲット パターンとして指定することもできます。これらのプラットフォームは、register_execution_platforms() によって WORKSPACE ファイルで宣言されたプラットフォームよりも前に考慮されます。このオプションは 1 回のみ設定できます。後で設定したインスタンスは、以前のフラグ設定をオーバーライドします。

タグ: execution

--extra_toolchains=<comma-separated list of options> の複数の用途が蓄積される

ツールチェーン解決時に考慮されるツールチェーン ルール。ツールチェーンは、正確なターゲットとして指定することも、ターゲット パターンとして指定することもできます。これらのツールチェーンは、register_toolchains() によって WORKSPACE ファイルで宣言されたツールチェーンよりも前に考慮されます。

タグ: affects_outputschanges_inputsloading_and_analysis

--grte_top=<a label> デフォルト: 説明を参照

チェックインされた libc ライブラリのラベル。デフォルト値は crosstool ツールチェーンによって選択され、オーバーライドする必要はほとんどありません。

タグ: action_command_linesaffects_outputs

--host_compiler=<a string> デフォルト: 説明を参照

オペレーションなしフラグ。今後のリリースで削除される予定です。

タグ: loading_and_analysisexecution

--host_grte_top=<a label> デフォルト: 説明を参照

指定した場合、この設定は exec 構成の libc 最上位ディレクトリ(--grte_top)をオーバーライドします。

タグ: action_command_linesaffects_outputs

--host_platform=<a build target label> default: "@bazel_tools//tools:host_platform"

ホストシステムを説明するプラットフォーム ルールのラベル。

タグ: affects_outputschanges_inputsloading_and_analysis

--[no]incompatible_bazel_test_exec_run_under デフォルト: "true"

有効にすると、"bazel test --run_under=//:runner" は実行構成で "//:runner" をビルドします。無効にすると、ターゲット構成で「//:runner」がビルドされます。Bazel は実行マシンでテストを実行するため、後者の方がより正確です。これは「bazel run」には影響しません。これは常にターゲット構成で「`--run_under=//foo」をビルドします。

タグ: affects_outputsincompatible_change

--[no]incompatible_builtin_objc_strip_action デフォルト: "true"

objc リンクの一部としてストリップ アクションを出力するかどうか。

タグ: action_command_linesincompatible_change

--[no]incompatible_dont_enable_host_nonhost_crosstool_features デフォルト: "true"

true の場合、Bazel は c++ ツールチェーンで「host」機能と「nonhost」機能を有効にしません(詳しくは、https://github.com/bazelbuild/bazel/issues/7407 をご覧ください)。

タグ: loading_and_analysisincompatible_change

--[no]incompatible_enable_apple_toolchain_resolution のデフォルト: 「false」

ツールチェーン解決を使用して、apple ルール(Starlark とネイティブ)の Apple SDK を選択

タグ: loading_and_analysisincompatible_change

--[no]incompatible_remove_legacy_whole_archive デフォルト: "true"

true の場合、Bazel はデフォルトでライブラリの依存関係をアーカイブ全体としてリンクしません(移行手順については、https://github.com/bazelbuild/bazel/issues/7362 を参照)。

タグ: loading_and_analysisincompatible_change

--[no]incompatible_strip_executable_safely のデフォルト: 「false」

true の場合、実行可能ファイルのストリップ アクションは -x フラグを使用します。これにより、動的シンボルの解決が中断されません。

タグ: action_command_linesincompatible_change

--[no]interface_shared_objects デフォルト: "true"

ツールチェーンでサポートされている場合は、インターフェース共有オブジェクトを使用します。現在、すべての ELF ツールチェーンがこの設定をサポートしています。

タグ: loading_and_analysisaffects_outputsaffects_outputs

--ios_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

iOS アプリケーションのビルドに使用する iOS SDK のバージョンを指定します。指定しない場合、'xcode_version' のデフォルトの iOS SDK バージョンが使用されます。

タグ: loses_incremental_state

--macos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

macOS アプリケーションのビルドに使用する macOS SDK のバージョンを指定します。指定しない場合、'xcode_version' のデフォルトの macOS SDK バージョンを使用します。

タグ: loses_incremental_state

--minimum_os_version=<a string> デフォルト: 説明を参照

コンパイルの対象となる最小 OS バージョン。

タグ: loading_and_analysisaffects_outputs

--platform_mappings=<a main workspace-relative path> のデフォルト: ""

プラットフォームが設定されていない場合に使用するプラットフォーム、またはプラットフォームがすでに存在する場合に設定するフラグを記述するマッピング ファイルの場所。メインのワークスペースのルートを基準とした相対パスにする必要があります。デフォルトは「platform_mappings」(ワークスペース ルート直下のファイル)です。

タグ: affects_outputschanges_inputsloading_and_analysisnon_configurable

--platforms=<a build target label> のデフォルト: ""

現在のコマンドのターゲット プラットフォームを記述するプラットフォーム ルールのラベル。

タグ: affects_outputschanges_inputsloading_and_analysis

--python_path=<a string> デフォルト: 説明を参照

ターゲット プラットフォームで Python ターゲットを実行するために呼び出される Python インタープリタの絶対パス。非推奨。--incompatible_use_python_toolchains で無効になります。

タグ: loading_and_analysisaffects_outputs

--tvos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

tvOS アプリケーションのビルドに使用する tvOS SDK のバージョンを指定します。指定しない場合、'xcode_version' のデフォルトの tvOS SDK バージョンを使用します。

タグ: loses_incremental_state

--[no]use_platforms_in_apple_crosstool_transition のデフォルト: 「false」

必要に応じて、apple_crosstool_transition が以前の --cpu の代わりに --platforms フラグの値を使用するようにフォールバックします。

タグ: loading_and_analysis

--watchos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

watchOS アプリケーションのビルドに使用する watchOS SDK のバージョンを指定します。指定しない場合、'xcode_version' のデフォルトの watchOS SDK バージョンが使用されます。

タグ: loses_incremental_state

--xcode_version=<a string> デフォルト: 説明を参照

指定された場合、関連するビルド アクションに指定されたバージョンの Xcode を使用します。指定しない場合、Xcode のエグゼキュータのデフォルト バージョンが使用されます。

タグ: loses_incremental_state

--xcode_version_config=<a build target label> default: "@bazel_tools//tools/cpp:host_xcodes"

ビルド構成で Xcode のバージョンを選択するために使用される xcode_config ルールのラベル。

タグ: loses_incremental_stateloading_and_analysis

コマンドの出力を制御するオプション:
--[no]apple_generate_dsym のデフォルト: 「false」

デバッグ シンボル(.dSYM)ファイルを生成するかどうか。

タグ: affects_outputsaction_command_lines

true の場合、すべてのターゲットのランファイル シンボリック リンク フォレストをビルドします。false の場合、ローカル アクション、テスト、実行コマンドで必要な場合にのみ書き込みます。

タグ: affects_outputs

--[no]build_runfile_manifests デフォルト: "true"

true の場合、すべてのターゲットの runfiles マニフェストを書き込みます。false の場合は省略します。false の場合、ローカルテストは実行されません。

タグ: affects_outputs

--[no]build_test_dwp のデフォルト: 「false」

有効にすると、C++ テストを静的にビルドして fission を使用する場合、テスト バイナリの .dwp ファイルも自動的にビルドされます。

タグ: loading_and_analysisaffects_outputs

--cc_proto_library_header_suffixes=<comma-separated set of options> デフォルト: ".pb.h"

cc_proto_library が作成するヘッダー ファイルの接尾辞を設定します。

タグ: affects_outputsloading_and_analysis

--cc_proto_library_source_suffixes=<comma-separated set of options> デフォルト: ".pb.cc"

cc_proto_library が作成するソースファイルの接尾辞を設定します。

タグ: affects_outputsloading_and_analysis

--[no]experimental_proto_descriptor_sets_include_source_info のデフォルト: 「false」

proto_library で代替の Java API バージョンの追加アクションを実行します。

タグ: affects_outputsloading_and_analysisexperimental

--[no]experimental_save_feature_state のデフォルト: 「false」

有効化された機能とリクエストされた機能の状態をコンパイルの出力として保存します。

タグ: affects_outputsexperimental

--fission=<a set of compilation modes> デフォルト: 「no」

C++ のコンパイルとリンクに fission を使用するコンパイル モードを指定します。{'fastbuild', 'dbg', 'opt'} の任意の組み合わせ、またはすべてのモードを有効にする特別な値 'yes'、すべてのモードを無効にする特別な値 'no' を指定できます。

タグ: loading_and_analysisaction_command_linesaffects_outputs

--[no]incompatible_always_include_files_in_data デフォルト: "true"

true の場合、ネイティブ ルールはデータ依存関係の <code>DefaultInfo.files</code> をランファイルに追加します。これは、Starlark ルールの推奨動作(https://bazel.build/extending/rules#runfiles_features_to_avoid)と一致します。

タグ: affects_outputsincompatible_change

--[no]incompatible_compact_repo_mapping_manifest のデフォルト: 「false」

有効にすると、<binary>.repo_mapping ファイルは、ランファイルを提供する拡張機能によって生成されたリポジトリごとに 1 回ではなく、モジュール拡張機能のリポジトリ マッピングを 1 回だけ出力します。

タグ: affects_outputsincompatible_change

--incompatible_disable_select_on=<comma-separated set of options> のデフォルト: ""

select() での使用が無効になっているフラグのリスト。

タグ: loading_and_analysisincompatible_changenon_configurable

--[no]incompatible_filegroup_runfiles_for_data デフォルト: "true"

true の場合、srcs 属性にリストされているターゲットの runfile は、filegroup をデータ依存関係として使用するターゲットで使用できます。

タグ: incompatible_change

--[no]objc_generate_linkmap のデフォルト: 「false」

リンクマップ ファイルを生成するかどうかを指定します。

タグ: affects_outputs

--[no]save_temps のデフォルト: 「false」

設定すると、gcc からの一時的な出力が保存されます。これには、.s ファイル(アセンブラ コード)、.i ファイル(プリプロセスされた C)、.ii ファイル(プリプロセスされた C++)が含まれます。

タグ: affects_outputs

ユーザーが目的の出力を構成し、その存在ではなく値に影響を与えるオプション:
--action_env=<a 'name[=value]' assignment with an optional value part or the special syntax '=name' to unset a variable> の複数の用途が蓄積される

ターゲット構成を持つアクションで使用可能な環境変数のセットを指定します。変数は <code>name</code&gt> で指定できます。この場合、値は呼び出し環境から取得されます。また、<code>name=value</code&gt> ペアで指定することもできます。この場合、値は呼び出し環境とは無関係に設定されます。さらに、<code>=name</code&gt> で指定することもできます。この場合、その名前の変数は設定解除されます。このオプションは複数回使用できます。同じ変数に指定されたオプションは後勝ちになり、異なる変数のオプションは累積されます。<br><code>--incompatible_repo_env_ignores_action_env</code> が true でない限り、すべての <code>name=value</code> ペアはリポジトリ ルールで使用できます。

タグ: action_command_lines

--allowed_cpu_values=<comma-separated set of options> のデフォルト: ""

--cpu フラグに指定できる値。

タグ: changes_inputsaffects_outputs

--[no]android_databinding_use_androidx デフォルト: "true"

AndroidX 互換のデータ バインディング ファイルを生成します。これはデータバインディング v2 でのみ使用されます。このフラグは no-op です。

タグ: affects_outputsloading_and_analysisloses_incremental_stateexperimental

--[no]android_databinding_use_v3_4_args デフォルト: "true"

3.4.0 引数で Android データバインディング v2 を使用します。このフラグは no-op です。

タグ: affects_outputsloading_and_analysisloses_incremental_stateexperimental

--android_dynamic_mode=<off, default or fully> のデフォルト: 「off」

cc_binary が共有ライブラリを明示的に作成しない場合に、Android ルールの C++ 依存関係を動的にリンクするかどうかを決定します。「default」は、bazel が動的にリンクするかどうかを選択することを意味します。「fully」は、すべてのライブラリが動的にリンクされることを意味します。「off」は、すべてのライブラリがほぼ静的モードでリンクされることを意味します。

タグ: affects_outputsloading_and_analysis

--android_manifest_merger_order=<alphabetical, alphabetical_by_configuration or dependency> のデフォルト: 「alphabetical」

Android バイナリのマニフェスト マージツールに渡されるマニフェストの順序を設定します。ALPHABETICAL は、マニフェストが execroot を基準としたパスで並べ替えられることを意味します。ALPHABETICAL_BY_CONFIGURATION は、マニフェストが出力ディレクトリ内の構成ディレクトリに相対的なパスで並べ替えられることを意味します。DEPENDENCY は、各ライブラリのマニフェストが依存関係のマニフェストの前に来るようにマニフェストが順序付けられることを意味します。

タグ: action_command_linesexecution

--[no]android_resource_shrinking のデフォルト: 「false」

ProGuard を使用する android_binary APK のリソース圧縮を有効にします。

タグ: affects_outputsloading_and_analysis

--[no]build_python_zip デフォルト: "auto"

Python 実行可能 zip をビルドします。Windows ではオン、他のプラットフォームではオフ

タグ: affects_outputs

--catalyst_cpus=<comma-separated list of options> の複数の用途が蓄積される

Apple Catalyst バイナリをビルドするアーキテクチャのカンマ区切りリスト。

タグ: loses_incremental_stateloading_and_analysis

--[no]collect_code_coverage のデフォルト: 「false」

指定すると、Bazel はコードを計測し(可能な場合はオフライン計測を使用)、テスト中にカバレッジ情報を収集します。--instrumentation_filter に一致するターゲットのみが影響を受けます。通常、このオプションは直接指定しないでください。代わりに「bazel coverage」コマンドを使用してください。

タグ: affects_outputs

--compilation_mode=<fastbuild, dbg or opt> [-c] デフォルト: "fastbuild"

バイナリのビルドモードを指定します。値: 「fastbuild」、「dbg」、「opt」。

タグ: affects_outputsaction_command_lines

--conlyopt=<a string> の複数の用途が蓄積される

C ソースファイルをコンパイルするときに gcc に渡す追加オプション。

タグ: action_command_linesaffects_outputs

--copt=<a string> の複数の用途が蓄積される

gcc に渡す追加オプション。

タグ: action_command_linesaffects_outputs

--cpu=<a string> のデフォルト: ""

非推奨: このフラグは、下位互換性を確保するためのレガシー プラットフォーム マッピングはありますが、Blaze では内部的に使用されません。このフラグは使用しないでください。代わりに、適切なプラットフォーム定義で --platforms を使用してください。

タグ: changes_inputsaffects_outputs

--cs_fdo_absolute_path=<a string> デフォルト: 説明を参照

CSFDO プロファイル情報を使用してコンパイルを最適化します。プロファイル ファイル、未加工またはインデックス付きの LLVM プロファイル ファイルを含む zip ファイルの絶対パス名を指定します。

タグ: affects_outputs

--cs_fdo_instrument=<a string> デフォルト: 説明を参照

コンテキスト依存の FDO 計測でバイナリを生成します。Clang/LLVM コンパイラでは、実行時に未加工のプロファイル ファイルがダンプされるディレクトリ名も受け入れます。

タグ: affects_outputs

--cs_fdo_profile=<a build target label> デフォルト: 説明を参照

最適化に使用されるコンテキスト依存プロファイルを表す cs_fdo_profile。

タグ: affects_outputs

--cxxopt=<a string> の複数の用途が蓄積される

C++ ソースファイルをコンパイルするときに gcc に渡す追加オプション。

タグ: action_command_linesaffects_outputs

--define=<a 'name=value' assignment> の複数の用途が蓄積される

各 --define オプションは、ビルド変数の割り当てを指定します。変数に複数の値がある場合は、最後の値が優先されます。

タグ: changes_inputsaffects_outputs

--dynamic_mode=<off, default or fully> のデフォルト: "default"

C++ バイナリを動的にリンクするかどうかを決定します。「default」は、Bazel が動的にリンクするかどうかを選択することを意味します。「fully」は、すべてのライブラリが動的にリンクされることを意味します。「off」は、すべてのライブラリがほぼ静的モードでリンクされることを意味します。

タグ: loading_and_analysisaffects_outputs

--[no]enable_propeller_optimize_absolute_paths デフォルト: "true"

設定されている場合、プロペラ最適化の絶対パスを使用するとエラーが発生します。

タグ: affects_outputs

--[no]enable_remaining_fdo_absolute_paths デフォルト: "true"

設定されている場合、FDO の絶対パスを使用するとエラーが発生します。

タグ: affects_outputs

--[no]enable_runfiles デフォルト: "auto"

ランファイル シンボリック リンク ツリーを有効にします。デフォルトでは、Windows ではオフ、他のプラットフォームではオンです。

タグ: affects_outputs

--exec_aspects=<comma-separated list of options> の複数の用途が蓄積される

トップレベルのターゲットであるかどうかに関係なく、exec 構成のターゲットに適用されるアスペクトのカンマ区切りリスト。この機能は試験運用版であり、変更される可能性があります。

タグ: loading_and_analysis

--experimental_action_listener=<a build target label> の複数の用途が蓄積される

アスペクトに置き換えられたため、非推奨になりました。action_listener を使用して、既存のビルド アクションに extra_action をアタッチします。

タグ: executionexperimental

--[no]experimental_android_compress_java_resources のデフォルト: 「false」

APK の Java リソースを圧縮する

タグ: affects_outputsloading_and_analysisexperimental

--[no]experimental_android_databinding_v2 デフォルト: "true"

Android データ バインディング v2 を使用します。このフラグは no-op です。

タグ: affects_outputsloading_and_analysisloses_incremental_stateexperimental

--[no]experimental_android_resource_shrinking のデフォルト: 「false」

ProGuard を使用する android_binary APK のリソース圧縮を有効にします。

タグ: affects_outputsloading_and_analysisexperimental

--[no]experimental_android_rewrite_dexes_with_rex のデフォルト: 「false」

rex ツールを使用して dex ファイルを書き換える

タグ: affects_outputsloading_and_analysisloses_incremental_stateexperimental

--[no]experimental_collect_code_coverage_for_generated_files のデフォルト: 「false」

指定すると、Bazel は生成されたファイルの収集カバレッジ情報も生成します。

タグ: affects_outputsexperimental

--experimental_objc_fastbuild_options=<comma-separated list of options> のデフォルト: 「-O0,-DDEBUG=1」

これらの文字列を objc fastbuild コンパイラ オプションとして使用します。

タグ: action_command_lines

--[no]experimental_omitfp のデフォルト: 「false」

true の場合、スタック アンワインドに libunwind を使用し、-fomit-frame-pointer と -fasynchronous-unwind-tables でコンパイルします。

タグ: action_command_linesaffects_outputsexperimental

--experimental_output_paths=<off or strip> のデフォルト: 「off」

出力ツリーのどの場所にルールがその出力を書き込むか(特にマルチプラットフォーム / マルチ構成ビルドの場合)に使用するモデル。これは試験運用版です。詳しくは、https://github.com/bazelbuild/bazel/issues/6526 をご覧ください。Starlark アクションは、'execution_requirements' 辞書にキー 'supports-path-mapping' を追加することで、パス マッピングを選択できます。

タグ: loses_incremental_statebazel_internal_configurationaffects_outputsexecution

--experimental_override_platform_cpu_name=<a 'label=value' assignment> の複数の用途が蓄積される

各エントリは label=value の形式にする必要があります。ここで、label はプラットフォームを指し、values は $(TARGET_CPU) make 変数と出力パスでプラットフォームの CPU 名をオーバーライドする目的の短縮名です。--experimental_platform_in_output_dir、--incompatible_target_cpu_from_platform、--incompatible_bep_cpu_from_platform が true の場合にのみ使用されます。命名の優先度が最も高い。

タグ: affects_outputsexperimental

--[no]experimental_platform_in_output_dir のデフォルト: 「false」

true の場合、CPU の代わりにターゲット プラットフォームの短縮名が出力ディレクトリ名に使用されます。auto の場合、これは exec 構成にのみ適用されます。正確なスキームは試験運用であり、変更される可能性があります。まず、--platforms オプションの値が 1 つだけではないまれなケースでは、platforms オプションのハッシュが使用されます。次に、現在のプラットフォームの短縮名が --experimental_override_name_platform_in_output_dir で登録されている場合は、その短縮名が使用されます。次に、--experimental_use_platforms_in_output_dir_legacy_heuristic が設定されている場合は、現在のプラットフォーム ラベルに基づく短縮名を使用します。最後に、プラットフォーム オプションのハッシュが最後の手段として使用されます。

タグ: affects_outputsexperimental

--[no]experimental_py_binaries_include_label のデフォルト: 「false」

py_binary ターゲットには、スタンピングが無効になっている場合でもラベルが含まれます。

タグ: affects_outputsexperimental

--[no]experimental_use_llvm_covmap のデフォルト: 「false」

指定した場合、collect_code_coverage が有効になっていると、Bazel は gcov ではなく llvm-cov カバレッジ マップ情報を生成します。

タグ: changes_inputsaffects_outputsloading_and_analysisexperimental

--[no]experimental_use_platforms_in_output_dir_legacy_heuristic デフォルト: "true"

このフラグは、移行またはテストの推奨戦略の一部としてのみ使用してください。このヒューリスティックには既知の欠陥があるため、--experimental_override_name_platform_in_output_dir のみに依存するように移行することをおすすめします。

タグ: affects_outputsexperimental

--fdo_instrument=<a string> デフォルト: 説明を参照

FDO 計測でバイナリを生成します。Clang/LLVM コンパイラでは、実行時に未加工のプロファイル ファイルがダンプされるディレクトリ名も受け入れます。

タグ: affects_outputs

--fdo_optimize=<a string> デフォルト: 説明を参照

FDO プロファイル情報を使用してコンパイルを最適化します。.gcda ファイルツリーを含む zip ファイル、自動プロファイルを含む afdo ファイル、または LLVM プロファイル ファイルの名前を指定します。このフラグは、ラベルとして指定されたファイル(例: //foo/bar:file.afdo。対応するパッケージに exports_files ディレクティブを追加する必要がある場合があります)と、fdo_profile ターゲットを指すラベルも受け入れます。このフラグは fdo_profile ルールに置き換えられます。

タグ: affects_outputs

--fdo_prefetch_hints=<a build target label> デフォルト: 説明を参照

キャッシュ プリフェッチ ヒントを使用します。

タグ: affects_outputs

--fdo_profile=<a build target label> デフォルト: 説明を参照

最適化に使用するプロファイルを表す fdo_profile。

タグ: affects_outputs

--features=<a string> の複数の用途が蓄積される

指定された機能は、ターゲット構成でビルドされたターゲットに対してデフォルトで有効または無効になります。-<feature> を指定すると、機能が無効になります。除外機能は常に非除外機能をオーバーライドします。--host_features もご覧ください

タグ: changes_inputsaffects_outputs

--[no]force_pic のデフォルト: 「false」

有効にすると、すべての C++ コンパイルで位置独立コード(「-fPIC」)が生成され、リンクでは PIC 以外のライブラリよりも PIC 事前構築済みライブラリが優先され、リンクでは位置独立実行可能ファイル(「-pie」)が生成されます。

タグ: loading_and_analysisaffects_outputs

--host_action_env=<a 'name[=value]' assignment with an optional value part or the special syntax '=name' to unset a variable> の複数の用途が蓄積される

実行構成を持つアクションで使用可能な環境変数のセットを指定します。変数は名前で指定できます。この場合、値は呼び出し環境から取得されます。また、name=value ペアで指定することもできます。この場合、値は呼び出し環境とは無関係に設定されます。さらに、<code>=name</code> で指定することもできます。この場合、その名前の変数は設定解除されます。このオプションは複数回使用できます。同じ変数に指定されたオプションは後勝ちとなり、異なる変数のオプションは累積されます。

タグ: action_command_lines

--host_compilation_mode=<fastbuild, dbg or opt> デフォルト: "opt"

ビルド中に使用されるツールのビルドモードを指定します。値: 「fastbuild」、「dbg」、「opt」。

タグ: affects_outputsaction_command_lines

--host_conlyopt=<a string> の複数の用途が蓄積される

実行構成で C(C++ ではない)ソースファイルをコンパイルするときに C コンパイラに渡す追加オプション。

タグ: action_command_linesaffects_outputs

--host_copt=<a string> の複数の用途が蓄積される

実行構成でビルドされたツールに対して C コンパイラに渡す追加オプション。

タグ: action_command_linesaffects_outputs

--host_cpu=<a string> のデフォルト: ""

ホスト CPU。

タグ: changes_inputsaffects_outputs

--host_cxxopt=<a string> の複数の用途が蓄積される

実行構成でビルドされたツール用に C++ コンパイラに渡す追加オプション。

タグ: action_command_linesaffects_outputs

--host_features=<a string> の複数の用途が蓄積される

指定された機能は、exec 構成でビルドされたターゲットに対してデフォルトで有効または無効になります。-<feature> を指定すると、機能が無効になります。除外機能は常に非除外機能をオーバーライドします。

タグ: changes_inputsaffects_outputs

--host_linkopt=<a string> の複数の用途が蓄積される

実行構成でツールをリンクするときにリンカーに渡す追加オプション。

タグ: action_command_linesaffects_outputs

--host_macos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

ホスト ターゲットの最小互換性のある macOS バージョン。指定しない場合、macos_sdk_version が使用されます。

タグ: loses_incremental_state

--host_per_file_copt=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths followed by an @ and a comma separated list of options> の複数の用途が蓄積される

実行構成で特定のファイルをコンパイルするときに、C/C++ コンパイラに選択的に渡す追加オプション。このオプションは複数回渡すことができます。構文: regex_filter@option_1,option_2,...,option_n。ここで、regex_filter は、正規表現パターン(--instrumentation_filter も参照)の include と exclude のリストを表します。option_1 から option_n は、任意のコマンドライン オプションを表します。オプションにカンマが含まれている場合は、バックスラッシュで囲む必要があります。オプションには @ を含めることができます。文字列の分割には最初の @ のみが使用されます。例: --host_per_file_copt=//foo/.*.cc,-//foo/bar.cc@-O0 は、//foo/ 内の bar.cc 以外のすべての cc ファイルの gcc コマンドラインに -O0 コマンドライン オプションを追加します。

タグ: action_command_linesaffects_outputs

--[no]incompatible_auto_exec_groups のデフォルト: 「false」

有効にすると、ルールで使用されるツールチェーンごとに実行グループが自動的に作成されます。このルールを機能させるには、アクションで toolchain パラメータを指定する必要があります。詳細については、https://github.com/bazelbuild/bazel/issues/17134 をご覧ください。

タグ: affects_outputsincompatible_change

--[no]incompatible_merge_genfiles_directory デフォルト: "true"

true の場合、genfiles ディレクトリは bin ディレクトリに折りたたまれます。

タグ: affects_outputsincompatible_change

--[no]incompatible_target_cpu_from_platform デフォルト: "true"

指定されている場合、ターゲット プラットフォームの CPU 制約(@platforms//cpu:cpu)の値を使用して、$(TARGET_CPU) メイク変数を設定します。

タグ: loading_and_analysisincompatible_change

--[no]instrument_test_targets のデフォルト: 「false」

カバレッジが有効な場合に、テストルールの計測を考慮するかどうかを指定します。設定すると、--instrumentation_filter で指定されたテストルールがインストルメント化されます。それ以外の場合、テストルールは常にカバレッジ計測から除外されます。

タグ: affects_outputs

--instrumentation_filter=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths> デフォルト: "-/javatests[/:],-/test/java[/:]"

カバレッジが有効になっている場合、指定された正規表現ベースのフィルタに含まれる名前のルールのみが計測されます。代わりに、接頭辞「-」が付いたルールが除外されます。--instrument_test_targets が有効になっていない限り、テスト以外のルールのみが計測されます。

タグ: affects_outputs

--ios_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

ターゲット シミュレータとデバイスの最小互換性 iOS バージョン。指定しない場合、'ios_sdk_version' が使用されます。

タグ: loses_incremental_state

--ios_multi_cpus=<comma-separated list of options> の複数の用途が蓄積される

ios_application のビルドに使用するアーキテクチャのカンマ区切りのリスト。結果として、指定されたすべてのアーキテクチャを含むユニバーサル バイナリが生成されます。

タグ: loses_incremental_stateloading_and_analysis

--[no]legacy_whole_archive デフォルト: "true"

非推奨。--incompatible_remove_legacy_whole_archive に置き換えられました(詳しくは https://github.com/bazelbuild/bazel/issues/7362 をご覧ください)。オンの場合、linkshared=True で、linkopts に linkstatic=True または '-static' のいずれかがある cc_binary ルールに --whole-archive を使用します。これは下位互換性のためにのみ存在します。より良い方法は、必要に応じて alwayslink=1 を使用することです。

タグ: action_command_linesaffects_outputsdeprecated

--linkopt=<a string> の複数の用途が蓄積される

リンク時に gcc に渡す追加オプション。

タグ: action_command_linesaffects_outputs

--ltobackendopt=<a string> の複数の用途が蓄積される

LTO バックエンド ステップに渡す追加オプション(--features=thin_lto の下)。

タグ: action_command_linesaffects_outputs

--ltoindexopt=<a string> の複数の用途が蓄積される

LTO インデックス作成ステップに渡す追加オプション(--features=thin_lto の下)。

タグ: action_command_linesaffects_outputs

--macos_cpus=<comma-separated list of options> の複数の用途が蓄積される

Apple macOS バイナリをビルドするアーキテクチャのカンマ区切りリスト。

タグ: loses_incremental_stateloading_and_analysis

--macos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

ターゲットの互換性のある最小 macOS バージョン。指定しない場合、macos_sdk_version が使用されます。

タグ: loses_incremental_state

--memprof_profile=<a build target label> デフォルト: 説明を参照

memprof プロファイルを使用します。

タグ: affects_outputs

--[no]objc_debug_with_GLIBCXX のデフォルト: 「false」

設定されていて、コンパイル モードが「dbg」に設定されている場合、GLIBCXX_DEBUG、GLIBCXX_DEBUG_PEDANTIC、GLIBCPP_CONCEPT_CHECKS を定義します。

タグ: action_command_lines

--[no]objc_enable_binary_stripping のデフォルト: 「false」

リンクされたバイナリでシンボルとデッドコードの削除を行うかどうか。このフラグと --compilation_mode=opt の両方が指定されている場合、バイナリのストリッピングが実行されます。

タグ: action_command_lines

--objccopt=<a string> の複数の用途が蓄積される

Objective-C/C++ ソースファイルをコンパイルするときに gcc に渡す追加オプション。

タグ: action_command_lines

--per_file_copt=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths followed by an @ and a comma separated list of options> の複数の用途が蓄積される

特定のファイルをコンパイルするときに gcc に選択的に渡す追加オプション。このオプションは複数回渡すことができます。構文: regex_filter@option_1,option_2,...,option_n。ここで、regex_filter は、正規表現パターン(--instrumentation_filter も参照)の include と exclude のリストを表します。option_1 から option_n は、任意のコマンドライン オプションを表します。オプションにカンマが含まれている場合は、バックスラッシュで囲む必要があります。オプションには @ を含めることができます。文字列の分割には最初の @ のみが使用されます。例: --per_file_copt=//foo/.*.cc,-//foo/bar.cc@-O0 は、//foo/ のすべての cc ファイル(bar.cc を除く)の gcc コマンドラインに -O0 コマンドライン オプションを追加します。

タグ: action_command_linesaffects_outputs

--per_file_ltobackendopt=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths followed by an @ and a comma separated list of options> の複数の用途が蓄積される

特定のバックエンド オブジェクトをコンパイルするときに、LTO バックエンドに選択的に渡す追加オプション(--features=thin_lto の下)。このオプションは複数回渡すことができます。構文: regex_filter@option_1,option_2,...,option_n。ここで、regex_filter は、正規表現パターンの include と exclude のリストを表します。option_1 から option_n は、任意のコマンドライン オプションを表します。オプションにカンマが含まれている場合は、バックスラッシュで囲む必要があります。オプションには @ を含めることができます。文字列の分割には最初の @ のみが使用されます。例: --per_file_ltobackendopt=//foo/.*.o,-//foo/bar.o@-O0 は、//foo/ のすべての o ファイル(bar.o を除く)の LTO バックエンド コマンドラインに -O0 コマンドライン オプションを追加します。

タグ: action_command_linesaffects_outputs

--platform_suffix=<a string> デフォルト: 説明を参照

構成ディレクトリに追加する接尾辞を指定します。

タグ: loses_incremental_stateaffects_outputsloading_and_analysis

--propeller_optimize=<a build target label> デフォルト: 説明を参照

Propeller プロファイル情報を使用してビルド ターゲットを最適化します。Propeller プロファイルは、cc プロファイルと ld プロファイルの 2 つのファイルのうち少なくとも 1 つで構成されている必要があります。このフラグは、プロペラ プロファイル入力ファイルを参照する必要があるビルドラベルを受け取ります。たとえば、ラベルを定義する BUILD ファイル(a/b/BUILD:propeller_optimize)は、name = "propeller_profile", cc_profile = "propeller_cc_profile.txt", ld_profile = "propeller_ld_profile.txt" となります。これらのファイルを Bazel に認識させるには、対応するパッケージに exports_files ディレクティブを追加する必要がある場合があります。このオプションは、--propeller_optimize=//a/b:propeller_profile のように使用する必要があります。

タグ: action_command_linesaffects_outputs

--propeller_optimize_absolute_cc_profile=<a string> デフォルト: 説明を参照

Propeller 最適化ビルドの cc_profile ファイルの絶対パス名。

タグ: affects_outputs

--propeller_optimize_absolute_ld_profile=<a string> デフォルト: 説明を参照

Propeller 最適化ビルドの ld_profile ファイルの絶対パス名。

タグ: affects_outputs

--run_under=<a prefix in front of command> デフォルト: 説明を参照

「test」コマンドと「run」コマンドの実行可能ファイルの前に追加する接頭辞。値が「foo -bar」で、実行コマンドラインが「test_binary -baz」の場合、最終的なコマンドラインは「foo -bar test_binary -baz」になります。これは実行可能ターゲットのラベルにすることもできます。たとえば、'valgrind'、'strace'、'strace -c'、'valgrind --quiet --num-callers=20'、'//package:target'、'//package:target --options' などがあります。

タグ: action_command_lines

--[no]share_native_deps デフォルト: "true"

true の場合、同一の機能を含むネイティブ ライブラリが異なるターゲット間で共有されます

タグ: loading_and_analysisaffects_outputs

--[no]stamp のデフォルト: 「false」

バイナリに日付、ユーザー名、ホスト名、ワークスペース情報などをスタンプします。

タグ: affects_outputs

--strip=<always, sometimes or never> のデフォルト: 「sometimes」

バイナリと共有ライブラリをストリップするかどうかを指定します(「-Wl,--strip-debug」を使用)。デフォルト値の 'sometimes' は、--compilation_mode=fastbuild の場合にのみストリップすることを意味します。

タグ: affects_outputs

--stripopt=<a string> の複数の用途が蓄積される

「<name>.stripped」バイナリを生成するときに strip に渡す追加のオプション。

タグ: action_command_linesaffects_outputs

--tvos_cpus=<comma-separated list of options> の複数の用途が蓄積される

Apple tvOS バイナリをビルドするアーキテクチャのカンマ区切りのリスト。

タグ: loses_incremental_stateloading_and_analysis

--tvos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

ターゲット シミュレータとデバイスの最小互換性のある tvOS バージョン。指定しない場合、「tvos_sdk_version」が使用されます。

タグ: loses_incremental_state

--visionos_cpus=<comma-separated list of options> の複数の用途が蓄積される

Apple visionOS バイナリをビルドするアーキテクチャのカンマ区切りのリスト。

タグ: loses_incremental_stateloading_and_analysis

--watchos_cpus=<comma-separated list of options> の複数の用途が蓄積される

Apple watchOS バイナリをビルドするアーキテクチャのカンマ区切りのリスト。

タグ: loses_incremental_stateloading_and_analysis

--watchos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

ターゲット シミュレータとデバイスの最小互換 watchOS バージョン。指定しない場合、'watchos_sdk_version' が使用されます。

タグ: loses_incremental_state

--xbinary_fdo=<a build target label> デフォルト: 説明を参照

XbinaryFDO プロファイル情報を使用してコンパイルを最適化します。デフォルトのクロスバイナリ プロファイルの名前を指定します。このオプションを --fdo_instrument、--fdo_optimize、--fdo_profile と組み合わせて使用すると、xbinary_fdo が指定されていないかのように、これらのオプションが常に優先されます。

タグ: affects_outputs

Bazel が有効なビルド入力(ルール定義、フラグの組み合わせなど)を厳密に適用する方法に影響するオプション:
--[no]check_visibility デフォルト: "true"

無効にすると、ターゲット依存関係の可視性エラーが警告に降格されます。

タグ: build_file_semanticsnon_configurable

--[no]desugar_for_android デフォルト: "true"

dexing の前に Java 8 バイトコードを desugar するかどうか。

タグ: affects_outputsloading_and_analysisloses_incremental_state

--[no]desugar_java8_libs のデフォルト: 「false」

レガシー デバイス向けアプリにサポートされている Java 8 ライブラリを含めるかどうか。

タグ: affects_outputsloading_and_analysisloses_incremental_stateexperimental

--[no]enforce_constraints デフォルト: "true"

各ターゲットと互換性のある環境をチェックし、同じ環境をサポートしていない依存関係がターゲットにある場合はエラーを報告します

タグ: build_file_semantics

--[no]experimental_check_desugar_deps デフォルト: "true"

Android バイナリレベルで正しい脱糖を再確認するかどうか。

タグ: eagerness_to_exitloading_and_analysisexperimental

--[no]experimental_enforce_transitive_visibility のデフォルト: 「false」

true の場合、package() が transitive_visibility 属性を設定して、依存できるパッケージを制限できるようにします。

タグ: build_file_semanticsexperimental

--experimental_one_version_enforcement=<off, warning or error> デフォルト: 「OFF」

有効にすると、java_binary ルールのクラスパスに同じクラスファイルの複数のバージョンを含めることができなくなります。この強制により、ビルドが破損したり、警告が表示されたりする可能性があります。

タグ: loading_and_analysis

--experimental_strict_java_deps=<off, warn, error, strict or default> のデフォルト: "default"

true の場合、Java ターゲットが直接使用されるすべてのターゲットを依存関係として明示的に宣言していることを確認します。

タグ: build_file_semanticseagerness_to_exit

--[no]incompatible_check_testonly_for_output_files のデフォルト: 「false」

有効になっている場合、生成ルールの testonly を調べて、出力ファイルである前提条件ターゲットの testonly を確認します。これは公開設定の確認と一致します。

タグ: build_file_semanticsincompatible_change

--[no]incompatible_disable_native_android_rules のデフォルト: 「false」

有効にすると、ネイティブの Android ルールの直接使用が無効になります。https://github.com/bazelbuild/rules_android の Starlark Android ルールを使用してください。

タグ: eagerness_to_exitincompatible_change

--[no]incompatible_disable_native_apple_binary_rule のデフォルト: 「false」

何もしません。下位互換性のためにここに残されています。

タグ: eagerness_to_exitincompatible_change

--[no]one_version_enforcement_on_java_tests デフォルト: "true"

有効で、experimental_one_version_enforcement が NONE 以外の値に設定されている場合、java_test ターゲットに 1 つのバージョンを適用します。このフラグを無効にすると、潜在的な 1 バージョン違反を見逃す代わりに、増分テストのパフォーマンスを向上させることができます。

タグ: loading_and_analysis

--python_native_rules_allowlist=<a build target label> デフォルト: 説明を参照

--incompatible_python_disallow_native_rules を適用するときに使用する許可リスト(package_group ターゲット)。

タグ: loading_and_analysis

--[no]strict_filesets のデフォルト: 「false」

このオプションを有効にすると、パッケージ境界を越えるファイルセットがエラーとして報告されます。

タグ: build_file_semanticseagerness_to_exit

--strict_proto_deps=<off, warn, error, strict or default> のデフォルト: 「error」

OFF でない限り、proto_library ターゲットが直接使用されるすべてのターゲットを依存関係として明示的に宣言していることを確認します。

タグ: build_file_semanticseagerness_to_exitincompatible_change

--strict_public_imports=<off, warn, error, strict or default> のデフォルト: 「off」

OFF でない限り、proto_library ターゲットが「import public」で使用されるすべてのターゲットをエクスポートとして明示的に宣言していることを確認します。

タグ: build_file_semanticseagerness_to_exitincompatible_change

--[no]strict_system_includes のデフォルト: 「false」

true の場合、システム インクルード パス(-isystem)で見つかったヘッダーも宣言する必要があります。

タグ: loading_and_analysiseagerness_to_exit

--target_environment=<a build target label> の複数の用途が蓄積される

このビルドのターゲット環境を宣言します。「環境」ルールへのラベル参照である必要があります。指定した場合、すべての最上位ターゲットはこの環境と互換性がある必要があります。

タグ: changes_inputs

ビルドの署名出力に影響するオプション:
--apk_signing_method=<v1, v2, v1_v2 or v4> デフォルト: "v1_v2"

APK の署名に使用する実装

タグ: action_command_linesaffects_outputsloading_and_analysis

--[no]device_debug_entitlements デフォルト: "true"

設定されていて、コンパイル モードが「opt」でない場合、objc アプリは署名時にデバッグ利用資格を含みます。

タグ: changes_inputs

--ios_signing_cert_name=<a string> デフォルト: 説明を参照

iOS 署名に使用する証明書名。設定されていない場合は、プロビジョニング プロファイルにフォールバックします。codesign の man ページ(SIGNING IDENTITIES)に記載されているように、証明書のキーチェーン ID の設定または証明書の共通名(サブストリング)の場合があります。

タグ: action_command_lines

このオプションは、Starlark 言語のセマンティクス、または BUILD ファイル、.bzl ファイル、WORKSPACE ファイルからアクセス可能なビルド API に影響します。
--[no]incompatible_disallow_sdk_frameworks_attributes のデフォルト: 「false」

true の場合、objc_library と objc_import で sdk_frameworks 属性と weak_sdk_frameworks 属性を許可しません。

タグ: build_file_semanticsincompatible_change

true の場合、objc_library と objc_import の alwayslink 属性のデフォルト値を true にします。

タグ: build_file_semanticsincompatible_change

--[no]incompatible_python_disallow_native_rules のデフォルト: 「false」

true の場合、組み込みの py_* ルールを使用するとエラーが発生します。代わりに rule_python ルールを使用する必要があります。詳細と移行手順については、https://github.com/bazelbuild/bazel/issues/17773 をご覧ください。

タグ: loading_and_analysisincompatible_change

テスト環境またはテストランナーの動作を制御するオプション:
--[no]allow_analysis_failures のデフォルト: 「false」

true の場合、ルール ターゲットの分析が失敗すると、ビルドの失敗ではなく、エラーの説明を含む AnalysisFailureInfo のインスタンスがターゲットに伝播されます。

タグ: loading_and_analysisexperimental

--analysis_testing_deps_limit=<an integer> のデフォルト: 「2000」

for_analysis_testing 構成の移行を含むルール属性を使用して、推移的依存関係の最大数を設定します。この上限を超えると、ルールエラーが発生します。

タグ: loading_and_analysis

--[no]break_build_on_parallel_dex2oat_failure のデフォルト: 「false」

true の場合、dex2oat アクションの失敗により、テスト実行時に dex2oat が実行されるのではなく、ビルドが中断されます。

タグ: loading_and_analysisexperimental

--default_test_resources=<a resource name followed by equal and 1 float or 4 float, e.g memory=10,30,60,100> の複数の用途が蓄積される

テストのデフォルトのリソース量をオーバーライドします。想定される形式は <resource>=<value> です。<value> として 1 つの正の数値を指定すると、すべてのテストサイズのデフォルトのリソースがオーバーライドされます。カンマ区切りの 4 つの数値を指定すると、それぞれ小、中、大、巨大なテストサイズの割り当て量がオーバーライドされます。値は HOST_RAM/HOST_CPU にすることもできます。オプションで [-|]<float> を続けることもできます(例: memory=HOST_RAM.1,HOST_RAM*.2,HOST_RAM*.3,HOST_RAM*.4)。このフラグで指定されたデフォルトのテストリソースは、タグで指定された明示的なリソースによってオーバーライドされます。

--[no]experimental_android_use_parallel_dex2oat のデフォルト: 「false」

android_test を高速化するために、dex2oat を並列で使用します。

タグ: loading_and_analysishost_machine_resource_optimizationsexperimental

--[no]ios_memleaks のデフォルト: 「false」

ios_test ターゲットでメモリリークのチェックを有効にします。

タグ: action_command_lines

--ios_simulator_device=<a string> デフォルト: 説明を参照

シミュレータで iOS アプリケーションを実行する際にシミュレートするデバイス(「iPhone 6」など)。デバイスのリストを取得するには、シミュレータを実行するマシンで「xcrun simctl list devicetypes」を実行します。

タグ: test_runner

--ios_simulator_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

実行またはテスト時にシミュレータで実行する iOS のバージョン。ルールでターゲット デバイスが指定されている場合、ios_test ルールでは無視されます。

タグ: test_runner

--runs_per_test=<a positive integer or test_regex@runs. This flag may be passed more than once> の複数の用途が蓄積される

各テストを実行する回数を指定します。これらの試行が何らかの理由で失敗した場合、テスト全体が失敗とみなされます。通常、指定する値は整数です。例: --runs_per_test=3 は、すべてのテストを 3 回実行します。別の構文: regex_filter@runs_per_test。ここで、runs_per_test は整数値、regex_filter は正規表現パターン(--instrumentation_filter も参照)のリストを表します。例: --runs_per_test=//foo/.,-//foo/bar/.@3 は、foo/bar の下にあるテストを除く //foo/のすべてのテストを 3 回実行します。このオプションは複数回渡すことができます。一致する引数のうち、最後に渡されたものが優先されます。一致するものがなければ、テストは 1 回だけ実行されます。

--test_env=<a 'name[=value]' assignment with an optional value part or the special syntax '=name' to unset a variable> の複数の用途が蓄積される

テストランナー環境に挿入する追加の環境変数を指定します。変数は <code>name</code> で指定できます。この場合、値は Bazel クライアント環境から読み取られます。また、<code>name=value</code> ペアで指定することもできます。以前に設定した変数は、<code>=name</code> で設定解除できます。このオプションは、複数の変数を指定するために複数回使用できます。「bazel test」コマンドでのみ使用されます。

タグ: test_runner

--test_timeout=<a single integer or comma-separated list of 4 integers> のデフォルト: 「-1」

テスト タイムアウトのデフォルトのテスト タイムアウト値(秒単位)をオーバーライドします。正の整数値を 1 つ指定すると、すべてのカテゴリがオーバーライドされます。カンマ区切りの 4 つの整数を指定すると、短時間、中時間、長時間、永続のタイムアウトが(この順序で)オーバーライドされます。どちらの形式でも、値 -1 は、そのカテゴリのデフォルトのタイムアウトを使用するように blaze に指示します。

--[no]zip_undeclared_test_outputs のデフォルト: 「false」

true の場合、未宣言のテスト出力は zip ファイルにアーカイブされます。

タグ: test_runner

ビルド時間の最適化をトリガーするオプション:
--[no]experimental_filter_library_jar_with_program_jar のデフォルト: 「false」

ProGuard ProgramJar をフィルタして、LibraryJar にも存在するクラスを削除します。

タグ: action_command_linesexperimental

--[no]experimental_inmemory_dotd_files デフォルト: "true"

有効にすると、C++ の .d ファイルはディスクに書き込まれるのではなく、リモート ビルドノードからメモリに直接渡されます。

タグ: loading_and_analysisexecutionaffects_outputsexperimental

--[no]experimental_inmemory_jdeps_files デフォルト: "true"

有効にすると、Java コンパイルから生成された依存関係(.jdeps)ファイルは、ディスクに書き込まれるのではなく、リモート ビルドノードからメモリに直接渡されます。

タグ: loading_and_analysisexecutionaffects_outputsexperimental

--[no]experimental_retain_test_configuration_across_testonly のデフォルト: 「false」

有効にすると、--trim_test_configuration は testonly=1 とマークされたルールのテスト構成をトリムしません。これは、テスト以外のルールが cc_test ルールに依存している場合に、アクションの競合の問題を軽減することを目的としています。--trim_test_configuration が false の場合、効果はありません。

タグ: loading_and_analysisloses_incremental_stateexperimental

--[no]experimental_unsupported_and_brittle_include_scanning のデフォルト: 「false」

入力ファイルから #include 行を解析して、C/C++ コンパイルの入力を絞り込むかどうか。これにより、コンパイル入力ツリーのサイズが縮小され、パフォーマンスと増分性が向上します。ただし、インクルード スキャナは C プリプロセッサのセマンティクスを完全に実装していないため、ビルドを中断する可能性もあります。特に、動的な #include ディレクティブを理解せず、プリプロセッサの条件付きロジックを無視します。ご自身の責任で操作するようお願いいたします。このフラグに関連する問題が報告された場合は、クローズされます。

タグ: loading_and_analysisexecutionchanges_inputsexperimental

--[no]incremental_dexing デフォルト: "true"

各 Jar ファイルの dexing のほとんどの作業を行います。

タグ: affects_outputsloading_and_analysisloses_incremental_state

--[no]objc_use_dotd_pruning デフォルト: "true"

設定すると、clang によって出力された .d ファイルが、objc コンパイルに渡される入力セットのプルーニングに使用されます。

タグ: changes_inputsloading_and_analysis

--[no]process_headers_in_dependencies のデフォルト: 「false」

ターゲット //a:a をビルドするときに、//a:a が依存するすべてのターゲットのヘッダーを処理します(ツールチェーンでヘッダー処理が有効になっている場合)。

タグ: execution

--[no]trim_test_configuration デフォルト: "true"

有効にすると、ビルドの最上位レベルより下のテスト関連オプションがクリアされます。このフラグが有効になっている場合、テストは非テストルールの依存関係としてビルドできませんが、テスト関連のオプションを変更しても非テストルールが再分析されることはありません。

タグ: loading_and_analysisloses_incremental_state

ロギングの冗長性、形式、場所に影響するオプション:
--toolchain_resolution_debug=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths> のデフォルト: "-.*"

ツールチェーンの解決中にデバッグ情報を出力します。このフラグは正規表現を受け取り、ツールチェーン タイプと特定のターゲットに対してチェックして、デバッグするものを確認します。複数の正規表現はカンマで区切ることができ、各正規表現は個別にチェックされます。注: このフラグの出力は非常に複雑であり、ツールチェーン解決の専門家にとってのみ有用である可能性があります。

タグ: terminal_output

--[no]verbose_visibility_errors のデフォルト: 「false」

有効にすると、可視性エラーに診断情報が追加されます。

タグ: build_file_semanticsnon_configurable

他のカテゴリに分類されない Bazel コマンドへの汎用入力を指定または変更するオプション:
--flag_alias=<a 'name=value' flag alias> の複数の用途が蓄積される

Starlark フラグの短縮名を設定します。引数として「<key>=<value>」の形式の Key-Value ペアを 1 つ取ります。

タグ: changes_inputsnon_configurable

--[no]incompatible_default_to_explicit_init_py のデフォルト: 「false」

このフラグは、デフォルトの動作を変更して、Python ターゲットの runfiles で init.py ファイルが自動的に作成されないようにします。具体的には、py_binary または py_test ターゲットの legacy_create_init が「auto」(デフォルト)に設定されている場合、このフラグが設定されている場合にのみ false として扱われます。https://github.com/bazelbuild/bazel/issues/10076 をご覧ください。

タグ: affects_outputsincompatible_change

その他のオプション(他のカテゴリに分類されないもの):
--[no]cache_test_results [-t] デフォルト: "auto"

「auto」に設定されている場合、Bazel は次の条件を満たす場合にのみテストを再実行します。(1)Bazel がテストまたはその依存関係の変更を検出した場合、(2)テストが外部としてマークされている場合、(3)--runs_per_test で複数のテスト実行がリクエストされた場合、(4)テストが以前に失敗した場合。[はい] に設定すると、Bazel は外部としてマークされたテストを除くすべてのテスト結果をキャッシュに保存します。「no」に設定すると、Bazel はテスト結果をキャッシュに保存しません。

--[no]experimental_cancel_concurrent_tests のデフォルト: 「never」

「on_failed」または「on_passed」の場合、Blaze はその結果で最初に実行されたテストで、同時に実行されているテストをキャンセルします。これは、--runs_per_test_detects_flakes と組み合わせて使用する場合にのみ有用です。

タグ: affects_outputsloading_and_analysisexperimental

--[no]experimental_fetch_all_coverage_outputs のデフォルト: 「false」

true の場合、Bazel はカバレッジ実行中に各テストのカバレッジ データ ディレクトリ全体を取得します。

タグ: affects_outputsloading_and_analysisexperimental

--[no]experimental_generate_llvm_lcov のデフォルト: 「false」

true の場合、clang のカバレッジで LCOV レポートが生成されます。

タグ: affects_outputsloading_and_analysisexperimental

--experimental_java_classpath=<off, javabuilder, bazel or bazel_no_fallback> デフォルト: "bazel"

Java コンパイルのクラスパスを削減します。

--[no]experimental_run_android_lint_on_java_rules のデフォルト: 「false」

java_* ソースを検証するかどうか。

タグ: affects_outputsexperimental

--[no]explicit_java_test_deps のデフォルト: 「false」

TestRunner の deps から誤って取得するのではなく、java_test で JUnit または Hamcrest への依存関係を明示的に指定します。現時点では bazel でのみ動作します。

--host_java_launcher=<a build target label> デフォルト: 説明を参照

ビルド中に実行されるツールで使用される Java ランチャー。

--host_javacopt=<a string> の複数の用途が蓄積される

ビルド中に実行されるツールをビルドするときに javac に渡す追加のオプション。

--host_jvmopt=<a string> の複数の用途が蓄積される

ビルド中に実行されるツールをビルドするときに Java VM に渡す追加のオプション。これらのオプションは、各 java_binary ターゲットの VM 起動オプションに追加されます。

--[no]incompatible_check_sharding_support デフォルト: "true"

true の場合、テスト ランナーが TEST_SHARD_STATUS_FILE のパスにあるファイルにタッチしてシャーディングをサポートしていることを示さないと、Bazel はシャーディングされたテストを失敗させます。false の場合、シャーディングをサポートしていないテストランナーでは、各シャードですべてのテストが実行されます。

タグ: incompatible_change

--[no]incompatible_exclusive_test_sandboxed デフォルト: "true"

true の場合、排他的テストはサンドボックス化された戦略で実行されます。ローカルで排他的なテスト実行を強制する「local」タグを追加

タグ: incompatible_change

--[no]incompatible_strict_action_env のデフォルト: 「false」

true の場合、Bazel は PATH に静的な値を持つ環境を使用し、LD_LIBRARY_PATH を継承しません。クライアントから特定の環境変数を継承する場合は、--action_env=ENV_VARIABLE を使用します。ただし、共有キャッシュが使用されている場合、この操作を行うとユーザー間のキャッシュ保存が妨げられる可能性があります。

タグ: loading_and_analysisincompatible_change

--j2objc_translation_flags=<comma-separated list of options> の複数の用途が蓄積される

J2ObjC ツールに渡す追加オプション。

--java_debug

Java テストの Java 仮想マシンが、テストを開始する前に JDWP 準拠のデバッガ(jdb など)からの接続を待機するようにします。-test_output=streamed を意味します。

展開すると次のようになります。
  --test_arg=--wrapper_script_flag=--debug
  --test_output=streamed
  --test_strategy=exclusive
  --test_timeout=9999
  --nocache_test_results

--[no]java_deps デフォルト: "true"

Java ターゲットごとに依存関係情報(現時点ではコンパイル時のクラスパス)を生成します。

--[no]java_header_compilation デフォルト: "true"

ソースから直接 ijar をコンパイルします。

--java_language_version=<a string> のデフォルト: ""

Java 言語のバージョン

--java_launcher=<a build target label> デフォルト: 説明を参照

Java バイナリのビルド時に使用する Java ランチャー。このフラグが空の文字列に設定されている場合、JDK ランチャーが使用されます。「launcher」属性はこのフラグをオーバーライドします。

--java_runtime_version=<a string> のデフォルト: 「local_jdk」

Java ランタイムのバージョン

--javacopt=<a string> の複数の用途が蓄積される

javac に渡す追加のオプション。

--jvmopt=<a string> の複数の用途が蓄積される

Java VM に渡す追加オプション。これらのオプションは、各 java_binary ターゲットの VM 起動オプションに追加されます。

--legacy_main_dex_list_generator=<a build target label> デフォルト: 説明を参照

旧式の multidex をコンパイルするときに、メイン DEX に含める必要があるクラスのリストを生成するために使用するバイナリを指定します。

--optimizing_dexer=<a build target label> デフォルト: 説明を参照

シャーディングなしで dexing を行うために使用するバイナリを指定します。

--plugin=<a build target label> の複数の用途が蓄積される

ビルドで使用するプラグイン。現在は java_plugin で動作します。

--proguard_top=<a build target label> デフォルト: 説明を参照

Java バイナリをビルドする際にコード削除に使用する ProGuard のバージョンを指定します。

--proto_compiler=<a build target label> デフォルト: "@bazel_tools//tools/proto:protoc"

proto-compiler のラベル。

タグ: affects_outputsloading_and_analysis

--[no]proto_profile デフォルト: "true"

profile_path を proto コンパイラに渡すかどうか。

タグ: affects_outputsloading_and_analysis

--proto_profile_path=<a build target label> デフォルト: 説明を参照

profile_path として proto コンパイラに渡すプロファイル。設定されていないが、--proto_profile が true(デフォルト)の場合、--fdo_optimize からパスを推測します。

タグ: affects_outputsloading_and_analysis

--proto_toolchain_for_cc=<a build target label> デフォルト: "@bazel_tools//tools/proto:cc_toolchain"

C++ proto のコンパイル方法を記述する proto_lang_toolchain() のラベル

タグ: affects_outputsloading_and_analysis

--proto_toolchain_for_j2objc=<a build target label> default: "@bazel_tools//tools/j2objc:j2objc_proto_toolchain"

j2objc プロトコルをコンパイルする方法を記述する proto_lang_toolchain() のラベル

タグ: affects_outputsloading_and_analysis

--proto_toolchain_for_java=<a build target label> デフォルト: "@bazel_tools//tools/proto:java_toolchain"

Java proto のコンパイル方法を記述する proto_lang_toolchain() のラベル

タグ: affects_outputsloading_and_analysis

--proto_toolchain_for_javalite=<a build target label> default: "@bazel_tools//tools/proto:javalite_toolchain"

JavaLite プロトコルをコンパイルする方法を記述する proto_lang_toolchain() のラベル

タグ: affects_outputsloading_and_analysis

--protocopt=<a string> の複数の用途が蓄積される

protobuf コンパイラに渡す追加オプション。

タグ: affects_outputs

--[no]runs_per_test_detects_flakes のデフォルト: 「false」

true の場合、少なくとも 1 つの実行/試行が成功し、少なくとも 1 つの実行/試行が失敗したシャードは FLAKY ステータスになります。

--shell_executable=<a path> デフォルト: 説明を参照

Bazel が使用するシェル実行可能ファイルへの絶対パス。これが設定されておらず、最初の Bazel 呼び出し(Bazel サーバーを起動する)で BAZEL_SH 環境変数が設定されている場合、Bazel はそれを使用します。どちらも設定されていない場合、Bazel は実行されているオペレーティング システムに応じてハードコードされたデフォルトのパスを使用します(Windows: c:/msys64/usr/bin/bash.exe、FreeBSD: /usr/local/bin/bash、その他すべて: /bin/bash)。bash と互換性のないシェルを使用すると、生成されたバイナリのビルドエラーやランタイム エラーが発生する可能性があります。

タグ: loading_and_analysis

--test_arg=<a string> の複数の用途が蓄積される

テスト実行ファイルに渡す追加のオプションと引数を指定します。複数回使用して、複数の引数を指定できます。複数のテストが実行される場合、各テストは同じ引数を受け取ります。「bazel test」コマンドでのみ使用されます。

--test_filter=<a string> デフォルト: 説明を参照

テスト フレームワークに転送するフィルタを指定します。実行するテストを制限するために使用されます。なお、これはビルドされるターゲットには影響しません。

--test_result_expiration=<an integer> のデフォルト: 「-1」

このオプションは非推奨であり、効果はありません。

--[no]test_runner_fail_fast のデフォルト: 「false」

テストランナーに fail fast オプションを転送します。テストランナーは、最初の失敗で実行を停止する必要があります。

--test_sharding_strategy=<explicit, disabled or forced=k where k is the number of shards to enforce> デフォルト: "explicit"

テスト シャーディングの戦略を指定します。shard_count ビルド属性が存在する場合にのみシャーディングを使用する場合は、explicit を指定します。テスト シャーディングを絶対に使用しない場合は「disabled」。'shard_count' ビルド属性に関係なく、テストに 'k' シャードを強制適用するには、'forced=k' を使用します。

--tool_java_language_version=<a string> のデフォルト: ""

ビルド中に必要なツールを実行するために使用される Java 言語のバージョン

--tool_java_runtime_version=<a string> デフォルト: "remotejdk_11"

ビルド中にツールを実行するために使用される Java ランタイム バージョン

--[no]use_ijars デフォルト: "true"

このオプションを有効にすると、Java コンパイルでインターフェース jar が使用されます。これにより、増分コンパイルが高速化されますが、エラー メッセージが異なる場合があります。

Canonicalize-flags オプション

build からすべてのオプションを継承します。

コマンドの出力を制御するオプション:
--[no]canonicalize_policy のデフォルト: 「false」

拡張とフィルタリングの後に、正規ポリシーを出力します。出力をクリーンに保つため、このオプションが true に設定されている場合、正規化されたコマンド引数は表示されません。--for_command で指定されたコマンドはフィルタされたポリシーに影響します。指定されていない場合は、デフォルトのコマンドは「build」になります。

タグ: affects_outputsterminal_output

--[no]experimental_include_default_values デフォルト: "true"

デフォルト値に設定された Starlark オプションが出力に含まれるかどうか。

タグ: affects_outputsterminal_output

このオプションは、Starlark 言語のセマンティクス、または BUILD ファイル、.bzl ファイル、WORKSPACE ファイルからアクセス可能なビルド API に影響します。
--[no]incompatible_config_setting_private_default_visibility のデフォルト: 「false」

incompatible_enforce_config_setting_visibility=false の場合、これは noop です。それ以外の場合、このフラグが false の場合、明示的な公開設定属性のない config_setting は //visibility:public になります。このフラグが true の場合、config_setting は他のすべてのルールと同じ公開設定ロジックに従います。https://github.com/bazelbuild/bazel/issues/12933 をご覧ください。

タグ: loading_and_analysisincompatible_change

--[no]incompatible_enforce_config_setting_visibility デフォルト: "true"

true の場合、config_setting の公開設定の制限を適用します。false の場合、すべての config_setting がすべてのターゲットに表示されます。https://github.com/bazelbuild/bazel/issues/12932 をご覧ください。

タグ: loading_and_analysisincompatible_change

他のカテゴリに分類されない Bazel コマンドへの汎用入力を指定または変更するオプション:
--for_command=<a string> のデフォルト: 「build」

オプションを正規化するコマンド。

タグ: affects_outputsterminal_output

--invocation_policy=<a string> のデフォルト: ""

正規化するオプションに呼び出しポリシーを適用します。

タグ: affects_outputsterminal_output

その他のオプション(他のカテゴリに分類されないもの):
--deleted_packages=<comma-separated list of package names> の複数の用途が蓄積される

ビルドシステムが、パッケージパスのどこかに表示されていても存在しないとみなすパッケージ名のカンマ区切りリスト。既存のパッケージ「x」のサブパッケージ「x/y」を削除する場合は、このオプションを使用します。たとえば、クライアントで x/y/BUILD を削除した後、別の package_path エントリによってまだ提供されているラベル「//x:y/z」が検出されると、ビルドシステムがエラーを報告することがあります。--deleted_packages x/y を指定すると、この問題を回避できます。

--[no]fetch デフォルト: "true"

コマンドが外部依存関係を取得できるようにします。false に設定すると、コマンドは依存関係のキャッシュ バージョンを使用します。キャッシュ バージョンが存在しない場合、コマンドは失敗します。

--package_path=<colon-separated list of options> デフォルト: "%workspace%"

パッケージの検索場所をコロンで区切ったリスト。「%workspace%」で始まる要素は、囲んでいるワークスペースを基準としています。省略した場合や空の場合、デフォルトは「bazel info default-package-path」の出力です。

--[no]show_loading_progress デフォルト: "true"

有効にすると、Bazel が「パッケージの読み込み中:」というメッセージを出力します。

Clean Options

build からすべてのオプションを継承します。

コマンドの出力を制御するオプション:
--[no]async のデフォルト: 「false」

true の場合、出力のクリーンアップは非同期です。このコマンドが完了すると、削除がバックグラウンドで続行される場合でも、同じクライアントで新しいコマンドを安全に実行できます。

タグ: host_machine_resource_optimizations

--[no]expunge のデフォルト: 「false」

true の場合、clean はこの bazel インスタンスの作業ツリー全体を削除します。これには、bazel で作成された一時ファイルとビルド出力ファイルがすべて含まれます。また、bazel サーバーが実行中の場合は停止します。

タグ: host_machine_resource_optimizations

--expunge_async

指定すると、この bazel インスタンスの作業ツリー全体が非同期で削除されます。これには、bazel で作成された一時ファイルとビルド出力ファイルがすべて含まれます。また、bazel サーバーが実行中の場合は停止します。このコマンドが完了すると、削除がバックグラウンドで続行される場合でも、同じクライアントで新しいコマンドを安全に実行できます。

展開すると次のようになります。
  --expunge
  --async

タグ: host_machine_resource_optimizations

構成オプション

保証オプション

test からすべてのオプションを継承します。

Cquery オプション

test からすべてのオプションを継承します。

クエリの出力とセマンティクスに関連するオプション:
--aspect_deps=<off, conservative or precise> のデフォルト: 「conservative」

出力形式が {xml,proto,record} のいずれかの場合にアスペクトの依存関係を解決する方法。「off」はアスペクトの依存関係が解決されないことを意味し、「conservative」(デフォルト)は直接依存関係のルールクラスが指定されているかどうかに関係なく、宣言されたすべてのアスペクトの依存関係が追加されることを意味し、「precise」は直接依存関係のルールクラスが指定されている場合に、アクティブになる可能性のあるアスペクトのみが追加されることを意味します。正確モードでは、単一のターゲットを評価するために他のパッケージを読み込む必要があるため、他のモードよりも遅くなります。また、正確モードでも完全に正確ではないことに注意してください。アスペクトを計算するかどうかの決定は分析フェーズで行われますが、このフェーズは「bazel query」の実行中には実行されません。

タグ: build_file_semantics

--[no]consistent_labels のデフォルト: 「false」

有効にすると、すべてのクエリ コマンドは、<code>Label</code> インスタンスに適用された Starlark <code>str</code> 関数によってラベルが出力されるかのようにラベルを出力します。これは、ルールによって出力されたさまざまなクエリ コマンドやラベルの出力を照合する必要があるツールに役立ちます。有効になっていない場合、出力フォーマッタは、出力の可読性を高めるために、実際のリポジトリ名(メイン リポジトリに対する相対名)を自由に出力できます。

タグ: terminal_output

--[no]experimental_explicit_aspects のデフォルト: 「false」

aquery、cquery: アスペクトで生成されたアクションを出力に含めるかどうか。query: no-op(アスペクトは常にフォローされます)。

タグ: terminal_output

--[no]graph:factored デフォルト: "true"

true の場合、グラフは「因数分解」されて出力されます。つまり、トポロジ的に同等のノードがマージされ、ラベルが連結されます。このオプションは --output=graph にのみ適用されます。

タグ: terminal_output

--graph:node_limit=<an integer> のデフォルト: 「512」

出力のグラフノードのラベル文字列の最大長。長いラベルは切り捨てられます。-1 は切り捨てなしを意味します。このオプションは --output=graph にのみ適用されます。

タグ: terminal_output

--[no]implicit_deps デフォルト: "true"

有効にすると、クエリが動作する依存関係グラフに暗黙的な依存関係が含まれます。暗黙的な依存関係とは、BUILD ファイルで明示的に指定されていないが、bazel によって追加される依存関係のことです。cquery の場合、このオプションは解決されたツールチェーンのフィルタリングを制御します。

タグ: build_file_semantics

--[no]include_aspects デフォルト: "true"

aquery、cquery: アスペクトで生成されたアクションを出力に含めるかどうか。query: no-op(アスペクトは常にフォローされます)。

タグ: terminal_output

--[no]incompatible_package_group_includes_double_slash デフォルト: "true"

有効にすると、package_group の packages 属性を出力するときに、先頭の // が省略されなくなります。

タグ: terminal_outputincompatible_change

--[no]infer_universe_scope のデフォルト: 「false」

設定されていて、--universe_scope が設定されていない場合、--universe_scope の値はクエリ式の固有のターゲット パターンのリストとして推測されます。ユニバース スコープ関数(allrdeps など)を使用するクエリ式に対して推論される --universe_scope 値は、目的の値ではない可能性があります。このオプションは、実行する内容を理解している場合にのみ使用してください。詳細と例については、https://bazel.build/reference/query#sky-query をご覧ください。--universe_scope が設定されている場合、このオプションの値は無視されます。注: このオプションは query にのみ適用されます(cquery には適用されません)。

タグ: loading_and_analysis

--[no]line_terminator_null のデフォルト: 「false」

各形式が改行ではなく \0 で終了するかどうか。

タグ: terminal_output

--[no]nodep_deps デフォルト: "true"

有効にすると、「nodep」属性の依存関係が、クエリが動作する依存関係グラフに含まれます。「nodep」属性の一般的な例は「visibility」です。info build-language の出力を実行して解析し、ビルド言語のすべての「nodep」属性について学習します。

タグ: build_file_semantics

--output=<a string> のデフォルト: 「label」

cquery の結果を出力する形式。cquery で使用できる値は、label、label_kind、textproto、transitions、proto、streamed_proto、jsonproto です。「transitions」を選択した場合は、--transitions=(lite|full) オプションも指定する必要があります。

タグ: terminal_output

--output_file=<a string> のデフォルト: ""

指定すると、クエリ結果がこのファイルに直接書き込まれ、Bazel の標準出力ストリーム(stdout)には何も出力されません。ベンチマークでは、通常 <code>bazel query &gt; file</code> よりも高速です。

タグ: terminal_output

--[no]proto:default_values デフォルト: "true"

true の場合、BUILD ファイルで値が明示的に指定されていない属性が含まれます。それ以外の場合は省略されます。このオプションは --output=proto に適用されます

タグ: terminal_output

--[no]proto:definition_stack のデフォルト: 「false」

definition_stack proto フィールドに入力します。このフィールドには、ルールクラスが定義された時点の Starlark 呼び出しスタックがルール インスタンスごとに記録されます。

タグ: terminal_output

--[no]proto:flatten_selects デフォルト: "true"

有効にすると、select() で作成された構成可能な属性がフラット化されます。リスト型の場合、フラット化された表現は、選択マップの各値を 1 回だけ含むリストです。スカラー型は null にフラット化されます。

タグ: build_file_semantics

--[no]proto:include_attribute_source_aspects のデフォルト: 「false」

各 Attribute の source_aspect_name proto フィールドに、属性の取得元となったソース アスペクトを入力します(取得元がない場合は空の文字列)。

タグ: terminal_output

--[no]proto:include_configurations デフォルト: "true"

有効にすると、proto 出力に構成に関する情報が含まれます。無効にすると、cquery proto 出力形式はクエリ出力形式に似たものになります。

タグ: affects_outputs

--[no]proto:include_starlark_rule_env デフォルト: "true"

生成された $internal_attr_hash 属性の値で starlark 環境を使用します。これにより、starlark ルール定義(とその推移的なインポート)がこの識別子の一部になります。

タグ: terminal_output

--[no]proto:include_synthetic_attribute_hash のデフォルト: 「false」

$internal_attr_hash 属性を計算して入力するかどうか。

タグ: terminal_output

--[no]proto:instantiation_stack のデフォルト: 「false」

各ルールのインスタンス化呼び出しスタックを設定します。これにはスタックが存在する必要があります。

タグ: terminal_output

--[no]proto:locations デフォルト: "true"

位置情報を proto 出力に出力するかどうか。

タグ: terminal_output

--proto:output_rule_attrs=<comma-separated list of options> のデフォルト: "all"

出力に含める属性のカンマ区切りのリスト。デフォルトはすべての属性です。属性を出力しない場合は、空の文字列に設定します。このオプションは --output=proto に適用されます。

タグ: terminal_output

--[no]proto:rule_classes のデフォルト: 「false」

各ルールの rule_class_key フィールドに入力します。また、特定の rule_class_key を持つ最初のルールについては、rule_class_info proto フィールドにも入力します。rule_class_key フィールドはルールクラスを一意に識別し、rule_class_info フィールドは Stardoc 形式のルールクラス API 定義です。

タグ: terminal_output

--[no]proto:rule_inputs_and_outputs デフォルト: "true"

rule_input フィールドと rule_output フィールドに値を設定するかどうか。

タグ: terminal_output

--query_file=<a string> のデフォルト: ""

設定すると、クエリはコマンドラインではなく、ここで指定された名前のファイルから読み取られます。ここでファイルとコマンドライン クエリの両方を指定するとエラーになります。

タグ: changes_inputs

--[no]relative_locations のデフォルト: 「false」

true の場合、xml と proto の出力の BUILD ファイルの場所は相対パスになります。デフォルトでは、出力される場所は絶対パスであり、マシン間で一貫性がありません。このオプションを true に設定すると、マシン間で一貫した結果が得られます。

タグ: terminal_output

--show_config_fragments=<off, direct or transitive> のデフォルト: 「off」

ルールとその推移的依存関係に必要な構成フラグメントを表示します。これは、構成されたターゲット グラフをどの程度トリミングできるかを評価するのに役立ちます。

タグ: affects_outputs

--starlark:expr=<a string> のデフォルト: ""

cquery の --output=starlark モードで構成された各ターゲットをフォーマットする Starlark 式。構成されたターゲットは「target」にバインドされます。--starlark:expr も --starlark:file も指定されていない場合、このオプションはデフォルトで「str(target.label)」になります。--starlark:expr と --starlark:file の両方を指定するとエラーになります。

タグ: terminal_output

--starlark:file=<a string> のデフォルト: ""

各構成済みターゲットに適用され、文字列としてフォーマットする 1 つの引数を持つ「format」という Starlark 関数を定義するファイルの名前。--starlark:expr と --starlark:file の両方を指定するとエラーになります。詳細については、--output=starlark のヘルプをご覧ください。

タグ: terminal_output

--[no]tool_deps デフォルト: "true"

クエリ: 無効にすると、クエリが動作する依存関係グラフに「実行構成」の依存関係が含まれなくなります。通常、'proto_library' ルールから Protocol Compiler への依存関係エッジなどの「実行構成」は、同じ「ターゲット」プログラムの一部ではなく、ビルド中に実行されるツールを指します。Cquery: 無効にすると、この構成済みターゲットを検出した最上位ターゲットから実行遷移をクロスする構成済みターゲットがすべてフィルタされます。つまり、最上位のターゲットがターゲット構成にある場合、ターゲット構成にある構成済みのターゲットのみが返されます。トップレベルのターゲットが exec 構成にある場合、exec 構成のターゲットのみが返されます。このオプションでは、解決済みのツールチェーンは除外されません。

タグ: build_file_semantics

--transitions=<full, lite or none> のデフォルト: 「none」

cquery が遷移情報を出力する形式。

タグ: affects_outputs

--universe_scope=<comma-separated list of options> のデフォルト: ""

ターゲット パターンのセット(加算と減算)のカンマ区切り。クエリは、指定されたターゲットの推移閉包によって定義されたユニバースで実行される場合があります。このオプションは、query コマンドと cquery コマンドで使用されます。cquery の場合、このオプションの入力はすべての回答がビルドされるターゲットであるため、このオプションは構成と遷移に影響する可能性があります。このオプションが指定されていない場合、トップレベル ターゲットはクエリ式から解析されたターゲットと見なされます。注: cquery の場合、このオプションを指定しないと、クエリ式から解析されたターゲットがトップレベル オプションでビルドできない場合にビルドが失敗する可能性があります。

タグ: loading_and_analysis

ビルド実行を制御するオプション:
--[no]experimental_persistent_aar_extractor のデフォルト: 「false」

ワーカーを使用して永続的な aar エクストラクタを有効にします。

タグ: executionexperimental

--[no]experimental_remotable_source_manifests のデフォルト: 「false」

ソース マニフェスト アクションをリモート可能にするかどうか

タグ: loading_and_analysisexecutionexperimental

--[no]experimental_split_coverage_postprocessing のデフォルト: 「false」

true の場合、Bazel は新しいスポーンでテストのカバレッジ後処理を実行します。

タグ: executionexperimental

--[no]experimental_strict_fileset_output のデフォルト: 「false」

このオプションを有効にすると、ファイルセットはすべての出力アーティファクトを通常のファイルとして扱います。ディレクトリをトラバースしたり、シンボリック リンクを認識したりすることはありません。

タグ: executionexperimental

--[no]incompatible_modify_execution_info_additive デフォルト: "true"

有効にすると、複数の --modify_execution_info フラグを渡すことで、追加されます。無効になっている場合は、最後のフラグのみが考慮されます。

タグ: executionaffects_outputsloading_and_analysisincompatible_change

--modify_execution_info=<regex=[+-]key,regex=[+-]key,...> の複数の用途が蓄積される

アクションのニーモニックに基づいて、アクションの実行情報からキーを追加または削除します。実行情報をサポートするアクションにのみ適用されます。多くの一般的なアクション(Genrule、CppCompile、Javac、StarlarkAction、TestRunner など)は実行情報をサポートしています。複数の値を指定する場合は、順序が重要です。これは、多くの正規表現が同じニーモニックに適用される可能性があるためです。

構文: "regex=[+-]key,regex=[+-]key,..."。

例: '.=+x,.=-y,.=+z' は、すべてのアクションの実行情報に 'x' と 'z' を追加し、'y' を削除します。「Genrule=+requires-x」は、すべての Genrule アクションの実行情報に「requires-x」を追加します。'(?!Genrule).=-requires-x' は、Genrule 以外のアクションの実行情報から 'requires-x' を削除します。

タグ: executionaffects_outputsloading_and_analysis

--persistent_android_dex_desugar

ワーカーを使用して、永続的な Android dex と desugar アクションを有効にします。

展開すると次のようになります。
  --internal_persistent_android_dex_desugar
  --strategy=Desugar=worker
  --strategy=DexBuilder=worker

タグ: host_machine_resource_optimizationsexecution

--persistent_android_resource_processor

ワーカーを使用して永続的な Android リソース プロセッサを有効にします。

次のように展開されます。
  --internal_persistent_busybox_tools
  --strategy=AaptPackage=worker
  --strategy=AndroidResourceParser=worker
  --strategy=AndroidResourceValidator=worker
  --strategy=AndroidResourceCompiler=worker
  --strategy=RClassGenerator=worker
  --strategy=AndroidResourceLink=worker
  --strategy=AndroidAapt2=worker
  --strategy=AndroidAssetMerger=worker
  --strategy=AndroidResourceMerger=worker
  --strategy=AndroidCompiledResourceMerger=worker
  --strategy=ManifestMerger=worker
  --strategy=AndroidManifestMerger=worker
  --strategy=Aapt2Optimize=worker
  --strategy=AARGenerator=worker
  --strategy=ProcessDatabinding=worker
  --strategy=GenerateDataBindingBaseClasses=worker

タグ: host_machine_resource_optimizationsexecution

--persistent_multiplex_android_dex_desugar

ワーカーを使用して、永続的な多重化された Android dex アクションと desugar アクションを有効にします。

展開すると次のようになります。
  --persistent_android_dex_desugar
  --internal_persistent_multiplex_android_dex_desugar

タグ: host_machine_resource_optimizationsexecution

--persistent_multiplex_android_resource_processor

ワーカーを使用して、永続的な多重化 Android リソース プロセッサを有効にします。

次のように展開されます。
  --persistent_android_resource_processor
  --modify_execution_info=AaptPackage=+supports-multiplex-workers
  --modify_execution_info=AndroidResourceParser=+supports-multiplex-workers
  --modify_execution_info=AndroidResourceValidator=+supports-multiplex-workers
  --modify_execution_info=AndroidResourceCompiler=+supports-multiplex-workers
  --modify_execution_info=RClassGenerator=+supports-multiplex-workers
  --modify_execution_info=AndroidResourceLink=+supports-multiplex-workers
  --modify_execution_info=AndroidAapt2=+supports-multiplex-workers
  --modify_execution_info=AndroidAssetMerger=+supports-multiplex-workers
  --modify_execution_info=AndroidResourceMerger=+supports-multiplex-workers
  --modify_execution_info=AndroidCompiledResourceMerger=+supports-multiplex-workers
  --modify_execution_info=ManifestMerger=+supports-multiplex-workers
  --modify_execution_info=AndroidManifestMerger=+supports-multiplex-workers
  --modify_execution_info=Aapt2Optimize=+supports-multiplex-workers
  --modify_execution_info=AARGenerator=+supports-multiplex-workers

タグ: host_machine_resource_optimizationsexecution

--persistent_multiplex_android_tools

永続的で多重化された Android ツール(dexing、desugaring、リソース処理)を有効にします。

展開すると次のようになります。
  --internal_persistent_multiplex_busybox_tools
  --persistent_multiplex_android_resource_processor
  --persistent_multiplex_android_dex_desugar

タグ: host_machine_resource_optimizationsexecution

--[no]use_target_platform_for_tests のデフォルト: 「false」

true の場合、テスト実行グループではなく、テストの実行にターゲット プラットフォームを使用します。

タグ: execution

アクションの実行に使用されるツールチェーンを構成するオプション:
--android_compiler=<a string> デフォルト: 説明を参照

Android ターゲット コンパイラ。

タグ: affects_outputsloading_and_analysisloses_incremental_state

--android_manifest_merger=<legacy, android or force_android> デフォルト: 「android」

android_binary ルールで使用するマニフェスト マージャーを選択します。レガシー マージャーから Android マニフェスト マージャーへの移行を支援するフラグ。

タグ: affects_outputsloading_and_analysisloses_incremental_state

--android_platforms=<a build target label> のデフォルト: ""

android_binary ターゲットが使用するプラットフォームを設定します。複数のプラットフォームが指定されている場合、バイナリはファット APK で、指定された各ターゲット プラットフォームのネイティブ バイナリが含まれます。

タグ: changes_inputsloading_and_analysisloses_incremental_state

--cc_output_directory_tag=<a string> のデフォルト: ""

構成ディレクトリに追加する接尾辞を指定します。

タグ: affects_outputs

--compiler=<a string> デフォルト: 説明を参照

ターゲットのコンパイルに使用する C++ コンパイラ。

タグ: loading_and_analysisexecution

--coverage_output_generator=<a build target label> デフォルト: "@bazel_tools//tools/test:lcov_merger"

未加工のカバレッジ レポートの後処理に使用されるバイナリの場所。これはバイナリ ターゲットである必要があります。デフォルトは「//tools/test:lcov_merger」です。

タグ: changes_inputsaffects_outputsloading_and_analysis

--coverage_report_generator=<a build target label> default: "@bazel_tools//tools/test:coverage_report_generator"

カバレッジ レポートの生成に使用されるバイナリの場所。これはバイナリ ターゲットである必要があります。デフォルトは「//tools/test:coverage_report_generator」です。

タグ: changes_inputsaffects_outputsloading_and_analysis

--coverage_support=<a build target label> default: "@bazel_tools//tools/test:coverage_support"

コード カバレッジを収集するすべてのテスト アクションの入力で必要なサポート ファイルの場所。デフォルトは「//tools/test:coverage_support」です。

タグ: changes_inputsaffects_outputsloading_and_analysis

--custom_malloc=<a build target label> デフォルト: 説明を参照

カスタム malloc 実装を指定します。この設定は、ビルドルールの malloc 属性をオーバーライドします。

タグ: changes_inputsaffects_outputs

--[no]experimental_include_xcode_execution_requirements のデフォルト: 「false」

設定されている場合は、すべての Xcode アクションに「requires-xcode:{version}」実行要件を追加します。Xcode のバージョンにハイフン付きのラベルがある場合は、「requires-xcode-label:{version_label}」実行要件も追加します。

タグ: loses_incremental_stateloading_and_analysisexecutionexperimental

--[no]experimental_prefer_mutual_xcode デフォルト: "true"

true の場合、ローカルとリモートの両方で使用可能な最新の Xcode を使用します。false の場合、または相互に利用可能なバージョンがない場合は、xcode-select で選択されたローカルの Xcode バージョンを使用します。

タグ: loses_incremental_stateexperimental

--extra_execution_platforms=<comma-separated list of options> のデフォルト: ""

アクションを実行するための実行プラットフォームとして使用できるプラットフォーム。プラットフォームは、正確なターゲットとして指定することも、ターゲット パターンとして指定することもできます。これらのプラットフォームは、register_execution_platforms() によって WORKSPACE ファイルで宣言されたプラットフォームよりも前に考慮されます。このオプションは 1 回のみ設定できます。後で設定したインスタンスは、以前のフラグ設定をオーバーライドします。

タグ: execution

--extra_toolchains=<comma-separated list of options> の複数の用途が蓄積される

ツールチェーン解決時に考慮されるツールチェーン ルール。ツールチェーンは、正確なターゲットとして指定することも、ターゲット パターンとして指定することもできます。これらのツールチェーンは、register_toolchains() によって WORKSPACE ファイルで宣言されたツールチェーンよりも前に考慮されます。

タグ: affects_outputschanges_inputsloading_and_analysis

--grte_top=<a label> デフォルト: 説明を参照

チェックインされた libc ライブラリのラベル。デフォルト値は crosstool ツールチェーンによって選択され、オーバーライドする必要はほとんどありません。

タグ: action_command_linesaffects_outputs

--host_compiler=<a string> デフォルト: 説明を参照

オペレーションなしフラグ。今後のリリースで削除される予定です。

タグ: loading_and_analysisexecution

--host_grte_top=<a label> デフォルト: 説明を参照

指定した場合、この設定は exec 構成の libc 最上位ディレクトリ(--grte_top)をオーバーライドします。

タグ: action_command_linesaffects_outputs

--host_platform=<a build target label> default: "@bazel_tools//tools:host_platform"

ホストシステムを説明するプラットフォーム ルールのラベル。

タグ: affects_outputschanges_inputsloading_and_analysis

--[no]incompatible_bazel_test_exec_run_under デフォルト: "true"

有効にすると、"bazel test --run_under=//:runner" は実行構成で "//:runner" をビルドします。無効にすると、ターゲット構成で「//:runner」がビルドされます。Bazel は実行マシンでテストを実行するため、後者の方がより正確です。これは「bazel run」には影響しません。これは常にターゲット構成で「`--run_under=//foo」をビルドします。

タグ: affects_outputsincompatible_change

--[no]incompatible_builtin_objc_strip_action デフォルト: "true"

objc リンクの一部としてストリップ アクションを出力するかどうか。

タグ: action_command_linesincompatible_change

--[no]incompatible_dont_enable_host_nonhost_crosstool_features デフォルト: "true"

true の場合、Bazel は c++ ツールチェーンで「host」機能と「nonhost」機能を有効にしません(詳しくは、https://github.com/bazelbuild/bazel/issues/7407 をご覧ください)。

タグ: loading_and_analysisincompatible_change

--[no]incompatible_enable_apple_toolchain_resolution のデフォルト: 「false」

ツールチェーン解決を使用して、apple ルール(Starlark とネイティブ)の Apple SDK を選択

タグ: loading_and_analysisincompatible_change

--[no]incompatible_remove_legacy_whole_archive デフォルト: "true"

true の場合、Bazel はデフォルトでライブラリの依存関係をアーカイブ全体としてリンクしません(移行手順については、https://github.com/bazelbuild/bazel/issues/7362 を参照)。

タグ: loading_and_analysisincompatible_change

--[no]incompatible_strip_executable_safely のデフォルト: 「false」

true の場合、実行可能ファイルのストリップ アクションは -x フラグを使用します。これにより、動的シンボルの解決が中断されません。

タグ: action_command_linesincompatible_change

--[no]interface_shared_objects デフォルト: "true"

ツールチェーンでサポートされている場合は、インターフェース共有オブジェクトを使用します。現在、すべての ELF ツールチェーンがこの設定をサポートしています。

タグ: loading_and_analysisaffects_outputsaffects_outputs

--ios_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

iOS アプリケーションのビルドに使用する iOS SDK のバージョンを指定します。指定しない場合、'xcode_version' のデフォルトの iOS SDK バージョンが使用されます。

タグ: loses_incremental_state

--macos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

macOS アプリケーションのビルドに使用する macOS SDK のバージョンを指定します。指定しない場合、'xcode_version' のデフォルトの macOS SDK バージョンを使用します。

タグ: loses_incremental_state

--minimum_os_version=<a string> デフォルト: 説明を参照

コンパイルの対象となる最小 OS バージョン。

タグ: loading_and_analysisaffects_outputs

--platform_mappings=<a main workspace-relative path> のデフォルト: ""

プラットフォームが設定されていない場合に使用するプラットフォーム、またはプラットフォームがすでに存在する場合に設定するフラグを記述するマッピング ファイルの場所。メインのワークスペースのルートを基準とした相対パスにする必要があります。デフォルトは「platform_mappings」(ワークスペース ルート直下のファイル)です。

タグ: affects_outputschanges_inputsloading_and_analysisnon_configurable

--platforms=<a build target label> のデフォルト: ""

現在のコマンドのターゲット プラットフォームを記述するプラットフォーム ルールのラベル。

タグ: affects_outputschanges_inputsloading_and_analysis

--python_path=<a string> デフォルト: 説明を参照

ターゲット プラットフォームで Python ターゲットを実行するために呼び出される Python インタープリタの絶対パス。非推奨。--incompatible_use_python_toolchains で無効になります。

タグ: loading_and_analysisaffects_outputs

--tvos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

tvOS アプリケーションのビルドに使用する tvOS SDK のバージョンを指定します。指定しない場合、'xcode_version' のデフォルトの tvOS SDK バージョンを使用します。

タグ: loses_incremental_state

--[no]use_platforms_in_apple_crosstool_transition のデフォルト: 「false」

必要に応じて、apple_crosstool_transition が以前の --cpu の代わりに --platforms フラグの値を使用するようにフォールバックします。

タグ: loading_and_analysis

--watchos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

watchOS アプリケーションのビルドに使用する watchOS SDK のバージョンを指定します。指定しない場合、'xcode_version' のデフォルトの watchOS SDK バージョンが使用されます。

タグ: loses_incremental_state

--xcode_version=<a string> デフォルト: 説明を参照

指定された場合、関連するビルド アクションに指定されたバージョンの Xcode を使用します。指定しない場合、Xcode のエグゼキュータのデフォルト バージョンが使用されます。

タグ: loses_incremental_state

--xcode_version_config=<a build target label> default: "@bazel_tools//tools/cpp:host_xcodes"

ビルド構成で Xcode のバージョンを選択するために使用される xcode_config ルールのラベル。

タグ: loses_incremental_stateloading_and_analysis

コマンドの出力を制御するオプション:
--[no]apple_generate_dsym のデフォルト: 「false」

デバッグ シンボル(.dSYM)ファイルを生成するかどうか。

タグ: affects_outputsaction_command_lines

true の場合、すべてのターゲットのランファイル シンボリック リンク フォレストをビルドします。false の場合、ローカル アクション、テスト、実行コマンドで必要な場合にのみ書き込みます。

タグ: affects_outputs

--[no]build_runfile_manifests デフォルト: "true"

true の場合、すべてのターゲットの runfiles マニフェストを書き込みます。false の場合は省略します。false の場合、ローカルテストは実行されません。

タグ: affects_outputs

--[no]build_test_dwp のデフォルト: 「false」

有効にすると、C++ テストを静的にビルドして fission を使用する場合、テスト バイナリの .dwp ファイルも自動的にビルドされます。

タグ: loading_and_analysisaffects_outputs

--cc_proto_library_header_suffixes=<comma-separated set of options> デフォルト: ".pb.h"

cc_proto_library が作成するヘッダー ファイルの接尾辞を設定します。

タグ: affects_outputsloading_and_analysis

--cc_proto_library_source_suffixes=<comma-separated set of options> デフォルト: ".pb.cc"

cc_proto_library が作成するソースファイルの接尾辞を設定します。

タグ: affects_outputsloading_and_analysis

--[no]experimental_proto_descriptor_sets_include_source_info のデフォルト: 「false」

proto_library で代替の Java API バージョンの追加アクションを実行します。

タグ: affects_outputsloading_and_analysisexperimental

--[no]experimental_save_feature_state のデフォルト: 「false」

有効化された機能とリクエストされた機能の状態をコンパイルの出力として保存します。

タグ: affects_outputsexperimental

--fission=<a set of compilation modes> デフォルト: 「no」

C++ のコンパイルとリンクに fission を使用するコンパイル モードを指定します。{'fastbuild', 'dbg', 'opt'} の任意の組み合わせ、またはすべてのモードを有効にする特別な値 'yes'、すべてのモードを無効にする特別な値 'no' を指定できます。

タグ: loading_and_analysisaction_command_linesaffects_outputs

--[no]incompatible_always_include_files_in_data デフォルト: "true"

true の場合、ネイティブ ルールはデータ依存関係の <code>DefaultInfo.files</code> をランファイルに追加します。これは、Starlark ルールの推奨動作(https://bazel.build/extending/rules#runfiles_features_to_avoid)と一致します。

タグ: affects_outputsincompatible_change

--[no]incompatible_compact_repo_mapping_manifest のデフォルト: 「false」

有効にすると、<binary>.repo_mapping ファイルは、ランファイルを提供する拡張機能によって生成されたリポジトリごとに 1 回ではなく、モジュール拡張機能のリポジトリ マッピングを 1 回だけ出力します。

タグ: affects_outputsincompatible_change

--incompatible_disable_select_on=<comma-separated set of options> のデフォルト: ""

select() での使用が無効になっているフラグのリスト。

タグ: loading_and_analysisincompatible_changenon_configurable

--[no]incompatible_filegroup_runfiles_for_data デフォルト: "true"

true の場合、srcs 属性にリストされているターゲットの runfile は、filegroup をデータ依存関係として使用するターゲットで使用できます。

タグ: incompatible_change

--[no]objc_generate_linkmap のデフォルト: 「false」

リンクマップ ファイルを生成するかどうかを指定します。

タグ: affects_outputs

--[no]save_temps のデフォルト: 「false」

設定すると、gcc からの一時的な出力が保存されます。これには、.s ファイル(アセンブラ コード)、.i ファイル(プリプロセスされた C)、.ii ファイル(プリプロセスされた C++)が含まれます。

タグ: affects_outputs

ユーザーが目的の出力を構成し、その存在ではなく値に影響を与えるオプション:
--action_env=<a 'name[=value]' assignment with an optional value part or the special syntax '=name' to unset a variable> の複数の用途が蓄積される

ターゲット構成を持つアクションで使用可能な環境変数のセットを指定します。変数は <code>name</code&gt> で指定できます。この場合、値は呼び出し環境から取得されます。また、<code>name=value</code&gt> ペアで指定することもできます。この場合、値は呼び出し環境とは無関係に設定されます。さらに、<code>=name</code&gt> で指定することもできます。この場合、その名前の変数は設定解除されます。このオプションは複数回使用できます。同じ変数に指定されたオプションは後勝ちになり、異なる変数のオプションは累積されます。<br><code>--incompatible_repo_env_ignores_action_env</code> が true でない限り、すべての <code>name=value</code> ペアはリポジトリ ルールで使用できます。

タグ: action_command_lines

--allowed_cpu_values=<comma-separated set of options> のデフォルト: ""

--cpu フラグに指定できる値。

タグ: changes_inputsaffects_outputs

--[no]android_databinding_use_androidx デフォルト: "true"

AndroidX 互換のデータ バインディング ファイルを生成します。これはデータバインディング v2 でのみ使用されます。このフラグは no-op です。

タグ: affects_outputsloading_and_analysisloses_incremental_stateexperimental

--[no]android_databinding_use_v3_4_args デフォルト: "true"

3.4.0 引数で Android データバインディング v2 を使用します。このフラグは no-op です。

タグ: affects_outputsloading_and_analysisloses_incremental_stateexperimental

--android_dynamic_mode=<off, default or fully> のデフォルト: 「off」

cc_binary が共有ライブラリを明示的に作成しない場合に、Android ルールの C++ 依存関係を動的にリンクするかどうかを決定します。「default」は、bazel が動的にリンクするかどうかを選択することを意味します。「fully」は、すべてのライブラリが動的にリンクされることを意味します。「off」は、すべてのライブラリがほぼ静的モードでリンクされることを意味します。

タグ: affects_outputsloading_and_analysis

--android_manifest_merger_order=<alphabetical, alphabetical_by_configuration or dependency> のデフォルト: 「alphabetical」

Android バイナリのマニフェスト マージツールに渡されるマニフェストの順序を設定します。ALPHABETICAL は、マニフェストが execroot を基準としたパスで並べ替えられることを意味します。ALPHABETICAL_BY_CONFIGURATION は、マニフェストが出力ディレクトリ内の構成ディレクトリに相対的なパスで並べ替えられることを意味します。DEPENDENCY は、各ライブラリのマニフェストが依存関係のマニフェストの前に来るようにマニフェストが順序付けられることを意味します。

タグ: action_command_linesexecution

--[no]android_resource_shrinking のデフォルト: 「false」

ProGuard を使用する android_binary APK のリソース圧縮を有効にします。

タグ: affects_outputsloading_and_analysis

--[no]build_python_zip デフォルト: "auto"

Python 実行可能 zip をビルドします。Windows ではオン、他のプラットフォームではオフ

タグ: affects_outputs

--catalyst_cpus=<comma-separated list of options> の複数の用途が蓄積される

Apple Catalyst バイナリをビルドするアーキテクチャのカンマ区切りリスト。

タグ: loses_incremental_stateloading_and_analysis

--[no]collect_code_coverage のデフォルト: 「false」

指定すると、Bazel はコードを計測し(可能な場合はオフライン計測を使用)、テスト中にカバレッジ情報を収集します。--instrumentation_filter に一致するターゲットのみが影響を受けます。通常、このオプションは直接指定しないでください。代わりに「bazel coverage」コマンドを使用してください。

タグ: affects_outputs

--compilation_mode=<fastbuild, dbg or opt> [-c] デフォルト: "fastbuild"

バイナリのビルドモードを指定します。値: 「fastbuild」、「dbg」、「opt」。

タグ: affects_outputsaction_command_lines

--conlyopt=<a string> の複数の用途が蓄積される

C ソースファイルをコンパイルするときに gcc に渡す追加オプション。

タグ: action_command_linesaffects_outputs

--copt=<a string> の複数の用途が蓄積される

gcc に渡す追加オプション。

タグ: action_command_linesaffects_outputs

--cpu=<a string> のデフォルト: ""

非推奨: このフラグは、下位互換性を確保するためのレガシー プラットフォーム マッピングはありますが、Blaze では内部的に使用されません。このフラグは使用しないでください。代わりに、適切なプラットフォーム定義で --platforms を使用してください。

タグ: changes_inputsaffects_outputs

--cs_fdo_absolute_path=<a string> デフォルト: 説明を参照

CSFDO プロファイル情報を使用してコンパイルを最適化します。プロファイル ファイル、未加工またはインデックス付きの LLVM プロファイル ファイルを含む zip ファイルの絶対パス名を指定します。

タグ: affects_outputs

--cs_fdo_instrument=<a string> デフォルト: 説明を参照

コンテキスト依存の FDO 計測でバイナリを生成します。Clang/LLVM コンパイラでは、実行時に未加工のプロファイル ファイルがダンプされるディレクトリ名も受け入れます。

タグ: affects_outputs

--cs_fdo_profile=<a build target label> デフォルト: 説明を参照

最適化に使用されるコンテキスト依存プロファイルを表す cs_fdo_profile。

タグ: affects_outputs

--cxxopt=<a string> の複数の用途が蓄積される

C++ ソースファイルをコンパイルするときに gcc に渡す追加オプション。

タグ: action_command_linesaffects_outputs

--define=<a 'name=value' assignment> の複数の用途が蓄積される

各 --define オプションは、ビルド変数の割り当てを指定します。変数に複数の値がある場合は、最後の値が優先されます。

タグ: changes_inputsaffects_outputs

--dynamic_mode=<off, default or fully> のデフォルト: "default"

C++ バイナリを動的にリンクするかどうかを決定します。「default」は、Bazel が動的にリンクするかどうかを選択することを意味します。「fully」は、すべてのライブラリが動的にリンクされることを意味します。「off」は、すべてのライブラリがほぼ静的モードでリンクされることを意味します。

タグ: loading_and_analysisaffects_outputs

--[no]enable_propeller_optimize_absolute_paths デフォルト: "true"

設定されている場合、プロペラ最適化の絶対パスを使用するとエラーが発生します。

タグ: affects_outputs

--[no]enable_remaining_fdo_absolute_paths デフォルト: "true"

設定されている場合、FDO の絶対パスを使用するとエラーが発生します。

タグ: affects_outputs

--[no]enable_runfiles デフォルト: "auto"

ランファイル シンボリック リンク ツリーを有効にします。デフォルトでは、Windows ではオフ、他のプラットフォームではオンです。

タグ: affects_outputs

--exec_aspects=<comma-separated list of options> の複数の用途が蓄積される

トップレベルのターゲットであるかどうかに関係なく、exec 構成のターゲットに適用されるアスペクトのカンマ区切りリスト。この機能は試験運用版であり、変更される可能性があります。

タグ: loading_and_analysis

--experimental_action_listener=<a build target label> の複数の用途が蓄積される

アスペクトに置き換えられたため、非推奨になりました。action_listener を使用して、既存のビルド アクションに extra_action をアタッチします。

タグ: executionexperimental

--[no]experimental_android_compress_java_resources のデフォルト: 「false」

APK の Java リソースを圧縮する

タグ: affects_outputsloading_and_analysisexperimental

--[no]experimental_android_databinding_v2 デフォルト: "true"

Android データ バインディング v2 を使用します。このフラグは no-op です。

タグ: affects_outputsloading_and_analysisloses_incremental_stateexperimental

--[no]experimental_android_resource_shrinking のデフォルト: 「false」

ProGuard を使用する android_binary APK のリソース圧縮を有効にします。

タグ: affects_outputsloading_and_analysisexperimental

--[no]experimental_android_rewrite_dexes_with_rex のデフォルト: 「false」

rex ツールを使用して dex ファイルを書き換える

タグ: affects_outputsloading_and_analysisloses_incremental_stateexperimental

--[no]experimental_collect_code_coverage_for_generated_files のデフォルト: 「false」

指定すると、Bazel は生成されたファイルの収集カバレッジ情報も生成します。

タグ: affects_outputsexperimental

--experimental_objc_fastbuild_options=<comma-separated list of options> のデフォルト: 「-O0,-DDEBUG=1」

これらの文字列を objc fastbuild コンパイラ オプションとして使用します。

タグ: action_command_lines

--[no]experimental_omitfp のデフォルト: 「false」

true の場合、スタック アンワインドに libunwind を使用し、-fomit-frame-pointer と -fasynchronous-unwind-tables でコンパイルします。

タグ: action_command_linesaffects_outputsexperimental

--experimental_output_paths=<off or strip> のデフォルト: 「off」

出力ツリーのどの場所にルールがその出力を書き込むか(特にマルチプラットフォーム / マルチ構成ビルドの場合)に使用するモデル。これは試験運用版です。詳しくは、https://github.com/bazelbuild/bazel/issues/6526 をご覧ください。Starlark アクションは、'execution_requirements' 辞書にキー 'supports-path-mapping' を追加することで、パス マッピングを選択できます。

タグ: loses_incremental_statebazel_internal_configurationaffects_outputsexecution

--experimental_override_platform_cpu_name=<a 'label=value' assignment> の複数の用途が蓄積される

各エントリは label=value の形式にする必要があります。ここで、label はプラットフォームを指し、values は $(TARGET_CPU) make 変数と出力パスでプラットフォームの CPU 名をオーバーライドする目的の短縮名です。--experimental_platform_in_output_dir、--incompatible_target_cpu_from_platform、--incompatible_bep_cpu_from_platform が true の場合にのみ使用されます。命名の優先度が最も高い。

タグ: affects_outputsexperimental

--[no]experimental_platform_in_output_dir のデフォルト: 「false」

true の場合、CPU の代わりにターゲット プラットフォームの短縮名が出力ディレクトリ名に使用されます。auto の場合、これは exec 構成にのみ適用されます。正確なスキームは試験運用であり、変更される可能性があります。まず、--platforms オプションの値が 1 つだけではないまれなケースでは、platforms オプションのハッシュが使用されます。次に、現在のプラットフォームの短縮名が --experimental_override_name_platform_in_output_dir で登録されている場合は、その短縮名が使用されます。次に、--experimental_use_platforms_in_output_dir_legacy_heuristic が設定されている場合は、現在のプラットフォーム ラベルに基づく短縮名を使用します。最後に、プラットフォーム オプションのハッシュが最後の手段として使用されます。

タグ: affects_outputsexperimental

--[no]experimental_py_binaries_include_label のデフォルト: 「false」

py_binary ターゲットには、スタンピングが無効になっている場合でもラベルが含まれます。

タグ: affects_outputsexperimental

--[no]experimental_use_llvm_covmap のデフォルト: 「false」

指定した場合、collect_code_coverage が有効になっていると、Bazel は gcov ではなく llvm-cov カバレッジ マップ情報を生成します。

タグ: changes_inputsaffects_outputsloading_and_analysisexperimental

--[no]experimental_use_platforms_in_output_dir_legacy_heuristic デフォルト: "true"

このフラグは、移行またはテストの推奨戦略の一部としてのみ使用してください。このヒューリスティックには既知の欠陥があるため、--experimental_override_name_platform_in_output_dir のみに依存するように移行することをおすすめします。

タグ: affects_outputsexperimental

--fdo_instrument=<a string> デフォルト: 説明を参照

FDO 計測でバイナリを生成します。Clang/LLVM コンパイラでは、実行時に未加工のプロファイル ファイルがダンプされるディレクトリ名も受け入れます。

タグ: affects_outputs

--fdo_optimize=<a string> デフォルト: 説明を参照

FDO プロファイル情報を使用してコンパイルを最適化します。.gcda ファイルツリーを含む zip ファイル、自動プロファイルを含む afdo ファイル、または LLVM プロファイル ファイルの名前を指定します。このフラグは、ラベルとして指定されたファイル(例: //foo/bar:file.afdo。対応するパッケージに exports_files ディレクティブを追加する必要がある場合があります)と、fdo_profile ターゲットを指すラベルも受け入れます。このフラグは fdo_profile ルールに置き換えられます。

タグ: affects_outputs

--fdo_prefetch_hints=<a build target label> デフォルト: 説明を参照

キャッシュ プリフェッチ ヒントを使用します。

タグ: affects_outputs

--fdo_profile=<a build target label> デフォルト: 説明を参照

最適化に使用するプロファイルを表す fdo_profile。

タグ: affects_outputs

--features=<a string> の複数の用途が蓄積される

指定された機能は、ターゲット構成でビルドされたターゲットに対してデフォルトで有効または無効になります。-<feature> を指定すると、機能が無効になります。除外機能は常に非除外機能をオーバーライドします。--host_features もご覧ください

タグ: changes_inputsaffects_outputs

--[no]force_pic のデフォルト: 「false」

有効にすると、すべての C++ コンパイルで位置独立コード(「-fPIC」)が生成され、リンクでは PIC 以外のライブラリよりも PIC 事前構築済みライブラリが優先され、リンクでは位置独立実行可能ファイル(「-pie」)が生成されます。

タグ: loading_and_analysisaffects_outputs

--host_action_env=<a 'name[=value]' assignment with an optional value part or the special syntax '=name' to unset a variable> の複数の用途が蓄積される

実行構成を持つアクションで使用可能な環境変数のセットを指定します。変数は名前で指定できます。この場合、値は呼び出し環境から取得されます。また、name=value ペアで指定することもできます。この場合、値は呼び出し環境とは無関係に設定されます。さらに、<code>=name</code> で指定することもできます。この場合、その名前の変数は設定解除されます。このオプションは複数回使用できます。同じ変数に指定されたオプションは後勝ちとなり、異なる変数のオプションは累積されます。

タグ: action_command_lines

--host_compilation_mode=<fastbuild, dbg or opt> デフォルト: "opt"

ビルド中に使用されるツールのビルドモードを指定します。値: 「fastbuild」、「dbg」、「opt」。

タグ: affects_outputsaction_command_lines

--host_conlyopt=<a string> の複数の用途が蓄積される

実行構成で C(C++ ではない)ソースファイルをコンパイルするときに C コンパイラに渡す追加オプション。

タグ: action_command_linesaffects_outputs

--host_copt=<a string> の複数の用途が蓄積される

実行構成でビルドされたツールに対して C コンパイラに渡す追加オプション。

タグ: action_command_linesaffects_outputs

--host_cpu=<a string> のデフォルト: ""

ホスト CPU。

タグ: changes_inputsaffects_outputs

--host_cxxopt=<a string> の複数の用途が蓄積される

実行構成でビルドされたツール用に C++ コンパイラに渡す追加オプション。

タグ: action_command_linesaffects_outputs

--host_features=<a string> の複数の用途が蓄積される

指定された機能は、exec 構成でビルドされたターゲットに対してデフォルトで有効または無効になります。-<feature> を指定すると、機能が無効になります。除外機能は常に非除外機能をオーバーライドします。

タグ: changes_inputsaffects_outputs

--host_linkopt=<a string> の複数の用途が蓄積される

実行構成でツールをリンクするときにリンカーに渡す追加オプション。

タグ: action_command_linesaffects_outputs

--host_macos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

ホスト ターゲットの最小互換性のある macOS バージョン。指定しない場合、macos_sdk_version が使用されます。

タグ: loses_incremental_state

--host_per_file_copt=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths followed by an @ and a comma separated list of options> の複数の用途が蓄積される

実行構成で特定のファイルをコンパイルするときに、C/C++ コンパイラに選択的に渡す追加オプション。このオプションは複数回渡すことができます。構文: regex_filter@option_1,option_2,...,option_n。ここで、regex_filter は、正規表現パターン(--instrumentation_filter も参照)の include と exclude のリストを表します。option_1 から option_n は、任意のコマンドライン オプションを表します。オプションにカンマが含まれている場合は、バックスラッシュで囲む必要があります。オプションには @ を含めることができます。文字列の分割には最初の @ のみが使用されます。例: --host_per_file_copt=//foo/.*.cc,-//foo/bar.cc@-O0 は、//foo/ 内の bar.cc 以外のすべての cc ファイルの gcc コマンドラインに -O0 コマンドライン オプションを追加します。

タグ: action_command_linesaffects_outputs

--[no]incompatible_auto_exec_groups のデフォルト: 「false」

有効にすると、ルールで使用されるツールチェーンごとに実行グループが自動的に作成されます。このルールを機能させるには、アクションで toolchain パラメータを指定する必要があります。詳細については、https://github.com/bazelbuild/bazel/issues/17134 をご覧ください。

タグ: affects_outputsincompatible_change

--[no]incompatible_merge_genfiles_directory デフォルト: "true"

true の場合、genfiles ディレクトリは bin ディレクトリに折りたたまれます。

タグ: affects_outputsincompatible_change

--[no]incompatible_target_cpu_from_platform デフォルト: "true"

指定されている場合、ターゲット プラットフォームの CPU 制約(@platforms//cpu:cpu)の値を使用して、$(TARGET_CPU) メイク変数を設定します。

タグ: loading_and_analysisincompatible_change

--[no]instrument_test_targets のデフォルト: 「false」

カバレッジが有効な場合に、テストルールの計測を考慮するかどうかを指定します。設定すると、--instrumentation_filter で指定されたテストルールがインストルメント化されます。それ以外の場合、テストルールは常にカバレッジ計測から除外されます。

タグ: affects_outputs

--instrumentation_filter=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths> デフォルト: "-/javatests[/:],-/test/java[/:]"

カバレッジが有効になっている場合、指定された正規表現ベースのフィルタに含まれる名前のルールのみが計測されます。代わりに、接頭辞「-」が付いたルールが除外されます。--instrument_test_targets が有効になっていない限り、テスト以外のルールのみが計測されます。

タグ: affects_outputs

--ios_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

ターゲット シミュレータとデバイスの最小互換性 iOS バージョン。指定しない場合、'ios_sdk_version' が使用されます。

タグ: loses_incremental_state

--ios_multi_cpus=<comma-separated list of options> の複数の用途が蓄積される

ios_application のビルドに使用するアーキテクチャのカンマ区切りのリスト。結果として、指定されたすべてのアーキテクチャを含むユニバーサル バイナリが生成されます。

タグ: loses_incremental_stateloading_and_analysis

--[no]legacy_whole_archive デフォルト: "true"

非推奨。--incompatible_remove_legacy_whole_archive に置き換えられました(詳しくは https://github.com/bazelbuild/bazel/issues/7362 をご覧ください)。オンの場合、linkshared=True で、linkopts に linkstatic=True または '-static' のいずれかがある cc_binary ルールに --whole-archive を使用します。これは下位互換性のためにのみ存在します。より良い方法は、必要に応じて alwayslink=1 を使用することです。

タグ: action_command_linesaffects_outputsdeprecated

--linkopt=<a string> の複数の用途が蓄積される

リンク時に gcc に渡す追加オプション。

タグ: action_command_linesaffects_outputs

--ltobackendopt=<a string> の複数の用途が蓄積される

LTO バックエンド ステップに渡す追加オプション(--features=thin_lto の下)。

タグ: action_command_linesaffects_outputs

--ltoindexopt=<a string> の複数の用途が蓄積される

LTO インデックス作成ステップに渡す追加オプション(--features=thin_lto の下)。

タグ: action_command_linesaffects_outputs

--macos_cpus=<comma-separated list of options> の複数の用途が蓄積される

Apple macOS バイナリをビルドするアーキテクチャのカンマ区切りリスト。

タグ: loses_incremental_stateloading_and_analysis

--macos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

ターゲットの互換性のある最小 macOS バージョン。指定しない場合、macos_sdk_version が使用されます。

タグ: loses_incremental_state

--memprof_profile=<a build target label> デフォルト: 説明を参照

memprof プロファイルを使用します。

タグ: affects_outputs

--[no]objc_debug_with_GLIBCXX のデフォルト: 「false」

設定されていて、コンパイル モードが「dbg」に設定されている場合、GLIBCXX_DEBUG、GLIBCXX_DEBUG_PEDANTIC、GLIBCPP_CONCEPT_CHECKS を定義します。

タグ: action_command_lines

--[no]objc_enable_binary_stripping のデフォルト: 「false」

リンクされたバイナリでシンボルとデッドコードの削除を行うかどうか。このフラグと --compilation_mode=opt の両方が指定されている場合、バイナリのストリッピングが実行されます。

タグ: action_command_lines

--objccopt=<a string> の複数の用途が蓄積される

Objective-C/C++ ソースファイルをコンパイルするときに gcc に渡す追加オプション。

タグ: action_command_lines

--per_file_copt=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths followed by an @ and a comma separated list of options> の複数の用途が蓄積される

特定のファイルをコンパイルするときに gcc に選択的に渡す追加オプション。このオプションは複数回渡すことができます。構文: regex_filter@option_1,option_2,...,option_n。ここで、regex_filter は、正規表現パターン(--instrumentation_filter も参照)の include と exclude のリストを表します。option_1 から option_n は、任意のコマンドライン オプションを表します。オプションにカンマが含まれている場合は、バックスラッシュで囲む必要があります。オプションには @ を含めることができます。文字列の分割には最初の @ のみが使用されます。例: --per_file_copt=//foo/.*.cc,-//foo/bar.cc@-O0 は、//foo/ のすべての cc ファイル(bar.cc を除く)の gcc コマンドラインに -O0 コマンドライン オプションを追加します。

タグ: action_command_linesaffects_outputs

--per_file_ltobackendopt=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths followed by an @ and a comma separated list of options> の複数の用途が蓄積される

特定のバックエンド オブジェクトをコンパイルするときに、LTO バックエンドに選択的に渡す追加オプション(--features=thin_lto の下)。このオプションは複数回渡すことができます。構文: regex_filter@option_1,option_2,...,option_n。ここで、regex_filter は、正規表現パターンの include と exclude のリストを表します。option_1 から option_n は、任意のコマンドライン オプションを表します。オプションにカンマが含まれている場合は、バックスラッシュで囲む必要があります。オプションには @ を含めることができます。文字列の分割には最初の @ のみが使用されます。例: --per_file_ltobackendopt=//foo/.*.o,-//foo/bar.o@-O0 は、//foo/ のすべての o ファイル(bar.o を除く)の LTO バックエンド コマンドラインに -O0 コマンドライン オプションを追加します。

タグ: action_command_linesaffects_outputs

--platform_suffix=<a string> デフォルト: 説明を参照

構成ディレクトリに追加する接尾辞を指定します。

タグ: loses_incremental_stateaffects_outputsloading_and_analysis

--propeller_optimize=<a build target label> デフォルト: 説明を参照

Propeller プロファイル情報を使用してビルド ターゲットを最適化します。Propeller プロファイルは、cc プロファイルと ld プロファイルの 2 つのファイルのうち少なくとも 1 つで構成されている必要があります。このフラグは、プロペラ プロファイル入力ファイルを参照する必要があるビルドラベルを受け取ります。たとえば、ラベルを定義する BUILD ファイル(a/b/BUILD:propeller_optimize)は、name = "propeller_profile", cc_profile = "propeller_cc_profile.txt", ld_profile = "propeller_ld_profile.txt" となります。これらのファイルを Bazel に認識させるには、対応するパッケージに exports_files ディレクティブを追加する必要がある場合があります。このオプションは、--propeller_optimize=//a/b:propeller_profile のように使用する必要があります。

タグ: action_command_linesaffects_outputs

--propeller_optimize_absolute_cc_profile=<a string> デフォルト: 説明を参照

Propeller 最適化ビルドの cc_profile ファイルの絶対パス名。

タグ: affects_outputs

--propeller_optimize_absolute_ld_profile=<a string> デフォルト: 説明を参照

Propeller 最適化ビルドの ld_profile ファイルの絶対パス名。

タグ: affects_outputs

--run_under=<a prefix in front of command> デフォルト: 説明を参照

「test」コマンドと「run」コマンドの実行可能ファイルの前に追加する接頭辞。値が「foo -bar」で、実行コマンドラインが「test_binary -baz」の場合、最終的なコマンドラインは「foo -bar test_binary -baz」になります。これは実行可能ターゲットのラベルにすることもできます。たとえば、'valgrind'、'strace'、'strace -c'、'valgrind --quiet --num-callers=20'、'//package:target'、'//package:target --options' などがあります。

タグ: action_command_lines

--[no]share_native_deps デフォルト: "true"

true の場合、同一の機能を含むネイティブ ライブラリが異なるターゲット間で共有されます

タグ: loading_and_analysisaffects_outputs

--[no]stamp のデフォルト: 「false」

バイナリに日付、ユーザー名、ホスト名、ワークスペース情報などをスタンプします。

タグ: affects_outputs

--strip=<always, sometimes or never> のデフォルト: 「sometimes」

バイナリと共有ライブラリをストリップするかどうかを指定します(「-Wl,--strip-debug」を使用)。デフォルト値の 'sometimes' は、--compilation_mode=fastbuild の場合にのみストリップすることを意味します。

タグ: affects_outputs

--stripopt=<a string> の複数の用途が蓄積される

「<name>.stripped」バイナリを生成するときに strip に渡す追加のオプション。

タグ: action_command_linesaffects_outputs

--tvos_cpus=<comma-separated list of options> の複数の用途が蓄積される

Apple tvOS バイナリをビルドするアーキテクチャのカンマ区切りのリスト。

タグ: loses_incremental_stateloading_and_analysis

--tvos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

ターゲット シミュレータとデバイスの最小互換性のある tvOS バージョン。指定しない場合、「tvos_sdk_version」が使用されます。

タグ: loses_incremental_state

--visionos_cpus=<comma-separated list of options> の複数の用途が蓄積される

Apple visionOS バイナリをビルドするアーキテクチャのカンマ区切りのリスト。

タグ: loses_incremental_stateloading_and_analysis

--watchos_cpus=<comma-separated list of options> の複数の用途が蓄積される

Apple watchOS バイナリをビルドするアーキテクチャのカンマ区切りのリスト。

タグ: loses_incremental_stateloading_and_analysis

--watchos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

ターゲット シミュレータとデバイスの最小互換 watchOS バージョン。指定しない場合、'watchos_sdk_version' が使用されます。

タグ: loses_incremental_state

--xbinary_fdo=<a build target label> デフォルト: 説明を参照

XbinaryFDO プロファイル情報を使用してコンパイルを最適化します。デフォルトのクロスバイナリ プロファイルの名前を指定します。このオプションを --fdo_instrument、--fdo_optimize、--fdo_profile と組み合わせて使用すると、xbinary_fdo が指定されていないかのように、これらのオプションが常に優先されます。

タグ: affects_outputs

Bazel が有効なビルド入力(ルール定義、フラグの組み合わせなど)を厳密に適用する方法に影響するオプション:
--[no]check_visibility デフォルト: "true"

無効にすると、ターゲット依存関係の可視性エラーが警告に降格されます。

タグ: build_file_semanticsnon_configurable

--[no]desugar_for_android デフォルト: "true"

dexing の前に Java 8 バイトコードを desugar するかどうか。

タグ: affects_outputsloading_and_analysisloses_incremental_state

--[no]desugar_java8_libs のデフォルト: 「false」

レガシー デバイス向けアプリにサポートされている Java 8 ライブラリを含めるかどうか。

タグ: affects_outputsloading_and_analysisloses_incremental_stateexperimental

--[no]enforce_constraints デフォルト: "true"

各ターゲットと互換性のある環境をチェックし、同じ環境をサポートしていない依存関係がターゲットにある場合はエラーを報告します

タグ: build_file_semantics

--[no]experimental_check_desugar_deps デフォルト: "true"

Android バイナリレベルで正しい脱糖を再確認するかどうか。

タグ: eagerness_to_exitloading_and_analysisexperimental

--[no]experimental_enforce_transitive_visibility のデフォルト: 「false」

true の場合、package() が transitive_visibility 属性を設定して、依存できるパッケージを制限できるようにします。

タグ: build_file_semanticsexperimental

--experimental_one_version_enforcement=<off, warning or error> デフォルト: 「OFF」

有効にすると、java_binary ルールのクラスパスに同じクラスファイルの複数のバージョンを含めることができなくなります。この強制により、ビルドが破損したり、警告が表示されたりする可能性があります。

タグ: loading_and_analysis

--experimental_strict_java_deps=<off, warn, error, strict or default> のデフォルト: "default"

true の場合、Java ターゲットが直接使用されるすべてのターゲットを依存関係として明示的に宣言していることを確認します。

タグ: build_file_semanticseagerness_to_exit

--[no]incompatible_check_testonly_for_output_files のデフォルト: 「false」

有効になっている場合、生成ルールの testonly を調べて、出力ファイルである前提条件ターゲットの testonly を確認します。これは公開設定の確認と一致します。

タグ: build_file_semanticsincompatible_change

--[no]incompatible_disable_native_android_rules のデフォルト: 「false」

有効にすると、ネイティブの Android ルールの直接使用が無効になります。https://github.com/bazelbuild/rules_android の Starlark Android ルールを使用してください。

タグ: eagerness_to_exitincompatible_change

--[no]incompatible_disable_native_apple_binary_rule のデフォルト: 「false」

何もしません。下位互換性のためにここに残されています。

タグ: eagerness_to_exitincompatible_change

--[no]one_version_enforcement_on_java_tests デフォルト: "true"

有効で、experimental_one_version_enforcement が NONE 以外の値に設定されている場合、java_test ターゲットに 1 つのバージョンを適用します。このフラグを無効にすると、潜在的な 1 バージョン違反を見逃す代わりに、増分テストのパフォーマンスを向上させることができます。

タグ: loading_and_analysis

--python_native_rules_allowlist=<a build target label> デフォルト: 説明を参照

--incompatible_python_disallow_native_rules を適用するときに使用する許可リスト(package_group ターゲット)。

タグ: loading_and_analysis

--[no]strict_filesets のデフォルト: 「false」

このオプションを有効にすると、パッケージ境界を越えるファイルセットがエラーとして報告されます。

タグ: build_file_semanticseagerness_to_exit

--strict_proto_deps=<off, warn, error, strict or default> のデフォルト: 「error」

OFF でない限り、proto_library ターゲットが直接使用されるすべてのターゲットを依存関係として明示的に宣言していることを確認します。

タグ: build_file_semanticseagerness_to_exitincompatible_change

--strict_public_imports=<off, warn, error, strict or default> のデフォルト: 「off」

OFF でない限り、proto_library ターゲットが「import public」で使用されるすべてのターゲットをエクスポートとして明示的に宣言していることを確認します。

タグ: build_file_semanticseagerness_to_exitincompatible_change

--[no]strict_system_includes のデフォルト: 「false」

true の場合、システム インクルード パス(-isystem)で見つかったヘッダーも宣言する必要があります。

タグ: loading_and_analysiseagerness_to_exit

--target_environment=<a build target label> の複数の用途が蓄積される

このビルドのターゲット環境を宣言します。「環境」ルールへのラベル参照である必要があります。指定した場合、すべての最上位ターゲットはこの環境と互換性がある必要があります。

タグ: changes_inputs

ビルドの署名出力に影響するオプション:
--apk_signing_method=<v1, v2, v1_v2 or v4> デフォルト: "v1_v2"

APK の署名に使用する実装

タグ: action_command_linesaffects_outputsloading_and_analysis

--[no]device_debug_entitlements デフォルト: "true"

設定されていて、コンパイル モードが「opt」でない場合、objc アプリは署名時にデバッグ利用資格を含みます。

タグ: changes_inputs

--ios_signing_cert_name=<a string> デフォルト: 説明を参照

iOS 署名に使用する証明書名。設定されていない場合は、プロビジョニング プロファイルにフォールバックします。codesign の man ページ(SIGNING IDENTITIES)に記載されているように、証明書のキーチェーン ID の設定または証明書の共通名(サブストリング)の場合があります。

タグ: action_command_lines

このオプションは、Starlark 言語のセマンティクス、または BUILD ファイル、.bzl ファイル、WORKSPACE ファイルからアクセス可能なビルド API に影響します。
--[no]incompatible_disallow_sdk_frameworks_attributes のデフォルト: 「false」

true の場合、objc_library と objc_import で sdk_frameworks 属性と weak_sdk_frameworks 属性を許可しません。

タグ: build_file_semanticsincompatible_change

true の場合、objc_library と objc_import の alwayslink 属性のデフォルト値を true にします。

タグ: build_file_semanticsincompatible_change

--[no]incompatible_python_disallow_native_rules のデフォルト: 「false」

true の場合、組み込みの py_* ルールを使用するとエラーが発生します。代わりに rule_python ルールを使用する必要があります。詳細と移行手順については、https://github.com/bazelbuild/bazel/issues/17773 をご覧ください。

タグ: loading_and_analysisincompatible_change

テスト環境またはテストランナーの動作を制御するオプション:
--[no]allow_analysis_failures のデフォルト: 「false」

true の場合、ルール ターゲットの分析が失敗すると、ビルドの失敗ではなく、エラーの説明を含む AnalysisFailureInfo のインスタンスがターゲットに伝播されます。

タグ: loading_and_analysisexperimental

--analysis_testing_deps_limit=<an integer> のデフォルト: 「2000」

for_analysis_testing 構成の移行を含むルール属性を使用して、推移的依存関係の最大数を設定します。この上限を超えると、ルールエラーが発生します。

タグ: loading_and_analysis

--[no]break_build_on_parallel_dex2oat_failure のデフォルト: 「false」

true の場合、dex2oat アクションの失敗により、テスト実行時に dex2oat が実行されるのではなく、ビルドが中断されます。

タグ: loading_and_analysisexperimental

--default_test_resources=<a resource name followed by equal and 1 float or 4 float, e.g memory=10,30,60,100> の複数の用途が蓄積される

テストのデフォルトのリソース量をオーバーライドします。想定される形式は <resource>=<value> です。<value> として 1 つの正の数値を指定すると、すべてのテストサイズのデフォルトのリソースがオーバーライドされます。カンマ区切りの 4 つの数値を指定すると、それぞれ小、中、大、巨大なテストサイズの割り当て量がオーバーライドされます。値は HOST_RAM/HOST_CPU にすることもできます。オプションで [-|]<float> を続けることもできます(例: memory=HOST_RAM.1,HOST_RAM*.2,HOST_RAM*.3,HOST_RAM*.4)。このフラグで指定されたデフォルトのテストリソースは、タグで指定された明示的なリソースによってオーバーライドされます。

--[no]experimental_android_use_parallel_dex2oat のデフォルト: 「false」

android_test を高速化するために、dex2oat を並列で使用します。

タグ: loading_and_analysishost_machine_resource_optimizationsexperimental

--[no]ios_memleaks のデフォルト: 「false」

ios_test ターゲットでメモリリークのチェックを有効にします。

タグ: action_command_lines

--ios_simulator_device=<a string> デフォルト: 説明を参照

シミュレータで iOS アプリケーションを実行する際にシミュレートするデバイス(「iPhone 6」など)。デバイスのリストを取得するには、シミュレータを実行するマシンで「xcrun simctl list devicetypes」を実行します。

タグ: test_runner

--ios_simulator_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

実行またはテスト時にシミュレータで実行する iOS のバージョン。ルールでターゲット デバイスが指定されている場合、ios_test ルールでは無視されます。

タグ: test_runner

--runs_per_test=<a positive integer or test_regex@runs. This flag may be passed more than once> の複数の用途が蓄積される

各テストを実行する回数を指定します。これらの試行が何らかの理由で失敗した場合、テスト全体が失敗とみなされます。通常、指定する値は整数です。例: --runs_per_test=3 は、すべてのテストを 3 回実行します。別の構文: regex_filter@runs_per_test。ここで、runs_per_test は整数値、regex_filter は正規表現パターン(--instrumentation_filter も参照)のリストを表します。例: --runs_per_test=//foo/.,-//foo/bar/.@3 は、foo/bar の下にあるテストを除く //foo/のすべてのテストを 3 回実行します。このオプションは複数回渡すことができます。一致する引数のうち、最後に渡されたものが優先されます。一致するものがなければ、テストは 1 回だけ実行されます。

--test_env=<a 'name[=value]' assignment with an optional value part or the special syntax '=name' to unset a variable> の複数の用途が蓄積される

テストランナー環境に挿入する追加の環境変数を指定します。変数は <code>name</code> で指定できます。この場合、値は Bazel クライアント環境から読み取られます。また、<code>name=value</code> ペアで指定することもできます。以前に設定した変数は、<code>=name</code> で設定解除できます。このオプションは、複数の変数を指定するために複数回使用できます。「bazel test」コマンドでのみ使用されます。

タグ: test_runner

--test_timeout=<a single integer or comma-separated list of 4 integers> のデフォルト: 「-1」

テスト タイムアウトのデフォルトのテスト タイムアウト値(秒単位)をオーバーライドします。正の整数値を 1 つ指定すると、すべてのカテゴリがオーバーライドされます。カンマ区切りの 4 つの整数を指定すると、短時間、中時間、長時間、永続のタイムアウトが(この順序で)オーバーライドされます。どちらの形式でも、値 -1 は、そのカテゴリのデフォルトのタイムアウトを使用するように blaze に指示します。

--[no]zip_undeclared_test_outputs のデフォルト: 「false」

true の場合、未宣言のテスト出力は zip ファイルにアーカイブされます。

タグ: test_runner

ビルド時間の最適化をトリガーするオプション:
--[no]experimental_filter_library_jar_with_program_jar のデフォルト: 「false」

ProGuard ProgramJar をフィルタして、LibraryJar にも存在するクラスを削除します。

タグ: action_command_linesexperimental

--[no]experimental_inmemory_dotd_files デフォルト: "true"

有効にすると、C++ の .d ファイルはディスクに書き込まれるのではなく、リモート ビルドノードからメモリに直接渡されます。

タグ: loading_and_analysisexecutionaffects_outputsexperimental

--[no]experimental_inmemory_jdeps_files デフォルト: "true"

有効にすると、Java コンパイルから生成された依存関係(.jdeps)ファイルは、ディスクに書き込まれるのではなく、リモート ビルドノードからメモリに直接渡されます。

タグ: loading_and_analysisexecutionaffects_outputsexperimental

--[no]experimental_retain_test_configuration_across_testonly のデフォルト: 「false」

有効にすると、--trim_test_configuration は testonly=1 とマークされたルールのテスト構成をトリムしません。これは、テスト以外のルールが cc_test ルールに依存している場合に、アクションの競合の問題を軽減することを目的としています。--trim_test_configuration が false の場合、効果はありません。

タグ: loading_and_analysisloses_incremental_stateexperimental

--[no]experimental_unsupported_and_brittle_include_scanning のデフォルト: 「false」

入力ファイルから #include 行を解析して、C/C++ コンパイルの入力を絞り込むかどうか。これにより、コンパイル入力ツリーのサイズが縮小され、パフォーマンスと増分性が向上します。ただし、インクルード スキャナは C プリプロセッサのセマンティクスを完全に実装していないため、ビルドを中断する可能性もあります。特に、動的な #include ディレクティブを理解せず、プリプロセッサの条件付きロジックを無視します。ご自身の責任で操作するようお願いいたします。このフラグに関連する問題が報告された場合は、クローズされます。

タグ: loading_and_analysisexecutionchanges_inputsexperimental

--[no]incremental_dexing デフォルト: "true"

各 Jar ファイルの dexing のほとんどの作業を行います。

タグ: affects_outputsloading_and_analysisloses_incremental_state

--[no]objc_use_dotd_pruning デフォルト: "true"

設定すると、clang によって出力された .d ファイルが、objc コンパイルに渡される入力セットのプルーニングに使用されます。

タグ: changes_inputsloading_and_analysis

--[no]process_headers_in_dependencies のデフォルト: 「false」

ターゲット //a:a をビルドするときに、//a:a が依存するすべてのターゲットのヘッダーを処理します(ツールチェーンでヘッダー処理が有効になっている場合)。

タグ: execution

--[no]trim_test_configuration デフォルト: "true"

有効にすると、ビルドの最上位レベルより下のテスト関連オプションがクリアされます。このフラグが有効になっている場合、テストは非テストルールの依存関係としてビルドできませんが、テスト関連のオプションを変更しても非テストルールが再分析されることはありません。

タグ: loading_and_analysisloses_incremental_state

ロギングの冗長性、形式、場所に影響するオプション:
--toolchain_resolution_debug=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths> のデフォルト: "-.*"

ツールチェーンの解決中にデバッグ情報を出力します。このフラグは正規表現を受け取り、ツールチェーン タイプと特定のターゲットに対してチェックして、デバッグするものを確認します。複数の正規表現はカンマで区切ることができ、各正規表現は個別にチェックされます。注: このフラグの出力は非常に複雑であり、ツールチェーン解決の専門家にとってのみ有用である可能性があります。

タグ: terminal_output

--[no]verbose_visibility_errors のデフォルト: 「false」

有効にすると、可視性エラーに診断情報が追加されます。

タグ: build_file_semanticsnon_configurable

他のカテゴリに分類されない Bazel コマンドへの汎用入力を指定または変更するオプション:
--flag_alias=<a 'name=value' flag alias> の複数の用途が蓄積される

Starlark フラグの短縮名を設定します。引数として「<key>=<value>」の形式の Key-Value ペアを 1 つ取ります。

タグ: changes_inputsnon_configurable

--[no]incompatible_default_to_explicit_init_py のデフォルト: 「false」

このフラグは、デフォルトの動作を変更して、Python ターゲットの runfiles で init.py ファイルが自動的に作成されないようにします。具体的には、py_binary または py_test ターゲットの legacy_create_init が「auto」(デフォルト)に設定されている場合、このフラグが設定されている場合にのみ false として扱われます。https://github.com/bazelbuild/bazel/issues/10076 をご覧ください。

タグ: affects_outputsincompatible_change

その他のオプション(他のカテゴリに分類されないもの):
--[no]cache_test_results [-t] デフォルト: "auto"

「auto」に設定されている場合、Bazel は次の条件を満たす場合にのみテストを再実行します。(1)Bazel がテストまたはその依存関係の変更を検出した場合、(2)テストが外部としてマークされている場合、(3)--runs_per_test で複数のテスト実行がリクエストされた場合、(4)テストが以前に失敗した場合。[はい] に設定すると、Bazel は外部としてマークされたテストを除くすべてのテスト結果をキャッシュに保存します。「no」に設定すると、Bazel はテスト結果をキャッシュに保存しません。

--[no]experimental_cancel_concurrent_tests のデフォルト: 「never」

「on_failed」または「on_passed」の場合、Blaze はその結果で最初に実行されたテストで、同時に実行されているテストをキャンセルします。これは、--runs_per_test_detects_flakes と組み合わせて使用する場合にのみ有用です。

タグ: affects_outputsloading_and_analysisexperimental

--[no]experimental_fetch_all_coverage_outputs のデフォルト: 「false」

true の場合、Bazel はカバレッジ実行中に各テストのカバレッジ データ ディレクトリ全体を取得します。

タグ: affects_outputsloading_and_analysisexperimental

--[no]experimental_generate_llvm_lcov のデフォルト: 「false」

true の場合、clang のカバレッジで LCOV レポートが生成されます。

タグ: affects_outputsloading_and_analysisexperimental

--experimental_java_classpath=<off, javabuilder, bazel or bazel_no_fallback> デフォルト: "bazel"

Java コンパイルのクラスパスを削減します。

--[no]experimental_run_android_lint_on_java_rules のデフォルト: 「false」

java_* ソースを検証するかどうか。

タグ: affects_outputsexperimental

--[no]explicit_java_test_deps のデフォルト: 「false」

TestRunner の deps から誤って取得するのではなく、java_test で JUnit または Hamcrest への依存関係を明示的に指定します。現時点では bazel でのみ動作します。

--host_java_launcher=<a build target label> デフォルト: 説明を参照

ビルド中に実行されるツールで使用される Java ランチャー。

--host_javacopt=<a string> の複数の用途が蓄積される

ビルド中に実行されるツールをビルドするときに javac に渡す追加のオプション。

--host_jvmopt=<a string> の複数の用途が蓄積される

ビルド中に実行されるツールをビルドするときに Java VM に渡す追加のオプション。これらのオプションは、各 java_binary ターゲットの VM 起動オプションに追加されます。

--[no]incompatible_check_sharding_support デフォルト: "true"

true の場合、テスト ランナーが TEST_SHARD_STATUS_FILE のパスにあるファイルにタッチしてシャーディングをサポートしていることを示さないと、Bazel はシャーディングされたテストを失敗させます。false の場合、シャーディングをサポートしていないテストランナーでは、各シャードですべてのテストが実行されます。

タグ: incompatible_change

--[no]incompatible_exclusive_test_sandboxed デフォルト: "true"

true の場合、排他的テストはサンドボックス化された戦略で実行されます。ローカルで排他的なテスト実行を強制する「local」タグを追加

タグ: incompatible_change

--[no]incompatible_strict_action_env のデフォルト: 「false」

true の場合、Bazel は PATH に静的な値を持つ環境を使用し、LD_LIBRARY_PATH を継承しません。クライアントから特定の環境変数を継承する場合は、--action_env=ENV_VARIABLE を使用します。ただし、共有キャッシュが使用されている場合、この操作を行うとユーザー間のキャッシュ保存が妨げられる可能性があります。

タグ: loading_and_analysisincompatible_change

--j2objc_translation_flags=<comma-separated list of options> の複数の用途が蓄積される

J2ObjC ツールに渡す追加オプション。

--java_debug

Java テストの Java 仮想マシンが、テストを開始する前に JDWP 準拠のデバッガ(jdb など)からの接続を待機するようにします。-test_output=streamed を意味します。

展開すると次のようになります。
  --test_arg=--wrapper_script_flag=--debug
  --test_output=streamed
  --test_strategy=exclusive
  --test_timeout=9999
  --nocache_test_results

--[no]java_deps デフォルト: "true"

Java ターゲットごとに依存関係情報(現時点ではコンパイル時のクラスパス)を生成します。

--[no]java_header_compilation デフォルト: "true"

ソースから直接 ijar をコンパイルします。

--java_language_version=<a string> のデフォルト: ""

Java 言語のバージョン

--java_launcher=<a build target label> デフォルト: 説明を参照

Java バイナリのビルド時に使用する Java ランチャー。このフラグが空の文字列に設定されている場合、JDK ランチャーが使用されます。「launcher」属性はこのフラグをオーバーライドします。

--java_runtime_version=<a string> のデフォルト: 「local_jdk」

Java ランタイムのバージョン

--javacopt=<a string> の複数の用途が蓄積される

javac に渡す追加のオプション。

--jvmopt=<a string> の複数の用途が蓄積される

Java VM に渡す追加オプション。これらのオプションは、各 java_binary ターゲットの VM 起動オプションに追加されます。

--legacy_main_dex_list_generator=<a build target label> デフォルト: 説明を参照

旧式の multidex をコンパイルするときに、メイン DEX に含める必要があるクラスのリストを生成するために使用するバイナリを指定します。

--optimizing_dexer=<a build target label> デフォルト: 説明を参照

シャーディングなしで dexing を行うために使用するバイナリを指定します。

--plugin=<a build target label> の複数の用途が蓄積される

ビルドで使用するプラグイン。現在は java_plugin で動作します。

--proguard_top=<a build target label> デフォルト: 説明を参照

Java バイナリをビルドする際にコード削除に使用する ProGuard のバージョンを指定します。

--proto_compiler=<a build target label> デフォルト: "@bazel_tools//tools/proto:protoc"

proto-compiler のラベル。

タグ: affects_outputsloading_and_analysis

--[no]proto_profile デフォルト: "true"

profile_path を proto コンパイラに渡すかどうか。

タグ: affects_outputsloading_and_analysis

--proto_profile_path=<a build target label> デフォルト: 説明を参照

profile_path として proto コンパイラに渡すプロファイル。設定されていないが、--proto_profile が true(デフォルト)の場合、--fdo_optimize からパスを推測します。

タグ: affects_outputsloading_and_analysis

--proto_toolchain_for_cc=<a build target label> デフォルト: "@bazel_tools//tools/proto:cc_toolchain"

C++ proto のコンパイル方法を記述する proto_lang_toolchain() のラベル

タグ: affects_outputsloading_and_analysis

--proto_toolchain_for_j2objc=<a build target label> default: "@bazel_tools//tools/j2objc:j2objc_proto_toolchain"

j2objc プロトコルをコンパイルする方法を記述する proto_lang_toolchain() のラベル

タグ: affects_outputsloading_and_analysis

--proto_toolchain_for_java=<a build target label> デフォルト: "@bazel_tools//tools/proto:java_toolchain"

Java proto のコンパイル方法を記述する proto_lang_toolchain() のラベル

タグ: affects_outputsloading_and_analysis

--proto_toolchain_for_javalite=<a build target label> default: "@bazel_tools//tools/proto:javalite_toolchain"

JavaLite プロトコルをコンパイルする方法を記述する proto_lang_toolchain() のラベル

タグ: affects_outputsloading_and_analysis

--protocopt=<a string> の複数の用途が蓄積される

protobuf コンパイラに渡す追加オプション。

タグ: affects_outputs

--[no]runs_per_test_detects_flakes のデフォルト: 「false」

true の場合、少なくとも 1 つの実行/試行が成功し、少なくとも 1 つの実行/試行が失敗したシャードは FLAKY ステータスになります。

--shell_executable=<a path> デフォルト: 説明を参照

Bazel が使用するシェル実行可能ファイルへの絶対パス。これが設定されておらず、最初の Bazel 呼び出し(Bazel サーバーを起動する)で BAZEL_SH 環境変数が設定されている場合、Bazel はそれを使用します。どちらも設定されていない場合、Bazel は実行されているオペレーティング システムに応じてハードコードされたデフォルトのパスを使用します(Windows: c:/msys64/usr/bin/bash.exe、FreeBSD: /usr/local/bin/bash、その他すべて: /bin/bash)。bash と互換性のないシェルを使用すると、生成されたバイナリのビルドエラーやランタイム エラーが発生する可能性があります。

タグ: loading_and_analysis

--test_arg=<a string> の複数の用途が蓄積される

テスト実行ファイルに渡す追加のオプションと引数を指定します。複数回使用して、複数の引数を指定できます。複数のテストが実行される場合、各テストは同じ引数を受け取ります。「bazel test」コマンドでのみ使用されます。

--test_filter=<a string> デフォルト: 説明を参照

テスト フレームワークに転送するフィルタを指定します。実行するテストを制限するために使用されます。なお、これはビルドされるターゲットには影響しません。

--test_result_expiration=<an integer> のデフォルト: 「-1」

このオプションは非推奨であり、効果はありません。

--[no]test_runner_fail_fast のデフォルト: 「false」

テストランナーに fail fast オプションを転送します。テストランナーは、最初の失敗で実行を停止する必要があります。

--test_sharding_strategy=<explicit, disabled or forced=k where k is the number of shards to enforce> デフォルト: "explicit"

テスト シャーディングの戦略を指定します。shard_count ビルド属性が存在する場合にのみシャーディングを使用する場合は、explicit を指定します。テスト シャーディングを絶対に使用しない場合は「disabled」。'shard_count' ビルド属性に関係なく、テストに 'k' シャードを強制適用するには、'forced=k' を使用します。

--tool_java_language_version=<a string> のデフォルト: ""

ビルド中に必要なツールを実行するために使用される Java 言語のバージョン

--tool_java_runtime_version=<a string> デフォルト: "remotejdk_11"

ビルド中にツールを実行するために使用される Java ランタイム バージョン

--[no]use_ijars デフォルト: "true"

このオプションを有効にすると、Java コンパイルでインターフェース jar が使用されます。これにより、増分コンパイルが高速化されますが、エラー メッセージが異なる場合があります。

ダンプ オプション

コマンドの出力を制御するオプション:
--[no]action_cache のデフォルト: 「false」

アクション キャッシュのコンテンツをダンプします。

タグ: bazel_monitoring

--memory=<memory mode> デフォルト: 説明を参照

指定された Skyframe ノードのメモリ使用量をダンプします。

タグ: bazel_monitoring

--[no]packages のデフォルト: 「false」

パッケージ キャッシュの内容をダンプします。

タグ: bazel_monitoring

--[no]rule_classes のデフォルト: 「false」

ダンプ ルールクラス。

タグ: bazel_monitoring

--[no]rules のデフォルト: 「false」

ダンプルール(カウントとメモリ使用量を含む。メモリが追跡されている場合)。

タグ: bazel_monitoring

--skyframe=<off, summary, count, value, deps, rdeps, function_graph, active_directories or active_directories_frontier_deps> のデフォルト: 「off」

Skyframe グラフをダンプします。

タグ: bazel_monitoring

--skykey_filter=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths> のデフォルト: ".*"

出力する SkyKey 名の正規表現フィルタ。--skyframe=deps、rdeps、function_graph でのみ使用されます。

タグ: bazel_monitoring

--skylark_memory=<a string> デフォルト: 説明を参照

pprof 互換のメモリ プロファイルを指定されたパスにダンプします。詳しくは、https://github.com/google/pprof をご覧ください。

タグ: bazel_monitoring

フェッチ オプション

test からすべてのオプションを継承します。

ビルド実行を制御するオプション:
--[no]all のデフォルト: 「false」

任意のターゲットまたはリポジトリのビルドに必要なすべての外部リポジトリを取得します。他のフラグや引数が指定されていない場合は、これがデフォルトになります。--enable_bzlmod がオンの場合にのみ機能します。

タグ: changes_inputs

--[no]keep_going [-k] デフォルト: "false"

エラーが発生した後も、できる限り続行します。失敗したターゲットとそれに依存するターゲットは分析できませんが、これらのターゲットの他の前提条件は分析できます。

タグ: eagerness_to_exit

--loading_phase_threads=<an integer, or a keyword ("auto", "HOST_CPUS", "HOST_RAM"), optionally followed by an operation ([-|*]<float>) eg. "auto", "HOST_CPUS*.5"> デフォルト: "auto"

読み込み/分析フェーズで使用する並列スレッドの数。整数またはキーワード(「auto」、「HOST_CPUS」、「HOST_RAM」)を受け取ります。必要に応じて、演算([-|]<float>)を続けることができます。例: 「auto」、「HOST_CPUS.5」。「auto」は、ホストリソースに基づいて適切なデフォルトを設定します。1 以上の値を設定してください。

タグ: bazel_internal_configuration

このオプションは、Starlark 言語のセマンティクス、または BUILD ファイル、.bzl ファイル、WORKSPACE ファイルからアクセス可能なビルド API に影響します。
--[no]incompatible_config_setting_private_default_visibility のデフォルト: 「false」

incompatible_enforce_config_setting_visibility=false の場合、これは noop です。それ以外の場合、このフラグが false の場合、明示的な公開設定属性のない config_setting は //visibility:public になります。このフラグが true の場合、config_setting は他のすべてのルールと同じ公開設定ロジックに従います。https://github.com/bazelbuild/bazel/issues/12933 をご覧ください。

タグ: loading_and_analysisincompatible_change

--[no]incompatible_enforce_config_setting_visibility デフォルト: "true"

true の場合、config_setting の公開設定の制限を適用します。false の場合、すべての config_setting がすべてのターゲットに表示されます。https://github.com/bazelbuild/bazel/issues/12932 をご覧ください。

タグ: loading_and_analysisincompatible_change

Bzlmod の出力とセマンティクスに関連するオプション:
--[no]configure のデフォルト: 「false」

システム構成の目的で「構成」とマークされたリポジトリのみを取得します。--enable_bzlmod がオンの場合にのみ機能します。

タグ: changes_inputs

--[no]force のデフォルト: 「false」

既存のリポジトリがある場合は無視して、リポジトリを強制的に再度取得します。--enable_bzlmod がオンの場合にのみ機能します。

タグ: changes_inputs

--repo=<a string> の複数の用途が蓄積される

指定されたリポジトリのみを取得します。{@apparent_repo_name} または {@@canonical_repo_name} のいずれかになります。--enable_bzlmod がオンの場合にのみ機能します。

タグ: changes_inputs

その他のオプション(他のカテゴリに分類されないもの):
--deleted_packages=<comma-separated list of package names> の複数の用途が蓄積される

ビルドシステムが、パッケージパスのどこかに表示されていても存在しないとみなすパッケージ名のカンマ区切りリスト。既存のパッケージ「x」のサブパッケージ「x/y」を削除する場合は、このオプションを使用します。たとえば、クライアントで x/y/BUILD を削除した後、別の package_path エントリによってまだ提供されているラベル「//x:y/z」が検出されると、ビルドシステムがエラーを報告することがあります。--deleted_packages x/y を指定すると、この問題を回避できます。

--[no]fetch デフォルト: "true"

コマンドが外部依存関係を取得できるようにします。false に設定すると、コマンドは依存関係のキャッシュ バージョンを使用します。キャッシュ バージョンが存在しない場合、コマンドは失敗します。

--package_path=<colon-separated list of options> デフォルト: "%workspace%"

パッケージの検索場所をコロンで区切ったリスト。「%workspace%」で始まる要素は、囲んでいるワークスペースを基準としています。省略した場合や空の場合、デフォルトは「bazel info default-package-path」の出力です。

--[no]show_loading_progress デフォルト: "true"

有効にすると、Bazel が「パッケージの読み込み中:」というメッセージを出力します。

ビルド実行を制御するオプション:
--[no]experimental_persistent_aar_extractor のデフォルト: 「false」

ワーカーを使用して永続的な aar エクストラクタを有効にします。

タグ: executionexperimental

--[no]experimental_remotable_source_manifests のデフォルト: 「false」

ソース マニフェスト アクションをリモート可能にするかどうか

タグ: loading_and_analysisexecutionexperimental

--[no]experimental_split_coverage_postprocessing のデフォルト: 「false」

true の場合、Bazel は新しいスポーンでテストのカバレッジ後処理を実行します。

タグ: executionexperimental

--[no]experimental_strict_fileset_output のデフォルト: 「false」

このオプションを有効にすると、ファイルセットはすべての出力アーティファクトを通常のファイルとして扱います。ディレクトリをトラバースしたり、シンボリック リンクを認識したりすることはありません。

タグ: executionexperimental

--[no]incompatible_modify_execution_info_additive デフォルト: "true"

有効にすると、複数の --modify_execution_info フラグを渡すことで、追加されます。無効になっている場合は、最後のフラグのみが考慮されます。

タグ: executionaffects_outputsloading_and_analysisincompatible_change

--modify_execution_info=<regex=[+-]key,regex=[+-]key,...> の複数の用途が蓄積される

アクションのニーモニックに基づいて、アクションの実行情報からキーを追加または削除します。実行情報をサポートするアクションにのみ適用されます。多くの一般的なアクション(Genrule、CppCompile、Javac、StarlarkAction、TestRunner など)は実行情報をサポートしています。複数の値を指定する場合は、順序が重要です。これは、多くの正規表現が同じニーモニックに適用される可能性があるためです。

構文: "regex=[+-]key,regex=[+-]key,..."。

例: '.=+x,.=-y,.=+z' は、すべてのアクションの実行情報に 'x' と 'z' を追加し、'y' を削除します。「Genrule=+requires-x」は、すべての Genrule アクションの実行情報に「requires-x」を追加します。'(?!Genrule).=-requires-x' は、Genrule 以外のアクションの実行情報から 'requires-x' を削除します。

タグ: executionaffects_outputsloading_and_analysis

--persistent_android_dex_desugar

ワーカーを使用して、永続的な Android dex と desugar アクションを有効にします。

展開すると次のようになります。
  --internal_persistent_android_dex_desugar
  --strategy=Desugar=worker
  --strategy=DexBuilder=worker

タグ: host_machine_resource_optimizationsexecution

--persistent_android_resource_processor

ワーカーを使用して永続的な Android リソース プロセッサを有効にします。

次のように展開されます。
  --internal_persistent_busybox_tools
  --strategy=AaptPackage=worker
  --strategy=AndroidResourceParser=worker
  --strategy=AndroidResourceValidator=worker
  --strategy=AndroidResourceCompiler=worker
  --strategy=RClassGenerator=worker
  --strategy=AndroidResourceLink=worker
  --strategy=AndroidAapt2=worker
  --strategy=AndroidAssetMerger=worker
  --strategy=AndroidResourceMerger=worker
  --strategy=AndroidCompiledResourceMerger=worker
  --strategy=ManifestMerger=worker
  --strategy=AndroidManifestMerger=worker
  --strategy=Aapt2Optimize=worker
  --strategy=AARGenerator=worker
  --strategy=ProcessDatabinding=worker
  --strategy=GenerateDataBindingBaseClasses=worker

タグ: host_machine_resource_optimizationsexecution

--persistent_multiplex_android_dex_desugar

ワーカーを使用して、永続的な多重化された Android dex アクションと desugar アクションを有効にします。

展開すると次のようになります。
  --persistent_android_dex_desugar
  --internal_persistent_multiplex_android_dex_desugar

タグ: host_machine_resource_optimizationsexecution

--persistent_multiplex_android_resource_processor

ワーカーを使用して、永続的な多重化 Android リソース プロセッサを有効にします。

次のように展開されます。
  --persistent_android_resource_processor
  --modify_execution_info=AaptPackage=+supports-multiplex-workers
  --modify_execution_info=AndroidResourceParser=+supports-multiplex-workers
  --modify_execution_info=AndroidResourceValidator=+supports-multiplex-workers
  --modify_execution_info=AndroidResourceCompiler=+supports-multiplex-workers
  --modify_execution_info=RClassGenerator=+supports-multiplex-workers
  --modify_execution_info=AndroidResourceLink=+supports-multiplex-workers
  --modify_execution_info=AndroidAapt2=+supports-multiplex-workers
  --modify_execution_info=AndroidAssetMerger=+supports-multiplex-workers
  --modify_execution_info=AndroidResourceMerger=+supports-multiplex-workers
  --modify_execution_info=AndroidCompiledResourceMerger=+supports-multiplex-workers
  --modify_execution_info=ManifestMerger=+supports-multiplex-workers
  --modify_execution_info=AndroidManifestMerger=+supports-multiplex-workers
  --modify_execution_info=Aapt2Optimize=+supports-multiplex-workers
  --modify_execution_info=AARGenerator=+supports-multiplex-workers

タグ: host_machine_resource_optimizationsexecution

--persistent_multiplex_android_tools

永続的で多重化された Android ツール(dexing、desugaring、リソース処理)を有効にします。

展開すると次のようになります。
  --internal_persistent_multiplex_busybox_tools
  --persistent_multiplex_android_resource_processor
  --persistent_multiplex_android_dex_desugar

タグ: host_machine_resource_optimizationsexecution

--[no]use_target_platform_for_tests のデフォルト: 「false」

true の場合、テスト実行グループではなく、テストの実行にターゲット プラットフォームを使用します。

タグ: execution

アクションの実行に使用されるツールチェーンを構成するオプション:
--android_compiler=<a string> デフォルト: 説明を参照

Android ターゲット コンパイラ。

タグ: affects_outputsloading_and_analysisloses_incremental_state

--android_manifest_merger=<legacy, android or force_android> デフォルト: 「android」

android_binary ルールで使用するマニフェスト マージャーを選択します。レガシー マージャーから Android マニフェスト マージャーへの移行を支援するフラグ。

タグ: affects_outputsloading_and_analysisloses_incremental_state

--android_platforms=<a build target label> のデフォルト: ""

android_binary ターゲットが使用するプラットフォームを設定します。複数のプラットフォームが指定されている場合、バイナリはファット APK で、指定された各ターゲット プラットフォームのネイティブ バイナリが含まれます。

タグ: changes_inputsloading_and_analysisloses_incremental_state

--cc_output_directory_tag=<a string> のデフォルト: ""

構成ディレクトリに追加する接尾辞を指定します。

タグ: affects_outputs

--compiler=<a string> デフォルト: 説明を参照

ターゲットのコンパイルに使用する C++ コンパイラ。

タグ: loading_and_analysisexecution

--coverage_output_generator=<a build target label> デフォルト: "@bazel_tools//tools/test:lcov_merger"

未加工のカバレッジ レポートの後処理に使用されるバイナリの場所。これはバイナリ ターゲットである必要があります。デフォルトは「//tools/test:lcov_merger」です。

タグ: changes_inputsaffects_outputsloading_and_analysis

--coverage_report_generator=<a build target label> default: "@bazel_tools//tools/test:coverage_report_generator"

カバレッジ レポートの生成に使用されるバイナリの場所。これはバイナリ ターゲットである必要があります。デフォルトは「//tools/test:coverage_report_generator」です。

タグ: changes_inputsaffects_outputsloading_and_analysis

--coverage_support=<a build target label> default: "@bazel_tools//tools/test:coverage_support"

コード カバレッジを収集するすべてのテスト アクションの入力で必要なサポート ファイルの場所。デフォルトは「//tools/test:coverage_support」です。

タグ: changes_inputsaffects_outputsloading_and_analysis

--custom_malloc=<a build target label> デフォルト: 説明を参照

カスタム malloc 実装を指定します。この設定は、ビルドルールの malloc 属性をオーバーライドします。

タグ: changes_inputsaffects_outputs

--[no]experimental_include_xcode_execution_requirements のデフォルト: 「false」

設定されている場合は、すべての Xcode アクションに「requires-xcode:{version}」実行要件を追加します。Xcode のバージョンにハイフン付きのラベルがある場合は、「requires-xcode-label:{version_label}」実行要件も追加します。

タグ: loses_incremental_stateloading_and_analysisexecutionexperimental

--[no]experimental_prefer_mutual_xcode デフォルト: "true"

true の場合、ローカルとリモートの両方で使用可能な最新の Xcode を使用します。false の場合、または相互に利用可能なバージョンがない場合は、xcode-select で選択されたローカルの Xcode バージョンを使用します。

タグ: loses_incremental_stateexperimental

--extra_execution_platforms=<comma-separated list of options> のデフォルト: ""

アクションを実行するための実行プラットフォームとして使用できるプラットフォーム。プラットフォームは、正確なターゲットとして指定することも、ターゲット パターンとして指定することもできます。これらのプラットフォームは、register_execution_platforms() によって WORKSPACE ファイルで宣言されたプラットフォームよりも前に考慮されます。このオプションは 1 回のみ設定できます。後で設定したインスタンスは、以前のフラグ設定をオーバーライドします。

タグ: execution

--extra_toolchains=<comma-separated list of options> の複数の用途が蓄積される

ツールチェーン解決時に考慮されるツールチェーン ルール。ツールチェーンは、正確なターゲットとして指定することも、ターゲット パターンとして指定することもできます。これらのツールチェーンは、register_toolchains() によって WORKSPACE ファイルで宣言されたツールチェーンよりも前に考慮されます。

タグ: affects_outputschanges_inputsloading_and_analysis

--grte_top=<a label> デフォルト: 説明を参照

チェックインされた libc ライブラリのラベル。デフォルト値は crosstool ツールチェーンによって選択され、オーバーライドする必要はほとんどありません。

タグ: action_command_linesaffects_outputs

--host_compiler=<a string> デフォルト: 説明を参照

オペレーションなしフラグ。今後のリリースで削除される予定です。

タグ: loading_and_analysisexecution

--host_grte_top=<a label> デフォルト: 説明を参照

指定した場合、この設定は exec 構成の libc 最上位ディレクトリ(--grte_top)をオーバーライドします。

タグ: action_command_linesaffects_outputs

--host_platform=<a build target label> default: "@bazel_tools//tools:host_platform"

ホストシステムを説明するプラットフォーム ルールのラベル。

タグ: affects_outputschanges_inputsloading_and_analysis

--[no]incompatible_bazel_test_exec_run_under デフォルト: "true"

有効にすると、"bazel test --run_under=//:runner" は実行構成で "//:runner" をビルドします。無効にすると、ターゲット構成で「//:runner」がビルドされます。Bazel は実行マシンでテストを実行するため、後者の方がより正確です。これは「bazel run」には影響しません。これは常にターゲット構成で「`--run_under=//foo」をビルドします。

タグ: affects_outputsincompatible_change

--[no]incompatible_builtin_objc_strip_action デフォルト: "true"

objc リンクの一部としてストリップ アクションを出力するかどうか。

タグ: action_command_linesincompatible_change

--[no]incompatible_dont_enable_host_nonhost_crosstool_features デフォルト: "true"

true の場合、Bazel は c++ ツールチェーンで「host」機能と「nonhost」機能を有効にしません(詳しくは、https://github.com/bazelbuild/bazel/issues/7407 をご覧ください)。

タグ: loading_and_analysisincompatible_change

--[no]incompatible_enable_apple_toolchain_resolution のデフォルト: 「false」

ツールチェーン解決を使用して、apple ルール(Starlark とネイティブ)の Apple SDK を選択

タグ: loading_and_analysisincompatible_change

--[no]incompatible_remove_legacy_whole_archive デフォルト: "true"

true の場合、Bazel はデフォルトでライブラリの依存関係をアーカイブ全体としてリンクしません(移行手順については、https://github.com/bazelbuild/bazel/issues/7362 を参照)。

タグ: loading_and_analysisincompatible_change

--[no]incompatible_strip_executable_safely のデフォルト: 「false」

true の場合、実行可能ファイルのストリップ アクションは -x フラグを使用します。これにより、動的シンボルの解決が中断されません。

タグ: action_command_linesincompatible_change

--[no]interface_shared_objects デフォルト: "true"

ツールチェーンでサポートされている場合は、インターフェース共有オブジェクトを使用します。現在、すべての ELF ツールチェーンがこの設定をサポートしています。

タグ: loading_and_analysisaffects_outputsaffects_outputs

--ios_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

iOS アプリケーションのビルドに使用する iOS SDK のバージョンを指定します。指定しない場合、'xcode_version' のデフォルトの iOS SDK バージョンが使用されます。

タグ: loses_incremental_state

--macos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

macOS アプリケーションのビルドに使用する macOS SDK のバージョンを指定します。指定しない場合、'xcode_version' のデフォルトの macOS SDK バージョンを使用します。

タグ: loses_incremental_state

--minimum_os_version=<a string> デフォルト: 説明を参照

コンパイルの対象となる最小 OS バージョン。

タグ: loading_and_analysisaffects_outputs

--platform_mappings=<a main workspace-relative path> のデフォルト: ""

プラットフォームが設定されていない場合に使用するプラットフォーム、またはプラットフォームがすでに存在する場合に設定するフラグを記述するマッピング ファイルの場所。メインのワークスペースのルートを基準とした相対パスにする必要があります。デフォルトは「platform_mappings」(ワークスペース ルート直下のファイル)です。

タグ: affects_outputschanges_inputsloading_and_analysisnon_configurable

--platforms=<a build target label> のデフォルト: ""

現在のコマンドのターゲット プラットフォームを記述するプラットフォーム ルールのラベル。

タグ: affects_outputschanges_inputsloading_and_analysis

--python_path=<a string> デフォルト: 説明を参照

ターゲット プラットフォームで Python ターゲットを実行するために呼び出される Python インタープリタの絶対パス。非推奨。--incompatible_use_python_toolchains で無効になります。

タグ: loading_and_analysisaffects_outputs

--tvos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

tvOS アプリケーションのビルドに使用する tvOS SDK のバージョンを指定します。指定しない場合、'xcode_version' のデフォルトの tvOS SDK バージョンを使用します。

タグ: loses_incremental_state

--[no]use_platforms_in_apple_crosstool_transition のデフォルト: 「false」

必要に応じて、apple_crosstool_transition が以前の --cpu の代わりに --platforms フラグの値を使用するようにフォールバックします。

タグ: loading_and_analysis

--watchos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

watchOS アプリケーションのビルドに使用する watchOS SDK のバージョンを指定します。指定しない場合、'xcode_version' のデフォルトの watchOS SDK バージョンが使用されます。

タグ: loses_incremental_state

--xcode_version=<a string> デフォルト: 説明を参照

指定された場合、関連するビルド アクションに指定されたバージョンの Xcode を使用します。指定しない場合、Xcode のエグゼキュータのデフォルト バージョンが使用されます。

タグ: loses_incremental_state

--xcode_version_config=<a build target label> default: "@bazel_tools//tools/cpp:host_xcodes"

ビルド構成で Xcode のバージョンを選択するために使用される xcode_config ルールのラベル。

タグ: loses_incremental_stateloading_and_analysis

コマンドの出力を制御するオプション:
--[no]apple_generate_dsym のデフォルト: 「false」

デバッグ シンボル(.dSYM)ファイルを生成するかどうか。

タグ: affects_outputsaction_command_lines

true の場合、すべてのターゲットのランファイル シンボリック リンク フォレストをビルドします。false の場合、ローカル アクション、テスト、実行コマンドで必要な場合にのみ書き込みます。

タグ: affects_outputs

--[no]build_runfile_manifests デフォルト: "true"

true の場合、すべてのターゲットの runfiles マニフェストを書き込みます。false の場合は省略します。false の場合、ローカルテストは実行されません。

タグ: affects_outputs

--[no]build_test_dwp のデフォルト: 「false」

有効にすると、C++ テストを静的にビルドして fission を使用する場合、テスト バイナリの .dwp ファイルも自動的にビルドされます。

タグ: loading_and_analysisaffects_outputs

--cc_proto_library_header_suffixes=<comma-separated set of options> デフォルト: ".pb.h"

cc_proto_library が作成するヘッダー ファイルの接尾辞を設定します。

タグ: affects_outputsloading_and_analysis

--cc_proto_library_source_suffixes=<comma-separated set of options> デフォルト: ".pb.cc"

cc_proto_library が作成するソースファイルの接尾辞を設定します。

タグ: affects_outputsloading_and_analysis

--[no]experimental_proto_descriptor_sets_include_source_info のデフォルト: 「false」

proto_library で代替の Java API バージョンの追加アクションを実行します。

タグ: affects_outputsloading_and_analysisexperimental

--[no]experimental_save_feature_state のデフォルト: 「false」

有効化された機能とリクエストされた機能の状態をコンパイルの出力として保存します。

タグ: affects_outputsexperimental

--fission=<a set of compilation modes> デフォルト: 「no」

C++ のコンパイルとリンクに fission を使用するコンパイル モードを指定します。{'fastbuild', 'dbg', 'opt'} の任意の組み合わせ、またはすべてのモードを有効にする特別な値 'yes'、すべてのモードを無効にする特別な値 'no' を指定できます。

タグ: loading_and_analysisaction_command_linesaffects_outputs

--[no]incompatible_always_include_files_in_data デフォルト: "true"

true の場合、ネイティブ ルールはデータ依存関係の <code>DefaultInfo.files</code> をランファイルに追加します。これは、Starlark ルールの推奨動作(https://bazel.build/extending/rules#runfiles_features_to_avoid)と一致します。

タグ: affects_outputsincompatible_change

--[no]incompatible_compact_repo_mapping_manifest のデフォルト: 「false」

有効にすると、<binary>.repo_mapping ファイルは、ランファイルを提供する拡張機能によって生成されたリポジトリごとに 1 回ではなく、モジュール拡張機能のリポジトリ マッピングを 1 回だけ出力します。

タグ: affects_outputsincompatible_change

--incompatible_disable_select_on=<comma-separated set of options> のデフォルト: ""

select() での使用が無効になっているフラグのリスト。

タグ: loading_and_analysisincompatible_changenon_configurable

--[no]incompatible_filegroup_runfiles_for_data デフォルト: "true"

true の場合、srcs 属性にリストされているターゲットの runfile は、filegroup をデータ依存関係として使用するターゲットで使用できます。

タグ: incompatible_change

--[no]objc_generate_linkmap のデフォルト: 「false」

リンクマップ ファイルを生成するかどうかを指定します。

タグ: affects_outputs

--[no]save_temps のデフォルト: 「false」

設定すると、gcc からの一時的な出力が保存されます。これには、.s ファイル(アセンブラ コード)、.i ファイル(プリプロセスされた C)、.ii ファイル(プリプロセスされた C++)が含まれます。

タグ: affects_outputs

ユーザーが目的の出力を構成し、その存在ではなく値に影響を与えるオプション:
--action_env=<a 'name[=value]' assignment with an optional value part or the special syntax '=name' to unset a variable> の複数の用途が蓄積される

ターゲット構成を持つアクションで使用可能な環境変数のセットを指定します。変数は <code>name</code&gt> で指定できます。この場合、値は呼び出し環境から取得されます。また、<code>name=value</code&gt> ペアで指定することもできます。この場合、値は呼び出し環境とは無関係に設定されます。さらに、<code>=name</code&gt> で指定することもできます。この場合、その名前の変数は設定解除されます。このオプションは複数回使用できます。同じ変数に指定されたオプションは後勝ちになり、異なる変数のオプションは累積されます。<br><code>--incompatible_repo_env_ignores_action_env</code> が true でない限り、すべての <code>name=value</code> ペアはリポジトリ ルールで使用できます。

タグ: action_command_lines

--allowed_cpu_values=<comma-separated set of options> のデフォルト: ""

--cpu フラグに指定できる値。

タグ: changes_inputsaffects_outputs

--[no]android_databinding_use_androidx デフォルト: "true"

AndroidX 互換のデータ バインディング ファイルを生成します。これはデータバインディング v2 でのみ使用されます。このフラグは no-op です。

タグ: affects_outputsloading_and_analysisloses_incremental_stateexperimental

--[no]android_databinding_use_v3_4_args デフォルト: "true"

3.4.0 引数で Android データバインディング v2 を使用します。このフラグは no-op です。

タグ: affects_outputsloading_and_analysisloses_incremental_stateexperimental

--android_dynamic_mode=<off, default or fully> のデフォルト: 「off」

cc_binary が共有ライブラリを明示的に作成しない場合に、Android ルールの C++ 依存関係を動的にリンクするかどうかを決定します。「default」は、bazel が動的にリンクするかどうかを選択することを意味します。「fully」は、すべてのライブラリが動的にリンクされることを意味します。「off」は、すべてのライブラリがほぼ静的モードでリンクされることを意味します。

タグ: affects_outputsloading_and_analysis

--android_manifest_merger_order=<alphabetical, alphabetical_by_configuration or dependency> のデフォルト: 「alphabetical」

Android バイナリのマニフェスト マージツールに渡されるマニフェストの順序を設定します。ALPHABETICAL は、マニフェストが execroot を基準としたパスで並べ替えられることを意味します。ALPHABETICAL_BY_CONFIGURATION は、マニフェストが出力ディレクトリ内の構成ディレクトリに相対的なパスで並べ替えられることを意味します。DEPENDENCY は、各ライブラリのマニフェストが依存関係のマニフェストの前に来るようにマニフェストが順序付けられることを意味します。

タグ: action_command_linesexecution

--[no]android_resource_shrinking のデフォルト: 「false」

ProGuard を使用する android_binary APK のリソース圧縮を有効にします。

タグ: affects_outputsloading_and_analysis

--[no]build_python_zip デフォルト: "auto"

Python 実行可能 zip をビルドします。Windows ではオン、他のプラットフォームではオフ

タグ: affects_outputs

--catalyst_cpus=<comma-separated list of options> の複数の用途が蓄積される

Apple Catalyst バイナリをビルドするアーキテクチャのカンマ区切りリスト。

タグ: loses_incremental_stateloading_and_analysis

--[no]collect_code_coverage のデフォルト: 「false」

指定すると、Bazel はコードを計測し(可能な場合はオフライン計測を使用)、テスト中にカバレッジ情報を収集します。--instrumentation_filter に一致するターゲットのみが影響を受けます。通常、このオプションは直接指定しないでください。代わりに「bazel coverage」コマンドを使用してください。

タグ: affects_outputs

--compilation_mode=<fastbuild, dbg or opt> [-c] デフォルト: "fastbuild"

バイナリのビルドモードを指定します。値: 「fastbuild」、「dbg」、「opt」。

タグ: affects_outputsaction_command_lines

--conlyopt=<a string> の複数の用途が蓄積される

C ソースファイルをコンパイルするときに gcc に渡す追加オプション。

タグ: action_command_linesaffects_outputs

--copt=<a string> の複数の用途が蓄積される

gcc に渡す追加オプション。

タグ: action_command_linesaffects_outputs

--cpu=<a string> のデフォルト: ""

非推奨: このフラグは、下位互換性を確保するためのレガシー プラットフォーム マッピングはありますが、Blaze では内部的に使用されません。このフラグは使用しないでください。代わりに、適切なプラットフォーム定義で --platforms を使用してください。

タグ: changes_inputsaffects_outputs

--cs_fdo_absolute_path=<a string> デフォルト: 説明を参照

CSFDO プロファイル情報を使用してコンパイルを最適化します。プロファイル ファイル、未加工またはインデックス付きの LLVM プロファイル ファイルを含む zip ファイルの絶対パス名を指定します。

タグ: affects_outputs

--cs_fdo_instrument=<a string> デフォルト: 説明を参照

コンテキスト依存の FDO 計測でバイナリを生成します。Clang/LLVM コンパイラでは、実行時に未加工のプロファイル ファイルがダンプされるディレクトリ名も受け入れます。

タグ: affects_outputs

--cs_fdo_profile=<a build target label> デフォルト: 説明を参照

最適化に使用されるコンテキスト依存プロファイルを表す cs_fdo_profile。

タグ: affects_outputs

--cxxopt=<a string> の複数の用途が蓄積される

C++ ソースファイルをコンパイルするときに gcc に渡す追加オプション。

タグ: action_command_linesaffects_outputs

--define=<a 'name=value' assignment> の複数の用途が蓄積される

各 --define オプションは、ビルド変数の割り当てを指定します。変数に複数の値がある場合は、最後の値が優先されます。

タグ: changes_inputsaffects_outputs

--dynamic_mode=<off, default or fully> のデフォルト: "default"

C++ バイナリを動的にリンクするかどうかを決定します。「default」は、Bazel が動的にリンクするかどうかを選択することを意味します。「fully」は、すべてのライブラリが動的にリンクされることを意味します。「off」は、すべてのライブラリがほぼ静的モードでリンクされることを意味します。

タグ: loading_and_analysisaffects_outputs

--[no]enable_propeller_optimize_absolute_paths デフォルト: "true"

設定されている場合、プロペラ最適化の絶対パスを使用するとエラーが発生します。

タグ: affects_outputs

--[no]enable_remaining_fdo_absolute_paths デフォルト: "true"

設定されている場合、FDO の絶対パスを使用するとエラーが発生します。

タグ: affects_outputs

--[no]enable_runfiles デフォルト: "auto"

ランファイル シンボリック リンク ツリーを有効にします。デフォルトでは、Windows ではオフ、他のプラットフォームではオンです。

タグ: affects_outputs

--exec_aspects=<comma-separated list of options> の複数の用途が蓄積される

トップレベルのターゲットであるかどうかに関係なく、exec 構成のターゲットに適用されるアスペクトのカンマ区切りリスト。この機能は試験運用版であり、変更される可能性があります。

タグ: loading_and_analysis

--experimental_action_listener=<a build target label> の複数の用途が蓄積される

アスペクトに置き換えられたため、非推奨になりました。action_listener を使用して、既存のビルド アクションに extra_action をアタッチします。

タグ: executionexperimental

--[no]experimental_android_compress_java_resources のデフォルト: 「false」

APK の Java リソースを圧縮する

タグ: affects_outputsloading_and_analysisexperimental

--[no]experimental_android_databinding_v2 デフォルト: "true"

Android データ バインディング v2 を使用します。このフラグは no-op です。

タグ: affects_outputsloading_and_analysisloses_incremental_stateexperimental

--[no]experimental_android_resource_shrinking のデフォルト: 「false」

ProGuard を使用する android_binary APK のリソース圧縮を有効にします。

タグ: affects_outputsloading_and_analysisexperimental

--[no]experimental_android_rewrite_dexes_with_rex のデフォルト: 「false」

rex ツールを使用して dex ファイルを書き換える

タグ: affects_outputsloading_and_analysisloses_incremental_stateexperimental

--[no]experimental_collect_code_coverage_for_generated_files のデフォルト: 「false」

指定すると、Bazel は生成されたファイルの収集カバレッジ情報も生成します。

タグ: affects_outputsexperimental

--experimental_objc_fastbuild_options=<comma-separated list of options> のデフォルト: 「-O0,-DDEBUG=1」

これらの文字列を objc fastbuild コンパイラ オプションとして使用します。

タグ: action_command_lines

--[no]experimental_omitfp のデフォルト: 「false」

true の場合、スタック アンワインドに libunwind を使用し、-fomit-frame-pointer と -fasynchronous-unwind-tables でコンパイルします。

タグ: action_command_linesaffects_outputsexperimental

--experimental_output_paths=<off or strip> のデフォルト: 「off」

出力ツリーのどの場所にルールがその出力を書き込むか(特にマルチプラットフォーム / マルチ構成ビルドの場合)に使用するモデル。これは試験運用版です。詳しくは、https://github.com/bazelbuild/bazel/issues/6526 をご覧ください。Starlark アクションは、'execution_requirements' 辞書にキー 'supports-path-mapping' を追加することで、パス マッピングを選択できます。

タグ: loses_incremental_statebazel_internal_configurationaffects_outputsexecution

--experimental_override_platform_cpu_name=<a 'label=value' assignment> の複数の用途が蓄積される

各エントリは label=value の形式にする必要があります。ここで、label はプラットフォームを指し、values は $(TARGET_CPU) make 変数と出力パスでプラットフォームの CPU 名をオーバーライドする目的の短縮名です。--experimental_platform_in_output_dir、--incompatible_target_cpu_from_platform、--incompatible_bep_cpu_from_platform が true の場合にのみ使用されます。命名の優先度が最も高い。

タグ: affects_outputsexperimental

--[no]experimental_platform_in_output_dir のデフォルト: 「false」

true の場合、CPU の代わりにターゲット プラットフォームの短縮名が出力ディレクトリ名に使用されます。auto の場合、これは exec 構成にのみ適用されます。正確なスキームは試験運用であり、変更される可能性があります。まず、--platforms オプションの値が 1 つだけではないまれなケースでは、platforms オプションのハッシュが使用されます。次に、現在のプラットフォームの短縮名が --experimental_override_name_platform_in_output_dir で登録されている場合は、その短縮名が使用されます。次に、--experimental_use_platforms_in_output_dir_legacy_heuristic が設定されている場合は、現在のプラットフォーム ラベルに基づく短縮名を使用します。最後に、プラットフォーム オプションのハッシュが最後の手段として使用されます。

タグ: affects_outputsexperimental

--[no]experimental_py_binaries_include_label のデフォルト: 「false」

py_binary ターゲットには、スタンピングが無効になっている場合でもラベルが含まれます。

タグ: affects_outputsexperimental

--[no]experimental_use_llvm_covmap のデフォルト: 「false」

指定した場合、collect_code_coverage が有効になっていると、Bazel は gcov ではなく llvm-cov カバレッジ マップ情報を生成します。

タグ: changes_inputsaffects_outputsloading_and_analysisexperimental

--[no]experimental_use_platforms_in_output_dir_legacy_heuristic デフォルト: "true"

このフラグは、移行またはテストの推奨戦略の一部としてのみ使用してください。このヒューリスティックには既知の欠陥があるため、--experimental_override_name_platform_in_output_dir のみに依存するように移行することをおすすめします。

タグ: affects_outputsexperimental

--fdo_instrument=<a string> デフォルト: 説明を参照

FDO 計測でバイナリを生成します。Clang/LLVM コンパイラでは、実行時に未加工のプロファイル ファイルがダンプされるディレクトリ名も受け入れます。

タグ: affects_outputs

--fdo_optimize=<a string> デフォルト: 説明を参照

FDO プロファイル情報を使用してコンパイルを最適化します。.gcda ファイルツリーを含む zip ファイル、自動プロファイルを含む afdo ファイル、または LLVM プロファイル ファイルの名前を指定します。このフラグは、ラベルとして指定されたファイル(例: //foo/bar:file.afdo。対応するパッケージに exports_files ディレクティブを追加する必要がある場合があります)と、fdo_profile ターゲットを指すラベルも受け入れます。このフラグは fdo_profile ルールに置き換えられます。

タグ: affects_outputs

--fdo_prefetch_hints=<a build target label> デフォルト: 説明を参照

キャッシュ プリフェッチ ヒントを使用します。

タグ: affects_outputs

--fdo_profile=<a build target label> デフォルト: 説明を参照

最適化に使用するプロファイルを表す fdo_profile。

タグ: affects_outputs

--features=<a string> の複数の用途が蓄積される

指定された機能は、ターゲット構成でビルドされたターゲットに対してデフォルトで有効または無効になります。-<feature> を指定すると、機能が無効になります。除外機能は常に非除外機能をオーバーライドします。--host_features もご覧ください

タグ: changes_inputsaffects_outputs

--[no]force_pic のデフォルト: 「false」

有効にすると、すべての C++ コンパイルで位置独立コード(「-fPIC」)が生成され、リンクでは PIC 以外のライブラリよりも PIC 事前構築済みライブラリが優先され、リンクでは位置独立実行可能ファイル(「-pie」)が生成されます。

タグ: loading_and_analysisaffects_outputs

--host_action_env=<a 'name[=value]' assignment with an optional value part or the special syntax '=name' to unset a variable> の複数の用途が蓄積される

実行構成を持つアクションで使用可能な環境変数のセットを指定します。変数は名前で指定できます。この場合、値は呼び出し環境から取得されます。また、name=value ペアで指定することもできます。この場合、値は呼び出し環境とは無関係に設定されます。さらに、<code>=name</code> で指定することもできます。この場合、その名前の変数は設定解除されます。このオプションは複数回使用できます。同じ変数に指定されたオプションは後勝ちとなり、異なる変数のオプションは累積されます。

タグ: action_command_lines

--host_compilation_mode=<fastbuild, dbg or opt> デフォルト: "opt"

ビルド中に使用されるツールのビルドモードを指定します。値: 「fastbuild」、「dbg」、「opt」。

タグ: affects_outputsaction_command_lines

--host_conlyopt=<a string> の複数の用途が蓄積される

実行構成で C(C++ ではない)ソースファイルをコンパイルするときに C コンパイラに渡す追加オプション。

タグ: action_command_linesaffects_outputs

--host_copt=<a string> の複数の用途が蓄積される

実行構成でビルドされたツールに対して C コンパイラに渡す追加オプション。

タグ: action_command_linesaffects_outputs

--host_cpu=<a string> のデフォルト: ""

ホスト CPU。

タグ: changes_inputsaffects_outputs

--host_cxxopt=<a string> の複数の用途が蓄積される

実行構成でビルドされたツール用に C++ コンパイラに渡す追加オプション。

タグ: action_command_linesaffects_outputs

--host_features=<a string> の複数の用途が蓄積される

指定された機能は、exec 構成でビルドされたターゲットに対してデフォルトで有効または無効になります。-<feature> を指定すると、機能が無効になります。除外機能は常に非除外機能をオーバーライドします。

タグ: changes_inputsaffects_outputs

--host_linkopt=<a string> の複数の用途が蓄積される

実行構成でツールをリンクするときにリンカーに渡す追加オプション。

タグ: action_command_linesaffects_outputs

--host_macos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

ホスト ターゲットの最小互換性のある macOS バージョン。指定しない場合、macos_sdk_version が使用されます。

タグ: loses_incremental_state

--host_per_file_copt=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths followed by an @ and a comma separated list of options> の複数の用途が蓄積される

実行構成で特定のファイルをコンパイルするときに、C/C++ コンパイラに選択的に渡す追加オプション。このオプションは複数回渡すことができます。構文: regex_filter@option_1,option_2,...,option_n。ここで、regex_filter は、正規表現パターン(--instrumentation_filter も参照)の include と exclude のリストを表します。option_1 から option_n は、任意のコマンドライン オプションを表します。オプションにカンマが含まれている場合は、バックスラッシュで囲む必要があります。オプションには @ を含めることができます。文字列の分割には最初の @ のみが使用されます。例: --host_per_file_copt=//foo/.*.cc,-//foo/bar.cc@-O0 は、//foo/ 内の bar.cc 以外のすべての cc ファイルの gcc コマンドラインに -O0 コマンドライン オプションを追加します。

タグ: action_command_linesaffects_outputs

--[no]incompatible_auto_exec_groups のデフォルト: 「false」

有効にすると、ルールで使用されるツールチェーンごとに実行グループが自動的に作成されます。このルールを機能させるには、アクションで toolchain パラメータを指定する必要があります。詳細については、https://github.com/bazelbuild/bazel/issues/17134 をご覧ください。

タグ: affects_outputsincompatible_change

--[no]incompatible_merge_genfiles_directory デフォルト: "true"

true の場合、genfiles ディレクトリは bin ディレクトリに折りたたまれます。

タグ: affects_outputsincompatible_change

--[no]incompatible_target_cpu_from_platform デフォルト: "true"

指定されている場合、ターゲット プラットフォームの CPU 制約(@platforms//cpu:cpu)の値を使用して、$(TARGET_CPU) メイク変数を設定します。

タグ: loading_and_analysisincompatible_change

--[no]instrument_test_targets のデフォルト: 「false」

カバレッジが有効な場合に、テストルールの計測を考慮するかどうかを指定します。設定すると、--instrumentation_filter で指定されたテストルールがインストルメント化されます。それ以外の場合、テストルールは常にカバレッジ計測から除外されます。

タグ: affects_outputs

--instrumentation_filter=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths> デフォルト: "-/javatests[/:],-/test/java[/:]"

カバレッジが有効になっている場合、指定された正規表現ベースのフィルタに含まれる名前のルールのみが計測されます。代わりに、接頭辞「-」が付いたルールが除外されます。--instrument_test_targets が有効になっていない限り、テスト以外のルールのみが計測されます。

タグ: affects_outputs

--ios_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

ターゲット シミュレータとデバイスの最小互換性 iOS バージョン。指定しない場合、'ios_sdk_version' が使用されます。

タグ: loses_incremental_state

--ios_multi_cpus=<comma-separated list of options> の複数の用途が蓄積される

ios_application のビルドに使用するアーキテクチャのカンマ区切りのリスト。結果として、指定されたすべてのアーキテクチャを含むユニバーサル バイナリが生成されます。

タグ: loses_incremental_stateloading_and_analysis

--[no]legacy_whole_archive デフォルト: "true"

非推奨。--incompatible_remove_legacy_whole_archive に置き換えられました(詳しくは https://github.com/bazelbuild/bazel/issues/7362 をご覧ください)。オンの場合、linkshared=True で、linkopts に linkstatic=True または '-static' のいずれかがある cc_binary ルールに --whole-archive を使用します。これは下位互換性のためにのみ存在します。より良い方法は、必要に応じて alwayslink=1 を使用することです。

タグ: action_command_linesaffects_outputsdeprecated

--linkopt=<a string> の複数の用途が蓄積される

リンク時に gcc に渡す追加オプション。

タグ: action_command_linesaffects_outputs

--ltobackendopt=<a string> の複数の用途が蓄積される

LTO バックエンド ステップに渡す追加オプション(--features=thin_lto の下)。

タグ: action_command_linesaffects_outputs

--ltoindexopt=<a string> の複数の用途が蓄積される

LTO インデックス作成ステップに渡す追加オプション(--features=thin_lto の下)。

タグ: action_command_linesaffects_outputs

--macos_cpus=<comma-separated list of options> の複数の用途が蓄積される

Apple macOS バイナリをビルドするアーキテクチャのカンマ区切りリスト。

タグ: loses_incremental_stateloading_and_analysis

--macos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

ターゲットの互換性のある最小 macOS バージョン。指定しない場合、macos_sdk_version が使用されます。

タグ: loses_incremental_state

--memprof_profile=<a build target label> デフォルト: 説明を参照

memprof プロファイルを使用します。

タグ: affects_outputs

--[no]objc_debug_with_GLIBCXX のデフォルト: 「false」

設定されていて、コンパイル モードが「dbg」に設定されている場合、GLIBCXX_DEBUG、GLIBCXX_DEBUG_PEDANTIC、GLIBCPP_CONCEPT_CHECKS を定義します。

タグ: action_command_lines

--[no]objc_enable_binary_stripping のデフォルト: 「false」

リンクされたバイナリでシンボルとデッドコードの削除を行うかどうか。このフラグと --compilation_mode=opt の両方が指定されている場合、バイナリのストリッピングが実行されます。

タグ: action_command_lines

--objccopt=<a string> の複数の用途が蓄積される

Objective-C/C++ ソースファイルをコンパイルするときに gcc に渡す追加オプション。

タグ: action_command_lines

--per_file_copt=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths followed by an @ and a comma separated list of options> の複数の用途が蓄積される

特定のファイルをコンパイルするときに gcc に選択的に渡す追加オプション。このオプションは複数回渡すことができます。構文: regex_filter@option_1,option_2,...,option_n。ここで、regex_filter は、正規表現パターン(--instrumentation_filter も参照)の include と exclude のリストを表します。option_1 から option_n は、任意のコマンドライン オプションを表します。オプションにカンマが含まれている場合は、バックスラッシュで囲む必要があります。オプションには @ を含めることができます。文字列の分割には最初の @ のみが使用されます。例: --per_file_copt=//foo/.*.cc,-//foo/bar.cc@-O0 は、//foo/ のすべての cc ファイル(bar.cc を除く)の gcc コマンドラインに -O0 コマンドライン オプションを追加します。

タグ: action_command_linesaffects_outputs

--per_file_ltobackendopt=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths followed by an @ and a comma separated list of options> の複数の用途が蓄積される

特定のバックエンド オブジェクトをコンパイルするときに、LTO バックエンドに選択的に渡す追加オプション(--features=thin_lto の下)。このオプションは複数回渡すことができます。構文: regex_filter@option_1,option_2,...,option_n。ここで、regex_filter は、正規表現パターンの include と exclude のリストを表します。option_1 から option_n は、任意のコマンドライン オプションを表します。オプションにカンマが含まれている場合は、バックスラッシュで囲む必要があります。オプションには @ を含めることができます。文字列の分割には最初の @ のみが使用されます。例: --per_file_ltobackendopt=//foo/.*.o,-//foo/bar.o@-O0 は、//foo/ のすべての o ファイル(bar.o を除く)の LTO バックエンド コマンドラインに -O0 コマンドライン オプションを追加します。

タグ: action_command_linesaffects_outputs

--platform_suffix=<a string> デフォルト: 説明を参照

構成ディレクトリに追加する接尾辞を指定します。

タグ: loses_incremental_stateaffects_outputsloading_and_analysis

--propeller_optimize=<a build target label> デフォルト: 説明を参照

Propeller プロファイル情報を使用してビルド ターゲットを最適化します。Propeller プロファイルは、cc プロファイルと ld プロファイルの 2 つのファイルのうち少なくとも 1 つで構成されている必要があります。このフラグは、プロペラ プロファイル入力ファイルを参照する必要があるビルドラベルを受け取ります。たとえば、ラベルを定義する BUILD ファイル(a/b/BUILD:propeller_optimize)は、name = "propeller_profile", cc_profile = "propeller_cc_profile.txt", ld_profile = "propeller_ld_profile.txt" となります。これらのファイルを Bazel に認識させるには、対応するパッケージに exports_files ディレクティブを追加する必要がある場合があります。このオプションは、--propeller_optimize=//a/b:propeller_profile のように使用する必要があります。

タグ: action_command_linesaffects_outputs

--propeller_optimize_absolute_cc_profile=<a string> デフォルト: 説明を参照

Propeller 最適化ビルドの cc_profile ファイルの絶対パス名。

タグ: affects_outputs

--propeller_optimize_absolute_ld_profile=<a string> デフォルト: 説明を参照

Propeller 最適化ビルドの ld_profile ファイルの絶対パス名。

タグ: affects_outputs

--run_under=<a prefix in front of command> デフォルト: 説明を参照

「test」コマンドと「run」コマンドの実行可能ファイルの前に追加する接頭辞。値が「foo -bar」で、実行コマンドラインが「test_binary -baz」の場合、最終的なコマンドラインは「foo -bar test_binary -baz」になります。これは実行可能ターゲットのラベルにすることもできます。たとえば、'valgrind'、'strace'、'strace -c'、'valgrind --quiet --num-callers=20'、'//package:target'、'//package:target --options' などがあります。

タグ: action_command_lines

--[no]share_native_deps デフォルト: "true"

true の場合、同一の機能を含むネイティブ ライブラリが異なるターゲット間で共有されます

タグ: loading_and_analysisaffects_outputs

--[no]stamp のデフォルト: 「false」

バイナリに日付、ユーザー名、ホスト名、ワークスペース情報などをスタンプします。

タグ: affects_outputs

--strip=<always, sometimes or never> のデフォルト: 「sometimes」

バイナリと共有ライブラリをストリップするかどうかを指定します(「-Wl,--strip-debug」を使用)。デフォルト値の 'sometimes' は、--compilation_mode=fastbuild の場合にのみストリップすることを意味します。

タグ: affects_outputs

--stripopt=<a string> の複数の用途が蓄積される

「<name>.stripped」バイナリを生成するときに strip に渡す追加のオプション。

タグ: action_command_linesaffects_outputs

--tvos_cpus=<comma-separated list of options> の複数の用途が蓄積される

Apple tvOS バイナリをビルドするアーキテクチャのカンマ区切りのリスト。

タグ: loses_incremental_stateloading_and_analysis

--tvos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

ターゲット シミュレータとデバイスの最小互換性のある tvOS バージョン。指定しない場合、「tvos_sdk_version」が使用されます。

タグ: loses_incremental_state

--visionos_cpus=<comma-separated list of options> の複数の用途が蓄積される

Apple visionOS バイナリをビルドするアーキテクチャのカンマ区切りのリスト。

タグ: loses_incremental_stateloading_and_analysis

--watchos_cpus=<comma-separated list of options> の複数の用途が蓄積される

Apple watchOS バイナリをビルドするアーキテクチャのカンマ区切りのリスト。

タグ: loses_incremental_stateloading_and_analysis

--watchos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

ターゲット シミュレータとデバイスの最小互換 watchOS バージョン。指定しない場合、'watchos_sdk_version' が使用されます。

タグ: loses_incremental_state

--xbinary_fdo=<a build target label> デフォルト: 説明を参照

XbinaryFDO プロファイル情報を使用してコンパイルを最適化します。デフォルトのクロスバイナリ プロファイルの名前を指定します。このオプションを --fdo_instrument、--fdo_optimize、--fdo_profile と組み合わせて使用すると、xbinary_fdo が指定されていないかのように、これらのオプションが常に優先されます。

タグ: affects_outputs

Bazel が有効なビルド入力(ルール定義、フラグの組み合わせなど)を厳密に適用する方法に影響するオプション:
--[no]check_visibility デフォルト: "true"

無効にすると、ターゲット依存関係の可視性エラーが警告に降格されます。

タグ: build_file_semanticsnon_configurable

--[no]desugar_for_android デフォルト: "true"

dexing の前に Java 8 バイトコードを desugar するかどうか。

タグ: affects_outputsloading_and_analysisloses_incremental_state

--[no]desugar_java8_libs のデフォルト: 「false」

レガシー デバイス向けアプリにサポートされている Java 8 ライブラリを含めるかどうか。

タグ: affects_outputsloading_and_analysisloses_incremental_stateexperimental

--[no]enforce_constraints デフォルト: "true"

各ターゲットと互換性のある環境をチェックし、同じ環境をサポートしていない依存関係がターゲットにある場合はエラーを報告します

タグ: build_file_semantics

--[no]experimental_check_desugar_deps デフォルト: "true"

Android バイナリレベルで正しい脱糖を再確認するかどうか。

タグ: eagerness_to_exitloading_and_analysisexperimental

--[no]experimental_enforce_transitive_visibility のデフォルト: 「false」

true の場合、package() が transitive_visibility 属性を設定して、依存できるパッケージを制限できるようにします。

タグ: build_file_semanticsexperimental

--experimental_one_version_enforcement=<off, warning or error> デフォルト: 「OFF」

有効にすると、java_binary ルールのクラスパスに同じクラスファイルの複数のバージョンを含めることができなくなります。この強制により、ビルドが破損したり、警告が表示されたりする可能性があります。

タグ: loading_and_analysis

--experimental_strict_java_deps=<off, warn, error, strict or default> のデフォルト: "default"

true の場合、Java ターゲットが直接使用されるすべてのターゲットを依存関係として明示的に宣言していることを確認します。

タグ: build_file_semanticseagerness_to_exit

--[no]incompatible_check_testonly_for_output_files のデフォルト: 「false」

有効になっている場合、生成ルールの testonly を調べて、出力ファイルである前提条件ターゲットの testonly を確認します。これは公開設定の確認と一致します。

タグ: build_file_semanticsincompatible_change

--[no]incompatible_disable_native_android_rules のデフォルト: 「false」

有効にすると、ネイティブの Android ルールの直接使用が無効になります。https://github.com/bazelbuild/rules_android の Starlark Android ルールを使用してください。

タグ: eagerness_to_exitincompatible_change

--[no]incompatible_disable_native_apple_binary_rule のデフォルト: 「false」

何もしません。下位互換性のためにここに残されています。

タグ: eagerness_to_exitincompatible_change

--[no]one_version_enforcement_on_java_tests デフォルト: "true"

有効で、experimental_one_version_enforcement が NONE 以外の値に設定されている場合、java_test ターゲットに 1 つのバージョンを適用します。このフラグを無効にすると、潜在的な 1 バージョン違反を見逃す代わりに、増分テストのパフォーマンスを向上させることができます。

タグ: loading_and_analysis

--python_native_rules_allowlist=<a build target label> デフォルト: 説明を参照

--incompatible_python_disallow_native_rules を適用するときに使用する許可リスト(package_group ターゲット)。

タグ: loading_and_analysis

--[no]strict_filesets のデフォルト: 「false」

このオプションを有効にすると、パッケージ境界を越えるファイルセットがエラーとして報告されます。

タグ: build_file_semanticseagerness_to_exit

--strict_proto_deps=<off, warn, error, strict or default> のデフォルト: 「error」

OFF でない限り、proto_library ターゲットが直接使用されるすべてのターゲットを依存関係として明示的に宣言していることを確認します。

タグ: build_file_semanticseagerness_to_exitincompatible_change

--strict_public_imports=<off, warn, error, strict or default> のデフォルト: 「off」

OFF でない限り、proto_library ターゲットが「import public」で使用されるすべてのターゲットをエクスポートとして明示的に宣言していることを確認します。

タグ: build_file_semanticseagerness_to_exitincompatible_change

--[no]strict_system_includes のデフォルト: 「false」

true の場合、システム インクルード パス(-isystem)で見つかったヘッダーも宣言する必要があります。

タグ: loading_and_analysiseagerness_to_exit

--target_environment=<a build target label> の複数の用途が蓄積される

このビルドのターゲット環境を宣言します。「環境」ルールへのラベル参照である必要があります。指定した場合、すべての最上位ターゲットはこの環境と互換性がある必要があります。

タグ: changes_inputs

ビルドの署名出力に影響するオプション:
--apk_signing_method=<v1, v2, v1_v2 or v4> デフォルト: "v1_v2"

APK の署名に使用する実装

タグ: action_command_linesaffects_outputsloading_and_analysis

--[no]device_debug_entitlements デフォルト: "true"

設定されていて、コンパイル モードが「opt」でない場合、objc アプリは署名時にデバッグ利用資格を含みます。

タグ: changes_inputs

--ios_signing_cert_name=<a string> デフォルト: 説明を参照

iOS 署名に使用する証明書名。設定されていない場合は、プロビジョニング プロファイルにフォールバックします。codesign の man ページ(SIGNING IDENTITIES)に記載されているように、証明書のキーチェーン ID の設定または証明書の共通名(サブストリング)の場合があります。

タグ: action_command_lines

このオプションは、Starlark 言語のセマンティクス、または BUILD ファイル、.bzl ファイル、WORKSPACE ファイルからアクセス可能なビルド API に影響します。
--[no]incompatible_disallow_sdk_frameworks_attributes のデフォルト: 「false」

true の場合、objc_library と objc_import で sdk_frameworks 属性と weak_sdk_frameworks 属性を許可しません。

タグ: build_file_semanticsincompatible_change

true の場合、objc_library と objc_import の alwayslink 属性のデフォルト値を true にします。

タグ: build_file_semanticsincompatible_change

--[no]incompatible_python_disallow_native_rules のデフォルト: 「false」

true の場合、組み込みの py_* ルールを使用するとエラーが発生します。代わりに rule_python ルールを使用する必要があります。詳細と移行手順については、https://github.com/bazelbuild/bazel/issues/17773 をご覧ください。

タグ: loading_and_analysisincompatible_change

テスト環境またはテストランナーの動作を制御するオプション:
--[no]allow_analysis_failures のデフォルト: 「false」

true の場合、ルール ターゲットの分析が失敗すると、ビルドの失敗ではなく、エラーの説明を含む AnalysisFailureInfo のインスタンスがターゲットに伝播されます。

タグ: loading_and_analysisexperimental

--analysis_testing_deps_limit=<an integer> のデフォルト: 「2000」

for_analysis_testing 構成の移行を含むルール属性を使用して、推移的依存関係の最大数を設定します。この上限を超えると、ルールエラーが発生します。

タグ: loading_and_analysis

--[no]break_build_on_parallel_dex2oat_failure のデフォルト: 「false」

true の場合、dex2oat アクションの失敗により、テスト実行時に dex2oat が実行されるのではなく、ビルドが中断されます。

タグ: loading_and_analysisexperimental

--default_test_resources=<a resource name followed by equal and 1 float or 4 float, e.g memory=10,30,60,100> の複数の用途が蓄積される

テストのデフォルトのリソース量をオーバーライドします。想定される形式は <resource>=<value> です。<value> として 1 つの正の数値を指定すると、すべてのテストサイズのデフォルトのリソースがオーバーライドされます。カンマ区切りの 4 つの数値を指定すると、それぞれ小、中、大、巨大なテストサイズの割り当て量がオーバーライドされます。値は HOST_RAM/HOST_CPU にすることもできます。オプションで [-|]<float> を続けることもできます(例: memory=HOST_RAM.1,HOST_RAM*.2,HOST_RAM*.3,HOST_RAM*.4)。このフラグで指定されたデフォルトのテストリソースは、タグで指定された明示的なリソースによってオーバーライドされます。

--[no]experimental_android_use_parallel_dex2oat のデフォルト: 「false」

android_test を高速化するために、dex2oat を並列で使用します。

タグ: loading_and_analysishost_machine_resource_optimizationsexperimental

--[no]ios_memleaks のデフォルト: 「false」

ios_test ターゲットでメモリリークのチェックを有効にします。

タグ: action_command_lines

--ios_simulator_device=<a string> デフォルト: 説明を参照

シミュレータで iOS アプリケーションを実行する際にシミュレートするデバイス(「iPhone 6」など)。デバイスのリストを取得するには、シミュレータを実行するマシンで「xcrun simctl list devicetypes」を実行します。

タグ: test_runner

--ios_simulator_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

実行またはテスト時にシミュレータで実行する iOS のバージョン。ルールでターゲット デバイスが指定されている場合、ios_test ルールでは無視されます。

タグ: test_runner

--runs_per_test=<a positive integer or test_regex@runs. This flag may be passed more than once> の複数の用途が蓄積される

各テストを実行する回数を指定します。これらの試行が何らかの理由で失敗した場合、テスト全体が失敗とみなされます。通常、指定する値は整数です。例: --runs_per_test=3 は、すべてのテストを 3 回実行します。別の構文: regex_filter@runs_per_test。ここで、runs_per_test は整数値、regex_filter は正規表現パターン(--instrumentation_filter も参照)のリストを表します。例: --runs_per_test=//foo/.,-//foo/bar/.@3 は、foo/bar の下にあるテストを除く //foo/のすべてのテストを 3 回実行します。このオプションは複数回渡すことができます。一致する引数のうち、最後に渡されたものが優先されます。一致するものがなければ、テストは 1 回だけ実行されます。

--test_env=<a 'name[=value]' assignment with an optional value part or the special syntax '=name' to unset a variable> の複数の用途が蓄積される

テストランナー環境に挿入する追加の環境変数を指定します。変数は <code>name</code> で指定できます。この場合、値は Bazel クライアント環境から読み取られます。また、<code>name=value</code> ペアで指定することもできます。以前に設定した変数は、<code>=name</code> で設定解除できます。このオプションは、複数の変数を指定するために複数回使用できます。「bazel test」コマンドでのみ使用されます。

タグ: test_runner

--test_timeout=<a single integer or comma-separated list of 4 integers> のデフォルト: 「-1」

テスト タイムアウトのデフォルトのテスト タイムアウト値(秒単位)をオーバーライドします。正の整数値を 1 つ指定すると、すべてのカテゴリがオーバーライドされます。カンマ区切りの 4 つの整数を指定すると、短時間、中時間、長時間、永続のタイムアウトが(この順序で)オーバーライドされます。どちらの形式でも、値 -1 は、そのカテゴリのデフォルトのタイムアウトを使用するように blaze に指示します。

--[no]zip_undeclared_test_outputs のデフォルト: 「false」

true の場合、未宣言のテスト出力は zip ファイルにアーカイブされます。

タグ: test_runner

ビルド時間の最適化をトリガーするオプション:
--[no]experimental_filter_library_jar_with_program_jar のデフォルト: 「false」

ProGuard ProgramJar をフィルタして、LibraryJar にも存在するクラスを削除します。

タグ: action_command_linesexperimental

--[no]experimental_inmemory_dotd_files デフォルト: "true"

有効にすると、C++ の .d ファイルはディスクに書き込まれるのではなく、リモート ビルドノードからメモリに直接渡されます。

タグ: loading_and_analysisexecutionaffects_outputsexperimental

--[no]experimental_inmemory_jdeps_files デフォルト: "true"

有効にすると、Java コンパイルから生成された依存関係(.jdeps)ファイルは、ディスクに書き込まれるのではなく、リモート ビルドノードからメモリに直接渡されます。

タグ: loading_and_analysisexecutionaffects_outputsexperimental

--[no]experimental_retain_test_configuration_across_testonly のデフォルト: 「false」

有効にすると、--trim_test_configuration は testonly=1 とマークされたルールのテスト構成をトリムしません。これは、テスト以外のルールが cc_test ルールに依存している場合に、アクションの競合の問題を軽減することを目的としています。--trim_test_configuration が false の場合、効果はありません。

タグ: loading_and_analysisloses_incremental_stateexperimental

--[no]experimental_unsupported_and_brittle_include_scanning のデフォルト: 「false」

入力ファイルから #include 行を解析して、C/C++ コンパイルの入力を絞り込むかどうか。これにより、コンパイル入力ツリーのサイズが縮小され、パフォーマンスと増分性が向上します。ただし、インクルード スキャナは C プリプロセッサのセマンティクスを完全に実装していないため、ビルドを中断する可能性もあります。特に、動的な #include ディレクティブを理解せず、プリプロセッサの条件付きロジックを無視します。ご自身の責任で操作するようお願いいたします。このフラグに関連する問題が報告された場合は、クローズされます。

タグ: loading_and_analysisexecutionchanges_inputsexperimental

--[no]incremental_dexing デフォルト: "true"

各 Jar ファイルの dexing のほとんどの作業を行います。

タグ: affects_outputsloading_and_analysisloses_incremental_state

--[no]objc_use_dotd_pruning デフォルト: "true"

設定すると、clang によって出力された .d ファイルが、objc コンパイルに渡される入力セットのプルーニングに使用されます。

タグ: changes_inputsloading_and_analysis

--[no]process_headers_in_dependencies のデフォルト: 「false」

ターゲット //a:a をビルドするときに、//a:a が依存するすべてのターゲットのヘッダーを処理します(ツールチェーンでヘッダー処理が有効になっている場合)。

タグ: execution

--[no]trim_test_configuration デフォルト: "true"

有効にすると、ビルドの最上位レベルより下のテスト関連オプションがクリアされます。このフラグが有効になっている場合、テストは非テストルールの依存関係としてビルドできませんが、テスト関連のオプションを変更しても非テストルールが再分析されることはありません。

タグ: loading_and_analysisloses_incremental_state

ロギングの冗長性、形式、場所に影響するオプション:
--toolchain_resolution_debug=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths> のデフォルト: "-.*"

ツールチェーンの解決中にデバッグ情報を出力します。このフラグは正規表現を受け取り、ツールチェーン タイプと特定のターゲットに対してチェックして、デバッグするものを確認します。複数の正規表現はカンマで区切ることができ、各正規表現は個別にチェックされます。注: このフラグの出力は非常に複雑であり、ツールチェーン解決の専門家にとってのみ有用である可能性があります。

タグ: terminal_output

--[no]verbose_visibility_errors のデフォルト: 「false」

有効にすると、可視性エラーに診断情報が追加されます。

タグ: build_file_semanticsnon_configurable

他のカテゴリに分類されない Bazel コマンドへの汎用入力を指定または変更するオプション:
--flag_alias=<a 'name=value' flag alias> の複数の用途が蓄積される

Starlark フラグの短縮名を設定します。引数として「<key>=<value>」の形式の Key-Value ペアを 1 つ取ります。

タグ: changes_inputsnon_configurable

--[no]incompatible_default_to_explicit_init_py のデフォルト: 「false」

このフラグは、デフォルトの動作を変更して、Python ターゲットの runfiles で init.py ファイルが自動的に作成されないようにします。具体的には、py_binary または py_test ターゲットの legacy_create_init が「auto」(デフォルト)に設定されている場合、このフラグが設定されている場合にのみ false として扱われます。https://github.com/bazelbuild/bazel/issues/10076 をご覧ください。

タグ: affects_outputsincompatible_change

その他のオプション(他のカテゴリに分類されないもの):
--[no]cache_test_results [-t] デフォルト: "auto"

「auto」に設定されている場合、Bazel は次の条件を満たす場合にのみテストを再実行します。(1)Bazel がテストまたはその依存関係の変更を検出した場合、(2)テストが外部としてマークされている場合、(3)--runs_per_test で複数のテスト実行がリクエストされた場合、(4)テストが以前に失敗した場合。[はい] に設定すると、Bazel は外部としてマークされたテストを除くすべてのテスト結果をキャッシュに保存します。「no」に設定すると、Bazel はテスト結果をキャッシュに保存しません。

--[no]experimental_cancel_concurrent_tests のデフォルト: 「never」

「on_failed」または「on_passed」の場合、Blaze はその結果で最初に実行されたテストで、同時に実行されているテストをキャンセルします。これは、--runs_per_test_detects_flakes と組み合わせて使用する場合にのみ有用です。

タグ: affects_outputsloading_and_analysisexperimental

--[no]experimental_fetch_all_coverage_outputs のデフォルト: 「false」

true の場合、Bazel はカバレッジ実行中に各テストのカバレッジ データ ディレクトリ全体を取得します。

タグ: affects_outputsloading_and_analysisexperimental

--[no]experimental_generate_llvm_lcov のデフォルト: 「false」

true の場合、clang のカバレッジで LCOV レポートが生成されます。

タグ: affects_outputsloading_and_analysisexperimental

--experimental_java_classpath=<off, javabuilder, bazel or bazel_no_fallback> デフォルト: "bazel"

Java コンパイルのクラスパスを削減します。

--[no]experimental_run_android_lint_on_java_rules のデフォルト: 「false」

java_* ソースを検証するかどうか。

タグ: affects_outputsexperimental

--[no]explicit_java_test_deps のデフォルト: 「false」

TestRunner の deps から誤って取得するのではなく、java_test で JUnit または Hamcrest への依存関係を明示的に指定します。現時点では bazel でのみ動作します。

--host_java_launcher=<a build target label> デフォルト: 説明を参照

ビルド中に実行されるツールで使用される Java ランチャー。

--host_javacopt=<a string> の複数の用途が蓄積される

ビルド中に実行されるツールをビルドするときに javac に渡す追加のオプション。

--host_jvmopt=<a string> の複数の用途が蓄積される

ビルド中に実行されるツールをビルドするときに Java VM に渡す追加のオプション。これらのオプションは、各 java_binary ターゲットの VM 起動オプションに追加されます。

--[no]incompatible_check_sharding_support デフォルト: "true"

true の場合、テスト ランナーが TEST_SHARD_STATUS_FILE のパスにあるファイルにタッチしてシャーディングをサポートしていることを示さないと、Bazel はシャーディングされたテストを失敗させます。false の場合、シャーディングをサポートしていないテストランナーでは、各シャードですべてのテストが実行されます。

タグ: incompatible_change

--[no]incompatible_exclusive_test_sandboxed デフォルト: "true"

true の場合、排他的テストはサンドボックス化された戦略で実行されます。ローカルで排他的なテスト実行を強制する「local」タグを追加

タグ: incompatible_change

--[no]incompatible_strict_action_env のデフォルト: 「false」

true の場合、Bazel は PATH に静的な値を持つ環境を使用し、LD_LIBRARY_PATH を継承しません。クライアントから特定の環境変数を継承する場合は、--action_env=ENV_VARIABLE を使用します。ただし、共有キャッシュが使用されている場合、この操作を行うとユーザー間のキャッシュ保存が妨げられる可能性があります。

タグ: loading_and_analysisincompatible_change

--j2objc_translation_flags=<comma-separated list of options> の複数の用途が蓄積される

J2ObjC ツールに渡す追加オプション。

--java_debug

Java テストの Java 仮想マシンが、テストを開始する前に JDWP 準拠のデバッガ(jdb など)からの接続を待機するようにします。-test_output=streamed を意味します。

展開すると次のようになります。
  --test_arg=--wrapper_script_flag=--debug
  --test_output=streamed
  --test_strategy=exclusive
  --test_timeout=9999
  --nocache_test_results

--[no]java_deps デフォルト: "true"

Java ターゲットごとに依存関係情報(現時点ではコンパイル時のクラスパス)を生成します。

--[no]java_header_compilation デフォルト: "true"

ソースから直接 ijar をコンパイルします。

--java_language_version=<a string> のデフォルト: ""

Java 言語のバージョン

--java_launcher=<a build target label> デフォルト: 説明を参照

Java バイナリのビルド時に使用する Java ランチャー。このフラグが空の文字列に設定されている場合、JDK ランチャーが使用されます。「launcher」属性はこのフラグをオーバーライドします。

--java_runtime_version=<a string> のデフォルト: 「local_jdk」

Java ランタイムのバージョン

--javacopt=<a string> の複数の用途が蓄積される

javac に渡す追加のオプション。

--jvmopt=<a string> の複数の用途が蓄積される

Java VM に渡す追加オプション。これらのオプションは、各 java_binary ターゲットの VM 起動オプションに追加されます。

--legacy_main_dex_list_generator=<a build target label> デフォルト: 説明を参照

旧式の multidex をコンパイルするときに、メイン DEX に含める必要があるクラスのリストを生成するために使用するバイナリを指定します。

--optimizing_dexer=<a build target label> デフォルト: 説明を参照

シャーディングなしで dexing を行うために使用するバイナリを指定します。

--plugin=<a build target label> の複数の用途が蓄積される

ビルドで使用するプラグイン。現在は java_plugin で動作します。

--proguard_top=<a build target label> デフォルト: 説明を参照

Java バイナリをビルドする際にコード削除に使用する ProGuard のバージョンを指定します。

--proto_compiler=<a build target label> デフォルト: "@bazel_tools//tools/proto:protoc"

proto-compiler のラベル。

タグ: affects_outputsloading_and_analysis

--[no]proto_profile デフォルト: "true"

profile_path を proto コンパイラに渡すかどうか。

タグ: affects_outputsloading_and_analysis

--proto_profile_path=<a build target label> デフォルト: 説明を参照

profile_path として proto コンパイラに渡すプロファイル。設定されていないが、--proto_profile が true(デフォルト)の場合、--fdo_optimize からパスを推測します。

タグ: affects_outputsloading_and_analysis

--proto_toolchain_for_cc=<a build target label> デフォルト: "@bazel_tools//tools/proto:cc_toolchain"

C++ proto のコンパイル方法を記述する proto_lang_toolchain() のラベル

タグ: affects_outputsloading_and_analysis

--proto_toolchain_for_j2objc=<a build target label> default: "@bazel_tools//tools/j2objc:j2objc_proto_toolchain"

j2objc プロトコルをコンパイルする方法を記述する proto_lang_toolchain() のラベル

タグ: affects_outputsloading_and_analysis

--proto_toolchain_for_java=<a build target label> デフォルト: "@bazel_tools//tools/proto:java_toolchain"

Java proto のコンパイル方法を記述する proto_lang_toolchain() のラベル

タグ: affects_outputsloading_and_analysis

--proto_toolchain_for_javalite=<a build target label> default: "@bazel_tools//tools/proto:javalite_toolchain"

JavaLite プロトコルをコンパイルする方法を記述する proto_lang_toolchain() のラベル

タグ: affects_outputsloading_and_analysis

--protocopt=<a string> の複数の用途が蓄積される

protobuf コンパイラに渡す追加オプション。

タグ: affects_outputs

--[no]runs_per_test_detects_flakes のデフォルト: 「false」

true の場合、少なくとも 1 つの実行/試行が成功し、少なくとも 1 つの実行/試行が失敗したシャードは FLAKY ステータスになります。

--shell_executable=<a path> デフォルト: 説明を参照

Bazel が使用するシェル実行可能ファイルへの絶対パス。これが設定されておらず、最初の Bazel 呼び出し(Bazel サーバーを起動する)で BAZEL_SH 環境変数が設定されている場合、Bazel はそれを使用します。どちらも設定されていない場合、Bazel は実行されているオペレーティング システムに応じてハードコードされたデフォルトのパスを使用します(Windows: c:/msys64/usr/bin/bash.exe、FreeBSD: /usr/local/bin/bash、その他すべて: /bin/bash)。bash と互換性のないシェルを使用すると、生成されたバイナリのビルドエラーやランタイム エラーが発生する可能性があります。

タグ: loading_and_analysis

--test_arg=<a string> の複数の用途が蓄積される

テスト実行ファイルに渡す追加のオプションと引数を指定します。複数回使用して、複数の引数を指定できます。複数のテストが実行される場合、各テストは同じ引数を受け取ります。「bazel test」コマンドでのみ使用されます。

--test_filter=<a string> デフォルト: 説明を参照

テスト フレームワークに転送するフィルタを指定します。実行するテストを制限するために使用されます。なお、これはビルドされるターゲットには影響しません。

--test_result_expiration=<an integer> のデフォルト: 「-1」

このオプションは非推奨であり、効果はありません。

--[no]test_runner_fail_fast のデフォルト: 「false」

テストランナーに fail fast オプションを転送します。テストランナーは、最初の失敗で実行を停止する必要があります。

--test_sharding_strategy=<explicit, disabled or forced=k where k is the number of shards to enforce> デフォルト: "explicit"

テスト シャーディングの戦略を指定します。shard_count ビルド属性が存在する場合にのみシャーディングを使用する場合は、explicit を指定します。テスト シャーディングを絶対に使用しない場合は「disabled」。'shard_count' ビルド属性に関係なく、テストに 'k' シャードを強制適用するには、'forced=k' を使用します。

--tool_java_language_version=<a string> のデフォルト: ""

ビルド中に必要なツールを実行するために使用される Java 言語のバージョン

--tool_java_runtime_version=<a string> デフォルト: "remotejdk_11"

ビルド中にツールを実行するために使用される Java ランタイム バージョン

--[no]use_ijars デフォルト: "true"

このオプションを有効にすると、Java コンパイルでインターフェース jar が使用されます。これにより、増分コンパイルが高速化されますが、エラー メッセージが異なる場合があります。

ヘルプ オプション

ロギングの冗長性、形式、場所に影響するオプション:
--help_verbosity=<long, medium or short> のデフォルト: 「medium」

ヘルプ コマンドの詳細度を選択します。

タグ: terminal_output

--long [-l]

各オプションの名前だけでなく、完全な説明を表示します。

展開すると次のようになります。
  --help_verbosity=long

タグ: terminal_output

--short

オプションの名前のみを表示し、型や意味は表示しません。

展開すると次のようになります。
  --help_verbosity=short

タグ: terminal_output

Info Options(情報オプション)

build からすべてのオプションを継承します。

ユーザーが意図した出力を構成し、その存在ではなく値に影響を与えるオプション:
--info_output_type=<stdout or response_proto> デフォルト: "stdout"

stdout の場合、結果はコンソールに直接出力されます。response_proto の場合、info コマンドの結果はレスポンス拡張機能にパックされます。

タグ: affects_outputsterminal_output

ロギングの冗長性、形式、場所に影響するオプション:
--[no]show_make_env のデフォルト: 「false」

出力に「Make」環境を含めます。

タグ: affects_outputsterminal_output

ライセンス オプション

モバイルインストール オプション

build からすべてのオプションを継承します。

ビルド実行を制御するオプション:
--mode=<classic, classic_internal_test_do_not_use or skylark> デフォルト: "skylark"

非推奨の no-effect フラグ。skylark モードのみがサポートされています。

タグ: loading_and_analysisexecutionincompatible_change

アクションの実行に使用されるツールチェーンを構成するオプション:
--adb=<a string> のデフォルト: ""

「mobile-install」コマンドで使用する adb バイナリ。指定しない場合は、--android_sdk_channel コマンドライン オプションで指定された Android SDK(または --android_sdk_channel が指定されていない場合はデフォルトの SDK)が使用されます。

タグ: changes_inputs

コマンドの出力を制御するオプション:
--[no]incremental のデフォルト: 「false」

増分インストールを行うかどうか。true の場合、コードがインストールされるデバイスの状態を読み取り、その情報を使用して不要な作業を回避することで、不要な追加作業を回避します。false(デフォルト)の場合、常に完全インストールを行います。

タグ: loading_and_analysis

--[no]split_apks のデフォルト: 「false」

分割 APK を使用してデバイスにアプリをインストールし、更新するかどうか。Marshmallow 以降のデバイスでのみ動作します

タグ: loading_and_analysisaffects_outputs

ユーザーが目的の出力を構成し、その存在ではなく値に影響を与えるオプション:
--adb_arg=<a string> の複数の用途が蓄積される

adb に渡す追加の引数。通常、インストール先のデバイスを指定するために使用されます。

タグ: action_command_lines

--debug_app

アプリを起動する前にデバッガを待機するかどうか。

展開すると次のようになります。
  --start=DEBUG

タグ: execution

--device=<a string> のデフォルト: ""

adb デバイスのシリアル番号。指定しない場合は、最初のデバイスが使用されます。

タグ: action_command_lines

--start=<no, cold, warm or debug> デフォルト: 「NO」

アプリのインストール後にアプリを起動する方法。増分インストール時にアプリケーションの状態を保持して復元するには、WARM に設定します。

タグ: execution

--start_app

インストール後にアプリを起動するかどうか。

展開すると次のようになります。
  --start=COLD

タグ: execution

ロギングの冗長性、形式、場所に影響するオプション:
--incremental_install_verbosity=<a string> のデフォルト: ""

増分インストールの詳細度。デバッグ ロギングの場合は 1 に設定します。

タグ: bazel_monitoring

Mod オプション

ビルド実行を制御するオプション:
--[no]experimental_remotable_source_manifests のデフォルト: 「false」

ソース マニフェスト アクションをリモート可能にするかどうか

タグ: loading_and_analysisexecutionexperimental

--[no]experimental_strict_fileset_output のデフォルト: 「false」

このオプションを有効にすると、ファイルセットはすべての出力アーティファクトを通常のファイルとして扱います。ディレクトリをトラバースしたり、シンボリック リンクを認識したりすることはありません。

タグ: executionexperimental

--[no]incompatible_modify_execution_info_additive デフォルト: "true"

有効にすると、複数の --modify_execution_info フラグを渡すことで、追加されます。無効になっている場合は、最後のフラグのみが考慮されます。

タグ: executionaffects_outputsloading_and_analysisincompatible_change

--loading_phase_threads=<an integer, or a keyword ("auto", "HOST_CPUS", "HOST_RAM"), optionally followed by an operation ([-|*]<float>) eg. "auto", "HOST_CPUS*.5"> デフォルト: "auto"

読み込み/分析フェーズで使用する並列スレッドの数。整数またはキーワード(「auto」、「HOST_CPUS」、「HOST_RAM」)を受け取ります。必要に応じて、演算([-|]<float>)を続けることができます。例: 「auto」、「HOST_CPUS.5」。「auto」は、ホストリソースに基づいて適切なデフォルトを設定します。1 以上の値を設定してください。

タグ: bazel_internal_configuration

--modify_execution_info=<regex=[+-]key,regex=[+-]key,...> の複数の用途が蓄積される

アクションのニーモニックに基づいて、アクションの実行情報からキーを追加または削除します。実行情報をサポートするアクションにのみ適用されます。多くの一般的なアクション(Genrule、CppCompile、Javac、StarlarkAction、TestRunner など)は実行情報をサポートしています。複数の値を指定する場合は、順序が重要です。これは、多くの正規表現が同じニーモニックに適用される可能性があるためです。

構文: "regex=[+-]key,regex=[+-]key,..."。

例: '.=+x,.=-y,.=+z' は、すべてのアクションの実行情報に 'x' と 'z' を追加し、'y' を削除します。「Genrule=+requires-x」は、すべての Genrule アクションの実行情報に「requires-x」を追加します。'(?!Genrule).=-requires-x' は、Genrule 以外のアクションの実行情報から 'requires-x' を削除します。

タグ: executionaffects_outputsloading_and_analysis

--[no]use_target_platform_for_tests のデフォルト: 「false」

true の場合、テスト実行グループではなく、テストの実行にターゲット プラットフォームを使用します。

タグ: execution

アクションの実行に使用されるツールチェーンを構成するオプション:
--[no]incompatible_bazel_test_exec_run_under デフォルト: "true"

有効にすると、"bazel test --run_under=//:runner" は実行構成で "//:runner" をビルドします。無効にすると、ターゲット構成で「//:runner」がビルドされます。Bazel は実行マシンでテストを実行するため、後者の方がより正確です。これは「bazel run」には影響しません。これは常にターゲット構成で「`--run_under=//foo」をビルドします。

タグ: affects_outputsincompatible_change

コマンドの出力を制御するオプション:

true の場合、すべてのターゲットのランファイル シンボリック リンク フォレストをビルドします。false の場合、ローカル アクション、テスト、実行コマンドで必要な場合にのみ書き込みます。

タグ: affects_outputs

--[no]build_runfile_manifests デフォルト: "true"

true の場合、すべてのターゲットの runfiles マニフェストを書き込みます。false の場合は省略します。false の場合、ローカルテストは実行されません。

タグ: affects_outputs

--[no]incompatible_always_include_files_in_data デフォルト: "true"

true の場合、ネイティブ ルールはデータ依存関係の <code>DefaultInfo.files</code> をランファイルに追加します。これは、Starlark ルールの推奨動作(https://bazel.build/extending/rules#runfiles_features_to_avoid)と一致します。

タグ: affects_outputsincompatible_change

--[no]incompatible_compact_repo_mapping_manifest のデフォルト: 「false」

有効にすると、<binary>.repo_mapping ファイルは、ランファイルを提供する拡張機能によって生成されたリポジトリごとに 1 回ではなく、モジュール拡張機能のリポジトリ マッピングを 1 回だけ出力します。

タグ: affects_outputsincompatible_change

--incompatible_disable_select_on=<comma-separated set of options> のデフォルト: ""

select() での使用が無効になっているフラグのリスト。

タグ: loading_and_analysisincompatible_changenon_configurable

--[no]incompatible_filegroup_runfiles_for_data デフォルト: "true"

true の場合、srcs 属性にリストされているターゲットの runfile は、filegroup をデータ依存関係として使用するターゲットで使用できます。

タグ: incompatible_change

ユーザーが目的の出力を構成し、その存在ではなく値に影響を与えるオプション:
--action_env=<a 'name[=value]' assignment with an optional value part or the special syntax '=name' to unset a variable> の複数の用途が蓄積される

ターゲット構成を持つアクションで使用可能な環境変数のセットを指定します。変数は <code>name</code&gt> で指定できます。この場合、値は呼び出し環境から取得されます。また、<code>name=value</code&gt> ペアで指定することもできます。この場合、値は呼び出し環境とは無関係に設定されます。さらに、<code>=name</code&gt> で指定することもできます。この場合、その名前の変数は設定解除されます。このオプションは複数回使用できます。同じ変数に指定されたオプションは後勝ちになり、異なる変数のオプションは累積されます。<br><code>--incompatible_repo_env_ignores_action_env</code> が true でない限り、すべての <code>name=value</code> ペアはリポジトリ ルールで使用できます。

タグ: action_command_lines

--allowed_cpu_values=<comma-separated set of options> のデフォルト: ""

--cpu フラグに指定できる値。

タグ: changes_inputsaffects_outputs

--[no]collect_code_coverage のデフォルト: 「false」

指定すると、Bazel はコードを計測し(可能な場合はオフライン計測を使用)、テスト中にカバレッジ情報を収集します。--instrumentation_filter に一致するターゲットのみが影響を受けます。通常、このオプションは直接指定しないでください。代わりに「bazel coverage」コマンドを使用してください。

タグ: affects_outputs

--compilation_mode=<fastbuild, dbg or opt> [-c] デフォルト: "fastbuild"

バイナリのビルドモードを指定します。値: 「fastbuild」、「dbg」、「opt」。

タグ: affects_outputsaction_command_lines

--cpu=<a string> のデフォルト: ""

非推奨: このフラグは、下位互換性を確保するためのレガシー プラットフォーム マッピングはありますが、Blaze では内部的に使用されません。このフラグは使用しないでください。代わりに、適切なプラットフォーム定義で --platforms を使用してください。

タグ: changes_inputsaffects_outputs

--define=<a 'name=value' assignment> の複数の用途が蓄積される

各 --define オプションは、ビルド変数の割り当てを指定します。変数に複数の値がある場合は、最後の値が優先されます。

タグ: changes_inputsaffects_outputs

--[no]enable_runfiles デフォルト: "auto"

ランファイル シンボリック リンク ツリーを有効にします。デフォルトでは、Windows ではオフ、他のプラットフォームではオンです。

タグ: affects_outputs

--exec_aspects=<comma-separated list of options> の複数の用途が蓄積される

トップレベルのターゲットであるかどうかに関係なく、exec 構成のターゲットに適用されるアスペクトのカンマ区切りリスト。この機能は試験運用版であり、変更される可能性があります。

タグ: loading_and_analysis

--experimental_action_listener=<a build target label> の複数の用途が蓄積される

アスペクトに置き換えられたため、非推奨になりました。action_listener を使用して、既存のビルド アクションに extra_action をアタッチします。

タグ: executionexperimental

--[no]experimental_collect_code_coverage_for_generated_files のデフォルト: 「false」

指定すると、Bazel は生成されたファイルの収集カバレッジ情報も生成します。

タグ: affects_outputsexperimental

--experimental_output_paths=<off or strip> のデフォルト: 「off」

出力ツリーのどの場所にルールがその出力を書き込むか(特にマルチプラットフォーム / マルチ構成ビルドの場合)に使用するモデル。これは試験運用版です。詳しくは、https://github.com/bazelbuild/bazel/issues/6526 をご覧ください。Starlark アクションは、'execution_requirements' 辞書にキー 'supports-path-mapping' を追加することで、パス マッピングを選択できます。

タグ: loses_incremental_statebazel_internal_configurationaffects_outputsexecution

--experimental_override_platform_cpu_name=<a 'label=value' assignment> の複数の用途が蓄積される

各エントリは label=value の形式にする必要があります。ここで、label はプラットフォームを指し、values は $(TARGET_CPU) make 変数と出力パスでプラットフォームの CPU 名をオーバーライドする目的の短縮名です。--experimental_platform_in_output_dir、--incompatible_target_cpu_from_platform、--incompatible_bep_cpu_from_platform が true の場合にのみ使用されます。命名の優先度が最も高い。

タグ: affects_outputsexperimental

--[no]experimental_platform_in_output_dir のデフォルト: 「false」

true の場合、CPU の代わりにターゲット プラットフォームの短縮名が出力ディレクトリ名に使用されます。auto の場合、これは exec 構成にのみ適用されます。正確なスキームは試験運用であり、変更される可能性があります。まず、--platforms オプションの値が 1 つだけではないまれなケースでは、platforms オプションのハッシュが使用されます。次に、現在のプラットフォームの短縮名が --experimental_override_name_platform_in_output_dir で登録されている場合は、その短縮名が使用されます。次に、--experimental_use_platforms_in_output_dir_legacy_heuristic が設定されている場合は、現在のプラットフォーム ラベルに基づく短縮名を使用します。最後に、プラットフォーム オプションのハッシュが最後の手段として使用されます。

タグ: affects_outputsexperimental

--[no]experimental_use_platforms_in_output_dir_legacy_heuristic デフォルト: "true"

このフラグは、移行またはテストの推奨戦略の一部としてのみ使用してください。このヒューリスティックには既知の欠陥があるため、--experimental_override_name_platform_in_output_dir のみに依存するように移行することをおすすめします。

タグ: affects_outputsexperimental

--features=<a string> の複数の用途が蓄積される

指定された機能は、ターゲット構成でビルドされたターゲットに対してデフォルトで有効または無効になります。-<feature> を指定すると、機能が無効になります。除外機能は常に非除外機能をオーバーライドします。--host_features もご覧ください

タグ: changes_inputsaffects_outputs

--host_action_env=<a 'name[=value]' assignment with an optional value part or the special syntax '=name' to unset a variable> の複数の用途が蓄積される

実行構成を持つアクションで使用可能な環境変数のセットを指定します。変数は名前で指定できます。この場合、値は呼び出し環境から取得されます。また、name=value ペアで指定することもできます。この場合、値は呼び出し環境とは無関係に設定されます。さらに、<code>=name</code> で指定することもできます。この場合、その名前の変数は設定解除されます。このオプションは複数回使用できます。同じ変数に指定されたオプションは後勝ちとなり、異なる変数のオプションは累積されます。

タグ: action_command_lines

--host_compilation_mode=<fastbuild, dbg or opt> デフォルト: "opt"

ビルド中に使用されるツールのビルドモードを指定します。値: 「fastbuild」、「dbg」、「opt」。

タグ: affects_outputsaction_command_lines

--host_cpu=<a string> のデフォルト: ""

ホスト CPU。

タグ: changes_inputsaffects_outputs

--host_features=<a string> の複数の用途が蓄積される

指定された機能は、exec 構成でビルドされたターゲットに対してデフォルトで有効または無効になります。-<feature> を指定すると、機能が無効になります。除外機能は常に非除外機能をオーバーライドします。

タグ: changes_inputsaffects_outputs

--[no]incompatible_auto_exec_groups のデフォルト: 「false」

有効にすると、ルールで使用されるツールチェーンごとに実行グループが自動的に作成されます。このルールを機能させるには、アクションで toolchain パラメータを指定する必要があります。詳細については、https://github.com/bazelbuild/bazel/issues/17134 をご覧ください。

タグ: affects_outputsincompatible_change

--[no]incompatible_merge_genfiles_directory デフォルト: "true"

true の場合、genfiles ディレクトリは bin ディレクトリに折りたたまれます。

タグ: affects_outputsincompatible_change

--[no]incompatible_target_cpu_from_platform デフォルト: "true"

指定されている場合、ターゲット プラットフォームの CPU 制約(@platforms//cpu:cpu)の値を使用して、$(TARGET_CPU) メイク変数を設定します。

タグ: loading_and_analysisincompatible_change

--[no]instrument_test_targets のデフォルト: 「false」

カバレッジが有効な場合に、テストルールの計測を考慮するかどうかを指定します。設定すると、--instrumentation_filter で指定されたテストルールがインストルメント化されます。それ以外の場合、テストルールは常にカバレッジ計測から除外されます。

タグ: affects_outputs

--instrumentation_filter=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths> デフォルト: "-/javatests[/:],-/test/java[/:]"

カバレッジが有効になっている場合、指定された正規表現ベースのフィルタに含まれる名前のルールのみが計測されます。代わりに、接頭辞「-」が付いたルールが除外されます。--instrument_test_targets が有効になっていない限り、テスト以外のルールのみが計測されます。

タグ: affects_outputs

--platform_suffix=<a string> デフォルト: 説明を参照

構成ディレクトリに追加する接尾辞を指定します。

タグ: loses_incremental_stateaffects_outputsloading_and_analysis

--run_under=<a prefix in front of command> デフォルト: 説明を参照

「test」コマンドと「run」コマンドの実行可能ファイルの前に追加する接頭辞。値が「foo -bar」で、実行コマンドラインが「test_binary -baz」の場合、最終的なコマンドラインは「foo -bar test_binary -baz」になります。これは実行可能ターゲットのラベルにすることもできます。たとえば、'valgrind'、'strace'、'strace -c'、'valgrind --quiet --num-callers=20'、'//package:target'、'//package:target --options' などがあります。

タグ: action_command_lines

--[no]stamp のデフォルト: 「false」

バイナリに日付、ユーザー名、ホスト名、ワークスペース情報などをスタンプします。

タグ: affects_outputs

Bazel が有効なビルド入力(ルール定義、フラグの組み合わせなど)を厳密に適用する方法に影響するオプション:
--[no]check_visibility デフォルト: "true"

無効にすると、ターゲット依存関係の可視性エラーが警告に降格されます。

タグ: build_file_semanticsnon_configurable

--[no]enforce_constraints デフォルト: "true"

各ターゲットと互換性のある環境をチェックし、同じ環境をサポートしていない依存関係がターゲットにある場合はエラーを報告します

タグ: build_file_semantics

--[no]experimental_enforce_transitive_visibility のデフォルト: 「false」

true の場合、package() が transitive_visibility 属性を設定して、依存できるパッケージを制限できるようにします。

タグ: build_file_semanticsexperimental

--[no]incompatible_check_testonly_for_output_files のデフォルト: 「false」

有効になっている場合、生成ルールの testonly を調べて、出力ファイルである前提条件ターゲットの testonly を確認します。これは公開設定の確認と一致します。

タグ: build_file_semanticsincompatible_change

--[no]strict_filesets のデフォルト: 「false」

このオプションを有効にすると、パッケージ境界を越えるファイルセットがエラーとして報告されます。

タグ: build_file_semanticseagerness_to_exit

--target_environment=<a build target label> の複数の用途が蓄積される

このビルドのターゲット環境を宣言します。「環境」ルールへのラベル参照である必要があります。指定した場合、すべての最上位ターゲットはこの環境と互換性がある必要があります。

タグ: changes_inputs

このオプションは、Starlark 言語のセマンティクス、または BUILD ファイル、.bzl ファイル、WORKSPACE ファイルからアクセス可能なビルド API に影響します。
--[no]incompatible_config_setting_private_default_visibility のデフォルト: 「false」

incompatible_enforce_config_setting_visibility=false の場合、これは noop です。それ以外の場合、このフラグが false の場合、明示的な公開設定属性のない config_setting は //visibility:public になります。このフラグが true の場合、config_setting は他のすべてのルールと同じ公開設定ロジックに従います。https://github.com/bazelbuild/bazel/issues/12933 をご覧ください。

タグ: loading_and_analysisincompatible_change

--[no]incompatible_enforce_config_setting_visibility デフォルト: "true"

true の場合、config_setting の公開設定の制限を適用します。false の場合、すべての config_setting がすべてのターゲットに表示されます。https://github.com/bazelbuild/bazel/issues/12932 をご覧ください。

タグ: loading_and_analysisincompatible_change

テスト環境またはテストランナーの動作を制御するオプション:
--[no]allow_analysis_failures のデフォルト: 「false」

true の場合、ルール ターゲットの分析が失敗すると、ビルドの失敗ではなく、エラーの説明を含む AnalysisFailureInfo のインスタンスがターゲットに伝播されます。

タグ: loading_and_analysisexperimental

--analysis_testing_deps_limit=<an integer> のデフォルト: 「2000」

for_analysis_testing 構成の移行を含むルール属性を使用して、推移的依存関係の最大数を設定します。この上限を超えると、ルールエラーが発生します。

タグ: loading_and_analysis

`mod` サブコマンドの出力とセマンティクスに関連するオプション:
--base_module=<"<root>" for the root module; <module>@<version> for a specific version of a module; <module> for all versions of a module; @<name> for a repo with the given apparent name; or @@<name> for a repo with the given canonical name> デフォルト: "<root>"

指定されたターゲット リポジトリが解釈される基準となるモジュールを指定します。

タグ: terminal_output

--charset=<utf8 or ascii> デフォルト: "utf8"

ツリーに使用する文字セットを選択します。テキスト出力にのみ影響します。有効な値は「utf8」または「ascii」です。デフォルトは utf8 です。

タグ: terminal_output

--[no]cycles デフォルト: "true"

表示されたツリー内の依存関係サイクルを指摘します。

タグ: terminal_output

--depth=<an integer> のデフォルト: 「-1」

依存関係ツリーの最大表示深度。たとえば、深さ 1 は直接依存関係を表示します。tree、path、all_paths の場合はデフォルトで Integer.MAX_VALUE になり、deps と explain の場合はデフォルトで 1 になります(ターゲット リーフとその親に加えて、ルートの直接的な依存関係のみが表示されます)。

タグ: terminal_output

--extension_filter=<a comma-separated list of <extension>s> デフォルト: 説明を参照

それぞれのフラグが設定されている場合にのみ、これらのモジュール拡張機能の使用状況と、それらによって生成されたリポジトリを表示します。設定すると、結果グラフには指定された拡張機能を使用するモジュールを含むパスのみが含まれます。リストが空の場合、フィルタは無効になり、事実上、すべての拡張機能が指定されます。

タグ: terminal_output

--extension_info=<hidden, usages, repos or all> のデフォルト: 「hidden」

クエリ結果に含める拡張機能の使用状況の詳細を指定します。「Usages」には拡張機能の名前のみが表示され、「repos」には use_repo でインポートされたリポジトリも含まれます。「all」には、拡張機能によって生成された他のリポジトリも表示されます。

タグ: terminal_output

--extension_usages=<a comma-separated list of <module>s> のデフォルト: ""

show_extension クエリで拡張機能の使用状況が表示されるモジュールを指定します。

タグ: terminal_output

--from=<a comma-separated list of <module>s> デフォルト: "<root>"

依存関係グラフのクエリの開始モジュール。正確なセマンティクスについては、各クエリの説明を確認してください。デフォルトは <root> です。

タグ: terminal_output

--[no]include_builtin のデフォルト: 「false」

依存関係グラフに組み込みモジュールを含めます。ノイズが多いため、デフォルトでは無効になっています。

タグ: terminal_output

--[no]include_unused のデフォルト: 「false」

クエリでは、選択後にモジュール解決グラフに表示されない未使用のモジュール(最小バージョン選択またはオーバーライド ルールによる)も考慮され、表示されます。これは、クエリタイプごとに異なる影響を与える可能性があります。たとえば、all_paths コマンドに新しいパスを含めたり、explain コマンドに依存関係を追加したりします。

タグ: terminal_output

--output=<text, json or graph> のデフォルト: "text"

クエリ結果を出力する形式。クエリに指定できる値は、text、json、graph です。

タグ: terminal_output

--[no]verbose のデフォルト: 「false」

クエリには、モジュールが現在のバージョンに解決された理由(変更された場合)も表示されます。説明クエリの場合のみ、デフォルトは true です。

タグ: terminal_output

ロギングの冗長性、形式、場所に影響するオプション:
--[no]verbose_visibility_errors のデフォルト: 「false」

有効にすると、可視性エラーに診断情報が追加されます。

タグ: build_file_semanticsnon_configurable

他のカテゴリに分類されない Bazel コマンドへの汎用入力を指定または変更するオプション:
--flag_alias=<a 'name=value' flag alias> の複数の用途が蓄積される

Starlark フラグの短縮名を設定します。引数として「<key>=<value>」の形式の Key-Value ペアを 1 つ取ります。

タグ: changes_inputsnon_configurable

その他のオプション(他のカテゴリに分類されないもの):
--deleted_packages=<comma-separated list of package names> の複数の用途が蓄積される

ビルドシステムが、パッケージパスのどこかに表示されていても存在しないとみなすパッケージ名のカンマ区切りリスト。既存のパッケージ「x」のサブパッケージ「x/y」を削除する場合は、このオプションを使用します。たとえば、クライアントで x/y/BUILD を削除した後、別の package_path エントリによってまだ提供されているラベル「//x:y/z」が検出されると、ビルドシステムがエラーを報告することがあります。--deleted_packages x/y を指定すると、この問題を回避できます。

--[no]fetch デフォルト: "true"

コマンドが外部依存関係を取得できるようにします。false に設定すると、コマンドは依存関係のキャッシュ バージョンを使用します。キャッシュ バージョンが存在しない場合、コマンドは失敗します。

--package_path=<colon-separated list of options> デフォルト: "%workspace%"

パッケージの検索場所をコロンで区切ったリスト。「%workspace%」で始まる要素は、囲んでいるワークスペースを基準としています。省略した場合や空の場合、デフォルトは「bazel info default-package-path」の出力です。

--[no]show_loading_progress デフォルト: "true"

有効にすると、Bazel が「パッケージの読み込み中:」というメッセージを出力します。

build からすべてのオプションを継承します。

その他のオプション(他のカテゴリに分類されないもの):

print_action データをフィルタするニーモニックのリスト。空のままにすると、フィルタリングは行われません。

クエリ オプション

ビルド実行を制御するオプション:
--[no]experimental_remotable_source_manifests のデフォルト: 「false」

ソース マニフェスト アクションをリモート可能にするかどうか

タグ: loading_and_analysisexecutionexperimental

--[no]experimental_strict_fileset_output のデフォルト: 「false」

このオプションを有効にすると、ファイルセットはすべての出力アーティファクトを通常のファイルとして扱います。ディレクトリをトラバースしたり、シンボリック リンクを認識したりすることはありません。

タグ: executionexperimental

--[no]incompatible_modify_execution_info_additive デフォルト: "true"

有効にすると、複数の --modify_execution_info フラグを渡すことで、追加されます。無効になっている場合は、最後のフラグのみが考慮されます。

タグ: executionaffects_outputsloading_and_analysisincompatible_change

--[no]keep_going [-k] デフォルト: "false"

エラーが発生した後も、できる限り続行します。失敗したターゲットとそれに依存するターゲットは分析できませんが、これらのターゲットの他の前提条件は分析できます。

タグ: eagerness_to_exit

--loading_phase_threads=<an integer, or a keyword ("auto", "HOST_CPUS", "HOST_RAM"), optionally followed by an operation ([-|*]<float>) eg. "auto", "HOST_CPUS*.5"> デフォルト: "auto"

読み込み/分析フェーズで使用する並列スレッドの数。整数またはキーワード(「auto」、「HOST_CPUS」、「HOST_RAM」)を受け取ります。必要に応じて、演算([-|]<float>)を続けることができます。例: 「auto」、「HOST_CPUS.5」。「auto」は、ホストリソースに基づいて適切なデフォルトを設定します。1 以上の値を設定してください。

タグ: bazel_internal_configuration

--modify_execution_info=<regex=[+-]key,regex=[+-]key,...> の複数の用途が蓄積される

アクションのニーモニックに基づいて、アクションの実行情報からキーを追加または削除します。実行情報をサポートするアクションにのみ適用されます。多くの一般的なアクション(Genrule、CppCompile、Javac、StarlarkAction、TestRunner など)は実行情報をサポートしています。複数の値を指定する場合は、順序が重要です。これは、多くの正規表現が同じニーモニックに適用される可能性があるためです。

構文: "regex=[+-]key,regex=[+-]key,..."。

例: '.=+x,.=-y,.=+z' は、すべてのアクションの実行情報に 'x' と 'z' を追加し、'y' を削除します。「Genrule=+requires-x」は、すべての Genrule アクションの実行情報に「requires-x」を追加します。'(?!Genrule).=-requires-x' は、Genrule 以外のアクションの実行情報から 'requires-x' を削除します。

タグ: executionaffects_outputsloading_and_analysis

--[no]use_target_platform_for_tests のデフォルト: 「false」

true の場合、テスト実行グループではなく、テストの実行にターゲット プラットフォームを使用します。

タグ: execution

アクションの実行に使用されるツールチェーンを構成するオプション:
--[no]incompatible_bazel_test_exec_run_under デフォルト: "true"

有効にすると、"bazel test --run_under=//:runner" は実行構成で "//:runner" をビルドします。無効にすると、ターゲット構成で「//:runner」がビルドされます。Bazel は実行マシンでテストを実行するため、後者の方がより正確です。これは「bazel run」には影響しません。これは常にターゲット構成で「`--run_under=//foo」をビルドします。

タグ: affects_outputsincompatible_change

コマンドの出力を制御するオプション:

true の場合、すべてのターゲットのランファイル シンボリック リンク フォレストをビルドします。false の場合、ローカル アクション、テスト、実行コマンドで必要な場合にのみ書き込みます。

タグ: affects_outputs

--[no]build_runfile_manifests デフォルト: "true"

true の場合、すべてのターゲットの runfiles マニフェストを書き込みます。false の場合は省略します。false の場合、ローカルテストは実行されません。

タグ: affects_outputs

--[no]incompatible_always_include_files_in_data デフォルト: "true"

true の場合、ネイティブ ルールはデータ依存関係の <code>DefaultInfo.files</code> をランファイルに追加します。これは、Starlark ルールの推奨動作(https://bazel.build/extending/rules#runfiles_features_to_avoid)と一致します。

タグ: affects_outputsincompatible_change

--[no]incompatible_compact_repo_mapping_manifest のデフォルト: 「false」

有効にすると、<binary>.repo_mapping ファイルは、ランファイルを提供する拡張機能によって生成されたリポジトリごとに 1 回ではなく、モジュール拡張機能のリポジトリ マッピングを 1 回だけ出力します。

タグ: affects_outputsincompatible_change

--incompatible_disable_select_on=<comma-separated set of options> のデフォルト: ""

select() での使用が無効になっているフラグのリスト。

タグ: loading_and_analysisincompatible_changenon_configurable

--[no]incompatible_filegroup_runfiles_for_data デフォルト: "true"

true の場合、srcs 属性にリストされているターゲットの runfile は、filegroup をデータ依存関係として使用するターゲットで使用できます。

タグ: incompatible_change

ユーザーが目的の出力を構成し、その存在ではなく値に影響を与えるオプション:
--action_env=<a 'name[=value]' assignment with an optional value part or the special syntax '=name' to unset a variable> の複数の用途が蓄積される

ターゲット構成を持つアクションで使用可能な環境変数のセットを指定します。変数は <code>name</code&gt> で指定できます。この場合、値は呼び出し環境から取得されます。また、<code>name=value</code&gt> ペアで指定することもできます。この場合、値は呼び出し環境とは無関係に設定されます。さらに、<code>=name</code&gt> で指定することもできます。この場合、その名前の変数は設定解除されます。このオプションは複数回使用できます。同じ変数に指定されたオプションは後勝ちになり、異なる変数のオプションは累積されます。<br><code>--incompatible_repo_env_ignores_action_env</code> が true でない限り、すべての <code>name=value</code> ペアはリポジトリ ルールで使用できます。

タグ: action_command_lines

--allowed_cpu_values=<comma-separated set of options> のデフォルト: ""

--cpu フラグに指定できる値。

タグ: changes_inputsaffects_outputs

--[no]collect_code_coverage のデフォルト: 「false」

指定すると、Bazel はコードを計測し(可能な場合はオフライン計測を使用)、テスト中にカバレッジ情報を収集します。--instrumentation_filter に一致するターゲットのみが影響を受けます。通常、このオプションは直接指定しないでください。代わりに「bazel coverage」コマンドを使用してください。

タグ: affects_outputs

--compilation_mode=<fastbuild, dbg or opt> [-c] デフォルト: "fastbuild"

バイナリのビルドモードを指定します。値: 「fastbuild」、「dbg」、「opt」。

タグ: affects_outputsaction_command_lines

--cpu=<a string> のデフォルト: ""

非推奨: このフラグは、下位互換性を確保するためのレガシー プラットフォーム マッピングはありますが、Blaze では内部的に使用されません。このフラグは使用しないでください。代わりに、適切なプラットフォーム定義で --platforms を使用してください。

タグ: changes_inputsaffects_outputs

--define=<a 'name=value' assignment> の複数の用途が蓄積される

各 --define オプションは、ビルド変数の割り当てを指定します。変数に複数の値がある場合は、最後の値が優先されます。

タグ: changes_inputsaffects_outputs

--[no]enable_runfiles デフォルト: "auto"

ランファイル シンボリック リンク ツリーを有効にします。デフォルトでは、Windows ではオフ、他のプラットフォームではオンです。

タグ: affects_outputs

--exec_aspects=<comma-separated list of options> の複数の用途が蓄積される

トップレベルのターゲットであるかどうかに関係なく、exec 構成のターゲットに適用されるアスペクトのカンマ区切りリスト。この機能は試験運用版であり、変更される可能性があります。

タグ: loading_and_analysis

--experimental_action_listener=<a build target label> の複数の用途が蓄積される

アスペクトに置き換えられたため、非推奨になりました。action_listener を使用して、既存のビルド アクションに extra_action をアタッチします。

タグ: executionexperimental

--[no]experimental_collect_code_coverage_for_generated_files のデフォルト: 「false」

指定すると、Bazel は生成されたファイルの収集カバレッジ情報も生成します。

タグ: affects_outputsexperimental

--experimental_output_paths=<off or strip> のデフォルト: 「off」

出力ツリーのどの場所にルールがその出力を書き込むか(特にマルチプラットフォーム / マルチ構成ビルドの場合)に使用するモデル。これは試験運用版です。詳しくは、https://github.com/bazelbuild/bazel/issues/6526 をご覧ください。Starlark アクションは、'execution_requirements' 辞書にキー 'supports-path-mapping' を追加することで、パス マッピングを選択できます。

タグ: loses_incremental_statebazel_internal_configurationaffects_outputsexecution

--experimental_override_platform_cpu_name=<a 'label=value' assignment> の複数の用途が蓄積される

各エントリは label=value の形式にする必要があります。ここで、label はプラットフォームを指し、values は $(TARGET_CPU) make 変数と出力パスでプラットフォームの CPU 名をオーバーライドする目的の短縮名です。--experimental_platform_in_output_dir、--incompatible_target_cpu_from_platform、--incompatible_bep_cpu_from_platform が true の場合にのみ使用されます。命名の優先度が最も高い。

タグ: affects_outputsexperimental

--[no]experimental_platform_in_output_dir のデフォルト: 「false」

true の場合、CPU の代わりにターゲット プラットフォームの短縮名が出力ディレクトリ名に使用されます。auto の場合、これは exec 構成にのみ適用されます。正確なスキームは試験運用であり、変更される可能性があります。まず、--platforms オプションの値が 1 つだけではないまれなケースでは、platforms オプションのハッシュが使用されます。次に、現在のプラットフォームの短縮名が --experimental_override_name_platform_in_output_dir で登録されている場合は、その短縮名が使用されます。次に、--experimental_use_platforms_in_output_dir_legacy_heuristic が設定されている場合は、現在のプラットフォーム ラベルに基づく短縮名を使用します。最後に、プラットフォーム オプションのハッシュが最後の手段として使用されます。

タグ: affects_outputsexperimental

--[no]experimental_use_platforms_in_output_dir_legacy_heuristic デフォルト: "true"

このフラグは、移行またはテストの推奨戦略の一部としてのみ使用してください。このヒューリスティックには既知の欠陥があるため、--experimental_override_name_platform_in_output_dir のみに依存するように移行することをおすすめします。

タグ: affects_outputsexperimental

--features=<a string> の複数の用途が蓄積される

指定された機能は、ターゲット構成でビルドされたターゲットに対してデフォルトで有効または無効になります。-<feature> を指定すると、機能が無効になります。除外機能は常に非除外機能をオーバーライドします。--host_features もご覧ください

タグ: changes_inputsaffects_outputs

--host_action_env=<a 'name[=value]' assignment with an optional value part or the special syntax '=name' to unset a variable> の複数の用途が蓄積される

実行構成を持つアクションで使用可能な環境変数のセットを指定します。変数は名前で指定できます。この場合、値は呼び出し環境から取得されます。また、name=value ペアで指定することもできます。この場合、値は呼び出し環境とは無関係に設定されます。さらに、<code>=name</code> で指定することもできます。この場合、その名前の変数は設定解除されます。このオプションは複数回使用できます。同じ変数に指定されたオプションは後勝ちとなり、異なる変数のオプションは累積されます。

タグ: action_command_lines

--host_compilation_mode=<fastbuild, dbg or opt> デフォルト: "opt"

ビルド中に使用されるツールのビルドモードを指定します。値: 「fastbuild」、「dbg」、「opt」。

タグ: affects_outputsaction_command_lines

--host_cpu=<a string> のデフォルト: ""

ホスト CPU。

タグ: changes_inputsaffects_outputs

--host_features=<a string> の複数の用途が蓄積される

指定された機能は、exec 構成でビルドされたターゲットに対してデフォルトで有効または無効になります。-<feature> を指定すると、機能が無効になります。除外機能は常に非除外機能をオーバーライドします。

タグ: changes_inputsaffects_outputs

--[no]incompatible_auto_exec_groups のデフォルト: 「false」

有効にすると、ルールで使用されるツールチェーンごとに実行グループが自動的に作成されます。このルールを機能させるには、アクションで toolchain パラメータを指定する必要があります。詳細については、https://github.com/bazelbuild/bazel/issues/17134 をご覧ください。

タグ: affects_outputsincompatible_change

--[no]incompatible_merge_genfiles_directory デフォルト: "true"

true の場合、genfiles ディレクトリは bin ディレクトリに折りたたまれます。

タグ: affects_outputsincompatible_change

--[no]incompatible_target_cpu_from_platform デフォルト: "true"

指定されている場合、ターゲット プラットフォームの CPU 制約(@platforms//cpu:cpu)の値を使用して、$(TARGET_CPU) メイク変数を設定します。

タグ: loading_and_analysisincompatible_change

--[no]instrument_test_targets のデフォルト: 「false」

カバレッジが有効な場合に、テストルールの計測を考慮するかどうかを指定します。設定すると、--instrumentation_filter で指定されたテストルールがインストルメント化されます。それ以外の場合、テストルールは常にカバレッジ計測から除外されます。

タグ: affects_outputs

--instrumentation_filter=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths> デフォルト: "-/javatests[/:],-/test/java[/:]"

カバレッジが有効になっている場合、指定された正規表現ベースのフィルタに含まれる名前のルールのみが計測されます。代わりに、接頭辞「-」が付いたルールが除外されます。--instrument_test_targets が有効になっていない限り、テスト以外のルールのみが計測されます。

タグ: affects_outputs

--platform_suffix=<a string> デフォルト: 説明を参照

構成ディレクトリに追加する接尾辞を指定します。

タグ: loses_incremental_stateaffects_outputsloading_and_analysis

--run_under=<a prefix in front of command> デフォルト: 説明を参照

「test」コマンドと「run」コマンドの実行可能ファイルの前に追加する接頭辞。値が「foo -bar」で、実行コマンドラインが「test_binary -baz」の場合、最終的なコマンドラインは「foo -bar test_binary -baz」になります。これは実行可能ターゲットのラベルにすることもできます。たとえば、'valgrind'、'strace'、'strace -c'、'valgrind --quiet --num-callers=20'、'//package:target'、'//package:target --options' などがあります。

タグ: action_command_lines

--[no]stamp のデフォルト: 「false」

バイナリに日付、ユーザー名、ホスト名、ワークスペース情報などをスタンプします。

タグ: affects_outputs

Bazel が有効なビルド入力(ルール定義、フラグの組み合わせなど)を厳密に適用する方法に影響するオプション:
--[no]check_visibility デフォルト: "true"

無効にすると、ターゲット依存関係の可視性エラーが警告に降格されます。

タグ: build_file_semanticsnon_configurable

--[no]enforce_constraints デフォルト: "true"

各ターゲットと互換性のある環境をチェックし、同じ環境をサポートしていない依存関係がターゲットにある場合はエラーを報告します

タグ: build_file_semantics

--[no]experimental_enforce_transitive_visibility のデフォルト: 「false」

true の場合、package() が transitive_visibility 属性を設定して、依存できるパッケージを制限できるようにします。

タグ: build_file_semanticsexperimental

--[no]incompatible_check_testonly_for_output_files のデフォルト: 「false」

有効になっている場合、生成ルールの testonly を調べて、出力ファイルである前提条件ターゲットの testonly を確認します。これは公開設定の確認と一致します。

タグ: build_file_semanticsincompatible_change

--[no]strict_filesets のデフォルト: 「false」

このオプションを有効にすると、パッケージ境界を越えるファイルセットがエラーとして報告されます。

タグ: build_file_semanticseagerness_to_exit

--target_environment=<a build target label> の複数の用途が蓄積される

このビルドのターゲット環境を宣言します。「環境」ルールへのラベル参照である必要があります。指定した場合、すべての最上位ターゲットはこの環境と互換性がある必要があります。

タグ: changes_inputs

このオプションは、Starlark 言語のセマンティクス、または BUILD ファイル、.bzl ファイル、WORKSPACE ファイルからアクセス可能なビルド API に影響します。
--[no]incompatible_config_setting_private_default_visibility のデフォルト: 「false」

incompatible_enforce_config_setting_visibility=false の場合、これは noop です。それ以外の場合、このフラグが false の場合、明示的な公開設定属性のない config_setting は //visibility:public になります。このフラグが true の場合、config_setting は他のすべてのルールと同じ公開設定ロジックに従います。https://github.com/bazelbuild/bazel/issues/12933 をご覧ください。

タグ: loading_and_analysisincompatible_change

--[no]incompatible_enforce_config_setting_visibility デフォルト: "true"

true の場合、config_setting の公開設定の制限を適用します。false の場合、すべての config_setting がすべてのターゲットに表示されます。https://github.com/bazelbuild/bazel/issues/12932 をご覧ください。

タグ: loading_and_analysisincompatible_change

テスト環境またはテストランナーの動作を制御するオプション:
--[no]allow_analysis_failures のデフォルト: 「false」

true の場合、ルール ターゲットの分析が失敗すると、ビルドの失敗ではなく、エラーの説明を含む AnalysisFailureInfo のインスタンスがターゲットに伝播されます。

タグ: loading_and_analysisexperimental

--analysis_testing_deps_limit=<an integer> のデフォルト: 「2000」

for_analysis_testing 構成の移行を含むルール属性を使用して、推移的依存関係の最大数を設定します。この上限を超えると、ルールエラーが発生します。

タグ: loading_and_analysis

クエリの出力とセマンティクスに関連するオプション:
--aspect_deps=<off, conservative or precise> のデフォルト: 「conservative」

出力形式が {xml,proto,record} のいずれかの場合にアスペクトの依存関係を解決する方法。「off」はアスペクトの依存関係が解決されないことを意味し、「conservative」(デフォルト)は直接依存関係のルールクラスが指定されているかどうかに関係なく、宣言されたすべてのアスペクトの依存関係が追加されることを意味し、「precise」は直接依存関係のルールクラスが指定されている場合に、アクティブになる可能性のあるアスペクトのみが追加されることを意味します。正確モードでは、単一のターゲットを評価するために他のパッケージを読み込む必要があるため、他のモードよりも遅くなります。また、正確モードでも完全に正確ではないことに注意してください。アスペクトを計算するかどうかの決定は分析フェーズで行われますが、このフェーズは「bazel query」の実行中には実行されません。

タグ: build_file_semantics

--[no]consistent_labels のデフォルト: 「false」

有効にすると、すべてのクエリ コマンドは、<code>Label</code> インスタンスに適用された Starlark <code>str</code> 関数によってラベルが出力されるかのようにラベルを出力します。これは、ルールによって出力されたさまざまなクエリ コマンドやラベルの出力を照合する必要があるツールに役立ちます。有効になっていない場合、出力フォーマッタは、出力の可読性を高めるために、実際のリポジトリ名(メイン リポジトリに対する相対名)を自由に出力できます。

タグ: terminal_output

--[no]experimental_explicit_aspects のデフォルト: 「false」

aquery、cquery: アスペクトで生成されたアクションを出力に含めるかどうか。query: no-op(アスペクトは常にフォローされます)。

タグ: terminal_output

--[no]experimental_graphless_query デフォルト: "auto"

true の場合、グラフのコピーを作成しない Query 実装を使用します。新しい実装では、--order_output=no と出力フォーマッタのサブセットのみがサポートされます。

タグ: build_file_semanticseagerness_to_exit

--graph:conditional_edges_limit=<an integer> のデフォルト: 「4」

表示する条件ラベルの最大数。-1 は切り捨てなし、0 はアノテーションなしを意味します。このオプションは --output=graph にのみ適用されます。

タグ: terminal_output

--[no]graph:factored デフォルト: "true"

true の場合、グラフは「因数分解」されて出力されます。つまり、トポロジ的に同等のノードがマージされ、ラベルが連結されます。このオプションは --output=graph にのみ適用されます。

タグ: terminal_output

--graph:node_limit=<an integer> のデフォルト: 「512」

出力のグラフノードのラベル文字列の最大長。長いラベルは切り捨てられます。-1 は切り捨てなしを意味します。このオプションは --output=graph にのみ適用されます。

タグ: terminal_output

--[no]implicit_deps デフォルト: "true"

有効にすると、クエリが動作する依存関係グラフに暗黙的な依存関係が含まれます。暗黙的な依存関係とは、BUILD ファイルで明示的に指定されていないが、bazel によって追加される依存関係のことです。cquery の場合、このオプションは解決されたツールチェーンのフィルタリングを制御します。

タグ: build_file_semantics

--[no]include_aspects デフォルト: "true"

aquery、cquery: アスペクトで生成されたアクションを出力に含めるかどうか。query: no-op(アスペクトは常にフォローされます)。

タグ: terminal_output

--[no]incompatible_lexicographical_output デフォルト: "true"

このオプションを設定すると、--order_output=auto の出力が辞書順に並べ替えられます。

タグ: terminal_outputincompatible_change

--[no]incompatible_package_group_includes_double_slash デフォルト: "true"

有効にすると、package_group の packages 属性を出力するときに、先頭の // が省略されなくなります。

タグ: terminal_outputincompatible_change

--[no]infer_universe_scope のデフォルト: 「false」

設定されていて、--universe_scope が設定されていない場合、--universe_scope の値はクエリ式の固有のターゲット パターンのリストとして推測されます。ユニバース スコープ関数(allrdeps など)を使用するクエリ式に対して推論される --universe_scope 値は、目的の値ではない可能性があります。このオプションは、実行する内容を理解している場合にのみ使用してください。詳細と例については、https://bazel.build/reference/query#sky-query をご覧ください。--universe_scope が設定されている場合、このオプションの値は無視されます。注: このオプションは query にのみ適用されます(cquery には適用されません)。

タグ: loading_and_analysis

--[no]line_terminator_null のデフォルト: 「false」

各形式が改行ではなく \0 で終了するかどうか。

タグ: terminal_output

--[no]nodep_deps デフォルト: "true"

有効にすると、「nodep」属性の依存関係が、クエリが動作する依存関係グラフに含まれます。「nodep」属性の一般的な例は「visibility」です。info build-language の出力を実行して解析し、ビルド言語のすべての「nodep」属性について学習します。

タグ: build_file_semantics

--noorder_results

結果を依存関係順(デフォルト)または順序なしで出力します。順序なしの出力は高速ですが、--output が minrank、maxrank、graph ではない場合にのみサポートされます。

展開すると次のようになります。
  --order_output=no

タグ: terminal_output

--null

各形式が改行ではなく \0 で終了するかどうか。

展開すると次のようになります。
  --line_terminator_null=true

タグ: terminal_output

--order_output=<no, deps, auto or full> デフォルト: "auto"

結果を順序なし(no)、依存関係順(deps)、完全順(full)で出力します。デフォルトは「auto」です。これは、出力フォーマッタに応じて、結果が依存関係順または全順序で出力されることを意味します(proto、minrank、maxrank、graph の場合は依存関係順、その他すべての場合は全順序)。出力が完全に順序付けされている場合、ノードは完全に決定論的な(合計)順序で出力されます。まず、すべてのノードがアルファベット順に並べ替えられます。次に、リスト内の各ノードが、後順深さ優先探索の開始点として使用されます。この探索では、未訪問ノードへの発信エッジが後続ノードのアルファベット順にトラバースされます。最後に、ノードは訪問された順序の逆順で出力されます。

タグ: terminal_output

--order_results

結果を依存関係順(デフォルト)または順序なしで出力します。順序なしの出力は高速ですが、--output が minrank、maxrank、graph ではない場合にのみサポートされます。

展開すると次のようになります。
  --order_output=auto

タグ: terminal_output

--output=<a string> のデフォルト: 「label」

クエリ結果を出力する形式。クエリに指定できる値は、build、graph、streamed_jsonproto、label、label_kind、location、maxrank、minrank、package、proto、streamed_proto、xml です。

タグ: terminal_output

--output_file=<a string> のデフォルト: ""

指定すると、クエリ結果がこのファイルに直接書き込まれ、Bazel の標準出力ストリーム(stdout)には何も出力されません。ベンチマークでは、通常 <code>bazel query &gt; file</code> よりも高速です。

タグ: terminal_output

--[no]proto:default_values デフォルト: "true"

true の場合、BUILD ファイルで値が明示的に指定されていない属性が含まれます。それ以外の場合は省略されます。このオプションは --output=proto に適用されます

タグ: terminal_output

--[no]proto:definition_stack のデフォルト: 「false」

definition_stack proto フィールドに入力します。このフィールドには、ルールクラスが定義された時点の Starlark 呼び出しスタックがルール インスタンスごとに記録されます。

タグ: terminal_output

--[no]proto:flatten_selects デフォルト: "true"

有効にすると、select() で作成された構成可能な属性がフラット化されます。リスト型の場合、フラット化された表現は、選択マップの各値を 1 回だけ含むリストです。スカラー型は null にフラット化されます。

タグ: build_file_semantics

--[no]proto:include_attribute_source_aspects のデフォルト: 「false」

各 Attribute の source_aspect_name proto フィールドに、属性の取得元となったソース アスペクトを入力します(取得元がない場合は空の文字列)。

タグ: terminal_output

--[no]proto:include_starlark_rule_env デフォルト: "true"

生成された $internal_attr_hash 属性の値で starlark 環境を使用します。これにより、starlark ルール定義(とその推移的なインポート)がこの識別子の一部になります。

タグ: terminal_output

--[no]proto:include_synthetic_attribute_hash のデフォルト: 「false」

$internal_attr_hash 属性を計算して入力するかどうか。

タグ: terminal_output

--[no]proto:instantiation_stack のデフォルト: 「false」

各ルールのインスタンス化呼び出しスタックを設定します。これにはスタックが存在する必要があります。

タグ: terminal_output

--[no]proto:locations デフォルト: "true"

位置情報を proto 出力に出力するかどうか。

タグ: terminal_output

--proto:output_rule_attrs=<comma-separated list of options> のデフォルト: "all"

出力に含める属性のカンマ区切りのリスト。デフォルトはすべての属性です。属性を出力しない場合は、空の文字列に設定します。このオプションは --output=proto に適用されます。

タグ: terminal_output

--[no]proto:rule_classes のデフォルト: 「false」

各ルールの rule_class_key フィールドに入力します。また、特定の rule_class_key を持つ最初のルールについては、rule_class_info proto フィールドにも入力します。rule_class_key フィールドはルールクラスを一意に識別し、rule_class_info フィールドは Stardoc 形式のルールクラス API 定義です。

タグ: terminal_output

--[no]proto:rule_inputs_and_outputs デフォルト: "true"

rule_input フィールドと rule_output フィールドに値を設定するかどうか。

タグ: terminal_output

--query_file=<a string> のデフォルト: ""

設定すると、クエリはコマンドラインではなく、ここで指定された名前のファイルから読み取られます。ここでファイルとコマンドライン クエリの両方を指定するとエラーになります。

タグ: changes_inputs

--[no]relative_locations のデフォルト: 「false」

true の場合、xml と proto の出力の BUILD ファイルの場所は相対パスになります。デフォルトでは、出力される場所は絶対パスであり、マシン間で一貫性がありません。このオプションを true に設定すると、マシン間で一貫した結果が得られます。

タグ: terminal_output

--[no]strict_test_suite のデフォルト: 「false」

true の場合、テスト以外のターゲットを含む test_suite が検出されると、tests() 式でエラーが発生します。

タグ: build_file_semanticseagerness_to_exit

--[no]tool_deps デフォルト: "true"

クエリ: 無効にすると、クエリが動作する依存関係グラフに「実行構成」の依存関係が含まれなくなります。通常、'proto_library' ルールから Protocol Compiler への依存関係エッジなどの「実行構成」は、同じ「ターゲット」プログラムの一部ではなく、ビルド中に実行されるツールを指します。Cquery: 無効にすると、この構成済みターゲットを検出した最上位ターゲットから実行遷移をクロスする構成済みターゲットがすべてフィルタされます。つまり、最上位のターゲットがターゲット構成にある場合、ターゲット構成にある構成済みのターゲットのみが返されます。トップレベルのターゲットが exec 構成にある場合、exec 構成のターゲットのみが返されます。このオプションでは、解決済みのツールチェーンは除外されません。

タグ: build_file_semantics

--universe_scope=<comma-separated list of options> のデフォルト: ""

ターゲット パターンのセット(加算と減算)のカンマ区切り。クエリは、指定されたターゲットの推移閉包によって定義されたユニバースで実行される場合があります。このオプションは、query コマンドと cquery コマンドで使用されます。cquery の場合、このオプションの入力はすべての回答がビルドされるターゲットであるため、このオプションは構成と遷移に影響する可能性があります。このオプションが指定されていない場合、トップレベル ターゲットはクエリ式から解析されたターゲットと見なされます。注: cquery の場合、このオプションを指定しないと、クエリ式から解析されたターゲットがトップレベル オプションでビルドできない場合にビルドが失敗する可能性があります。

タグ: loading_and_analysis

--[no]xml:default_values のデフォルト: 「false」

true の場合、BUILD ファイルで値が明示的に指定されていないルール属性が出力されます。それ以外の場合は省略されます。

タグ: terminal_output

--[no]xml:line_numbers デフォルト: "true"

true の場合、XML 出力に行番号が含まれます。このオプションを無効にすると、差分が読みやすくなることがあります。このオプションは --output=xml にのみ適用されます。

タグ: terminal_output

ロギングの冗長性、形式、場所に影響するオプション:
--[no]verbose_visibility_errors のデフォルト: 「false」

有効にすると、可視性エラーに診断情報が追加されます。

タグ: build_file_semanticsnon_configurable

他のカテゴリに分類されない Bazel コマンドへの汎用入力を指定または変更するオプション:
--flag_alias=<a 'name=value' flag alias> の複数の用途が蓄積される

Starlark フラグの短縮名を設定します。引数として「<key>=<value>」の形式の Key-Value ペアを 1 つ取ります。

タグ: changes_inputsnon_configurable

その他のオプション(他のカテゴリに分類されないもの):
--deleted_packages=<comma-separated list of package names> の複数の用途が蓄積される

ビルドシステムが、パッケージパスのどこかに表示されていても存在しないとみなすパッケージ名のカンマ区切りリスト。既存のパッケージ「x」のサブパッケージ「x/y」を削除する場合は、このオプションを使用します。たとえば、クライアントで x/y/BUILD を削除した後、別の package_path エントリによってまだ提供されているラベル「//x:y/z」が検出されると、ビルドシステムがエラーを報告することがあります。--deleted_packages x/y を指定すると、この問題を回避できます。

--[no]fetch デフォルト: "true"

コマンドが外部依存関係を取得できるようにします。false に設定すると、コマンドは依存関係のキャッシュ バージョンを使用します。キャッシュ バージョンが存在しない場合、コマンドは失敗します。

--package_path=<colon-separated list of options> デフォルト: "%workspace%"

パッケージの検索場所をコロンで区切ったリスト。「%workspace%」で始まる要素は、囲んでいるワークスペースを基準としています。省略した場合や空の場合、デフォルトは「bazel info default-package-path」の出力です。

--[no]show_loading_progress デフォルト: "true"

有効にすると、Bazel が「パッケージの読み込み中:」というメッセージを出力します。

実行オプション

build からすべてのオプションを継承します。

コマンドの前に表示され、クライアントによって解析されるオプション:
--[no]portable_paths のデフォルト: 「false」

true の場合、結果のパスをポータブルにするために、ExecRequest で置き換えるパスが含まれます。

タグ: affects_outputs

--[no]run デフォルト: "true"

false の場合、ビルドされたターゲット用に構築されたコマンドラインの実行をスキップします。このフラグは、すべての --script_path ビルドで無視されます。

タグ: affects_outputs

--run_env=<a 'name[=value]' assignment with an optional value part or the special syntax '=name' to unset a variable> の複数の用途が蓄積される

ターゲットが実行できる環境変数のセットを指定します。変数は名前で指定できます。この場合、値は呼び出し環境から取得されます。また、<code>name=value</code> ペアで指定することもできます。この場合、値は呼び出し環境とは無関係に設定されます。<code>=name</code> で指定することもできます。この場合、その名前の変数は設定解除されます。このオプションは複数回使用できます。同じ変数に指定されたオプションは後勝ちとなり、異なる変数のオプションは累積されます。実行されたターゲットは、明示的に設定解除された変数を除き、通常はホストの環境全体を参照します。

タグ: affects_outputs

ユーザーが目的の出力を構成し、その存在ではなく値に影響を与えるオプション:
--script_path=<a path> デフォルト: 説明を参照

設定されている場合、ターゲットを呼び出すシェル スクリプトを指定されたファイルに書き込みます。このオプションが設定されている場合、ターゲットは bazel から実行されません。「bazel run --script_path=foo //foo && ./foo」を使用してターゲット「//foo」を呼び出します。これは、「bazel run //foo」とは異なり、bazel ロックが解除され、実行可能ファイルがターミナルの stdin に接続されます。

タグ: affects_outputsexecution

シャットダウン オプション

コマンドの出力を制御するオプション:
--iff_heap_size_greater_than=<an integer> のデフォルト: 「0」

ゼロ以外の場合、JVM で消費される合計メモリ(MB 単位)がこの値を超えた場合にのみ、シャットダウンによってサーバーがシャットダウンされます。

タグ: loses_incremental_stateeagerness_to_exit

テスト オプション

build からすべてのオプションを継承します。

ロギングの冗長性、形式、場所に影響するオプション:
--[no]print_relative_test_log_paths のデフォルト: 「false」

true の場合、テストログへのパスを出力するときに、'testlogs' コンビニエンス シンボリック リンクを利用する相対パスを使用します。注 - 異なる構成で後続の「build」/「test」などの呼び出しを行うと、このシンボリック リンクのターゲットが変更され、以前に出力されたパスが使用できなくなる可能性があります。

タグ: affects_outputs

--[no]test_verbose_timeout_warnings のデフォルト: 「false」

true の場合、実際のテスト実行時間がテストで定義されたタイムアウト(暗黙的または明示的)と一致しない場合に、追加の警告を出力します。

タグ: affects_outputs

--[no]verbose_test_summary デフォルト: "true"

true の場合、テストの概要に追加情報(タイミング、失敗した実行の数など)を出力します。

タグ: affects_outputs

ベンダー オプション

test からすべてのオプションを継承します。

ビルド実行を制御するオプション:
--[no]keep_going [-k] デフォルト: "false"

エラーが発生した後も、できる限り続行します。失敗したターゲットとそれに依存するターゲットは分析できませんが、これらのターゲットの他の前提条件は分析できます。

タグ: eagerness_to_exit

--loading_phase_threads=<an integer, or a keyword ("auto", "HOST_CPUS", "HOST_RAM"), optionally followed by an operation ([-|*]<float>) eg. "auto", "HOST_CPUS*.5"> デフォルト: "auto"

読み込み/分析フェーズで使用する並列スレッドの数。整数またはキーワード(「auto」、「HOST_CPUS」、「HOST_RAM」)を受け取ります。必要に応じて、演算([-|]<float>)を続けることができます。例: 「auto」、「HOST_CPUS.5」。「auto」は、ホストリソースに基づいて適切なデフォルトを設定します。1 以上の値を設定してください。

タグ: bazel_internal_configuration

このオプションは、Starlark 言語のセマンティクス、または BUILD ファイル、.bzl ファイル、WORKSPACE ファイルからアクセス可能なビルド API に影響します。
--[no]incompatible_config_setting_private_default_visibility のデフォルト: 「false」

incompatible_enforce_config_setting_visibility=false の場合、これは noop です。それ以外の場合、このフラグが false の場合、明示的な公開設定属性のない config_setting は //visibility:public になります。このフラグが true の場合、config_setting は他のすべてのルールと同じ公開設定ロジックに従います。https://github.com/bazelbuild/bazel/issues/12933 をご覧ください。

タグ: loading_and_analysisincompatible_change

--[no]incompatible_enforce_config_setting_visibility デフォルト: "true"

true の場合、config_setting の公開設定の制限を適用します。false の場合、すべての config_setting がすべてのターゲットに表示されます。https://github.com/bazelbuild/bazel/issues/12932 をご覧ください。

タグ: loading_and_analysisincompatible_change

Bzlmod の出力とセマンティクスに関連するオプション:
--repo=<a string> の複数の用途が蓄積される

指定されたリポジトリのベンダーのみ。@apparent_repo_name または @@canonical_repo_name のいずれかになります。このオプションは複数回設定できます

タグ: changes_inputs

その他のオプション(他のカテゴリに分類されないもの):
--deleted_packages=<comma-separated list of package names> の複数の用途が蓄積される

ビルドシステムが、パッケージパスのどこかに表示されていても存在しないとみなすパッケージ名のカンマ区切りリスト。既存のパッケージ「x」のサブパッケージ「x/y」を削除する場合は、このオプションを使用します。たとえば、クライアントで x/y/BUILD を削除した後、別の package_path エントリによってまだ提供されているラベル「//x:y/z」が検出されると、ビルドシステムがエラーを報告することがあります。--deleted_packages x/y を指定すると、この問題を回避できます。

--[no]fetch デフォルト: "true"

コマンドが外部依存関係を取得できるようにします。false に設定すると、コマンドは依存関係のキャッシュ バージョンを使用します。キャッシュ バージョンが存在しない場合、コマンドは失敗します。

--package_path=<colon-separated list of options> デフォルト: "%workspace%"

パッケージの検索場所をコロンで区切ったリスト。「%workspace%」で始まる要素は、囲んでいるワークスペースを基準としています。省略した場合や空の場合、デフォルトは「bazel info default-package-path」の出力です。

--[no]show_loading_progress デフォルト: "true"

有効にすると、Bazel が「パッケージの読み込み中:」というメッセージを出力します。

ビルド実行を制御するオプション:
--[no]experimental_persistent_aar_extractor のデフォルト: 「false」

ワーカーを使用して永続的な aar エクストラクタを有効にします。

タグ: executionexperimental

--[no]experimental_remotable_source_manifests のデフォルト: 「false」

ソース マニフェスト アクションをリモート可能にするかどうか

タグ: loading_and_analysisexecutionexperimental

--[no]experimental_split_coverage_postprocessing のデフォルト: 「false」

true の場合、Bazel は新しいスポーンでテストのカバレッジ後処理を実行します。

タグ: executionexperimental

--[no]experimental_strict_fileset_output のデフォルト: 「false」

このオプションを有効にすると、ファイルセットはすべての出力アーティファクトを通常のファイルとして扱います。ディレクトリをトラバースしたり、シンボリック リンクを認識したりすることはありません。

タグ: executionexperimental

--[no]incompatible_modify_execution_info_additive デフォルト: "true"

有効にすると、複数の --modify_execution_info フラグを渡すことで、追加されます。無効になっている場合は、最後のフラグのみが考慮されます。

タグ: executionaffects_outputsloading_and_analysisincompatible_change

--modify_execution_info=<regex=[+-]key,regex=[+-]key,...> の複数の用途が蓄積される

アクションのニーモニックに基づいて、アクションの実行情報からキーを追加または削除します。実行情報をサポートするアクションにのみ適用されます。多くの一般的なアクション(Genrule、CppCompile、Javac、StarlarkAction、TestRunner など)は実行情報をサポートしています。複数の値を指定する場合は、順序が重要です。これは、多くの正規表現が同じニーモニックに適用される可能性があるためです。

構文: "regex=[+-]key,regex=[+-]key,..."。

例: '.=+x,.=-y,.=+z' は、すべてのアクションの実行情報に 'x' と 'z' を追加し、'y' を削除します。「Genrule=+requires-x」は、すべての Genrule アクションの実行情報に「requires-x」を追加します。'(?!Genrule).=-requires-x' は、Genrule 以外のアクションの実行情報から 'requires-x' を削除します。

タグ: executionaffects_outputsloading_and_analysis

--persistent_android_dex_desugar

ワーカーを使用して、永続的な Android dex と desugar アクションを有効にします。

展開すると次のようになります。
  --internal_persistent_android_dex_desugar
  --strategy=Desugar=worker
  --strategy=DexBuilder=worker

タグ: host_machine_resource_optimizationsexecution

--persistent_android_resource_processor

ワーカーを使用して永続的な Android リソース プロセッサを有効にします。

次のように展開されます。
  --internal_persistent_busybox_tools
  --strategy=AaptPackage=worker
  --strategy=AndroidResourceParser=worker
  --strategy=AndroidResourceValidator=worker
  --strategy=AndroidResourceCompiler=worker
  --strategy=RClassGenerator=worker
  --strategy=AndroidResourceLink=worker
  --strategy=AndroidAapt2=worker
  --strategy=AndroidAssetMerger=worker
  --strategy=AndroidResourceMerger=worker
  --strategy=AndroidCompiledResourceMerger=worker
  --strategy=ManifestMerger=worker
  --strategy=AndroidManifestMerger=worker
  --strategy=Aapt2Optimize=worker
  --strategy=AARGenerator=worker
  --strategy=ProcessDatabinding=worker
  --strategy=GenerateDataBindingBaseClasses=worker

タグ: host_machine_resource_optimizationsexecution

--persistent_multiplex_android_dex_desugar

ワーカーを使用して、永続的な多重化された Android dex アクションと desugar アクションを有効にします。

展開すると次のようになります。
  --persistent_android_dex_desugar
  --internal_persistent_multiplex_android_dex_desugar

タグ: host_machine_resource_optimizationsexecution

--persistent_multiplex_android_resource_processor

ワーカーを使用して、永続的な多重化 Android リソース プロセッサを有効にします。

次のように展開されます。
  --persistent_android_resource_processor
  --modify_execution_info=AaptPackage=+supports-multiplex-workers
  --modify_execution_info=AndroidResourceParser=+supports-multiplex-workers
  --modify_execution_info=AndroidResourceValidator=+supports-multiplex-workers
  --modify_execution_info=AndroidResourceCompiler=+supports-multiplex-workers
  --modify_execution_info=RClassGenerator=+supports-multiplex-workers
  --modify_execution_info=AndroidResourceLink=+supports-multiplex-workers
  --modify_execution_info=AndroidAapt2=+supports-multiplex-workers
  --modify_execution_info=AndroidAssetMerger=+supports-multiplex-workers
  --modify_execution_info=AndroidResourceMerger=+supports-multiplex-workers
  --modify_execution_info=AndroidCompiledResourceMerger=+supports-multiplex-workers
  --modify_execution_info=ManifestMerger=+supports-multiplex-workers
  --modify_execution_info=AndroidManifestMerger=+supports-multiplex-workers
  --modify_execution_info=Aapt2Optimize=+supports-multiplex-workers
  --modify_execution_info=AARGenerator=+supports-multiplex-workers

タグ: host_machine_resource_optimizationsexecution

--persistent_multiplex_android_tools

永続的で多重化された Android ツール(dexing、desugaring、リソース処理)を有効にします。

展開すると次のようになります。
  --internal_persistent_multiplex_busybox_tools
  --persistent_multiplex_android_resource_processor
  --persistent_multiplex_android_dex_desugar

タグ: host_machine_resource_optimizationsexecution

--[no]use_target_platform_for_tests のデフォルト: 「false」

true の場合、テスト実行グループではなく、テストの実行にターゲット プラットフォームを使用します。

タグ: execution

アクションの実行に使用されるツールチェーンを構成するオプション:
--android_compiler=<a string> デフォルト: 説明を参照

Android ターゲット コンパイラ。

タグ: affects_outputsloading_and_analysisloses_incremental_state

--android_manifest_merger=<legacy, android or force_android> デフォルト: 「android」

android_binary ルールで使用するマニフェスト マージャーを選択します。レガシー マージャーから Android マニフェスト マージャーへの移行を支援するフラグ。

タグ: affects_outputsloading_and_analysisloses_incremental_state

--android_platforms=<a build target label> のデフォルト: ""

android_binary ターゲットが使用するプラットフォームを設定します。複数のプラットフォームが指定されている場合、バイナリはファット APK で、指定された各ターゲット プラットフォームのネイティブ バイナリが含まれます。

タグ: changes_inputsloading_and_analysisloses_incremental_state

--cc_output_directory_tag=<a string> のデフォルト: ""

構成ディレクトリに追加する接尾辞を指定します。

タグ: affects_outputs

--compiler=<a string> デフォルト: 説明を参照

ターゲットのコンパイルに使用する C++ コンパイラ。

タグ: loading_and_analysisexecution

--coverage_output_generator=<a build target label> デフォルト: "@bazel_tools//tools/test:lcov_merger"

未加工のカバレッジ レポートの後処理に使用されるバイナリの場所。これはバイナリ ターゲットである必要があります。デフォルトは「//tools/test:lcov_merger」です。

タグ: changes_inputsaffects_outputsloading_and_analysis

--coverage_report_generator=<a build target label> default: "@bazel_tools//tools/test:coverage_report_generator"

カバレッジ レポートの生成に使用されるバイナリの場所。これはバイナリ ターゲットである必要があります。デフォルトは「//tools/test:coverage_report_generator」です。

タグ: changes_inputsaffects_outputsloading_and_analysis

--coverage_support=<a build target label> default: "@bazel_tools//tools/test:coverage_support"

コード カバレッジを収集するすべてのテスト アクションの入力で必要なサポート ファイルの場所。デフォルトは「//tools/test:coverage_support」です。

タグ: changes_inputsaffects_outputsloading_and_analysis

--custom_malloc=<a build target label> デフォルト: 説明を参照

カスタム malloc 実装を指定します。この設定は、ビルドルールの malloc 属性をオーバーライドします。

タグ: changes_inputsaffects_outputs

--[no]experimental_include_xcode_execution_requirements のデフォルト: 「false」

設定されている場合は、すべての Xcode アクションに「requires-xcode:{version}」実行要件を追加します。Xcode のバージョンにハイフン付きのラベルがある場合は、「requires-xcode-label:{version_label}」実行要件も追加します。

タグ: loses_incremental_stateloading_and_analysisexecutionexperimental

--[no]experimental_prefer_mutual_xcode デフォルト: "true"

true の場合、ローカルとリモートの両方で使用可能な最新の Xcode を使用します。false の場合、または相互に利用可能なバージョンがない場合は、xcode-select で選択されたローカルの Xcode バージョンを使用します。

タグ: loses_incremental_stateexperimental

--extra_execution_platforms=<comma-separated list of options> のデフォルト: ""

アクションを実行するための実行プラットフォームとして使用できるプラットフォーム。プラットフォームは、正確なターゲットとして指定することも、ターゲット パターンとして指定することもできます。これらのプラットフォームは、register_execution_platforms() によって WORKSPACE ファイルで宣言されたプラットフォームよりも前に考慮されます。このオプションは 1 回のみ設定できます。後で設定したインスタンスは、以前のフラグ設定をオーバーライドします。

タグ: execution

--extra_toolchains=<comma-separated list of options> の複数の用途が蓄積される

ツールチェーン解決時に考慮されるツールチェーン ルール。ツールチェーンは、正確なターゲットとして指定することも、ターゲット パターンとして指定することもできます。これらのツールチェーンは、register_toolchains() によって WORKSPACE ファイルで宣言されたツールチェーンよりも前に考慮されます。

タグ: affects_outputschanges_inputsloading_and_analysis

--grte_top=<a label> デフォルト: 説明を参照

チェックインされた libc ライブラリのラベル。デフォルト値は crosstool ツールチェーンによって選択され、オーバーライドする必要はほとんどありません。

タグ: action_command_linesaffects_outputs

--host_compiler=<a string> デフォルト: 説明を参照

オペレーションなしフラグ。今後のリリースで削除される予定です。

タグ: loading_and_analysisexecution

--host_grte_top=<a label> デフォルト: 説明を参照

指定した場合、この設定は exec 構成の libc 最上位ディレクトリ(--grte_top)をオーバーライドします。

タグ: action_command_linesaffects_outputs

--host_platform=<a build target label> default: "@bazel_tools//tools:host_platform"

ホストシステムを説明するプラットフォーム ルールのラベル。

タグ: affects_outputschanges_inputsloading_and_analysis

--[no]incompatible_bazel_test_exec_run_under デフォルト: "true"

有効にすると、"bazel test --run_under=//:runner" は実行構成で "//:runner" をビルドします。無効にすると、ターゲット構成で「//:runner」がビルドされます。Bazel は実行マシンでテストを実行するため、後者の方がより正確です。これは「bazel run」には影響しません。これは常にターゲット構成で「`--run_under=//foo」をビルドします。

タグ: affects_outputsincompatible_change

--[no]incompatible_builtin_objc_strip_action デフォルト: "true"

objc リンクの一部としてストリップ アクションを出力するかどうか。

タグ: action_command_linesincompatible_change

--[no]incompatible_dont_enable_host_nonhost_crosstool_features デフォルト: "true"

true の場合、Bazel は c++ ツールチェーンで「host」機能と「nonhost」機能を有効にしません(詳しくは、https://github.com/bazelbuild/bazel/issues/7407 をご覧ください)。

タグ: loading_and_analysisincompatible_change

--[no]incompatible_enable_apple_toolchain_resolution のデフォルト: 「false」

ツールチェーン解決を使用して、apple ルール(Starlark とネイティブ)の Apple SDK を選択

タグ: loading_and_analysisincompatible_change

--[no]incompatible_remove_legacy_whole_archive デフォルト: "true"

true の場合、Bazel はデフォルトでライブラリの依存関係をアーカイブ全体としてリンクしません(移行手順については、https://github.com/bazelbuild/bazel/issues/7362 を参照)。

タグ: loading_and_analysisincompatible_change

--[no]incompatible_strip_executable_safely のデフォルト: 「false」

true の場合、実行可能ファイルのストリップ アクションは -x フラグを使用します。これにより、動的シンボルの解決が中断されません。

タグ: action_command_linesincompatible_change

--[no]interface_shared_objects デフォルト: "true"

ツールチェーンでサポートされている場合は、インターフェース共有オブジェクトを使用します。現在、すべての ELF ツールチェーンがこの設定をサポートしています。

タグ: loading_and_analysisaffects_outputsaffects_outputs

--ios_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

iOS アプリケーションのビルドに使用する iOS SDK のバージョンを指定します。指定しない場合、'xcode_version' のデフォルトの iOS SDK バージョンが使用されます。

タグ: loses_incremental_state

--macos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

macOS アプリケーションのビルドに使用する macOS SDK のバージョンを指定します。指定しない場合、'xcode_version' のデフォルトの macOS SDK バージョンを使用します。

タグ: loses_incremental_state

--minimum_os_version=<a string> デフォルト: 説明を参照

コンパイルの対象となる最小 OS バージョン。

タグ: loading_and_analysisaffects_outputs

--platform_mappings=<a main workspace-relative path> のデフォルト: ""

プラットフォームが設定されていない場合に使用するプラットフォーム、またはプラットフォームがすでに存在する場合に設定するフラグを記述するマッピング ファイルの場所。メインのワークスペースのルートを基準とした相対パスにする必要があります。デフォルトは「platform_mappings」(ワークスペース ルート直下のファイル)です。

タグ: affects_outputschanges_inputsloading_and_analysisnon_configurable

--platforms=<a build target label> のデフォルト: ""

現在のコマンドのターゲット プラットフォームを記述するプラットフォーム ルールのラベル。

タグ: affects_outputschanges_inputsloading_and_analysis

--python_path=<a string> デフォルト: 説明を参照

ターゲット プラットフォームで Python ターゲットを実行するために呼び出される Python インタープリタの絶対パス。非推奨。--incompatible_use_python_toolchains で無効になります。

タグ: loading_and_analysisaffects_outputs

--tvos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

tvOS アプリケーションのビルドに使用する tvOS SDK のバージョンを指定します。指定しない場合、'xcode_version' のデフォルトの tvOS SDK バージョンを使用します。

タグ: loses_incremental_state

--[no]use_platforms_in_apple_crosstool_transition のデフォルト: 「false」

必要に応じて、apple_crosstool_transition が以前の --cpu の代わりに --platforms フラグの値を使用するようにフォールバックします。

タグ: loading_and_analysis

--watchos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

watchOS アプリケーションのビルドに使用する watchOS SDK のバージョンを指定します。指定しない場合、'xcode_version' のデフォルトの watchOS SDK バージョンが使用されます。

タグ: loses_incremental_state

--xcode_version=<a string> デフォルト: 説明を参照

指定された場合、関連するビルド アクションに指定されたバージョンの Xcode を使用します。指定しない場合、Xcode のエグゼキュータのデフォルト バージョンが使用されます。

タグ: loses_incremental_state

--xcode_version_config=<a build target label> default: "@bazel_tools//tools/cpp:host_xcodes"

ビルド構成で Xcode のバージョンを選択するために使用される xcode_config ルールのラベル。

タグ: loses_incremental_stateloading_and_analysis

コマンドの出力を制御するオプション:
--[no]apple_generate_dsym のデフォルト: 「false」

デバッグ シンボル(.dSYM)ファイルを生成するかどうか。

タグ: affects_outputsaction_command_lines

true の場合、すべてのターゲットのランファイル シンボリック リンク フォレストをビルドします。false の場合、ローカル アクション、テスト、実行コマンドで必要な場合にのみ書き込みます。

タグ: affects_outputs

--[no]build_runfile_manifests デフォルト: "true"

true の場合、すべてのターゲットの runfiles マニフェストを書き込みます。false の場合は省略します。false の場合、ローカルテストは実行されません。

タグ: affects_outputs

--[no]build_test_dwp のデフォルト: 「false」

有効にすると、C++ テストを静的にビルドして fission を使用する場合、テスト バイナリの .dwp ファイルも自動的にビルドされます。

タグ: loading_and_analysisaffects_outputs

--cc_proto_library_header_suffixes=<comma-separated set of options> デフォルト: ".pb.h"

cc_proto_library が作成するヘッダー ファイルの接尾辞を設定します。

タグ: affects_outputsloading_and_analysis

--cc_proto_library_source_suffixes=<comma-separated set of options> デフォルト: ".pb.cc"

cc_proto_library が作成するソースファイルの接尾辞を設定します。

タグ: affects_outputsloading_and_analysis

--[no]experimental_proto_descriptor_sets_include_source_info のデフォルト: 「false」

proto_library で代替の Java API バージョンの追加アクションを実行します。

タグ: affects_outputsloading_and_analysisexperimental

--[no]experimental_save_feature_state のデフォルト: 「false」

有効化された機能とリクエストされた機能の状態をコンパイルの出力として保存します。

タグ: affects_outputsexperimental

--fission=<a set of compilation modes> デフォルト: 「no」

C++ のコンパイルとリンクに fission を使用するコンパイル モードを指定します。{'fastbuild', 'dbg', 'opt'} の任意の組み合わせ、またはすべてのモードを有効にする特別な値 'yes'、すべてのモードを無効にする特別な値 'no' を指定できます。

タグ: loading_and_analysisaction_command_linesaffects_outputs

--[no]incompatible_always_include_files_in_data デフォルト: "true"

true の場合、ネイティブ ルールはデータ依存関係の <code>DefaultInfo.files</code> をランファイルに追加します。これは、Starlark ルールの推奨動作(https://bazel.build/extending/rules#runfiles_features_to_avoid)と一致します。

タグ: affects_outputsincompatible_change

--[no]incompatible_compact_repo_mapping_manifest のデフォルト: 「false」

有効にすると、<binary>.repo_mapping ファイルは、ランファイルを提供する拡張機能によって生成されたリポジトリごとに 1 回ではなく、モジュール拡張機能のリポジトリ マッピングを 1 回だけ出力します。

タグ: affects_outputsincompatible_change

--incompatible_disable_select_on=<comma-separated set of options> のデフォルト: ""

select() での使用が無効になっているフラグのリスト。

タグ: loading_and_analysisincompatible_changenon_configurable

--[no]incompatible_filegroup_runfiles_for_data デフォルト: "true"

true の場合、srcs 属性にリストされているターゲットの runfile は、filegroup をデータ依存関係として使用するターゲットで使用できます。

タグ: incompatible_change

--[no]objc_generate_linkmap のデフォルト: 「false」

リンクマップ ファイルを生成するかどうかを指定します。

タグ: affects_outputs

--[no]save_temps のデフォルト: 「false」

設定すると、gcc からの一時的な出力が保存されます。これには、.s ファイル(アセンブラ コード)、.i ファイル(プリプロセスされた C)、.ii ファイル(プリプロセスされた C++)が含まれます。

タグ: affects_outputs

ユーザーが目的の出力を構成し、その存在ではなく値に影響を与えるオプション:
--action_env=<a 'name[=value]' assignment with an optional value part or the special syntax '=name' to unset a variable> の複数の用途が蓄積される

ターゲット構成を持つアクションで使用可能な環境変数のセットを指定します。変数は <code>name</code&gt> で指定できます。この場合、値は呼び出し環境から取得されます。また、<code>name=value</code&gt> ペアで指定することもできます。この場合、値は呼び出し環境とは無関係に設定されます。さらに、<code>=name</code&gt> で指定することもできます。この場合、その名前の変数は設定解除されます。このオプションは複数回使用できます。同じ変数に指定されたオプションは後勝ちになり、異なる変数のオプションは累積されます。<br><code>--incompatible_repo_env_ignores_action_env</code> が true でない限り、すべての <code>name=value</code> ペアはリポジトリ ルールで使用できます。

タグ: action_command_lines

--allowed_cpu_values=<comma-separated set of options> のデフォルト: ""

--cpu フラグに指定できる値。

タグ: changes_inputsaffects_outputs

--[no]android_databinding_use_androidx デフォルト: "true"

AndroidX 互換のデータ バインディング ファイルを生成します。これはデータバインディング v2 でのみ使用されます。このフラグは no-op です。

タグ: affects_outputsloading_and_analysisloses_incremental_stateexperimental

--[no]android_databinding_use_v3_4_args デフォルト: "true"

3.4.0 引数で Android データバインディング v2 を使用します。このフラグは no-op です。

タグ: affects_outputsloading_and_analysisloses_incremental_stateexperimental

--android_dynamic_mode=<off, default or fully> のデフォルト: 「off」

cc_binary が共有ライブラリを明示的に作成しない場合に、Android ルールの C++ 依存関係を動的にリンクするかどうかを決定します。「default」は、bazel が動的にリンクするかどうかを選択することを意味します。「fully」は、すべてのライブラリが動的にリンクされることを意味します。「off」は、すべてのライブラリがほぼ静的モードでリンクされることを意味します。

タグ: affects_outputsloading_and_analysis

--android_manifest_merger_order=<alphabetical, alphabetical_by_configuration or dependency> のデフォルト: 「alphabetical」

Android バイナリのマニフェスト マージツールに渡されるマニフェストの順序を設定します。ALPHABETICAL は、マニフェストが execroot を基準としたパスで並べ替えられることを意味します。ALPHABETICAL_BY_CONFIGURATION は、マニフェストが出力ディレクトリ内の構成ディレクトリに相対的なパスで並べ替えられることを意味します。DEPENDENCY は、各ライブラリのマニフェストが依存関係のマニフェストの前に来るようにマニフェストが順序付けられることを意味します。

タグ: action_command_linesexecution

--[no]android_resource_shrinking のデフォルト: 「false」

ProGuard を使用する android_binary APK のリソース圧縮を有効にします。

タグ: affects_outputsloading_and_analysis

--[no]build_python_zip デフォルト: "auto"

Python 実行可能 zip をビルドします。Windows ではオン、他のプラットフォームではオフ

タグ: affects_outputs

--catalyst_cpus=<comma-separated list of options> の複数の用途が蓄積される

Apple Catalyst バイナリをビルドするアーキテクチャのカンマ区切りリスト。

タグ: loses_incremental_stateloading_and_analysis

--[no]collect_code_coverage のデフォルト: 「false」

指定すると、Bazel はコードを計測し(可能な場合はオフライン計測を使用)、テスト中にカバレッジ情報を収集します。--instrumentation_filter に一致するターゲットのみが影響を受けます。通常、このオプションは直接指定しないでください。代わりに「bazel coverage」コマンドを使用してください。

タグ: affects_outputs

--compilation_mode=<fastbuild, dbg or opt> [-c] デフォルト: "fastbuild"

バイナリのビルドモードを指定します。値: 「fastbuild」、「dbg」、「opt」。

タグ: affects_outputsaction_command_lines

--conlyopt=<a string> の複数の用途が蓄積される

C ソースファイルをコンパイルするときに gcc に渡す追加オプション。

タグ: action_command_linesaffects_outputs

--copt=<a string> の複数の用途が蓄積される

gcc に渡す追加オプション。

タグ: action_command_linesaffects_outputs

--cpu=<a string> のデフォルト: ""

非推奨: このフラグは、下位互換性を確保するためのレガシー プラットフォーム マッピングはありますが、Blaze では内部的に使用されません。このフラグは使用しないでください。代わりに、適切なプラットフォーム定義で --platforms を使用してください。

タグ: changes_inputsaffects_outputs

--cs_fdo_absolute_path=<a string> デフォルト: 説明を参照

CSFDO プロファイル情報を使用してコンパイルを最適化します。プロファイル ファイル、未加工またはインデックス付きの LLVM プロファイル ファイルを含む zip ファイルの絶対パス名を指定します。

タグ: affects_outputs

--cs_fdo_instrument=<a string> デフォルト: 説明を参照

コンテキスト依存の FDO 計測でバイナリを生成します。Clang/LLVM コンパイラでは、実行時に未加工のプロファイル ファイルがダンプされるディレクトリ名も受け入れます。

タグ: affects_outputs

--cs_fdo_profile=<a build target label> デフォルト: 説明を参照

最適化に使用されるコンテキスト依存プロファイルを表す cs_fdo_profile。

タグ: affects_outputs

--cxxopt=<a string> の複数の用途が蓄積される

C++ ソースファイルをコンパイルするときに gcc に渡す追加オプション。

タグ: action_command_linesaffects_outputs

--define=<a 'name=value' assignment> の複数の用途が蓄積される

各 --define オプションは、ビルド変数の割り当てを指定します。変数に複数の値がある場合は、最後の値が優先されます。

タグ: changes_inputsaffects_outputs

--dynamic_mode=<off, default or fully> のデフォルト: "default"

C++ バイナリを動的にリンクするかどうかを決定します。「default」は、Bazel が動的にリンクするかどうかを選択することを意味します。「fully」は、すべてのライブラリが動的にリンクされることを意味します。「off」は、すべてのライブラリがほぼ静的モードでリンクされることを意味します。

タグ: loading_and_analysisaffects_outputs

--[no]enable_propeller_optimize_absolute_paths デフォルト: "true"

設定されている場合、プロペラ最適化の絶対パスを使用するとエラーが発生します。

タグ: affects_outputs

--[no]enable_remaining_fdo_absolute_paths デフォルト: "true"

設定されている場合、FDO の絶対パスを使用するとエラーが発生します。

タグ: affects_outputs

--[no]enable_runfiles デフォルト: "auto"

ランファイル シンボリック リンク ツリーを有効にします。デフォルトでは、Windows ではオフ、他のプラットフォームではオンです。

タグ: affects_outputs

--exec_aspects=<comma-separated list of options> の複数の用途が蓄積される

トップレベルのターゲットであるかどうかに関係なく、exec 構成のターゲットに適用されるアスペクトのカンマ区切りリスト。この機能は試験運用版であり、変更される可能性があります。

タグ: loading_and_analysis

--experimental_action_listener=<a build target label> の複数の用途が蓄積される

アスペクトに置き換えられたため、非推奨になりました。action_listener を使用して、既存のビルド アクションに extra_action をアタッチします。

タグ: executionexperimental

--[no]experimental_android_compress_java_resources のデフォルト: 「false」

APK の Java リソースを圧縮する

タグ: affects_outputsloading_and_analysisexperimental

--[no]experimental_android_databinding_v2 デフォルト: "true"

Android データ バインディング v2 を使用します。このフラグは no-op です。

タグ: affects_outputsloading_and_analysisloses_incremental_stateexperimental

--[no]experimental_android_resource_shrinking のデフォルト: 「false」

ProGuard を使用する android_binary APK のリソース圧縮を有効にします。

タグ: affects_outputsloading_and_analysisexperimental

--[no]experimental_android_rewrite_dexes_with_rex のデフォルト: 「false」

rex ツールを使用して dex ファイルを書き換える

タグ: affects_outputsloading_and_analysisloses_incremental_stateexperimental

--[no]experimental_collect_code_coverage_for_generated_files のデフォルト: 「false」

指定すると、Bazel は生成されたファイルの収集カバレッジ情報も生成します。

タグ: affects_outputsexperimental

--experimental_objc_fastbuild_options=<comma-separated list of options> のデフォルト: 「-O0,-DDEBUG=1」

これらの文字列を objc fastbuild コンパイラ オプションとして使用します。

タグ: action_command_lines

--[no]experimental_omitfp のデフォルト: 「false」

true の場合、スタック アンワインドに libunwind を使用し、-fomit-frame-pointer と -fasynchronous-unwind-tables でコンパイルします。

タグ: action_command_linesaffects_outputsexperimental

--experimental_output_paths=<off or strip> のデフォルト: 「off」

出力ツリーのどの場所にルールがその出力を書き込むか(特にマルチプラットフォーム / マルチ構成ビルドの場合)に使用するモデル。これは試験運用版です。詳しくは、https://github.com/bazelbuild/bazel/issues/6526 をご覧ください。Starlark アクションは、'execution_requirements' 辞書にキー 'supports-path-mapping' を追加することで、パス マッピングを選択できます。

タグ: loses_incremental_statebazel_internal_configurationaffects_outputsexecution

--experimental_override_platform_cpu_name=<a 'label=value' assignment> の複数の用途が蓄積される

各エントリは label=value の形式にする必要があります。ここで、label はプラットフォームを指し、values は $(TARGET_CPU) make 変数と出力パスでプラットフォームの CPU 名をオーバーライドする目的の短縮名です。--experimental_platform_in_output_dir、--incompatible_target_cpu_from_platform、--incompatible_bep_cpu_from_platform が true の場合にのみ使用されます。命名の優先度が最も高い。

タグ: affects_outputsexperimental

--[no]experimental_platform_in_output_dir のデフォルト: 「false」

true の場合、CPU の代わりにターゲット プラットフォームの短縮名が出力ディレクトリ名に使用されます。auto の場合、これは exec 構成にのみ適用されます。正確なスキームは試験運用であり、変更される可能性があります。まず、--platforms オプションの値が 1 つだけではないまれなケースでは、platforms オプションのハッシュが使用されます。次に、現在のプラットフォームの短縮名が --experimental_override_name_platform_in_output_dir で登録されている場合は、その短縮名が使用されます。次に、--experimental_use_platforms_in_output_dir_legacy_heuristic が設定されている場合は、現在のプラットフォーム ラベルに基づく短縮名を使用します。最後に、プラットフォーム オプションのハッシュが最後の手段として使用されます。

タグ: affects_outputsexperimental

--[no]experimental_py_binaries_include_label のデフォルト: 「false」

py_binary ターゲットには、スタンピングが無効になっている場合でもラベルが含まれます。

タグ: affects_outputsexperimental

--[no]experimental_use_llvm_covmap のデフォルト: 「false」

指定した場合、collect_code_coverage が有効になっていると、Bazel は gcov ではなく llvm-cov カバレッジ マップ情報を生成します。

タグ: changes_inputsaffects_outputsloading_and_analysisexperimental

--[no]experimental_use_platforms_in_output_dir_legacy_heuristic デフォルト: "true"

このフラグは、移行またはテストの推奨戦略の一部としてのみ使用してください。このヒューリスティックには既知の欠陥があるため、--experimental_override_name_platform_in_output_dir のみに依存するように移行することをおすすめします。

タグ: affects_outputsexperimental

--fdo_instrument=<a string> デフォルト: 説明を参照

FDO 計測でバイナリを生成します。Clang/LLVM コンパイラでは、実行時に未加工のプロファイル ファイルがダンプされるディレクトリ名も受け入れます。

タグ: affects_outputs

--fdo_optimize=<a string> デフォルト: 説明を参照

FDO プロファイル情報を使用してコンパイルを最適化します。.gcda ファイルツリーを含む zip ファイル、自動プロファイルを含む afdo ファイル、または LLVM プロファイル ファイルの名前を指定します。このフラグは、ラベルとして指定されたファイル(例: //foo/bar:file.afdo。対応するパッケージに exports_files ディレクティブを追加する必要がある場合があります)と、fdo_profile ターゲットを指すラベルも受け入れます。このフラグは fdo_profile ルールに置き換えられます。

タグ: affects_outputs

--fdo_prefetch_hints=<a build target label> デフォルト: 説明を参照

キャッシュ プリフェッチ ヒントを使用します。

タグ: affects_outputs

--fdo_profile=<a build target label> デフォルト: 説明を参照

最適化に使用するプロファイルを表す fdo_profile。

タグ: affects_outputs

--features=<a string> の複数の用途が蓄積される

指定された機能は、ターゲット構成でビルドされたターゲットに対してデフォルトで有効または無効になります。-<feature> を指定すると、機能が無効になります。除外機能は常に非除外機能をオーバーライドします。--host_features もご覧ください

タグ: changes_inputsaffects_outputs

--[no]force_pic のデフォルト: 「false」

有効にすると、すべての C++ コンパイルで位置独立コード(「-fPIC」)が生成され、リンクでは PIC 以外のライブラリよりも PIC 事前構築済みライブラリが優先され、リンクでは位置独立実行可能ファイル(「-pie」)が生成されます。

タグ: loading_and_analysisaffects_outputs

--host_action_env=<a 'name[=value]' assignment with an optional value part or the special syntax '=name' to unset a variable> の複数の用途が蓄積される

実行構成を持つアクションで使用可能な環境変数のセットを指定します。変数は名前で指定できます。この場合、値は呼び出し環境から取得されます。また、name=value ペアで指定することもできます。この場合、値は呼び出し環境とは無関係に設定されます。さらに、<code>=name</code> で指定することもできます。この場合、その名前の変数は設定解除されます。このオプションは複数回使用できます。同じ変数に指定されたオプションは後勝ちとなり、異なる変数のオプションは累積されます。

タグ: action_command_lines

--host_compilation_mode=<fastbuild, dbg or opt> デフォルト: "opt"

ビルド中に使用されるツールのビルドモードを指定します。値: 「fastbuild」、「dbg」、「opt」。

タグ: affects_outputsaction_command_lines

--host_conlyopt=<a string> の複数の用途が蓄積される

実行構成で C(C++ ではない)ソースファイルをコンパイルするときに C コンパイラに渡す追加オプション。

タグ: action_command_linesaffects_outputs

--host_copt=<a string> の複数の用途が蓄積される

実行構成でビルドされたツールに対して C コンパイラに渡す追加オプション。

タグ: action_command_linesaffects_outputs

--host_cpu=<a string> のデフォルト: ""

ホスト CPU。

タグ: changes_inputsaffects_outputs

--host_cxxopt=<a string> の複数の用途が蓄積される

実行構成でビルドされたツール用に C++ コンパイラに渡す追加オプション。

タグ: action_command_linesaffects_outputs

--host_features=<a string> の複数の用途が蓄積される

指定された機能は、exec 構成でビルドされたターゲットに対してデフォルトで有効または無効になります。-<feature> を指定すると、機能が無効になります。除外機能は常に非除外機能をオーバーライドします。

タグ: changes_inputsaffects_outputs

--host_linkopt=<a string> の複数の用途が蓄積される

実行構成でツールをリンクするときにリンカーに渡す追加オプション。

タグ: action_command_linesaffects_outputs

--host_macos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

ホスト ターゲットの最小互換性のある macOS バージョン。指定しない場合、macos_sdk_version が使用されます。

タグ: loses_incremental_state

--host_per_file_copt=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths followed by an @ and a comma separated list of options> の複数の用途が蓄積される

実行構成で特定のファイルをコンパイルするときに、C/C++ コンパイラに選択的に渡す追加オプション。このオプションは複数回渡すことができます。構文: regex_filter@option_1,option_2,...,option_n。ここで、regex_filter は、正規表現パターン(--instrumentation_filter も参照)の include と exclude のリストを表します。option_1 から option_n は、任意のコマンドライン オプションを表します。オプションにカンマが含まれている場合は、バックスラッシュで囲む必要があります。オプションには @ を含めることができます。文字列の分割には最初の @ のみが使用されます。例: --host_per_file_copt=//foo/.*.cc,-//foo/bar.cc@-O0 は、//foo/ 内の bar.cc 以外のすべての cc ファイルの gcc コマンドラインに -O0 コマンドライン オプションを追加します。

タグ: action_command_linesaffects_outputs

--[no]incompatible_auto_exec_groups のデフォルト: 「false」

有効にすると、ルールで使用されるツールチェーンごとに実行グループが自動的に作成されます。このルールを機能させるには、アクションで toolchain パラメータを指定する必要があります。詳細については、https://github.com/bazelbuild/bazel/issues/17134 をご覧ください。

タグ: affects_outputsincompatible_change

--[no]incompatible_merge_genfiles_directory デフォルト: "true"

true の場合、genfiles ディレクトリは bin ディレクトリに折りたたまれます。

タグ: affects_outputsincompatible_change

--[no]incompatible_target_cpu_from_platform デフォルト: "true"

指定されている場合、ターゲット プラットフォームの CPU 制約(@platforms//cpu:cpu)の値を使用して、$(TARGET_CPU) メイク変数を設定します。

タグ: loading_and_analysisincompatible_change

--[no]instrument_test_targets のデフォルト: 「false」

カバレッジが有効な場合に、テストルールの計測を考慮するかどうかを指定します。設定すると、--instrumentation_filter で指定されたテストルールがインストルメント化されます。それ以外の場合、テストルールは常にカバレッジ計測から除外されます。

タグ: affects_outputs

--instrumentation_filter=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths> デフォルト: "-/javatests[/:],-/test/java[/:]"

カバレッジが有効になっている場合、指定された正規表現ベースのフィルタに含まれる名前のルールのみが計測されます。代わりに、接頭辞「-」が付いたルールが除外されます。--instrument_test_targets が有効になっていない限り、テスト以外のルールのみが計測されます。

タグ: affects_outputs

--ios_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

ターゲット シミュレータとデバイスの最小互換性 iOS バージョン。指定しない場合、'ios_sdk_version' が使用されます。

タグ: loses_incremental_state

--ios_multi_cpus=<comma-separated list of options> の複数の用途が蓄積される

ios_application のビルドに使用するアーキテクチャのカンマ区切りのリスト。結果として、指定されたすべてのアーキテクチャを含むユニバーサル バイナリが生成されます。

タグ: loses_incremental_stateloading_and_analysis

--[no]legacy_whole_archive デフォルト: "true"

非推奨。--incompatible_remove_legacy_whole_archive に置き換えられました(詳しくは https://github.com/bazelbuild/bazel/issues/7362 をご覧ください)。オンの場合、linkshared=True で、linkopts に linkstatic=True または '-static' のいずれかがある cc_binary ルールに --whole-archive を使用します。これは下位互換性のためにのみ存在します。より良い方法は、必要に応じて alwayslink=1 を使用することです。

タグ: action_command_linesaffects_outputsdeprecated

--linkopt=<a string> の複数の用途が蓄積される

リンク時に gcc に渡す追加オプション。

タグ: action_command_linesaffects_outputs

--ltobackendopt=<a string> の複数の用途が蓄積される

LTO バックエンド ステップに渡す追加オプション(--features=thin_lto の下)。

タグ: action_command_linesaffects_outputs

--ltoindexopt=<a string> の複数の用途が蓄積される

LTO インデックス作成ステップに渡す追加オプション(--features=thin_lto の下)。

タグ: action_command_linesaffects_outputs

--macos_cpus=<comma-separated list of options> の複数の用途が蓄積される

Apple macOS バイナリをビルドするアーキテクチャのカンマ区切りリスト。

タグ: loses_incremental_stateloading_and_analysis

--macos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

ターゲットの互換性のある最小 macOS バージョン。指定しない場合、macos_sdk_version が使用されます。

タグ: loses_incremental_state

--memprof_profile=<a build target label> デフォルト: 説明を参照

memprof プロファイルを使用します。

タグ: affects_outputs

--[no]objc_debug_with_GLIBCXX のデフォルト: 「false」

設定されていて、コンパイル モードが「dbg」に設定されている場合、GLIBCXX_DEBUG、GLIBCXX_DEBUG_PEDANTIC、GLIBCPP_CONCEPT_CHECKS を定義します。

タグ: action_command_lines

--[no]objc_enable_binary_stripping のデフォルト: 「false」

リンクされたバイナリでシンボルとデッドコードの削除を行うかどうか。このフラグと --compilation_mode=opt の両方が指定されている場合、バイナリのストリッピングが実行されます。

タグ: action_command_lines

--objccopt=<a string> の複数の用途が蓄積される

Objective-C/C++ ソースファイルをコンパイルするときに gcc に渡す追加オプション。

タグ: action_command_lines

--per_file_copt=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths followed by an @ and a comma separated list of options> の複数の用途が蓄積される

特定のファイルをコンパイルするときに gcc に選択的に渡す追加オプション。このオプションは複数回渡すことができます。構文: regex_filter@option_1,option_2,...,option_n。ここで、regex_filter は、正規表現パターン(--instrumentation_filter も参照)の include と exclude のリストを表します。option_1 から option_n は、任意のコマンドライン オプションを表します。オプションにカンマが含まれている場合は、バックスラッシュで囲む必要があります。オプションには @ を含めることができます。文字列の分割には最初の @ のみが使用されます。例: --per_file_copt=//foo/.*.cc,-//foo/bar.cc@-O0 は、//foo/ のすべての cc ファイル(bar.cc を除く)の gcc コマンドラインに -O0 コマンドライン オプションを追加します。

タグ: action_command_linesaffects_outputs

--per_file_ltobackendopt=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths followed by an @ and a comma separated list of options> の複数の用途が蓄積される

特定のバックエンド オブジェクトをコンパイルするときに、LTO バックエンドに選択的に渡す追加オプション(--features=thin_lto の下)。このオプションは複数回渡すことができます。構文: regex_filter@option_1,option_2,...,option_n。ここで、regex_filter は、正規表現パターンの include と exclude のリストを表します。option_1 から option_n は、任意のコマンドライン オプションを表します。オプションにカンマが含まれている場合は、バックスラッシュで囲む必要があります。オプションには @ を含めることができます。文字列の分割には最初の @ のみが使用されます。例: --per_file_ltobackendopt=//foo/.*.o,-//foo/bar.o@-O0 は、//foo/ のすべての o ファイル(bar.o を除く)の LTO バックエンド コマンドラインに -O0 コマンドライン オプションを追加します。

タグ: action_command_linesaffects_outputs

--platform_suffix=<a string> デフォルト: 説明を参照

構成ディレクトリに追加する接尾辞を指定します。

タグ: loses_incremental_stateaffects_outputsloading_and_analysis

--propeller_optimize=<a build target label> デフォルト: 説明を参照

Propeller プロファイル情報を使用してビルド ターゲットを最適化します。Propeller プロファイルは、cc プロファイルと ld プロファイルの 2 つのファイルのうち少なくとも 1 つで構成されている必要があります。このフラグは、プロペラ プロファイル入力ファイルを参照する必要があるビルドラベルを受け取ります。たとえば、ラベルを定義する BUILD ファイル(a/b/BUILD:propeller_optimize)は、name = "propeller_profile", cc_profile = "propeller_cc_profile.txt", ld_profile = "propeller_ld_profile.txt" となります。これらのファイルを Bazel に認識させるには、対応するパッケージに exports_files ディレクティブを追加する必要がある場合があります。このオプションは、--propeller_optimize=//a/b:propeller_profile のように使用する必要があります。

タグ: action_command_linesaffects_outputs

--propeller_optimize_absolute_cc_profile=<a string> デフォルト: 説明を参照

Propeller 最適化ビルドの cc_profile ファイルの絶対パス名。

タグ: affects_outputs

--propeller_optimize_absolute_ld_profile=<a string> デフォルト: 説明を参照

Propeller 最適化ビルドの ld_profile ファイルの絶対パス名。

タグ: affects_outputs

--run_under=<a prefix in front of command> デフォルト: 説明を参照

「test」コマンドと「run」コマンドの実行可能ファイルの前に追加する接頭辞。値が「foo -bar」で、実行コマンドラインが「test_binary -baz」の場合、最終的なコマンドラインは「foo -bar test_binary -baz」になります。これは実行可能ターゲットのラベルにすることもできます。たとえば、'valgrind'、'strace'、'strace -c'、'valgrind --quiet --num-callers=20'、'//package:target'、'//package:target --options' などがあります。

タグ: action_command_lines

--[no]share_native_deps デフォルト: "true"

true の場合、同一の機能を含むネイティブ ライブラリが異なるターゲット間で共有されます

タグ: loading_and_analysisaffects_outputs

--[no]stamp のデフォルト: 「false」

バイナリに日付、ユーザー名、ホスト名、ワークスペース情報などをスタンプします。

タグ: affects_outputs

--strip=<always, sometimes or never> のデフォルト: 「sometimes」

バイナリと共有ライブラリをストリップするかどうかを指定します(「-Wl,--strip-debug」を使用)。デフォルト値の 'sometimes' は、--compilation_mode=fastbuild の場合にのみストリップすることを意味します。

タグ: affects_outputs

--stripopt=<a string> の複数の用途が蓄積される

「<name>.stripped」バイナリを生成するときに strip に渡す追加のオプション。

タグ: action_command_linesaffects_outputs

--tvos_cpus=<comma-separated list of options> の複数の用途が蓄積される

Apple tvOS バイナリをビルドするアーキテクチャのカンマ区切りのリスト。

タグ: loses_incremental_stateloading_and_analysis

--tvos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

ターゲット シミュレータとデバイスの最小互換性のある tvOS バージョン。指定しない場合、「tvos_sdk_version」が使用されます。

タグ: loses_incremental_state

--visionos_cpus=<comma-separated list of options> の複数の用途が蓄積される

Apple visionOS バイナリをビルドするアーキテクチャのカンマ区切りのリスト。

タグ: loses_incremental_stateloading_and_analysis

--watchos_cpus=<comma-separated list of options> の複数の用途が蓄積される

Apple watchOS バイナリをビルドするアーキテクチャのカンマ区切りのリスト。

タグ: loses_incremental_stateloading_and_analysis

--watchos_minimum_os=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

ターゲット シミュレータとデバイスの最小互換 watchOS バージョン。指定しない場合、'watchos_sdk_version' が使用されます。

タグ: loses_incremental_state

--xbinary_fdo=<a build target label> デフォルト: 説明を参照

XbinaryFDO プロファイル情報を使用してコンパイルを最適化します。デフォルトのクロスバイナリ プロファイルの名前を指定します。このオプションを --fdo_instrument、--fdo_optimize、--fdo_profile と組み合わせて使用すると、xbinary_fdo が指定されていないかのように、これらのオプションが常に優先されます。

タグ: affects_outputs

Bazel が有効なビルド入力(ルール定義、フラグの組み合わせなど)を厳密に適用する方法に影響するオプション:
--[no]check_visibility デフォルト: "true"

無効にすると、ターゲット依存関係の可視性エラーが警告に降格されます。

タグ: build_file_semanticsnon_configurable

--[no]desugar_for_android デフォルト: "true"

dexing の前に Java 8 バイトコードを desugar するかどうか。

タグ: affects_outputsloading_and_analysisloses_incremental_state

--[no]desugar_java8_libs のデフォルト: 「false」

レガシー デバイス向けアプリにサポートされている Java 8 ライブラリを含めるかどうか。

タグ: affects_outputsloading_and_analysisloses_incremental_stateexperimental

--[no]enforce_constraints デフォルト: "true"

各ターゲットと互換性のある環境をチェックし、同じ環境をサポートしていない依存関係がターゲットにある場合はエラーを報告します

タグ: build_file_semantics

--[no]experimental_check_desugar_deps デフォルト: "true"

Android バイナリレベルで正しい脱糖を再確認するかどうか。

タグ: eagerness_to_exitloading_and_analysisexperimental

--[no]experimental_enforce_transitive_visibility のデフォルト: 「false」

true の場合、package() が transitive_visibility 属性を設定して、依存できるパッケージを制限できるようにします。

タグ: build_file_semanticsexperimental

--experimental_one_version_enforcement=<off, warning or error> デフォルト: 「OFF」

有効にすると、java_binary ルールのクラスパスに同じクラスファイルの複数のバージョンを含めることができなくなります。この強制により、ビルドが破損したり、警告が表示されたりする可能性があります。

タグ: loading_and_analysis

--experimental_strict_java_deps=<off, warn, error, strict or default> のデフォルト: "default"

true の場合、Java ターゲットが直接使用されるすべてのターゲットを依存関係として明示的に宣言していることを確認します。

タグ: build_file_semanticseagerness_to_exit

--[no]incompatible_check_testonly_for_output_files のデフォルト: 「false」

有効になっている場合、生成ルールの testonly を調べて、出力ファイルである前提条件ターゲットの testonly を確認します。これは公開設定の確認と一致します。

タグ: build_file_semanticsincompatible_change

--[no]incompatible_disable_native_android_rules のデフォルト: 「false」

有効にすると、ネイティブの Android ルールの直接使用が無効になります。https://github.com/bazelbuild/rules_android の Starlark Android ルールを使用してください。

タグ: eagerness_to_exitincompatible_change

--[no]incompatible_disable_native_apple_binary_rule のデフォルト: 「false」

何もしません。下位互換性のためにここに残されています。

タグ: eagerness_to_exitincompatible_change

--[no]one_version_enforcement_on_java_tests デフォルト: "true"

有効で、experimental_one_version_enforcement が NONE 以外の値に設定されている場合、java_test ターゲットに 1 つのバージョンを適用します。このフラグを無効にすると、潜在的な 1 バージョン違反を見逃す代わりに、増分テストのパフォーマンスを向上させることができます。

タグ: loading_and_analysis

--python_native_rules_allowlist=<a build target label> デフォルト: 説明を参照

--incompatible_python_disallow_native_rules を適用するときに使用する許可リスト(package_group ターゲット)。

タグ: loading_and_analysis

--[no]strict_filesets のデフォルト: 「false」

このオプションを有効にすると、パッケージ境界を越えるファイルセットがエラーとして報告されます。

タグ: build_file_semanticseagerness_to_exit

--strict_proto_deps=<off, warn, error, strict or default> のデフォルト: 「error」

OFF でない限り、proto_library ターゲットが直接使用されるすべてのターゲットを依存関係として明示的に宣言していることを確認します。

タグ: build_file_semanticseagerness_to_exitincompatible_change

--strict_public_imports=<off, warn, error, strict or default> のデフォルト: 「off」

OFF でない限り、proto_library ターゲットが「import public」で使用されるすべてのターゲットをエクスポートとして明示的に宣言していることを確認します。

タグ: build_file_semanticseagerness_to_exitincompatible_change

--[no]strict_system_includes のデフォルト: 「false」

true の場合、システム インクルード パス(-isystem)で見つかったヘッダーも宣言する必要があります。

タグ: loading_and_analysiseagerness_to_exit

--target_environment=<a build target label> の複数の用途が蓄積される

このビルドのターゲット環境を宣言します。「環境」ルールへのラベル参照である必要があります。指定した場合、すべての最上位ターゲットはこの環境と互換性がある必要があります。

タグ: changes_inputs

ビルドの署名出力に影響するオプション:
--apk_signing_method=<v1, v2, v1_v2 or v4> デフォルト: "v1_v2"

APK の署名に使用する実装

タグ: action_command_linesaffects_outputsloading_and_analysis

--[no]device_debug_entitlements デフォルト: "true"

設定されていて、コンパイル モードが「opt」でない場合、objc アプリは署名時にデバッグ利用資格を含みます。

タグ: changes_inputs

--ios_signing_cert_name=<a string> デフォルト: 説明を参照

iOS 署名に使用する証明書名。設定されていない場合は、プロビジョニング プロファイルにフォールバックします。codesign の man ページ(SIGNING IDENTITIES)に記載されているように、証明書のキーチェーン ID の設定または証明書の共通名(サブストリング)の場合があります。

タグ: action_command_lines

このオプションは、Starlark 言語のセマンティクス、または BUILD ファイル、.bzl ファイル、WORKSPACE ファイルからアクセス可能なビルド API に影響します。
--[no]incompatible_disallow_sdk_frameworks_attributes のデフォルト: 「false」

true の場合、objc_library と objc_import で sdk_frameworks 属性と weak_sdk_frameworks 属性を許可しません。

タグ: build_file_semanticsincompatible_change

true の場合、objc_library と objc_import の alwayslink 属性のデフォルト値を true にします。

タグ: build_file_semanticsincompatible_change

--[no]incompatible_python_disallow_native_rules のデフォルト: 「false」

true の場合、組み込みの py_* ルールを使用するとエラーが発生します。代わりに rule_python ルールを使用する必要があります。詳細と移行手順については、https://github.com/bazelbuild/bazel/issues/17773 をご覧ください。

タグ: loading_and_analysisincompatible_change

テスト環境またはテストランナーの動作を制御するオプション:
--[no]allow_analysis_failures のデフォルト: 「false」

true の場合、ルール ターゲットの分析が失敗すると、ビルドの失敗ではなく、エラーの説明を含む AnalysisFailureInfo のインスタンスがターゲットに伝播されます。

タグ: loading_and_analysisexperimental

--analysis_testing_deps_limit=<an integer> のデフォルト: 「2000」

for_analysis_testing 構成の移行を含むルール属性を使用して、推移的依存関係の最大数を設定します。この上限を超えると、ルールエラーが発生します。

タグ: loading_and_analysis

--[no]break_build_on_parallel_dex2oat_failure のデフォルト: 「false」

true の場合、dex2oat アクションの失敗により、テスト実行時に dex2oat が実行されるのではなく、ビルドが中断されます。

タグ: loading_and_analysisexperimental

--default_test_resources=<a resource name followed by equal and 1 float or 4 float, e.g memory=10,30,60,100> の複数の用途が蓄積される

テストのデフォルトのリソース量をオーバーライドします。想定される形式は <resource>=<value> です。<value> として 1 つの正の数値を指定すると、すべてのテストサイズのデフォルトのリソースがオーバーライドされます。カンマ区切りの 4 つの数値を指定すると、それぞれ小、中、大、巨大なテストサイズの割り当て量がオーバーライドされます。値は HOST_RAM/HOST_CPU にすることもできます。オプションで [-|]<float> を続けることもできます(例: memory=HOST_RAM.1,HOST_RAM*.2,HOST_RAM*.3,HOST_RAM*.4)。このフラグで指定されたデフォルトのテストリソースは、タグで指定された明示的なリソースによってオーバーライドされます。

--[no]experimental_android_use_parallel_dex2oat のデフォルト: 「false」

android_test を高速化するために、dex2oat を並列で使用します。

タグ: loading_and_analysishost_machine_resource_optimizationsexperimental

--[no]ios_memleaks のデフォルト: 「false」

ios_test ターゲットでメモリリークのチェックを有効にします。

タグ: action_command_lines

--ios_simulator_device=<a string> デフォルト: 説明を参照

シミュレータで iOS アプリケーションを実行する際にシミュレートするデバイス(「iPhone 6」など)。デバイスのリストを取得するには、シミュレータを実行するマシンで「xcrun simctl list devicetypes」を実行します。

タグ: test_runner

--ios_simulator_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照

実行またはテスト時にシミュレータで実行する iOS のバージョン。ルールでターゲット デバイスが指定されている場合、ios_test ルールでは無視されます。

タグ: test_runner

--runs_per_test=<a positive integer or test_regex@runs. This flag may be passed more than once> の複数の用途が蓄積される

各テストを実行する回数を指定します。これらの試行が何らかの理由で失敗した場合、テスト全体が失敗とみなされます。通常、指定する値は整数です。例: --runs_per_test=3 は、すべてのテストを 3 回実行します。別の構文: regex_filter@runs_per_test。ここで、runs_per_test は整数値、regex_filter は正規表現パターン(--instrumentation_filter も参照)のリストを表します。例: --runs_per_test=//foo/.,-//foo/bar/.@3 は、foo/bar の下にあるテストを除く //foo/のすべてのテストを 3 回実行します。このオプションは複数回渡すことができます。一致する引数のうち、最後に渡されたものが優先されます。一致するものがなければ、テストは 1 回だけ実行されます。

--test_env=<a 'name[=value]' assignment with an optional value part or the special syntax '=name' to unset a variable> の複数の用途が蓄積される

テストランナー環境に挿入する追加の環境変数を指定します。変数は <code>name</code> で指定できます。この場合、値は Bazel クライアント環境から読み取られます。また、<code>name=value</code> ペアで指定することもできます。以前に設定した変数は、<code>=name</code> で設定解除できます。このオプションは、複数の変数を指定するために複数回使用できます。「bazel test」コマンドでのみ使用されます。

タグ: test_runner

--test_timeout=<a single integer or comma-separated list of 4 integers> のデフォルト: 「-1」

テスト タイムアウトのデフォルトのテスト タイムアウト値(秒単位)をオーバーライドします。正の整数値を 1 つ指定すると、すべてのカテゴリがオーバーライドされます。カンマ区切りの 4 つの整数を指定すると、短時間、中時間、長時間、永続のタイムアウトが(この順序で)オーバーライドされます。どちらの形式でも、値 -1 は、そのカテゴリのデフォルトのタイムアウトを使用するように blaze に指示します。

--[no]zip_undeclared_test_outputs のデフォルト: 「false」

true の場合、未宣言のテスト出力は zip ファイルにアーカイブされます。

タグ: test_runner

ビルド時間の最適化をトリガーするオプション:
--[no]experimental_filter_library_jar_with_program_jar のデフォルト: 「false」

ProGuard ProgramJar をフィルタして、LibraryJar にも存在するクラスを削除します。

タグ: action_command_linesexperimental

--[no]experimental_inmemory_dotd_files デフォルト: "true"

有効にすると、C++ の .d ファイルはディスクに書き込まれるのではなく、リモート ビルドノードからメモリに直接渡されます。

タグ: loading_and_analysisexecutionaffects_outputsexperimental

--[no]experimental_inmemory_jdeps_files デフォルト: "true"

有効にすると、Java コンパイルから生成された依存関係(.jdeps)ファイルは、ディスクに書き込まれるのではなく、リモート ビルドノードからメモリに直接渡されます。

タグ: loading_and_analysisexecutionaffects_outputsexperimental

--[no]experimental_retain_test_configuration_across_testonly のデフォルト: 「false」

有効にすると、--trim_test_configuration は testonly=1 とマークされたルールのテスト構成をトリムしません。これは、テスト以外のルールが cc_test ルールに依存している場合に、アクションの競合の問題を軽減することを目的としています。--trim_test_configuration が false の場合、効果はありません。

タグ: loading_and_analysisloses_incremental_stateexperimental

--[no]experimental_unsupported_and_brittle_include_scanning のデフォルト: 「false」

入力ファイルから #include 行を解析して、C/C++ コンパイルの入力を絞り込むかどうか。これにより、コンパイル入力ツリーのサイズが縮小され、パフォーマンスと増分性が向上します。ただし、インクルード スキャナは C プリプロセッサのセマンティクスを完全に実装していないため、ビルドを中断する可能性もあります。特に、動的な #include ディレクティブを理解せず、プリプロセッサの条件付きロジックを無視します。ご自身の責任で操作するようお願いいたします。このフラグに関連する問題が報告された場合は、クローズされます。

タグ: loading_and_analysisexecutionchanges_inputsexperimental

--[no]incremental_dexing デフォルト: "true"

各 Jar ファイルの dexing のほとんどの作業を行います。

タグ: affects_outputsloading_and_analysisloses_incremental_state

--[no]objc_use_dotd_pruning デフォルト: "true"

設定すると、clang によって出力された .d ファイルが、objc コンパイルに渡される入力セットのプルーニングに使用されます。

タグ: changes_inputsloading_and_analysis

--[no]process_headers_in_dependencies のデフォルト: 「false」

ターゲット //a:a をビルドするときに、//a:a が依存するすべてのターゲットのヘッダーを処理します(ツールチェーンでヘッダー処理が有効になっている場合)。

タグ: execution

--[no]trim_test_configuration デフォルト: "true"

有効にすると、ビルドの最上位レベルより下のテスト関連オプションがクリアされます。このフラグが有効になっている場合、テストは非テストルールの依存関係としてビルドできませんが、テスト関連のオプションを変更しても非テストルールが再分析されることはありません。

タグ: loading_and_analysisloses_incremental_state

ロギングの冗長性、形式、場所に影響するオプション:
--toolchain_resolution_debug=<a comma-separated list of regex expressions with prefix '-' specifying excluded paths> のデフォルト: "-.*"

ツールチェーンの解決中にデバッグ情報を出力します。このフラグは正規表現を受け取り、ツールチェーン タイプと特定のターゲットに対してチェックして、デバッグするものを確認します。複数の正規表現はカンマで区切ることができ、各正規表現は個別にチェックされます。注: このフラグの出力は非常に複雑であり、ツールチェーン解決の専門家にとってのみ有用である可能性があります。

タグ: terminal_output

--[no]verbose_visibility_errors のデフォルト: 「false」

有効にすると、可視性エラーに診断情報が追加されます。

タグ: build_file_semanticsnon_configurable

他のカテゴリに分類されない Bazel コマンドへの汎用入力を指定または変更するオプション:
--flag_alias=<a 'name=value' flag alias> の複数の用途が蓄積される

Starlark フラグの短縮名を設定します。引数として「<key>=<value>」の形式の Key-Value ペアを 1 つ取ります。

タグ: changes_inputsnon_configurable

--[no]incompatible_default_to_explicit_init_py のデフォルト: 「false」

このフラグは、デフォルトの動作を変更して、Python ターゲットの runfiles で init.py ファイルが自動的に作成されないようにします。具体的には、py_binary または py_test ターゲットの legacy_create_init が「auto」(デフォルト)に設定されている場合、このフラグが設定されている場合にのみ false として扱われます。https://github.com/bazelbuild/bazel/issues/10076 をご覧ください。

タグ: affects_outputsincompatible_change

その他のオプション(他のカテゴリに分類されないもの):
--[no]cache_test_results [-t] デフォルト: "auto"

「auto」に設定されている場合、Bazel は次の条件を満たす場合にのみテストを再実行します。(1)Bazel がテストまたはその依存関係の変更を検出した場合、(2)テストが外部としてマークされている場合、(3)--runs_per_test で複数のテスト実行がリクエストされた場合、(4)テストが以前に失敗した場合。[はい] に設定すると、Bazel は外部としてマークされたテストを除くすべてのテスト結果をキャッシュに保存します。「no」に設定すると、Bazel はテスト結果をキャッシュに保存しません。

--[no]experimental_cancel_concurrent_tests のデフォルト: 「never」

「on_failed」または「on_passed」の場合、Blaze はその結果で最初に実行されたテストで、同時に実行されているテストをキャンセルします。これは、--runs_per_test_detects_flakes と組み合わせて使用する場合にのみ有用です。

タグ: affects_outputsloading_and_analysisexperimental

--[no]experimental_fetch_all_coverage_outputs のデフォルト: 「false」

true の場合、Bazel はカバレッジ実行中に各テストのカバレッジ データ ディレクトリ全体を取得します。

タグ: affects_outputsloading_and_analysisexperimental

--[no]experimental_generate_llvm_lcov のデフォルト: 「false」

true の場合、clang のカバレッジで LCOV レポートが生成されます。

タグ: affects_outputsloading_and_analysisexperimental

--experimental_java_classpath=<off, javabuilder, bazel or bazel_no_fallback> デフォルト: "bazel"

Java コンパイルのクラスパスを削減します。

--[no]experimental_run_android_lint_on_java_rules のデフォルト: 「false」

java_* ソースを検証するかどうか。

タグ: affects_outputsexperimental

--[no]explicit_java_test_deps のデフォルト: 「false」

TestRunner の deps から誤って取得するのではなく、java_test で JUnit または Hamcrest への依存関係を明示的に指定します。現時点では bazel でのみ動作します。

--host_java_launcher=<a build target label> デフォルト: 説明を参照

ビルド中に実行されるツールで使用される Java ランチャー。

--host_javacopt=<a string> の複数の用途が蓄積される

ビルド中に実行されるツールをビルドするときに javac に渡す追加のオプション。

--host_jvmopt=<a string> の複数の用途が蓄積される

ビルド中に実行されるツールをビルドするときに Java VM に渡す追加のオプション。これらのオプションは、各 java_binary ターゲットの VM 起動オプションに追加されます。

--[no]incompatible_check_sharding_support デフォルト: "true"

true の場合、テスト ランナーが TEST_SHARD_STATUS_FILE のパスにあるファイルにタッチしてシャーディングをサポートしていることを示さないと、Bazel はシャーディングされたテストを失敗させます。false の場合、シャーディングをサポートしていないテストランナーでは、各シャードですべてのテストが実行されます。

タグ: incompatible_change

--[no]incompatible_exclusive_test_sandboxed デフォルト: "true"

true の場合、排他的テストはサンドボックス化された戦略で実行されます。ローカルで排他的なテスト実行を強制する「local」タグを追加

タグ: incompatible_change

--[no]incompatible_strict_action_env のデフォルト: 「false」

true の場合、Bazel は PATH に静的な値を持つ環境を使用し、LD_LIBRARY_PATH を継承しません。クライアントから特定の環境変数を継承する場合は、--action_env=ENV_VARIABLE を使用します。ただし、共有キャッシュが使用されている場合、この操作を行うとユーザー間のキャッシュ保存が妨げられる可能性があります。

タグ: loading_and_analysisincompatible_change

--j2objc_translation_flags=<comma-separated list of options> の複数の用途が蓄積される

J2ObjC ツールに渡す追加オプション。

--java_debug

Java テストの Java 仮想マシンが、テストを開始する前に JDWP 準拠のデバッガ(jdb など)からの接続を待機するようにします。-test_output=streamed を意味します。

展開すると次のようになります。
  --test_arg=--wrapper_script_flag=--debug
  --test_output=streamed
  --test_strategy=exclusive
  --test_timeout=9999
  --nocache_test_results

--[no]java_deps デフォルト: "true"

Java ターゲットごとに依存関係情報(現時点ではコンパイル時のクラスパス)を生成します。

--[no]java_header_compilation デフォルト: "true"

ソースから直接 ijar をコンパイルします。

--java_language_version=<a string> のデフォルト: ""

Java 言語のバージョン

--java_launcher=<a build target label> デフォルト: 説明を参照

Java バイナリのビルド時に使用する Java ランチャー。このフラグが空の文字列に設定されている場合、JDK ランチャーが使用されます。「launcher」属性はこのフラグをオーバーライドします。

--java_runtime_version=<a string> のデフォルト: 「local_jdk」

Java ランタイムのバージョン

--javacopt=<a string> の複数の用途が蓄積される

javac に渡す追加のオプション。

--jvmopt=<a string> の複数の用途が蓄積される

Java VM に渡す追加オプション。これらのオプションは、各 java_binary ターゲットの VM 起動オプションに追加されます。

--legacy_main_dex_list_generator=<a build target label> デフォルト: 説明を参照

旧式の multidex をコンパイルするときに、メイン DEX に含める必要があるクラスのリストを生成するために使用するバイナリを指定します。

--optimizing_dexer=<a build target label> デフォルト: 説明を参照

シャーディングなしで dexing を行うために使用するバイナリを指定します。

--plugin=<a build target label> の複数の用途が蓄積される

ビルドで使用するプラグイン。現在は java_plugin で動作します。

--proguard_top=<a build target label> デフォルト: 説明を参照

Java バイナリをビルドする際にコード削除に使用する ProGuard のバージョンを指定します。

--proto_compiler=<a build target label> デフォルト: "@bazel_tools//tools/proto:protoc"

proto-compiler のラベル。

タグ: affects_outputsloading_and_analysis

--[no]proto_profile デフォルト: "true"

profile_path を proto コンパイラに渡すかどうか。

タグ: affects_outputsloading_and_analysis

--proto_profile_path=<a build target label> デフォルト: 説明を参照

profile_path として proto コンパイラに渡すプロファイル。設定されていないが、--proto_profile が true(デフォルト)の場合、--fdo_optimize からパスを推測します。

タグ: affects_outputsloading_and_analysis

--proto_toolchain_for_cc=<a build target label> デフォルト: "@bazel_tools//tools/proto:cc_toolchain"

C++ proto のコンパイル方法を記述する proto_lang_toolchain() のラベル

タグ: affects_outputsloading_and_analysis

--proto_toolchain_for_j2objc=<a build target label> default: "@bazel_tools//tools/j2objc:j2objc_proto_toolchain"

j2objc プロトコルをコンパイルする方法を記述する proto_lang_toolchain() のラベル

タグ: affects_outputsloading_and_analysis

--proto_toolchain_for_java=<a build target label> デフォルト: "@bazel_tools//tools/proto:java_toolchain"

Java proto のコンパイル方法を記述する proto_lang_toolchain() のラベル

タグ: affects_outputsloading_and_analysis

--proto_toolchain_for_javalite=<a build target label> default: "@bazel_tools//tools/proto:javalite_toolchain"

JavaLite プロトコルをコンパイルする方法を記述する proto_lang_toolchain() のラベル

タグ: affects_outputsloading_and_analysis

--protocopt=<a string> の複数の用途が蓄積される

protobuf コンパイラに渡す追加オプション。

タグ: affects_outputs

--[no]runs_per_test_detects_flakes のデフォルト: 「false」

true の場合、少なくとも 1 つの実行/試行が成功し、少なくとも 1 つの実行/試行が失敗したシャードは FLAKY ステータスになります。

--shell_executable=<a path> デフォルト: 説明を参照

Bazel が使用するシェル実行可能ファイルへの絶対パス。これが設定されておらず、最初の Bazel 呼び出し(Bazel サーバーを起動する)で BAZEL_SH 環境変数が設定されている場合、Bazel はそれを使用します。どちらも設定されていない場合、Bazel は実行されているオペレーティング システムに応じてハードコードされたデフォルトのパスを使用します(Windows: c:/msys64/usr/bin/bash.exe、FreeBSD: /usr/local/bin/bash、その他すべて: /bin/bash)。bash と互換性のないシェルを使用すると、生成されたバイナリのビルドエラーやランタイム エラーが発生する可能性があります。

タグ: loading_and_analysis

--test_arg=<a string> の複数の用途が蓄積される

テスト実行ファイルに渡す追加のオプションと引数を指定します。複数回使用して、複数の引数を指定できます。複数のテストが実行される場合、各テストは同じ引数を受け取ります。「bazel test」コマンドでのみ使用されます。

--test_filter=<a string> デフォルト: 説明を参照

テスト フレームワークに転送するフィルタを指定します。実行するテストを制限するために使用されます。なお、これはビルドされるターゲットには影響しません。

--test_result_expiration=<an integer> のデフォルト: 「-1」

このオプションは非推奨であり、効果はありません。

--[no]test_runner_fail_fast のデフォルト: 「false」

テストランナーに fail fast オプションを転送します。テストランナーは、最初の失敗で実行を停止する必要があります。

--test_sharding_strategy=<explicit, disabled or forced=k where k is the number of shards to enforce> デフォルト: "explicit"

テスト シャーディングの戦略を指定します。shard_count ビルド属性が存在する場合にのみシャーディングを使用する場合は、explicit を指定します。テスト シャーディングを絶対に使用しない場合は「disabled」。'shard_count' ビルド属性に関係なく、テストに 'k' シャードを強制適用するには、'forced=k' を使用します。

--tool_java_language_version=<a string> のデフォルト: ""

ビルド中に必要なツールを実行するために使用される Java 言語のバージョン

--tool_java_runtime_version=<a string> デフォルト: "remotejdk_11"

ビルド中にツールを実行するために使用される Java ランタイム バージョン

--[no]use_ijars デフォルト: "true"

このオプションを有効にすると、Java コンパイルでインターフェース jar が使用されます。これにより、増分コンパイルが高速化されますが、エラー メッセージが異なる場合があります。

バージョン オプション

ユーザーが意図した出力を構成し、その存在ではなく値に影響を与えるオプション:
--[no]gnu_format のデフォルト: 「false」

設定されている場合は、GNU 標準で説明されている規則を使用して、バージョンを stdout に書き込みます。

タグ: affects_outputsexecution

オプション効果タグ

unknown このオプションには不明または未文書化の効果があります。
no_op このオプションは実際には効果がありません。
loses_incremental_state このオプションの値を変更すると、増分状態が大幅に失われ、ビルドが遅くなる可能性があります。サーバーの再起動や依存関係グラフの大部分の無効化により、状態が失われる可能性があります。
changes_inputs このオプションは、ファイル システムの制限、リポジトリのバージョン、その他のオプションなど、bazel がビルドで考慮する入力を積極的に変更します。
affects_outputs このオプションは bazel の出力に影響します。このタグは意図的に広範囲にわたっており、推移的な影響を含めることができ、影響を受ける出力のタイプを指定しません。
build_file_semantics このオプションは、BUILD ファイルまたは .bzl ファイルのセマンティクスに影響します。
bazel_internal_configuration このオプションは、bazel-internal メカニズムの設定に影響します。このタグは、それ自体ではビルド アーティファクトが影響を受けることを意味しません。
loading_and_analysis このオプションは、依存関係の読み込みと分析、依存関係グラフの構築に影響します。
execution このオプションは、サンドボックスやリモート実行関連のオプションなど、実行フェーズに影響します。
host_machine_resource_optimizations このオプションは、マシン固有の最適化をトリガーします。すべてのマシンで動作するとは限りません。最適化には、メモリや CPU のコストなど、パフォーマンスの他の側面とのトレードオフが含まれる場合があります。
eagerness_to_exit このオプションは、失敗から bazel がどれだけ早く終了するかを変更します。失敗にもかかわらず続行するか、呼び出しを終了するかを選択できます。
bazel_monitoring このオプションは、bazel の動作とパフォーマンスをモニタリングするために使用されます。
terminal_output このオプションは、bazel のターミナル出力に影響します。
action_command_lines このオプションは、1 つ以上のビルド アクションのコマンドライン引数を変更します。
test_runner このオプションは、ビルドの testrunner 環境を変更します。

オプションのメタデータタグ

experimental このオプションは、機能が保証されていない試験運用版の機能をトリガーします。
incompatible_change このオプションは互換性を破る変更をトリガーします。このオプションを使用して、移行の準備状況をテストしたり、新機能に早期アクセスしたりできます
deprecated このオプションは非推奨となりました。影響を受ける機能が非推奨になっているか、情報を取得する別の方法が推奨されている可能性があります。
non_configurable このオプションは、トランジションで変更したり、select() ステートメントで使用したりすることはできません。