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

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]

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

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

コマンド

analyze-profile ビルド プロファイル データを分析します。
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 サーバーを停止します。
sync ワークスペース ファイルで指定されたすべてのリポジトリを同期します。
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 では「バッチ」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 にマウントされている場合、サーバーは cgroups /sys/fs/cgroup/cpu/build/bazel と /sys/fs/cgroup/memory/build/bazel で起動されます。指定された cgroup が 1 つ以上のコントローラに対して書き込み可能でない場合、エラーではありません。このオプションは、cgroup をサポートしていないプラットフォームには影響しません。
タグ: 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 システム コールを使用してベスト エフォート I/O スケジューリングのレベルを 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 ファイルを変更せずに共有できるようにサポートされています。有効な値は、ユーザー操作、ユーザー開始、デフォルト、ユーティリティ、バックグラウンドです。
タグ: 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} になります。注: この値に、1 回目の Bazel 呼び出しと次の 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 のみ。
タグ: eagerness_to_exitloses_incremental_state
--[no]system_rc デフォルト: "true"
システム全体の bazelrc を検索するかどうか。
タグ: changes_inputs
--[no]unlimit_coredumps デフォルト: "false"
ソフト コアダンプ上限をハード上限に引き上げ、一般的な条件下でサーバー(JVM を含む)とクライアントのコアダンプが可能になります。このフラグを bazelrc に 1 回設定したら、コアダンプがトリガーされる条件が実際に発生したときにコアダンプが取得されるように、このフラグを忘れてください。
タグ: 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
JDK 起動フラグを追加するための便利なオプション。これにより、JDWP 準拠のデバッガ(Eclipse など)からポート 5005 に接続するまで、JVM は起動中に待機します。
展開すると:
  --host_jvm_args=-Xdebug
  --host_jvm_args=-Xrunjdwp: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
--[no]incompatible_disable_native_repo_rules デフォルト: "false"
false の場合、WORKSPACE でネイティブ リポジトリ ルールを使用できます。それ以外の場合は、代わりに Starlark リポジトリ ルールを使用する必要があります。ネイティブ リポジトリ ルールには、local_repository、new_local_repository、local_config_platform、android_sdk_repository があります。
タグ: 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」
console に出力される stdout / stderr ファイルの最大サイズ。-1 は制限なしを意味します。
タグ: execution
--gc_thrashing_threshold=<an integer in 0-100 range> デフォルト:「100」
占有されているテナンシー スペースの割合(0 ~ 100)。この割合を超えると、GcThrashingDetector はメモリ圧力イベントをその上限(--gc_thrashing_limits)と比較します。100 に設定すると、GcThrashingDetector は無効になります。
タグ: host_machine_resource_optimizations
アクションの実行に使用するツールチェーンを構成するオプション:
--[no]incompatible_enable_proto_toolchain_resolution デフォルト: "false"
true の場合、proto lang ルールは 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> 複数の使用が累積される
リポジトリ ルールでのみ使用できる追加の環境変数を指定します。なお、リポジトリ ルールは環境全体を参照しますが、この方法では、アクショングラフを無効にすることなく、オプションを介して構成情報をリポジトリに渡すことができます。
タグ: action_command_lines
Bazel が有効なビルド入力(ルール定義、フラグの組み合わせなど)を厳密に適用する方法に影響するオプション:
--[no]check_bzl_visibility デフォルト: "true"
無効にすると、.bzl 読み込みの可視性エラーは警告に降格されます。
タグ: build_file_semantics
このオプションは、Starlark 言語のセマンティクスまたは BUILD ファイル、.bzl ファイル、WORKSPACE ファイルからアクセスできるビルド API に影響します。
--[no]enable_bzlmod デフォルト: "true"
true の場合、Bzlmod 依存関係管理システムを有効にして、WORKSPACE よりも優先します。詳細については、https://bazel.build/docs/bzlmod をご覧ください。
タグ: loading_and_analysis
--[no]enable_workspace デフォルト: "false"
true の場合、外部依存関係に従来の WORKSPACE システムを有効にします。詳細については、https://bazel.build/external/overview をご覧ください。
タグ: loading_and_analysis
--[no]experimental_action_resource_set デフォルト: "true"
true に設定すると、ctx.actions.run() と ctx.actions.run_shell() は、ローカル実行用の resource_set パラメータを受け入れます。指定しない場合、デフォルトではメモリが 250 MB、CPU が 1 個になります。
タグ: executionbuild_file_semanticsexperimental
--[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_cc_static_library デフォルト: "false"
true に設定すると、ルール cc_static_library に必要なルール属性と Starlark API メソッドが使用可能になります
タグ: build_file_semanticsloading_and_analysisexperimental
--[no]experimental_disable_external_package デフォルト: "false"
true に設定すると、自動生成された //external パッケージは使用できなくなります。Bazel は引き続き「external/BUILD」ファイルを解析できませんが、名前のないパッケージから external/ に到達するグロブは機能します。
タグ: 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_macro_inherit_attrs デフォルト: "false"
true に設定すると、シンボリック マクロでの属性の継承と、macro() 組み込み
タグの inherit_attrs パラメータが有効になります。 build_file_semantics
--[no]experimental_enable_scl_dialect デフォルト: "true"
true に設定すると、load() ステートメントで .scl ファイルを使用できます。
タグ: build_file_semantics
--[no]experimental_enable_starlark_set デフォルト: "false"
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_java_library_export デフォルト: "false"
有効にすると、experimental_java_library_export_do_not_use モジュールを使用できます。
タグ: loading_and_analysisincompatible_change
--[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_sibling_repository_layout デフォルト: "false"
true に設定すると、メイン以外のリポジトリは、実行ルートのメイン リポジトリへのシンボリック リンクとして配置されます。つまり、すべてのリポジトリは $output_base/execution_root ディレクトリの直接の子です。これにより、実際のトップレベルの「external」ディレクトリ用に $output_base/execution_root/__main__/external が解放されるという副作用があります。
タグ: action_command_linesbazel_internal_configurationloading_and_analysisloses_incremental_stateexperimental
--[no]experimental_single_package_toolchain_binding デフォルト: "false"
有効にすると、register_toolchain 関数に、複数のパッケージを参照するターゲット パターンが含まれない場合があります。
タグ: loading_and_analysisincompatible_change
--[no]incompatible_allow_tags_propagation デフォルト: "true"
true に設定すると、タグはターゲットからアクションの実行要件に伝播されます。それ以外の場合は、タグは伝播されません。詳細については、https://github.com/bazelbuild/bazel/issues/8830 をご覧ください。
タグ: build_file_semanticsexperimental
--[no]incompatible_always_check_depset_elements デフォルト: "true"
すべてのコンストラクタで、depset に追加された要素の有効性を確認します。要素は不変である必要がありますが、これまで depset(direct=...) コンストラクタでチェックが忘れられていました。depset 要素でリストではなくタプルを使用します。詳細については、https://github.com/bazelbuild/bazel/issues/10313 をご覧ください。
タグ: build_file_semanticsincompatible_change
--incompatible_autoload_externally=<comma-separated set of options> デフォルト: "+@rules_python,+JavaInfo,+JavaPluginInfo,ProguardSpecProvider,java_binary,java_import,java_library,java_plugin,java_test,+java_runtime,+java_toolchain,+java_package_configuration,@protobuf,@rules_shell,+@rules_android"
以前は 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 をワークスペース全体で使用できなくなります。これは、Bazel から foo の定義を削除する準備ができているワークスペースであることを検証するために使用されます。このフラグでシンボルに名前が付けられていない場合、シンボルは通常どおり機能します。自動読み込みは行われず、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
true の場合、Bazel は linking_context.libraries_to_link からリストを返さず、代わりに depset を返します。
タグ: 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 に設定すると、フィールド構文を使用して「ターゲット」オブジェクトのプロバイダにアクセスする機能を無効にします。代わりにプロバイダ鍵の構文を使用してください。たとえば、ルール実装関数内から「my_info」にアクセスするために「ctx.attr.dep.my_info」を使用するのではなく、「ctx.attr.dep[MyInfo]」を使用します。詳細については、https://github.com/bazelbuild/bazel/issues/9014 をご覧ください。
タグ: build_file_semanticsincompatible_change
--[no]incompatible_disable_target_provider_fields デフォルト: "false"
true に設定すると、フィールド構文でデフォルト プロバイダを使用する機能を無効にします。代わりにプロバイダ鍵の構文を使用してください。たとえば、ctx.attr.dep.files を使用してファイルにアクセスするのではなく、ctx.attr.dep[DefaultInfo].files を使用してください。詳細については、https://github.com/bazelbuild/bazel/issues/9014 をご覧ください。
タグ: build_file_semanticsincompatible_change
--[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_disallow_struct_provider_syntax デフォルト: "true"
true に設定すると、ルール実装関数は構造体を返さない場合があります。代わりに、プロバイダ インスタンスのリストを返す必要があります。
タグ: 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_java_common_parameters デフォルト: "true"
true に設定すると、pack_sources の output_jar パラメータと host_javabase パラメータ、compile の host_javabase パラメータがすべて削除されます。
タグ: build_file_semanticsincompatible_change
--[no]incompatible_merge_fixed_and_default_shell_env デフォルト: "true"
有効にすると、ctx.actions.run と ctx.actions.run_shell で登録され、env と use_default_shell_env = True の両方が指定されているアクションは、env に渡された値でオーバーライドして、デフォルトのシェル環境から取得した環境を使用します。無効にした場合、この場合の「env」の値は完全に無視されます。
タグ: 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 の場合、<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 に設定すると、Starlark 関数 rule() の outputs パラメータが無効になります。
タグ: build_file_semanticsincompatible_change
--[no]incompatible_package_group_has_public_syntax デフォルト: "true"
package_group の「packages」属性で、「public」または「private」を記述して、すべてのパッケージまたはパッケージなしをそれぞれ参照できます。
タグ: build_file_semanticsincompatible_change
--[no]incompatible_require_linker_input_cc_api デフォルト: "true"
true に設定すると、ルール create_linking_context で libraries_to_link ではなく linker_inputs が必要になります。linking_context の古いゲッターも無効になり、linker_inputs のみが使用可能になります。
タグ: build_file_semanticsloading_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_top_level_aspects_require_providers デフォルト: "true"
true に設定すると、トップレベル アスペクトは必須プロバイダを尊重し、ルールで宣伝されているプロバイダがアスペクトの必須プロバイダを満たすトップレベル ターゲットでのみ実行されます。
タグ: 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 計算ステップの最大数(ゼロは上限なしを意味します)。
タグ: build_file_semantics
--nested_set_depth_limit=<an integer> デフォルト: 「3500」
depset(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> 複数の使用が累積される
モジュール バージョンを「<module1>@<version1>,<module2>@<version2>」の形式で指定しました。このモジュール バージョンは、元のレジストリで yanked と宣言されている場合でも(NonRegistryOverride から取得されていない場合)、解決された依存関係グラフで許可されます。そうでないと、取り消されたバージョンが原因で解決が失敗します。許可される yanked バージョンを BZLMOD_ALLOW_YANKED_VERSIONS 環境変数で定義することもできます。このチェックを無効にするには、キーワード「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_dep」と「use_extension」を無視します。なお、これらの開発依存関係は、このフラグの値に関係なく、ルート モジュールでない場合、MODULE.bazel で常に無視されます。
タグ: loading_and_analysis
--lockfile_mode=<off, update, refresh or error> デフォルト: 「update」
ロックファイルを使用する方法と使用するかどうかを指定します。有効な値は、ロックファイルを使用して変更がある場合は更新する「update」、リモート レジストリから変更可能な情報(削除されたバージョンや以前に存在しなかったモジュール)を随時更新する「refresh」、ロックファイルを使用しますが最新でない場合エラーをスローする「error」、ロックファイルの読み取りも書き込みも行わない「off」です。
タグ: loading_and_analysis
--override_module=<an equals-separated mapping of module name to path> 複数の使用が累積される
<module name>=<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> 回連続して完全 GC を実行しても、テナンテッド スペース(古い世代ヒープ)の --gc_thrashing_threshold% 以上が占有されたままである場合、OOM がトリガーされます。複数の上限はカンマで区切って指定できます。
タグ: host_machine_resource_optimizations
--[no]heuristically_drop_nodes デフォルト: "false"
true の場合、関連する File ノードと DirectoryListing ノードが完了すると、Blaze は 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 スラッシングの影響を軽減できます。GC スラッシングが(i)この一時状態のメモリ使用量によって発生し、(ii)必要に応じて状態を再構成するよりもコストが高い場合です。
タグ: 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 フィールドを設定します。これにより、現在のツールイベントに一致する InvocationAttemptStarted イベントと BuildEnqueued イベントが以前に受信されたかどうかを BES に指示します。
タグ: 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)を超える場合でも、1 つのイベントで報告されます。
タグ: affects_outputs
--bes_outerr_chunk_size=<an integer> デフォルト: 「1048576」
1 つのメッセージで 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 の呼び出し時にキーワードを含める Build サービス オペレーター向けです。このフラグを使用してビルドサービス オペレータを作成する場合は、ユーザーがフラグ値をオーバーライドできないようにする必要があります。
タグ: affects_outputs
--bes_timeout=<An immutable length of time.> デフォルト: 「0s」
ビルドとテストが完了した後、BES/BEP のアップロードが完了するまで bazel が待機する時間を指定します。有効なタイムアウトは、整数に日(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"
Build Event Service のアップロードでビルドの完了をブロックするか、呼び出しをすぐに終了してバックグラウンドでアップロードを完了するかを指定します。「wait_for_upload_complete」(デフォルト)、「nowait_for_upload_complete」、「fully_async」のいずれか。
タグ: 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 の Build Event Service アップロードでビルドの完了をブロックするか、呼び出しをすぐに終了してバックグラウンドでアップロードを完了するかを指定します。「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 で Fileset を開きます。
タグ: affects_outputs
true の場合、出力ファイルを提示する際に BEP 内の相対 Fileset シンボリック リンクを完全に解決します。--experimental_build_event_expand_filesets が必要です。
タグ: 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' です。出力グループが繰り返される場合は、最終的に表示される値が使用されます。デフォルト値では、カバレッジ アーティファクトのモードは両方に設定されます。--experimental_build_event_output_group_mode=baseline.lcov=both
タグ: affects_outputs
--experimental_build_event_upload_retry_minimum_delay=<An immutable length of time.> デフォルト: 「1s」
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 デフォルト: "false"
有効にすると、プロファイラはワーカーの集計リソースデータを収集します。
タグ: 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 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 で報告されるエントリの数を制限します。デフォルトでは、タイプ数は、ActionData の実行されたアクション数、RuleClass と Asepcts のインスタンスの数に基づいて、上位 20 個に制限されます。このオプションを設定すると、すべてのメモニカ、ルールクラス、アスペクトの統計情報が書き込まれます。
--[no]experimental_record_skyframe_metrics デフォルト: "false"
Skykey、RuleClass、Aspect に関する計算コストの高い Skyframe 指標など、BEP BuildGraphMetrics の出力を制御します。このフラグを false に設定すると、BuildGraphMetrics.rule_count フィールドと aspect フィールドは BEP に入力されません。
--[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 proto としてこのファイルに記録します。
--[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、その後 0 秒の休止時間で 4 回の GC です。
タグ: bazel_monitoring
--profile=<a path> デフォルト: 説明を参照
設定すると、Bazel をプロファイリングし、指定されたファイルにデータを書き込みます。bazel analyze-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
他のカテゴリに該当しない Bazel コマンドへの汎用入力を指定する、または変更するオプション。
--experimental_resolved_file_instead_of_workspace=<a string> デフォルト: ""
空でない場合、WORKSPACE ファイルではなく、指定された解決済みファイルを読み取ります。
タグ: changes_inputs
リモート キャッシュと実行オプション:
--experimental_circuit_breaker_strategy=<failure> デフォルト: 説明を参照
回路ブレーカーが使用する戦略を指定します。使用できる戦略は「failure」です。オプションの値が無効な場合、オプションが設定されていない場合と同じ動作になります。
タグ: execution
--experimental_downloader_config=<a string> デフォルト: 説明を参照
リモート ダウンローダーの構成に使用するファイルを指定します。このファイルは行で構成され、各行はディレクティブ(「allow」、「block」、「rewrite」)で始まり、その後にホスト名(「allow」と「block」の場合)または 2 つのパターン(1 つは一致するパターン、もう 1 つは代替 URL として使用するパターン)が続きます。バック参照は「$1」から始まります。同じ URL に対して複数の「rewrite」ディレクティブを指定できます。この場合、複数の URL が返されます。
--[no]experimental_guard_against_concurrent_changes デフォルト: "false"
このオプションをオフにすると、アクションの入力ファイルの ctime をチェックする前にリモート キャッシュにアップロードできます。Linux カーネルがファイルの書き込みを遅らせ、誤検出が発生することがあります。
--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> デフォルト: 説明を参照
リモート ダウンロード プロキシとして使用される Remote Asset 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:<url-index>:<header-key>」修飾子をサポートする必要があります。ここで「<url-index>」は、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 に設定すると、Merkle ツリーの計算がメモ化され、リモート キャッシュヒット チェックの速度が向上します。キャッシュのメモリ フットプリントは、--experimental_remote_merkle_tree_cache_size によって制御されます。
--experimental_remote_merkle_tree_cache_size=<a long integer> デフォルト:「1000」
リモート キャッシュ ヒット チェックの速度を向上させるためにメモ化する Merkle ツリーの数。キャッシュは Java のソフト参照の処理に従って自動的に削除されますが、値が高すぎるとメモリ不足エラーが発生する可能性があります。0 に設定すると、キャッシュ サイズは無制限になります。最適な値はプロジェクトのサイズによって異なります。デフォルトは 1,000 です。
--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 を参照)。この機能は、異なるプラットフォームで実行されるが同じプラットフォームをターゲットとするアクション間でリモート/ディスク キャッシュを共有することを目的としています。不適切な設定を行うと、キャッシュ エントリが誤って共有され、ビルドが正しく行われなくなる可能性があるため、この機能は慎重に使用する必要があります。スクラブは、アクションの実行方法には影響しません。アクションの結果を取得または保存するために、リモート/ディスク キャッシュキーが計算される方法にのみ影響します。削除されたアクションはリモート実行に対応していないため、常にローカルで実行されます。 スクラブ構成を変更しても、ローカル ファイル システムまたは内部キャッシュにある出力が無効になることはありません。影響を受けるアクションを再実行するには、クリーンビルドが必要です。この機能を正常に使用するには、カスタムの --host_platform を --experimental_platform_in_output_dir(出力接頭辞を正規化)と --incompatible_strict_action_env(環境変数を正規化)とともに設定することをおすすめします。
--experimental_worker_for_repo_fetching=<off, platform, virtual or auto> デフォルト: "auto"
リポジトリの取得に使用するスレッドモード。「off」に設定すると、ワーカー スレッドは使用されず、リポジトリの取得は再起動の対象になります。それ以外の場合は、仮想ワーカー スレッドを使用します。
--[no]remote_accept_cached デフォルト: "true"
リモートでキャッシュに保存されたアクションの結果を受け入れるか。
--remote_build_event_upload=<all or minimal> デフォルト: 「minimal」
「all」に設定すると、BEP によって参照されるすべてのローカル出力がリモート キャッシュにアップロードされます。値を「minimal」に設定すると、BEP のコンシューマにとって重要なファイル(テストログやタイミング プロファイルなど)を除き、BEP によって参照されるローカル出力はリモート キャッシュにアップロードされません。ファイルがリモート キャッシュにない場合でも、ファイルの URI には常に bytestream:// スキームが使用されます。デフォルトは「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 でキャッシュ ブロブを圧縮/解凍します。
--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 デフォルト: "false"
true の場合、Bazel は bazelrc ファイルからホスト OS 固有の構成行を取得します。たとえば、ホスト OS が Linux で、bazel build を実行すると、build:linux で始まる行が Bazel によって選択されます。サポートされている OS ID は、linux、macos、windows、freebsd、openbsd です。このフラグを有効にすることは、Linux で --config=linux を使用する場合や、Windows で --config=windows を使用する場合と同等です。
--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_rule_extension_api デフォルト: "true"
試験運用版のルール拡張 API とサブルール API を有効にする
タグ: loading_and_analysisexperimental
--[no]experimental_windows_watchfs デフォルト: "false"
true の場合、--watchfs の試験運用版の Windows サポートが有効になります。それ以外の場合、Windows では --watchfs は非オペレーションです。--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 接続のキープアライブ ピングを構成します。この値が設定されている場合、Bazel は、接続で読み取りオペレーションが実行されていない状態がこの値に達すると、保留中の gRPC 呼び出しが 1 つ以上ある場合にのみ、ping を送信します。時間は秒単位で処理されます。1 秒未満の値を設定するとエラーになります。デフォルトでは、キープアライブ ピングは無効になっています。この設定を有効にする前に、サービス オーナーと調整する必要があります。たとえば、このフラグに 30 秒の値を設定するには、--grpc_keepalive_time=30s のようにします。
--grpc_keepalive_timeout=<An immutable length of time.> デフォルト:「20s」
送信 gRPC 接続のキープアライブ タイムアウトを構成します。--grpc_keepalive_time でキープアライブ ピングが有効になっている場合、この時間内に ping の応答を受信しなかった場合、Bazel は接続をタイムアウトします。時間は秒単位で処理されます。1 秒未満の値を設定するとエラーになります。キープアライブ ピングが無効になっている場合、この設定は無視されます。
--[no]incompatible_disable_non_executable_java_binary デフォルト: "false"
true の場合、java_binary は常に実行可能になります。create_executable 属性は削除されます。
タグ: 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> 複数の使用が累積される
<リポジトリ名>=<パス> の形式でローカルパスを使用してリポジトリをオーバーライドします。指定されたパスが絶対パスの場合は、そのまま使用されます。指定されたパスが相対パスの場合は、現在の作業ディレクトリを基準とします。指定されたパスが「%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 でも: ワークスペースがネットワーク ファイル システムにあり、ファイルがリモートマシンで編集されている場合、動作は未定義です。

分析プロファイルのオプション

このオプションは、Starlark 言語のセマンティクス、または BUILD ファイル、.bzl ファイル、WORKSPACE ファイルからアクセスできるビルド API に影響します。
--[no]incompatible_use_plus_in_repo_names デフォルト: "true"
無効。
タグ: loading_and_analysis
ロギングの詳細、形式、場所に影響するオプション:
--dump=<text or raw> [-d] デフォルト: 説明を参照
は、人間が読める「text」形式またはスクリプト対応の「raw」形式で、完全なプロファイル データダンプを出力します。
タグ: bazel_monitoring

Aquery のオプション

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

このオプションは、Starlark 言語のセマンティクス、または BUILD ファイル、.bzl ファイル、WORKSPACE ファイルからアクセスできるビルド API に影響します。
--[no]incompatible_use_plus_in_repo_names デフォルト: "true"
無効。
タグ: 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"
有効にすると、すべてのクエリ コマンドで、Starlark <code>str</code> 関数を <code>Label</code> インスタンスに適用した場合のようにラベルが出力されます。これは、ルールによって出力されたさまざまなクエリ コマンドやラベルの出力を照合する必要があるツールに役立ちます。有効にしていない場合、出力フォーマッタは、出力を読みやすくするために、代わりに(メイン リポジトリを基準とした)わかりやすいリポジトリ名を出力できます。
タグ: terminal_output
--[no]experimental_explicit_aspects デフォルト: "false"
aquery、cquery: アスペクトによって生成されたアクションを出力に含めるかどうか。query: NOP(アスペクトは常に続く)。
タグ: 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 の場合、このオプションは解決された toolchain のフィルタリングを制御します。
タグ: build_file_semantics
--[no]include_artifacts デフォルト: "true"
: 出力にアクションの入力と出力の名前が含まれます(サイズが大きい場合があります)。
タグ: terminal_output
--[no]include_aspects デフォルト: "true"
aquery、cquery: アスペクトによって生成されたアクションを出力に含めるかどうか。query: NOP(アスペクトは常に続く)。
タグ: 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
--[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_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"
追加の分析を実行せずに、Skyframe から現在のアクション グラフをダンプします。注: --skyframe_state を使用してターゲットを指定することは現在サポートされていません。このフラグは、--output=proto または --output=textproto でのみ使用できます。
タグ: terminal_output
--[no]tool_deps デフォルト: "true"
クエリ: 無効にすると、「exec configuration」の依存関係が、クエリが実行される依存関係グラフに含まれなくなります。「exec configuration」依存関係エッジ(「proto_library」ルールからプロトコル コンパイラへのエッジなど)は、通常、同じ「target」プログラムの一部ではなく、ビルド中に実行されるツールを参照します。Cquery: 無効にすると、この構成済みターゲットを検出した最上位ターゲットから実行遷移を越える構成済みターゲットがすべて除外されます。つまり、トップレベルのターゲットがターゲット構成内にある場合、ターゲット構成内に構成されているターゲットのみが返されます。トップレベルのターゲットが exec 構成にある場合、exec で構成されたターゲットのみが返されます。このオプションでは、解決済みのツールチェーンは除外されません。
タグ: build_file_semantics
--universe_scope=<comma-separated list of options> デフォルト: ""
ターゲット パターン(加算と減算)のカンマ区切りのセット。クエリは、指定されたターゲットの推移閉包によって定義されたユニバースで実行できます。このオプションは、query コマンドと cquery コマンドに使用します。cquery の場合、このオプションへの入力は、すべての回答が構築されるターゲットであるため、このオプションは構成と遷移に影響する可能性があります。このオプションを指定しない場合、トップレベル ターゲットはクエリ式から解析されたターゲットと見なされます。注: cquery の場合、このオプションを指定しない場合、クエリ式から解析されたターゲットがトップレベル オプションでビルドできないと、ビルドが中断する可能性があります。
タグ: loading_and_analysis
ビルド実行を制御するオプション:
ヘルパー プロセスに委任するのではなく、ファイル システムを直接呼び出してシンボリック リンク ツリーを作成するかどうか。
タグ: loading_and_analysisexecutionexperimental
--[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 デフォルト: "false"
有効にすると、複数の --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 の場合、Bazel はテスト実行グループではなく、ターゲット プラットフォームを使用してテストを実行します。
タグ: 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 ターゲットが使用するプラットフォームを設定します。複数のプラットフォームを指定した場合、バイナリは指定されたターゲット プラットフォームごとにネイティブ バイナリを含む FAT APK になります。
タグ: changes_inputsloading_and_analysisloses_incremental_state
--apple_crosstool_top=<a build target label> デフォルト: "@bazel_tools//tools/cpp:toolchain"
Apple ルールと Objc ルールとその依存関係で使用されるクロスツール パッケージのラベル。
タグ: loses_incremental_statechanges_inputs
--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> デフォルト: "@bazel_tools//tools/test:coverage_report_generator"
カバレッジ レポートの生成に使用されるバイナリの場所。現在、これは単一のファイル(バイナリ)を含むファイルグループである必要があります。デフォルトは「//tools/test:coverage_report_generator」です。
タグ: changes_inputsaffects_outputsloading_and_analysis
--coverage_support=<a build target label> デフォルト: "@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
--experimental_add_exec_constraints_to_targets=<a '<RegexFilter>=<label1>[,<label2>,...]' assignment> 複数の使用が累積される
カンマ区切りの正規表現のリスト。各正規表現の前に -(否定的な式)を追加することもできます。カンマ区切りの制約値ターゲットのリストに = が割り当てられます。ターゲットが否定的な式と一致せず、少なくとも 1 つの正の式と一致する場合、制約値が実行制約として宣言されているかのように、ツールチェーンの解決が実行されます。例: //demo,-test=@platforms//cpus:x86_64 は、名前に「test」が含まれていないすべての //demo のターゲットに「x86_64」を追加します。
タグ: loading_and_analysis
--[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> 複数の使用が累積される
ツールチェーンの解決時に考慮されるツールチェーン ルール。ツールチェーンは、ターゲットの完全一致またはターゲット パターンで指定できます。これらの toolchain は、register_toolchains() によって WORKSPACE ファイルで宣言された toolchain よりも先に検討されます。
タグ: affects_outputschanges_inputsloading_and_analysis
--grte_top=<a label> デフォルト: 説明を参照
チェクインされた libc ライブラリのラベル。デフォルト値はクロスツール ツールチェーンによって選択されます。この値をオーバーライドする必要はほとんどありません。
タグ: 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> デフォルト: "@bazel_tools//tools:host_platform"
ホストシステムを記述するプラットフォーム ルールのラベル。
タグ: affects_outputschanges_inputsloading_and_analysis
--[no]incompatible_bazel_test_exec_run_under デフォルト: "false"
有効にすると、「bazel test --run_under=//:runner」は、exec 構成で「//:runner」をビルドします。無効にすると、ターゲット構成で「//:runner」がビルドされます。Bazel は実行マシンでテストを実行するため、前者のほうが正確です。これは「bazel run」には影響しません。bazel run は、ターゲット構成で常に「`--run_under=//foo」をビルドします。
タグ: affects_outputsincompatible_change
--[no]incompatible_dont_enable_host_nonhost_crosstool_features デフォルト: "true"
true の場合、Bazel は c++ ツールチェーンで「ホスト」と「非ホスト」の機能を有効にしません(詳細については、https://github.com/bazelbuild/bazel/issues/7407 をご覧ください)。
タグ: loading_and_analysisincompatible_change
--[no]incompatible_enable_apple_toolchain_resolution デフォルト: "false"
ツールチェーン解決を使用して、Apple ルールの Apple SDK(Starlark とネイティブ)を選択。
タグ: 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 のバージョンを指定します。指定しない場合、デフォルトの iOS SDK バージョン(xcode_version)が使用されます。
タグ: 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> デフォルト: 説明を参照
compiling がターゲットとする OS の最小バージョン。
タグ: loading_and_analysisaffects_outputs
--platform_mappings=<a main workspace-relative path> デフォルト: ""
プラットフォームが設定されていない場合に使用するプラットフォーム、またはプラットフォームがすでに存在する場合に設定するフラグを記述するマッピング ファイルの場所。メインのワークスペースのルートからの相対パスにする必要があります。デフォルトは「platform_mappings」(ワークスペースのルートの直下にあるファイル)です。
タグ: affects_outputschanges_inputsloading_and_analysisimmutable
--platforms=<a build target label> デフォルト: ""
現在のコマンドのターゲット プラットフォームを記述するプラットフォーム ルールのラベル。
タグ: affects_outputschanges_inputsloading_and_analysis
--python_path=<a string> デフォルト: 説明を参照
ターゲット プラットフォームで Python ターゲットを実行するために呼び出される Python インタープリタの絶対パス。非推奨。--incompatible_use_python_toolchains によって無効になっています。
タグ: loading_and_analysisaffects_outputs
--python_top=<a build target label> デフォルト: 説明を参照
ターゲット プラットフォームで Python ターゲットを実行するために呼び出される Python インタープリタを表す py_runtime のラベル。非推奨。--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
--watchos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照
watchOS アプリケーションのビルドに使用する watchOS SDK のバージョンを指定します。指定しない場合、デフォルトの watchOS SDK バージョン(xcode_version)が使用されます。
タグ: loses_incremental_state
--xcode_version=<a string> デフォルト: 説明を参照
指定すると、関連するビルド アクションに指定されたバージョンの Xcode が使用されます。指定しない場合、エグゼキュータのデフォルト バージョンの Xcode が使用されます。
タグ: loses_incremental_state
--xcode_version_config=<a build target label> デフォルト: "@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 の場合、すべてのターゲットに対して runfiles シンボリック リンク フォレストをビルドします。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> を runfile に追加します。これは、Starlark ルールの推奨される動作(https://bazel.build/extending/rules#runfiles_features_to_avoid)と一致します。
タグ: affects_outputsincompatible_change
--[no]legacy_external_runfiles デフォルト: "false"
true の場合、外部リポジトリの runfiles シンボリック リンク フォレストを .runfiles/wsname/external/repo の下に(.runfiles/repo の他に)ビルドします。
タグ: affects_outputs
--[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> 複数の使用が累積される
ターゲット構成を持つアクションで使用できる環境変数のセットを指定します。変数は名前で指定できます。この場合、値は呼び出し環境から取得されます。また、name=value ペアで指定することもできます。この場合、値は呼び出し環境から独立して設定されます。このオプションは複数回使用できます。同じ変数に指定されたオプションは最新のものが優先され、異なる変数に指定されたオプションは累積されます。
タグ: 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 databinding v2 を使用。このフラグは no-op です。
タグ: affects_outputsloading_and_analysisloses_incremental_stateexperimental
--android_dynamic_mode=<off, default or fully> デフォルト: 「off」
cc_binary が共有ライブラリを明示的に作成しない場合、Android ルールの C++ 依存関係が動的にリンクされるかどうかを決定します。「default」は、Bazel が動的にリンクするかどうかを選択することを意味します。「完全に」は、すべてのライブラリが動的にリンクされることを意味します。「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> デフォルト: ""
ターゲット CPU。
タグ: 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> デフォルト: 説明を参照
Optimzation に使用するコンテキスト依存プロファイルを表す 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 が動的にリンクするかどうかを選択することを意味します。「完全に」は、すべてのライブラリが動的にリンクされることを意味します。「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"
runfiles シンボリック リンク ツリーを有効にします。デフォルトでは、Windows ではオフ、他のプラットフォームではオンです。
タグ: affects_outputs
--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 Databinding 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, content or strip> デフォルト: 「off」
出力ツリー ルールの出力書き込み場所で使用するモデル(特にマルチプラットフォーム / マルチ構成ビルドの場合)。これは高度な試験運用版です。詳しくは、https://github.com/bazelbuild/bazel/issues/6526 をご覧ください。Starlark アクションでは、キー「supports-path-mapping」を「execution_requirements」ディクショナリに追加することで、パス マッピングを有効にできます。
タグ: loses_incremental_statebazel_internal_configurationaffects_outputsexecution
--experimental_override_name_platform_in_output_dir=<a 'label=value' assignment> 複数の使用が累積される
各エントリは label=value の形式にする必要があります。ここで、label はプラットフォームを指し、value は出力パスで使用する短い名前です。--experimental_platform_in_output_dir が true の場合にのみ使用されます。命名の優先度が最も高い。
タグ: affects_outputsexperimental
--[no]experimental_platform_in_output_dir デフォルト: "false"
true の場合、出力ディレクトリ名には CPU ではなく、ターゲット プラットフォームの短い名前が使用されます。正確なスキームは試験運用版であり、変更される可能性があります。まず、--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 ファイルツリー、自動プロファイルを含む afdo ファイル、または LLVM プロファイル ファイルを含む zip ファイルの名前を指定します。このフラグは、ラベルとして指定されたファイル(例: `//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> 複数の使用が累積される
実行構成を持つアクションで使用できる環境変数のセットを指定します。変数は名前で指定できます。この場合、値は呼び出し環境から取得されます。また、name=value ペアで指定することもできます。この場合、値は呼び出し環境から独立して設定されます。このオプションは複数回使用できます。同じ変数に指定されたオプションは最新のものが優先され、異なる変数に指定されたオプションは累積されます。
タグ: action_command_lines
--host_compilation_mode=<fastbuild, dbg or opt> デフォルト: "opt"
ビルド中に使用されるツールがビルドされるモードを指定します。値: 'fastbuild'、'dbg'、'opt'。
タグ: affects_outputsaction_command_lines
--host_conlyopt=<a string> 複数の使用が累積される
exec 構成で C ソースファイル(C++ ソースファイルは除く)をコンパイルするときに C コンパイラに渡す追加オプション。
タグ: action_command_linesaffects_outputs
--host_copt=<a string> 複数の使用が累積される
exec 構成でビルドされたツールの C コンパイラに渡す追加オプション。
タグ: action_command_linesaffects_outputs
--host_cpu=<a string> デフォルト: ""
ホスト CPU。
タグ: changes_inputsaffects_outputs
--host_cxxopt=<a string> 複数の使用が累積される
exec 構成でビルドされたツールの C++ コンパイラに渡す追加オプション。
タグ: action_command_linesaffects_outputs
--host_features=<a string> 複数の使用が累積される
指定された機能は、exec 構成でビルドされたターゲットに対してデフォルトで有効または無効になります。-<feature> を指定すると、その機能は無効になります。ネガティブな特徴は常にポジティブな特徴をオーバーライドします。
タグ: changes_inputsaffects_outputs
--host_force_python=<PY2 or PY3> デフォルト: 説明を参照
exec 構成の Python バージョンをオーバーライドします。「PY2」または「PY3」にできます。
タグ: loading_and_analysisaffects_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> 複数の使用が累積される
exec 構成で特定のファイルをコンパイルするときに、C/C++ コンパイラに選択的に渡す追加オプション。このオプションは複数回渡すことができます。構文: regex_filter@option_1,option_2,...,option_n。ここで、regex_filter は、含める正規表現パターンと除外する正規表現パターンのリストを表します(--instrumentation_filter も参照)。option_1 ~ option_n は任意のコマンドライン オプションを表します。オプションにカンマが含まれている場合は、バックスラッシュで引用符で囲う必要があります。オプションには @ を含めることができます。文字列の分割には最初の @ のみが使用されます。例: --host_per_file_copt=//foo/.*\.cc,-//foo/bar\.cc@-O0 は、bar.cc を除く //foo/ 内のすべての 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]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 も参照)。option_1 ~ option_n は任意のコマンドライン オプションを表します。オプションにカンマが含まれている場合は、バックスラッシュで引用符で囲う必要があります。オプションには @ を含めることができます。文字列の分割には最初の @ のみが使用されます。例: --per_file_copt=//foo/.*\.cc,-//foo/bar\.cc@-O0 は、bar.cc を除く //foo/ 内のすべての 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 は、含める正規表現パターンと除外する正規表現パターンのリストを表します。option_1 ~ option_n は任意のコマンドライン オプションを表します。オプションにカンマが含まれている場合は、バックスラッシュで引用符で囲う必要があります。オプションには @ を含めることができます。文字列の分割には最初の @ のみが使用されます。例: --per_file_ltobackendopt=//foo/.*\.o,-//foo/bar\.o@-O0 は、bar.o を除く //foo/ 内のすべての 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」バイナリを生成するときにストリップに渡す追加のオプション。
タグ: 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_licenses デフォルト: "false"
依存パッケージによって課せられるライセンス制約が、ビルドされるターゲットの配信モードと競合していないことを確認します。デフォルトでは、ライセンスはチェックされません。
タグ: build_file_semantics
--[no]check_visibility デフォルト: "true"
無効にすると、ターゲット依存関係の可視性エラーは警告に降格されます。
タグ: build_file_semantics
--[no]desugar_for_android デフォルト: "true"
DEX に変換する前に 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
--experimental_import_deps_checking=<a string> デフォルト: 説明を参照
NOP。下位互換性のためだけに保持。
タグ: loading_and_analysis
--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_check_visibility_for_toolchains デフォルト: "false"
有効にすると、可視性チェックは toolchain 実装にも適用されます。
タグ: 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]incompatible_python_disable_py2 デフォルト: "true"
true の場合、Python 2 の設定を使用するとエラーが発生します。これには、python_version=PY2、srcs_version=PY2、srcs_version=PY2ONLY が含まれます。詳細については、https://github.com/bazelbuild/bazel/issues/15684 をご覧ください。
タグ: loading_and_analysisincompatible_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 の場合、システムの include パス(-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 のマニュアル ページ(SIGNING IDENTITIES)に従い、証明書のキートチェーン ID 設定または証明書の共通名の(サブ文字列)にできます。
タグ: action_command_lines
このオプションは、Starlark 言語のセマンティクスまたは BUILD ファイル、.bzl ファイル、WORKSPACE ファイルからアクセスできるビルド API に影響します。
--[no]incompatible_disallow_legacy_py_provider デフォルト: "true"
無効。まもなく削除されます。
タグ: loading_and_analysisincompatible_change
--[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"
dex2oat を並列で使用して、android_test の速度を上げることができます。
タグ: 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> 複数の使用が累積される
テストランナー環境に挿入する追加の環境変数を指定します。変数は名前で指定できます。この場合、値は Bazel クライアント環境から読み取られます。また、name=value ペアで指定することもできます。このオプションは複数回使用して、複数の変数を指定できます。「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_starlark_cc_import デフォルト: "false"
有効にすると、Starlark バージョンの cc_import を使用できます。
タグ: loading_and_analysisexperimental
--[no]experimental_unsupported_and_brittle_include_scanning デフォルト: "false"
入力ファイルを解析して #include 行を解析し、入力を C/C++ コンパイルに絞り込むかどうか。これにより、コンパイル入力ツリーのサイズが小さくなり、パフォーマンスと増分性が向上します。ただし、インクルード スキャナは C プリプロセッサのセマンティクスを完全に実装していないため、ビルドが破損することもあります。特に、動的 #include ディレクティブを認識せず、プリプロセッサの条件付きロジックを無視します。自己責任で使用してください。この報告に関連する問題はすべてクローズされます。
タグ: loading_and_analysisexecutionchanges_inputsexperimental
--[no]incremental_dexing デフォルト: "true"
Jar ファイルごとに個別にデックス処理の大部分を行います。
タグ: 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
他のカテゴリに該当しない Bazel コマンドへの汎用入力を指定する、または変更するオプション。
--flag_alias=<a 'name=value' flag alias> 複数の使用が累積される
Starlark フラグの省略形の名前を設定します。引数として、「<key>=<value>」形式の単一の Key-Value ペアを受け取ります。
タグ: changes_inputs
--[no]incompatible_default_to_explicit_init_py デフォルト: "false"
このフラグを使用すると、デフォルトの動作が変更され、Python ターゲットの実行ファイルに __init__.py ファイルが自動的に作成されなくなります。具体的には、py_binary ターゲットまたは py_test ターゲットで legacy_create_init が「auto」(デフォルト)に設定されている場合、このフラグが設定されている場合にのみ false として扱われます。https://github.com/bazelbuild/bazel/issues/10076 をご覧ください。
タグ: affects_outputsincompatible_change
--[no]incompatible_py2_outputs_are_suffixed デフォルト: "true"
true に設定すると、Python 2 構成でビルドされたターゲットは、接尾辞「-py2」を含む出力ルートの下に表示され、Python 3 用にビルドされたターゲットは、Python 関連の接尾辞のないルートに表示されます。つまり、`bazel-bin` の便利なシンボリック リンクは、Python 2 ではなく Python 3 ターゲットを指すようになります。このオプションを有効にする場合は、`--incompatible_py3_is_default` も有効にすることをおすすめします。
タグ: affects_outputsincompatible_change
--[no]incompatible_py3_is_default デフォルト: "true"
true の場合、python_version(または default_python_version)属性が設定されていない py_binary ターゲットと py_test ターゲットは、デフォルトで PY2 ではなく PY3 になります。このフラグを設定する場合は、`--incompatible_py2_outputs_are_suffixed` も設定することをおすすめします。
タグ: loading_and_analysisaffects_outputsincompatible_change
--[no]incompatible_use_python_toolchains デフォルト: "true"
true に設定すると、実行可能なネイティブ Python ルールは、--python_top などの以前のフラグで指定されたランタイムではなく、Python ツールチェーンで指定された Python ランタイムを使用します。
タグ: loading_and_analysisincompatible_change
--python_version=<PY2 or PY3> デフォルト: 説明を参照
Python のメジャー バージョン モード(PY2 または PY3)。これは、py_binary ターゲットと py_test ターゲットによってオーバーライドされるため(バージョンが明示的に指定されていない場合でも)、通常、このフラグを指定する理由はあまりありません。
タグ: loading_and_analysisaffects_outputs
その他のオプション(他のカテゴリに該当しない):
--[no]cache_test_results [-t] デフォルト: "auto"
「auto」に設定した場合、Bazel は、(1)Bazel がテストまたはその依存関係の変更を検出した場合、(2)テストが外部としてマークされている場合、(3)--runs_per_test で複数のテスト実行がリクエストされた場合、または(4)テストが以前に失敗した場合にのみ、テストを再実行します。[yes] に設定すると、Bazel は外部としてマークされたテストを除くすべてのテスト結果をキャッシュに保存します。「no」に設定すると、Bazel はテスト結果をキャッシュに保存しません。
--[no]experimental_cancel_concurrent_tests デフォルト: "false"
true に設定すると、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
--[no]experimental_j2objc_header_map デフォルト: "true"
J2ObjC 変換と並行して J2ObjC ヘッダーマップを生成するかどうか。
タグ: experimental
--[no]experimental_j2objc_shorter_header_path デフォルト: "false"
短いヘッダーパスで生成するかどうか(「_j2objc」ではなく「_ios」を使用)。
タグ: affects_outputsexperimental
--experimental_java_classpath=<off, javabuilder or bazel> デフォルト: "javabuilder"
Java コンパイルのクラスパスの削減を有効にします。
--[no]experimental_limit_android_lint_to_android_constrained_java デフォルト: "false"
NOP。下位互換性のためのみ保持。
タグ: affects_outputsexperimental
--[no]experimental_run_android_lint_on_java_rules デフォルト: "false"
java_* ソースを検証するかどうか。
タグ: affects_outputsexperimental
--[no]explicit_java_test_deps デフォルト: "false"
TestRunner の依存関係から誤って取得するのではなく、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 のパスにあるファイルをタップしてシャーディングをサポートしていることを示す場合、シャーディングされたテストは失敗します。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
JDK テストの 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> 複数の使用が累積される
JDK に渡す追加のオプション。
--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> デフォルト: 説明を参照
は、シャーディングなしでデクストリングに使用するバイナリを指定します。
--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"
プロトコンパイラのラベル。
タグ: 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> デフォルト: "@bazel_tools//tools/j2objc:j2objc_proto_toolchain"
j2objc proto のコンパイル方法を記述する 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> デフォルト: "@bazel_tools//tools/proto:javalite_toolchain"
JavaLite proto のコンパイル方法を記述する 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」
テスト シャーディング戦略を指定します。BUILD 属性に「shard_count」が存在する場合にのみシャーディングを使用する場合は「explicit」を指定します。「disabled」: テスト シャーディングをまったく使用しない。「forced=k」: 「shard_count」BUILD 属性に関係なく、テスト用に「k」個のシャードを適用します。
--tool_java_language_version=<a string> デフォルト: ""
ビルド中に必要なツールの実行に使用される Java 言語のバージョン
--tool_java_runtime_version=<a string> デフォルト: "remotejdk_11"
ビルド中にツールの実行に使用される Java ランタイム バージョン
--[no]use_ijars デフォルト: "true"
このオプションを有効にすると、Java コンパイルでインターフェース JAR が使用されます。これにより、増分コンパイルが高速化されますが、エラー メッセージが異なる場合があります。

ビルド オプション

ビルド実行を制御するオプション:
--[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
--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_cpu_resources フラグで制御できます。このフラグが 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 より大きい場合は、ビルドの実行中はサイズが 1 の非同期スレッドプールで、サーバーがアイドル状態のときは、このフラグで指定されたサイズに増加する非同期スレッドプールで、このような 3 つの削除を実行します。
タグ: 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 MB のメモリで実行されます。
タグ: 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
--[no]experimental_split_xml_generation デフォルト: "true"
このフラグが設定されていて、テスト アクションが test.xml ファイルを生成しない場合、Bazel は別のアクションを使用して、テストログを含むダミーの test.xml ファイルを生成します。それ以外の場合、Bazel はテスト アクションの一部として test.xml を生成します。
タグ: execution
--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 に設定すると、root をマウントせず、sandbox_add_mount_pair で指定されたものをマウントします。入力ファイルは、サンドボックスからシンボリック リンクされるのではなく、サンドボックスにハードリンクされます。アクション入力ファイルがサンドボックスとは異なるファイル システムにある場合は、代わりに入力ファイルがコピーされます。
タグ: execution
--[no]experimental_use_semaphore_for_jobs デフォルト: "true"
true に設定した場合は、セマフォを使用して同時実行ジョブの数を制限します。
タグ: host_machine_resource_optimizationsexecution
--[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"
有効にすると、ワーカー仕様に準拠していないワーカーのアクション引数でエラーが発生します。ワーカー引数には、引数のリストの最後として 1 つの @flagfile 引数が必要です。
タグ: execution
--genrule_strategy=<comma-separated list of options> デフォルト: ""
genrules の実行方法を指定します。このフラグは段階的に廃止されます。代わりに、--spawn_strategy=<value> を使用してすべてのアクションを制御するか、--strategy=Genrule=<value> を使用して genrule のみを制御します。
タグ: execution
--[no]incompatible_sandbox_hermetic_tmp デフォルト: "true"
true に設定すると、各 Linux サンドボックスに独自の空のディレクトリが /tmp としてマウントされ、ホスト ファイルシステムと /tmp を共有しなくなります。--sandbox_add_mount_pair=/tmp を使用して、すべてのサンドボックスでホストの /tmp を表示し続けます。
タグ: execution
--[no]incompatible_use_new_cgroup_implementation デフォルト: "false"
true の場合、cgroups に新しい実装を使用します。古い実装はメモリ コントローラのみをサポートし、--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」)を指定します。必要に応じて、演算子([-|*]<浮動小数点数>)を指定します。「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 など)を指定すると、ビルドまたはテストに多くの入力ファイルがある場合にパフォーマンスが大幅に向上する可能性があります。注: アクションの実行によって生成された出力ファイルと中間ファイルを保持するのに十分な RAM と tmpfs の空き容量が必要です。
タグ: host_machine_resource_optimizationsexecution
--[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」)を指定します。必要に応じて、演算子([-|*]<浮動小数点数>)を指定します。「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」)を指定します。必要に応じて、演算子([-|*]<浮動小数点数>)を指定します。「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"
有効にすると、シングルプレックス ワーカーはサンドボックス環境で実行されます。シングルプレックス ワーカーは、このフラグに関係なく、動的実行戦略で実行されている場合は常にサンドボックス化されます。
タグ: 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
このフラグは、ビルドイベントの ConvenienceSymlinksIdentified を 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
No-op
タグ: host_machine_resource_optimizationsexecution
--[no]incompatible_legacy_local_fallback デフォルト: "false"
true に設定すると、サンドボックス化された戦略からローカル戦略への従来の暗黙的なフォールバックが有効になります。このフラグは最終的にデフォルトで false になり、無効になります。代わりに、--strategy、--spawn_strategy、または --dynamic_local_strategy を使用してフォールバック構成します。
タグ: executionincompatible_change
--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 の場合、これは無効です。それ以外の場合、このフラグが 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]incompatible_use_plus_in_repo_names デフォルト: "true"
無効。
タグ: loading_and_analysis
テスト環境またはテストランナーの動作を制御するオプション:
--[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 回実行されます。デフォルトの場合、通常のテストは 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 回デフレークします。このオプションは複数回渡すことができます。一致する引数のうち、最後に渡された引数が優先されます。一致するものがない場合、上記の「デフォルト」と同じ動作になります。
タグ: 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」)を指定します。必要に応じて、演算子([-|*]<浮動小数点数>)を指定します。「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 以外の場合、この数値は、キャッシュに保存されるファイル ダイジェストの数としてキャッシュのサイズを示します。
--[no]experimental_cpu_load_scheduling デフォルト: "false"
アクションの個別の推定ではなく、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_working_set の使用を有効にして、増分ビルドの Bazel のメモリ フットプリントを削減します。この機能は Skyfocus と呼ばれます。
タグ: host_machine_resource_optimizations
--experimental_working_set=<comma-separated list of options> デフォルト: ""
Skyfocus の作業セット。ワークスペースのルートを基準とするパスをカンマ区切りで指定します。これはステートフル フラグです。ワーキング セットを定義すると、新しいセットで再定義されるまで、後続の呼び出しで保持されます。
タグ: host_machine_resource_optimizations
--local_cpu_resources=<an integer, or "HOST_CPUS", optionally followed by [-|*]<float>.> デフォルト: "HOST_CPUS"
Bazel がローカルで実行されるビルド アクションに使用できるローカル CPU コアの合計数を明示的に設定します。整数または「HOST_CPUS」を指定します。必要に応じて、[-|*]<浮動小数点数> を指定します(例: HOST_CPUS*.5 は、利用可能な CPU コアの半分を使用します)。デフォルトでは(「HOST_CPUS」)、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"
ローカルで実行されるビルド アクションに Bazel が使用できるローカルホスト RAM の合計量(MB 単位)を明示的に設定します。整数または「HOST_RAM」を指定します。必要に応じて、[-|*]<浮動小数点数> を指定します(例: 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 で使用可能なリソースの数を設定します。浮動小数点数または 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 で Fileset を開きます。
タグ: affects_outputs
true の場合、出力ファイルを提示する際に BEP 内の相対 Fileset シンボリック リンクを完全に解決します。--experimental_build_event_expand_filesets が必要です。
タグ: 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' です。出力グループが繰り返される場合は、最終的に表示される値が使用されます。デフォルト値では、カバレッジ アーティファクトのモードは両方に設定されます。--experimental_build_event_output_group_mode=baseline.lcov=both
タグ: affects_outputs
--experimental_build_event_upload_retry_minimum_delay=<An immutable length of time.> デフォルト: 「1s」
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
--[no]experimental_materialize_param_files_directly デフォルト: "false"
Param ファイルを実体化する場合は、ディスクに直接書き込んでください。
タグ: execution
--experimental_repository_resolved_file=<a string> デフォルト: ""
空でない場合、実行されたすべての Starlark リポジトリ ルールの解決済み情報を含む Starlark 値を書き込みます。
タグ: affects_outputs
--[no]experimental_run_bep_event_include_residue デフォルト: "false"
残留物を含む可能性がある実行ビルド イベントにコマンドライン残留物を含めるかどうか。デフォルトでは、残留物が含まれる可能性がある実行コマンド ビルドイベントには残留物が含まれません。
タグ: affects_outputs
--experimental_skyfocus_dump_keys=<none, count or verbose> デフォルト:「none」
Skyfocus のデバッグに使用します。フォーカスされた SkyKey(ルート、リーフ、フォーカスされた依存関係、フォーカスされた rdeps)をダンプします。
タグ: terminal_output
--[no]experimental_skyfocus_dump_post_gc_stats デフォルト: "false"
Skyfocus のデバッグに使用します。有効にすると、フォーカスの前後に手動 GC をトリガーして、ヒープサイズの削減を報告します。これにより、Skyfocus のレイテンシが増加します。
タグ: terminal_output
--experimental_skyfocus_handling_strategy=<strict or warn> デフォルト: 「strict」
Skyfocus が作業セット外の変更を処理するための戦略。
タグ: eagerness_to_exit
--[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_print_execution_messages=<failure, success or all> デフォルト:「failure」
リモート実行メッセージを出力するタイミングを選択します。有効な値は、失敗した場合のみ出力する「failure」、成功した場合のみ出力する「success」、常に出力する「all」です。
タグ: terminal_output
--[no]sandbox_debug デフォルト: "false"
サンボクシング機能のデバッグ機能を有効にします。これには 2 つの点があります。1 つは、ビルド後にサンドボックスのルート コンテンツが変更されないことです。もう 1 つは、実行時に追加のデバッグ情報が出力されることです。これは、入力ファイルが欠落しているなどの原因で発生した 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_explanations デフォルト: "false"
--explain が有効になっている場合、出力される説明の詳細度を高めます。--explain が有効になっていない場合、効果はありません。
タグ: affects_outputs
--[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
--[no]experimental_guard_against_concurrent_changes デフォルト: "false"
このオプションをオフにすると、アクションの入力ファイルの ctime をチェックする前にリモート キャッシュにアップロードできます。Linux カーネルがファイルの書き込みを遅らせ、誤検出が発生することがあります。
--experimental_remote_cache_compression_threshold=<an integer> デフォルト:「100」
zstd で圧縮または解凍するために必要な最小 blob サイズ。--remote_cache_compression が設定されていない限り、効果がありません。
--experimental_remote_cache_eviction_retries=<an integer> デフォルト:「5」
ビルドでビルドが失敗する一時的なリモート キャッシュ エラーが発生した場合に再試行する最大回数。たとえば、アーティファクトがリモート キャッシュから強制排除された場合や、特定のキャッシュ障害が発生した場合に適用されます。ゼロ以外の値を指定すると、--incompatible_remote_use_new_exit_code_for_lost_inputs が暗黙的に true に設定されます。試行ごとに新しい呼び出し ID が生成されます。呼び出し ID を生成し、--invocation_id で Bazel に指定する場合は、このフラグを使用しないでください。代わりに、フラグ --incompatible_remote_use_new_exit_code_for_lost_inputs を設定し、終了コード 39 を確認します。
タグ: 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> デフォルト: 説明を参照
リモート ダウンロード プロキシとして使用される Remote Asset 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:<url-index>:<header-key>」修飾子をサポートする必要があります。ここで「<url-index>」は、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 に設定すると、Merkle ツリーの計算がメモ化され、リモート キャッシュヒット チェックの速度が向上します。キャッシュのメモリ フットプリントは、--experimental_remote_merkle_tree_cache_size によって制御されます。
--experimental_remote_merkle_tree_cache_size=<a long integer> デフォルト:「1000」
リモート キャッシュ ヒット チェックの速度を向上させるためにメモ化する Merkle ツリーの数。キャッシュは Java のソフト参照の処理に従って自動的に削除されますが、値が高すぎるとメモリ不足エラーが発生する可能性があります。0 に設定すると、キャッシュ サイズは無制限になります。最適な値はプロジェクトのサイズによって異なります。デフォルトは 1,000 です。
--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 を参照)。この機能は、異なるプラットフォームで実行されるが同じプラットフォームをターゲットとするアクション間でリモート/ディスク キャッシュを共有することを目的としています。不適切な設定を行うと、キャッシュ エントリが誤って共有され、ビルドが正しく行われなくなる可能性があるため、この機能は慎重に使用する必要があります。スクラブは、アクションの実行方法には影響しません。アクションの結果を取得または保存するために、リモート/ディスク キャッシュキーが計算される方法にのみ影響します。削除されたアクションはリモート実行に対応していないため、常にローカルで実行されます。 スクラブ構成を変更しても、ローカル ファイル システムまたは内部キャッシュにある出力が無効になることはありません。影響を受けるアクションを再実行するには、クリーンビルドが必要です。この機能を正常に使用するには、カスタムの --host_platform を --experimental_platform_in_output_dir(出力接頭辞を正規化)と --incompatible_strict_action_env(環境変数を正規化)とともに設定することをおすすめします。
--[no]incompatible_remote_use_new_exit_code_for_lost_inputs デフォルト: "true"
true に設定すると、キャッシュの強制排除などのリモート キャッシュエラーが原因でビルドが失敗した場合、Bazel は 34 ではなく新しい終了コード 39 を使用します。
タグ: incompatible_change
--[no]remote_accept_cached デフォルト: "true"
リモートでキャッシュに保存されたアクションの結果を受け入れるか。
--remote_build_event_upload=<all or minimal> デフォルト: 「minimal」
「all」に設定すると、BEP によって参照されるすべてのローカル出力がリモート キャッシュにアップロードされます。値を「minimal」に設定すると、BEP のコンシューマにとって重要なファイル(テストログやタイミング プロファイルなど)を除き、BEP によって参照されるローカル出力はリモート キャッシュにアップロードされません。ファイルがリモート キャッシュにない場合でも、ファイルの URI には常に bytestream:// スキームが使用されます。デフォルトは「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 でキャッシュ ブロブを圧縮/解凍します。
--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 と同様に、サブパッケージも含む)です。パッケージとサブパッケージの値は、//java/foo と //javatests/foo が 1 つのパッケージとして扱われます)。
--[no]build_manual_tests デフォルト: "false"
「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> デフォルト:「none」
目的の累積カバレッジ レポートのタイプを指定します。現時点では 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> デフォルト: 説明を参照
executed spawns を、src/main/protobuf/spawn.proto に従って、長さで区切られた SpawnExec proto としてこのファイルに記録します。--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 proto としてこのファイルに記録します。ファイル全体が zstd 圧縮されています。関連するフラグ: --execution_log_binary_file(バイナリ プロトブブック形式。相互に排他的)、--execution_log_json_file(テキスト JSON 形式。相互に排他的)、--subcommands(ターミナル出力にサブコマンドを表示するため)。
--execution_log_json_file=<a path> デフォルト: 説明を参照
実行されたスポーンを、src/main/protobuf/spawn.proto に従って、SpawnExec proto の改行区切りの JSON 表現としてこのファイルに記録します。--execution_log_compact_file を使用することをおすすめします。このファイルは大幅に小さく、生成コストも低くなります。関連するフラグ: --execution_log_compact_file(圧縮形式。相互に排他的)、--execution_log_binary_file(バイナリ プロトブブ形式。相互に排他的)、--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 は各アクションをローカルとリモートで生成し、最初に完了したアクションを選択します。アクションがワーカーをサポートしている場合、ローカル アクションは永続ワーカー モードで実行されます。個々のアクションの mnemo の動的実行を有効にするには、代わりに `--internal_spawn_scheduler` フラグと `--strategy=<mnemo>=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 もご覧ください。
ビルド実行を制御するオプション:
ヘルパー プロセスに委任するのではなく、ファイル システムを直接呼び出してシンボリック リンク ツリーを作成するかどうか。
タグ: loading_and_analysisexecutionexperimental
--[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 デフォルト: "false"
有効にすると、複数の --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 の場合、Bazel はテスト実行グループではなく、ターゲット プラットフォームを使用してテストを実行します。
タグ: 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 ターゲットが使用するプラットフォームを設定します。複数のプラットフォームを指定した場合、バイナリは指定されたターゲット プラットフォームごとにネイティブ バイナリを含む FAT APK になります。
タグ: changes_inputsloading_and_analysisloses_incremental_state
--apple_crosstool_top=<a build target label> デフォルト: "@bazel_tools//tools/cpp:toolchain"
Apple ルールと Objc ルールとその依存関係で使用されるクロスツール パッケージのラベル。
タグ: loses_incremental_statechanges_inputs
--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> デフォルト: "@bazel_tools//tools/test:coverage_report_generator"
カバレッジ レポートの生成に使用されるバイナリの場所。現在、これは単一のファイル(バイナリ)を含むファイルグループである必要があります。デフォルトは「//tools/test:coverage_report_generator」です。
タグ: changes_inputsaffects_outputsloading_and_analysis
--coverage_support=<a build target label> デフォルト: "@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
--experimental_add_exec_constraints_to_targets=<a '<RegexFilter>=<label1>[,<label2>,...]' assignment> 複数の使用が累積される
カンマ区切りの正規表現のリスト。各正規表現の前に -(否定的な式)を追加することもできます。カンマ区切りの制約値ターゲットのリストに = が割り当てられます。ターゲットが否定的な式と一致せず、少なくとも 1 つの正の式と一致する場合、制約値が実行制約として宣言されているかのように、ツールチェーンの解決が実行されます。例: //demo,-test=@platforms//cpus:x86_64 は、名前に「test」が含まれていないすべての //demo のターゲットに「x86_64」を追加します。
タグ: loading_and_analysis
--[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> 複数の使用が累積される
ツールチェーンの解決時に考慮されるツールチェーン ルール。ツールチェーンは、ターゲットの完全一致またはターゲット パターンで指定できます。これらの toolchain は、register_toolchains() によって WORKSPACE ファイルで宣言された toolchain よりも先に検討されます。
タグ: affects_outputschanges_inputsloading_and_analysis
--grte_top=<a label> デフォルト: 説明を参照
チェクインされた libc ライブラリのラベル。デフォルト値はクロスツール ツールチェーンによって選択されます。この値をオーバーライドする必要はほとんどありません。
タグ: 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> デフォルト: "@bazel_tools//tools:host_platform"
ホストシステムを記述するプラットフォーム ルールのラベル。
タグ: affects_outputschanges_inputsloading_and_analysis
--[no]incompatible_bazel_test_exec_run_under デフォルト: "false"
有効にすると、「bazel test --run_under=//:runner」は、exec 構成で「//:runner」をビルドします。無効にすると、ターゲット構成で「//:runner」がビルドされます。Bazel は実行マシンでテストを実行するため、前者のほうが正確です。これは「bazel run」には影響しません。bazel run は、ターゲット構成で常に「`--run_under=//foo」をビルドします。
タグ: affects_outputsincompatible_change
--[no]incompatible_dont_enable_host_nonhost_crosstool_features デフォルト: "true"
true の場合、Bazel は c++ ツールチェーンで「ホスト」と「非ホスト」の機能を有効にしません(詳細については、https://github.com/bazelbuild/bazel/issues/7407 をご覧ください)。
タグ: loading_and_analysisincompatible_change
--[no]incompatible_enable_apple_toolchain_resolution デフォルト: "false"
ツールチェーン解決を使用して、Apple ルールの Apple SDK(Starlark とネイティブ)を選択。
タグ: 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 のバージョンを指定します。指定しない場合、デフォルトの iOS SDK バージョン(xcode_version)が使用されます。
タグ: 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> デフォルト: 説明を参照
compiling がターゲットとする OS の最小バージョン。
タグ: loading_and_analysisaffects_outputs
--platform_mappings=<a main workspace-relative path> デフォルト: ""
プラットフォームが設定されていない場合に使用するプラットフォーム、またはプラットフォームがすでに存在する場合に設定するフラグを記述するマッピング ファイルの場所。メインのワークスペースのルートからの相対パスにする必要があります。デフォルトは「platform_mappings」(ワークスペースのルートの直下にあるファイル)です。
タグ: affects_outputschanges_inputsloading_and_analysisimmutable
--platforms=<a build target label> デフォルト: ""
現在のコマンドのターゲット プラットフォームを記述するプラットフォーム ルールのラベル。
タグ: affects_outputschanges_inputsloading_and_analysis
--python_path=<a string> デフォルト: 説明を参照
ターゲット プラットフォームで Python ターゲットを実行するために呼び出される Python インタープリタの絶対パス。非推奨。--incompatible_use_python_toolchains によって無効になっています。
タグ: loading_and_analysisaffects_outputs
--python_top=<a build target label> デフォルト: 説明を参照
ターゲット プラットフォームで Python ターゲットを実行するために呼び出される Python インタープリタを表す py_runtime のラベル。非推奨。--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
--watchos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照
watchOS アプリケーションのビルドに使用する watchOS SDK のバージョンを指定します。指定しない場合、デフォルトの watchOS SDK バージョン(xcode_version)が使用されます。
タグ: loses_incremental_state
--xcode_version=<a string> デフォルト: 説明を参照
指定すると、関連するビルド アクションに指定されたバージョンの Xcode が使用されます。指定しない場合、エグゼキュータのデフォルト バージョンの Xcode が使用されます。
タグ: loses_incremental_state
--xcode_version_config=<a build target label> デフォルト: "@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 の場合、すべてのターゲットに対して runfiles シンボリック リンク フォレストをビルドします。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> を runfile に追加します。これは、Starlark ルールの推奨される動作(https://bazel.build/extending/rules#runfiles_features_to_avoid)と一致します。
タグ: affects_outputsincompatible_change
--[no]legacy_external_runfiles デフォルト: "false"
true の場合、外部リポジトリの runfiles シンボリック リンク フォレストを .runfiles/wsname/external/repo の下に(.runfiles/repo の他に)ビルドします。
タグ: affects_outputs
--[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> 複数の使用が累積される
ターゲット構成を持つアクションで使用できる環境変数のセットを指定します。変数は名前で指定できます。この場合、値は呼び出し環境から取得されます。また、name=value ペアで指定することもできます。この場合、値は呼び出し環境から独立して設定されます。このオプションは複数回使用できます。同じ変数に指定されたオプションは最新のものが優先され、異なる変数に指定されたオプションは累積されます。
タグ: 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 databinding v2 を使用。このフラグは no-op です。
タグ: affects_outputsloading_and_analysisloses_incremental_stateexperimental
--android_dynamic_mode=<off, default or fully> デフォルト: 「off」
cc_binary が共有ライブラリを明示的に作成しない場合、Android ルールの C++ 依存関係が動的にリンクされるかどうかを決定します。「default」は、Bazel が動的にリンクするかどうかを選択することを意味します。「完全に」は、すべてのライブラリが動的にリンクされることを意味します。「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> デフォルト: ""
ターゲット CPU。
タグ: 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> デフォルト: 説明を参照
Optimzation に使用するコンテキスト依存プロファイルを表す 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 が動的にリンクするかどうかを選択することを意味します。「完全に」は、すべてのライブラリが動的にリンクされることを意味します。「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"
runfiles シンボリック リンク ツリーを有効にします。デフォルトでは、Windows ではオフ、他のプラットフォームではオンです。
タグ: affects_outputs
--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 Databinding 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, content or strip> デフォルト: 「off」
出力ツリー ルールの出力書き込み場所で使用するモデル(特にマルチプラットフォーム / マルチ構成ビルドの場合)。これは高度な試験運用版です。詳しくは、https://github.com/bazelbuild/bazel/issues/6526 をご覧ください。Starlark アクションでは、キー「supports-path-mapping」を「execution_requirements」ディクショナリに追加することで、パス マッピングを有効にできます。
タグ: loses_incremental_statebazel_internal_configurationaffects_outputsexecution
--experimental_override_name_platform_in_output_dir=<a 'label=value' assignment> 複数の使用が累積される
各エントリは label=value の形式にする必要があります。ここで、label はプラットフォームを指し、value は出力パスで使用する短い名前です。--experimental_platform_in_output_dir が true の場合にのみ使用されます。命名の優先度が最も高い。
タグ: affects_outputsexperimental
--[no]experimental_platform_in_output_dir デフォルト: "false"
true の場合、出力ディレクトリ名には CPU ではなく、ターゲット プラットフォームの短い名前が使用されます。正確なスキームは試験運用版であり、変更される可能性があります。まず、--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 ファイルツリー、自動プロファイルを含む afdo ファイル、または LLVM プロファイル ファイルを含む zip ファイルの名前を指定します。このフラグは、ラベルとして指定されたファイル(例: `//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> 複数の使用が累積される
実行構成を持つアクションで使用できる環境変数のセットを指定します。変数は名前で指定できます。この場合、値は呼び出し環境から取得されます。また、name=value ペアで指定することもできます。この場合、値は呼び出し環境から独立して設定されます。このオプションは複数回使用できます。同じ変数に指定されたオプションは最新のものが優先され、異なる変数に指定されたオプションは累積されます。
タグ: action_command_lines
--host_compilation_mode=<fastbuild, dbg or opt> デフォルト: "opt"
ビルド中に使用されるツールがビルドされるモードを指定します。値: 'fastbuild'、'dbg'、'opt'。
タグ: affects_outputsaction_command_lines
--host_conlyopt=<a string> 複数の使用が累積される
exec 構成で C ソースファイル(C++ ソースファイルは除く)をコンパイルするときに C コンパイラに渡す追加オプション。
タグ: action_command_linesaffects_outputs
--host_copt=<a string> 複数の使用が累積される
exec 構成でビルドされたツールの C コンパイラに渡す追加オプション。
タグ: action_command_linesaffects_outputs
--host_cpu=<a string> デフォルト: ""
ホスト CPU。
タグ: changes_inputsaffects_outputs
--host_cxxopt=<a string> 複数の使用が累積される
exec 構成でビルドされたツールの C++ コンパイラに渡す追加オプション。
タグ: action_command_linesaffects_outputs
--host_features=<a string> 複数の使用が累積される
指定された機能は、exec 構成でビルドされたターゲットに対してデフォルトで有効または無効になります。-<feature> を指定すると、その機能は無効になります。ネガティブな特徴は常にポジティブな特徴をオーバーライドします。
タグ: changes_inputsaffects_outputs
--host_force_python=<PY2 or PY3> デフォルト: 説明を参照
exec 構成の Python バージョンをオーバーライドします。「PY2」または「PY3」にできます。
タグ: loading_and_analysisaffects_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> 複数の使用が累積される
exec 構成で特定のファイルをコンパイルするときに、C/C++ コンパイラに選択的に渡す追加オプション。このオプションは複数回渡すことができます。構文: regex_filter@option_1,option_2,...,option_n。ここで、regex_filter は、含める正規表現パターンと除外する正規表現パターンのリストを表します(--instrumentation_filter も参照)。option_1 ~ option_n は任意のコマンドライン オプションを表します。オプションにカンマが含まれている場合は、バックスラッシュで引用符で囲う必要があります。オプションには @ を含めることができます。文字列の分割には最初の @ のみが使用されます。例: --host_per_file_copt=//foo/.*\.cc,-//foo/bar\.cc@-O0 は、bar.cc を除く //foo/ 内のすべての 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]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 も参照)。option_1 ~ option_n は任意のコマンドライン オプションを表します。オプションにカンマが含まれている場合は、バックスラッシュで引用符で囲う必要があります。オプションには @ を含めることができます。文字列の分割には最初の @ のみが使用されます。例: --per_file_copt=//foo/.*\.cc,-//foo/bar\.cc@-O0 は、bar.cc を除く //foo/ 内のすべての 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 は、含める正規表現パターンと除外する正規表現パターンのリストを表します。option_1 ~ option_n は任意のコマンドライン オプションを表します。オプションにカンマが含まれている場合は、バックスラッシュで引用符で囲う必要があります。オプションには @ を含めることができます。文字列の分割には最初の @ のみが使用されます。例: --per_file_ltobackendopt=//foo/.*\.o,-//foo/bar\.o@-O0 は、bar.o を除く //foo/ 内のすべての 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」バイナリを生成するときにストリップに渡す追加のオプション。
タグ: 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_licenses デフォルト: "false"
依存パッケージによって課せられるライセンス制約が、ビルドされるターゲットの配信モードと競合していないことを確認します。デフォルトでは、ライセンスはチェックされません。
タグ: build_file_semantics
--[no]check_visibility デフォルト: "true"
無効にすると、ターゲット依存関係の可視性エラーは警告に降格されます。
タグ: build_file_semantics
--[no]desugar_for_android デフォルト: "true"
DEX に変換する前に 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
--experimental_import_deps_checking=<a string> デフォルト: 説明を参照
NOP。下位互換性のためだけに保持。
タグ: loading_and_analysis
--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_check_visibility_for_toolchains デフォルト: "false"
有効にすると、可視性チェックは toolchain 実装にも適用されます。
タグ: 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]incompatible_python_disable_py2 デフォルト: "true"
true の場合、Python 2 の設定を使用するとエラーが発生します。これには、python_version=PY2、srcs_version=PY2、srcs_version=PY2ONLY が含まれます。詳細については、https://github.com/bazelbuild/bazel/issues/15684 をご覧ください。
タグ: loading_and_analysisincompatible_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 の場合、システムの include パス(-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 のマニュアル ページ(SIGNING IDENTITIES)に従い、証明書のキートチェーン ID 設定または証明書の共通名の(サブ文字列)にできます。
タグ: action_command_lines
このオプションは、Starlark 言語のセマンティクスまたは BUILD ファイル、.bzl ファイル、WORKSPACE ファイルからアクセスできるビルド API に影響します。
--[no]incompatible_disallow_legacy_py_provider デフォルト: "true"
無効。まもなく削除されます。
タグ: loading_and_analysisincompatible_change
--[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"
dex2oat を並列で使用して、android_test の速度を上げることができます。
タグ: 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> 複数の使用が累積される
テストランナー環境に挿入する追加の環境変数を指定します。変数は名前で指定できます。この場合、値は Bazel クライアント環境から読み取られます。また、name=value ペアで指定することもできます。このオプションは複数回使用して、複数の変数を指定できます。「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_starlark_cc_import デフォルト: "false"
有効にすると、Starlark バージョンの cc_import を使用できます。
タグ: loading_and_analysisexperimental
--[no]experimental_unsupported_and_brittle_include_scanning デフォルト: "false"
入力ファイルを解析して #include 行を解析し、入力を C/C++ コンパイルに絞り込むかどうか。これにより、コンパイル入力ツリーのサイズが小さくなり、パフォーマンスと増分性が向上します。ただし、インクルード スキャナは C プリプロセッサのセマンティクスを完全に実装していないため、ビルドが破損することもあります。特に、動的 #include ディレクティブを認識せず、プリプロセッサの条件付きロジックを無視します。自己責任で使用してください。この報告に関連する問題はすべてクローズされます。
タグ: loading_and_analysisexecutionchanges_inputsexperimental
--[no]incremental_dexing デフォルト: "true"
Jar ファイルごとに個別にデックス処理の大部分を行います。
タグ: 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
他のカテゴリに該当しない Bazel コマンドへの汎用入力を指定する、または変更するオプション。
--flag_alias=<a 'name=value' flag alias> 複数の使用が累積される
Starlark フラグの省略形の名前を設定します。引数として、「<key>=<value>」形式の単一の Key-Value ペアを受け取ります。
タグ: changes_inputs
--[no]incompatible_default_to_explicit_init_py デフォルト: "false"
このフラグを使用すると、デフォルトの動作が変更され、Python ターゲットの実行ファイルに __init__.py ファイルが自動的に作成されなくなります。具体的には、py_binary ターゲットまたは py_test ターゲットで legacy_create_init が「auto」(デフォルト)に設定されている場合、このフラグが設定されている場合にのみ false として扱われます。https://github.com/bazelbuild/bazel/issues/10076 をご覧ください。
タグ: affects_outputsincompatible_change
--[no]incompatible_py2_outputs_are_suffixed デフォルト: "true"
true に設定すると、Python 2 構成でビルドされたターゲットは、接尾辞「-py2」を含む出力ルートの下に表示され、Python 3 用にビルドされたターゲットは、Python 関連の接尾辞のないルートに表示されます。つまり、`bazel-bin` の便利なシンボリック リンクは、Python 2 ではなく Python 3 ターゲットを指すようになります。このオプションを有効にする場合は、`--incompatible_py3_is_default` も有効にすることをおすすめします。
タグ: affects_outputsincompatible_change
--[no]incompatible_py3_is_default デフォルト: "true"
true の場合、python_version(または default_python_version)属性が設定されていない py_binary ターゲットと py_test ターゲットは、デフォルトで PY2 ではなく PY3 になります。このフラグを設定する場合は、`--incompatible_py2_outputs_are_suffixed` も設定することをおすすめします。
タグ: loading_and_analysisaffects_outputsincompatible_change
--[no]incompatible_use_python_toolchains デフォルト: "true"
true に設定すると、実行可能なネイティブ Python ルールは、--python_top などの以前のフラグで指定されたランタイムではなく、Python ツールチェーンで指定された Python ランタイムを使用します。
タグ: loading_and_analysisincompatible_change
--python_version=<PY2 or PY3> デフォルト: 説明を参照
Python のメジャー バージョン モード(PY2 または PY3)。これは、py_binary ターゲットと py_test ターゲットによってオーバーライドされるため(バージョンが明示的に指定されていない場合でも)、通常、このフラグを指定する理由はあまりありません。
タグ: loading_and_analysisaffects_outputs
その他のオプション(他のカテゴリに該当しない):
--[no]cache_test_results [-t] デフォルト: "auto"
「auto」に設定した場合、Bazel は、(1)Bazel がテストまたはその依存関係の変更を検出した場合、(2)テストが外部としてマークされている場合、(3)--runs_per_test で複数のテスト実行がリクエストされた場合、または(4)テストが以前に失敗した場合にのみ、テストを再実行します。[yes] に設定すると、Bazel は外部としてマークされたテストを除くすべてのテスト結果をキャッシュに保存します。「no」に設定すると、Bazel はテスト結果をキャッシュに保存しません。
--[no]experimental_cancel_concurrent_tests デフォルト: "false"
true に設定すると、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
--[no]experimental_j2objc_header_map デフォルト: "true"
J2ObjC 変換と並行して J2ObjC ヘッダーマップを生成するかどうか。
タグ: experimental
--[no]experimental_j2objc_shorter_header_path デフォルト: "false"
短いヘッダーパスで生成するかどうか(「_j2objc」ではなく「_ios」を使用)。
タグ: affects_outputsexperimental
--experimental_java_classpath=<off, javabuilder or bazel> デフォルト: "javabuilder"
Java コンパイルのクラスパスの削減を有効にします。
--[no]experimental_limit_android_lint_to_android_constrained_java デフォルト: "false"
NOP。下位互換性のためのみ保持。
タグ: affects_outputsexperimental
--[no]experimental_run_android_lint_on_java_rules デフォルト: "false"
java_* ソースを検証するかどうか。
タグ: affects_outputsexperimental
--[no]explicit_java_test_deps デフォルト: "false"
TestRunner の依存関係から誤って取得するのではなく、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 のパスにあるファイルをタップしてシャーディングをサポートしていることを示す場合、シャーディングされたテストは失敗します。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
JDK テストの 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> 複数の使用が累積される
JDK に渡す追加のオプション。
--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> デフォルト: 説明を参照
は、シャーディングなしでデクストリングに使用するバイナリを指定します。
--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"
プロトコンパイラのラベル。
タグ: 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> デフォルト: "@bazel_tools//tools/j2objc:j2objc_proto_toolchain"
j2objc proto のコンパイル方法を記述する 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> デフォルト: "@bazel_tools//tools/proto:javalite_toolchain"
JavaLite proto のコンパイル方法を記述する 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」
テスト シャーディング戦略を指定します。BUILD 属性に「shard_count」が存在する場合にのみシャーディングを使用する場合は「explicit」を指定します。「disabled」: テスト シャーディングをまったく使用しない。「forced=k」: 「shard_count」BUILD 属性に関係なく、テスト用に「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 の場合、これは無効です。それ以外の場合、このフラグが 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]incompatible_use_plus_in_repo_names デフォルト: "true"
無効。
タグ: loading_and_analysis
他のカテゴリに該当しない 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 は「パッケージの読み込み中:」というメッセージを出力します。

クリーン オプション

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

コマンドの出力を制御するオプション:
--[no]async デフォルト: "false"
true の場合、出力のクリーンアップは非同期です。このコマンドが完了すると、バックグラウンドで削除が続行される場合でも、同じクライアントで新しいコマンドを安全に実行できます。
タグ: host_machine_resource_optimizations
--[no]expunge デフォルト: "false"
true の場合、clean は、bazel によって作成されたすべての一時ファイルとビルド出力ファイルを含む、この bazel インスタンスの作業ツリー全体を削除し、bazel サーバーが実行されている場合は停止します。
タグ: host_machine_resource_optimizations
--expunge_async
指定すると、clean は非同期でこの bazel インスタンスの作業ツリー全体を削除します。これには、bazel によって作成されたすべての一時ファイルとビルド出力ファイルが含まれます。また、bazel サーバーが実行されている場合は停止します。このコマンドが完了すると、バックグラウンドで削除が続行される場合でも、同じクライアントで新しいコマンドを安全に実行できます。
展開すると次のようになります。
  --expunge
  --async

タグ: host_machine_resource_optimizations
このオプションは、Starlark 言語のセマンティクスまたは BUILD ファイル、.bzl ファイル、WORKSPACE ファイルからアクセスできるビルド API に影響します。
--[no]incompatible_use_plus_in_repo_names デフォルト: "true"
無効。
タグ: loading_and_analysis

構成オプション

保証オプション

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

このオプションは、Starlark 言語のセマンティクス、または BUILD ファイル、.bzl ファイル、WORKSPACE ファイルからアクセスできるビルド API に影響します。
--[no]incompatible_use_plus_in_repo_names デフォルト: "true"
無効。
タグ: loading_and_analysis

Cquery のオプション

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

このオプションは、Starlark 言語のセマンティクス、または BUILD ファイル、.bzl ファイル、WORKSPACE ファイルからアクセスできるビルド API に影響します。
--[no]incompatible_use_plus_in_repo_names デフォルト: "true"
無効。
タグ: 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"
有効にすると、すべてのクエリ コマンドで、Starlark <code>str</code> 関数を <code>Label</code> インスタンスに適用した場合のようにラベルが出力されます。これは、ルールによって出力されたさまざまなクエリ コマンドやラベルの出力を照合する必要があるツールに役立ちます。有効にしていない場合、出力フォーマッタは、出力を読みやすくするために、代わりに(メイン リポジトリを基準とした)わかりやすいリポジトリ名を出力できます。
タグ: terminal_output
--[no]experimental_explicit_aspects デフォルト: "false"
aquery、cquery: アスペクトによって生成されたアクションを出力に含めるかどうか。query: NOP(アスペクトは常に続く)。
タグ: 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 の場合、このオプションは解決された toolchain のフィルタリングを制御します。
タグ: build_file_semantics
--[no]include_aspects デフォルト: "true"
aquery、cquery: アスペクトによって生成されたアクションを出力に含めるかどうか。query: NOP(アスペクトは常に続く)。
タグ: 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
--[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_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"
クエリ: 無効にすると、「exec configuration」の依存関係が、クエリが実行される依存関係グラフに含まれなくなります。「exec configuration」依存関係エッジ(「proto_library」ルールからプロトコル コンパイラへのエッジなど)は、通常、同じ「target」プログラムの一部ではなく、ビルド中に実行されるツールを参照します。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
ビルド実行を制御するオプション:
ヘルパー プロセスに委任するのではなく、ファイル システムを直接呼び出してシンボリック リンク ツリーを作成するかどうか。
タグ: loading_and_analysisexecutionexperimental
--[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 デフォルト: "false"
有効にすると、複数の --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 の場合、Bazel はテスト実行グループではなく、ターゲット プラットフォームを使用してテストを実行します。
タグ: 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 ターゲットが使用するプラットフォームを設定します。複数のプラットフォームを指定した場合、バイナリは指定されたターゲット プラットフォームごとにネイティブ バイナリを含む FAT APK になります。
タグ: changes_inputsloading_and_analysisloses_incremental_state
--apple_crosstool_top=<a build target label> デフォルト: "@bazel_tools//tools/cpp:toolchain"
Apple ルールと Objc ルールとその依存関係で使用されるクロスツール パッケージのラベル。
タグ: loses_incremental_statechanges_inputs
--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> デフォルト: "@bazel_tools//tools/test:coverage_report_generator"
カバレッジ レポートの生成に使用されるバイナリの場所。現在、これは単一のファイル(バイナリ)を含むファイルグループである必要があります。デフォルトは「//tools/test:coverage_report_generator」です。
タグ: changes_inputsaffects_outputsloading_and_analysis
--coverage_support=<a build target label> デフォルト: "@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
--experimental_add_exec_constraints_to_targets=<a '<RegexFilter>=<label1>[,<label2>,...]' assignment> 複数の使用が累積される
カンマ区切りの正規表現のリスト。各正規表現の前に -(否定的な式)を追加することもできます。カンマ区切りの制約値ターゲットのリストに = が割り当てられます。ターゲットが否定的な式と一致せず、少なくとも 1 つの正の式と一致する場合、制約値が実行制約として宣言されているかのように、ツールチェーンの解決が実行されます。例: //demo,-test=@platforms//cpus:x86_64 は、名前に「test」が含まれていないすべての //demo のターゲットに「x86_64」を追加します。
タグ: loading_and_analysis
--[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> 複数の使用が累積される
ツールチェーンの解決時に考慮されるツールチェーン ルール。ツールチェーンは、ターゲットの完全一致またはターゲット パターンで指定できます。これらの toolchain は、register_toolchains() によって WORKSPACE ファイルで宣言された toolchain よりも先に検討されます。
タグ: affects_outputschanges_inputsloading_and_analysis
--grte_top=<a label> デフォルト: 説明を参照
チェクインされた libc ライブラリのラベル。デフォルト値はクロスツール ツールチェーンによって選択されます。この値をオーバーライドする必要はほとんどありません。
タグ: 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> デフォルト: "@bazel_tools//tools:host_platform"
ホストシステムを記述するプラットフォーム ルールのラベル。
タグ: affects_outputschanges_inputsloading_and_analysis
--[no]incompatible_bazel_test_exec_run_under デフォルト: "false"
有効にすると、「bazel test --run_under=//:runner」は、exec 構成で「//:runner」をビルドします。無効にすると、ターゲット構成で「//:runner」がビルドされます。Bazel は実行マシンでテストを実行するため、前者のほうが正確です。これは「bazel run」には影響しません。bazel run は、ターゲット構成で常に「`--run_under=//foo」をビルドします。
タグ: affects_outputsincompatible_change
--[no]incompatible_dont_enable_host_nonhost_crosstool_features デフォルト: "true"
true の場合、Bazel は c++ ツールチェーンで「ホスト」と「非ホスト」の機能を有効にしません(詳細については、https://github.com/bazelbuild/bazel/issues/7407 をご覧ください)。
タグ: loading_and_analysisincompatible_change
--[no]incompatible_enable_apple_toolchain_resolution デフォルト: "false"
ツールチェーン解決を使用して、Apple ルールの Apple SDK(Starlark とネイティブ)を選択。
タグ: 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 のバージョンを指定します。指定しない場合、デフォルトの iOS SDK バージョン(xcode_version)が使用されます。
タグ: 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> デフォルト: 説明を参照
compiling がターゲットとする OS の最小バージョン。
タグ: loading_and_analysisaffects_outputs
--platform_mappings=<a main workspace-relative path> デフォルト: ""
プラットフォームが設定されていない場合に使用するプラットフォーム、またはプラットフォームがすでに存在する場合に設定するフラグを記述するマッピング ファイルの場所。メインのワークスペースのルートからの相対パスにする必要があります。デフォルトは「platform_mappings」(ワークスペースのルートの直下にあるファイル)です。
タグ: affects_outputschanges_inputsloading_and_analysisimmutable
--platforms=<a build target label> デフォルト: ""
現在のコマンドのターゲット プラットフォームを記述するプラットフォーム ルールのラベル。
タグ: affects_outputschanges_inputsloading_and_analysis
--python_path=<a string> デフォルト: 説明を参照
ターゲット プラットフォームで Python ターゲットを実行するために呼び出される Python インタープリタの絶対パス。非推奨。--incompatible_use_python_toolchains によって無効になっています。
タグ: loading_and_analysisaffects_outputs
--python_top=<a build target label> デフォルト: 説明を参照
ターゲット プラットフォームで Python ターゲットを実行するために呼び出される Python インタープリタを表す py_runtime のラベル。非推奨。--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
--watchos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照
watchOS アプリケーションのビルドに使用する watchOS SDK のバージョンを指定します。指定しない場合、デフォルトの watchOS SDK バージョン(xcode_version)が使用されます。
タグ: loses_incremental_state
--xcode_version=<a string> デフォルト: 説明を参照
指定すると、関連するビルド アクションに指定されたバージョンの Xcode が使用されます。指定しない場合、エグゼキュータのデフォルト バージョンの Xcode が使用されます。
タグ: loses_incremental_state
--xcode_version_config=<a build target label> デフォルト: "@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 の場合、すべてのターゲットに対して runfiles シンボリック リンク フォレストをビルドします。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> を runfile に追加します。これは、Starlark ルールの推奨される動作(https://bazel.build/extending/rules#runfiles_features_to_avoid)と一致します。
タグ: affects_outputsincompatible_change
--[no]legacy_external_runfiles デフォルト: "false"
true の場合、外部リポジトリの runfiles シンボリック リンク フォレストを .runfiles/wsname/external/repo の下に(.runfiles/repo の他に)ビルドします。
タグ: affects_outputs
--[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> 複数の使用が累積される
ターゲット構成を持つアクションで使用できる環境変数のセットを指定します。変数は名前で指定できます。この場合、値は呼び出し環境から取得されます。また、name=value ペアで指定することもできます。この場合、値は呼び出し環境から独立して設定されます。このオプションは複数回使用できます。同じ変数に指定されたオプションは最新のものが優先され、異なる変数に指定されたオプションは累積されます。
タグ: 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 databinding v2 を使用。このフラグは no-op です。
タグ: affects_outputsloading_and_analysisloses_incremental_stateexperimental
--android_dynamic_mode=<off, default or fully> デフォルト: 「off」
cc_binary が共有ライブラリを明示的に作成しない場合、Android ルールの C++ 依存関係が動的にリンクされるかどうかを決定します。「default」は、Bazel が動的にリンクするかどうかを選択することを意味します。「完全に」は、すべてのライブラリが動的にリンクされることを意味します。「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> デフォルト: ""
ターゲット CPU。
タグ: 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> デフォルト: 説明を参照
Optimzation に使用するコンテキスト依存プロファイルを表す 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 が動的にリンクするかどうかを選択することを意味します。「完全に」は、すべてのライブラリが動的にリンクされることを意味します。「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"
runfiles シンボリック リンク ツリーを有効にします。デフォルトでは、Windows ではオフ、他のプラットフォームではオンです。
タグ: affects_outputs
--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 Databinding 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, content or strip> デフォルト: 「off」
出力ツリー ルールの出力書き込み場所で使用するモデル(特にマルチプラットフォーム / マルチ構成ビルドの場合)。これは高度な試験運用版です。詳しくは、https://github.com/bazelbuild/bazel/issues/6526 をご覧ください。Starlark アクションでは、キー「supports-path-mapping」を「execution_requirements」ディクショナリに追加することで、パス マッピングを有効にできます。
タグ: loses_incremental_statebazel_internal_configurationaffects_outputsexecution
--experimental_override_name_platform_in_output_dir=<a 'label=value' assignment> 複数の使用が累積される
各エントリは label=value の形式にする必要があります。ここで、label はプラットフォームを指し、value は出力パスで使用する短い名前です。--experimental_platform_in_output_dir が true の場合にのみ使用されます。命名の優先度が最も高い。
タグ: affects_outputsexperimental
--[no]experimental_platform_in_output_dir デフォルト: "false"
true の場合、出力ディレクトリ名には CPU ではなく、ターゲット プラットフォームの短い名前が使用されます。正確なスキームは試験運用版であり、変更される可能性があります。まず、--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 ファイルツリー、自動プロファイルを含む afdo ファイル、または LLVM プロファイル ファイルを含む zip ファイルの名前を指定します。このフラグは、ラベルとして指定されたファイル(例: `//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> 複数の使用が累積される
実行構成を持つアクションで使用できる環境変数のセットを指定します。変数は名前で指定できます。この場合、値は呼び出し環境から取得されます。また、name=value ペアで指定することもできます。この場合、値は呼び出し環境から独立して設定されます。このオプションは複数回使用できます。同じ変数に指定されたオプションは最新のものが優先され、異なる変数に指定されたオプションは累積されます。
タグ: action_command_lines
--host_compilation_mode=<fastbuild, dbg or opt> デフォルト: "opt"
ビルド中に使用されるツールがビルドされるモードを指定します。値: 'fastbuild'、'dbg'、'opt'。
タグ: affects_outputsaction_command_lines
--host_conlyopt=<a string> 複数の使用が累積される
exec 構成で C ソースファイル(C++ ソースファイルは除く)をコンパイルするときに C コンパイラに渡す追加オプション。
タグ: action_command_linesaffects_outputs
--host_copt=<a string> 複数の使用が累積される
exec 構成でビルドされたツールの C コンパイラに渡す追加オプション。
タグ: action_command_linesaffects_outputs
--host_cpu=<a string> デフォルト: ""
ホスト CPU。
タグ: changes_inputsaffects_outputs
--host_cxxopt=<a string> 複数の使用が累積される
exec 構成でビルドされたツールの C++ コンパイラに渡す追加オプション。
タグ: action_command_linesaffects_outputs
--host_features=<a string> 複数の使用が累積される
指定された機能は、exec 構成でビルドされたターゲットに対してデフォルトで有効または無効になります。-<feature> を指定すると、その機能は無効になります。ネガティブな特徴は常にポジティブな特徴をオーバーライドします。
タグ: changes_inputsaffects_outputs
--host_force_python=<PY2 or PY3> デフォルト: 説明を参照
exec 構成の Python バージョンをオーバーライドします。「PY2」または「PY3」にできます。
タグ: loading_and_analysisaffects_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> 複数の使用が累積される
exec 構成で特定のファイルをコンパイルするときに、C/C++ コンパイラに選択的に渡す追加オプション。このオプションは複数回渡すことができます。構文: regex_filter@option_1,option_2,...,option_n。ここで、regex_filter は、含める正規表現パターンと除外する正規表現パターンのリストを表します(--instrumentation_filter も参照)。option_1 ~ option_n は任意のコマンドライン オプションを表します。オプションにカンマが含まれている場合は、バックスラッシュで引用符で囲う必要があります。オプションには @ を含めることができます。文字列の分割には最初の @ のみが使用されます。例: --host_per_file_copt=//foo/.*\.cc,-//foo/bar\.cc@-O0 は、bar.cc を除く //foo/ 内のすべての 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]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 も参照)。option_1 ~ option_n は任意のコマンドライン オプションを表します。オプションにカンマが含まれている場合は、バックスラッシュで引用符で囲う必要があります。オプションには @ を含めることができます。文字列の分割には最初の @ のみが使用されます。例: --per_file_copt=//foo/.*\.cc,-//foo/bar\.cc@-O0 は、bar.cc を除く //foo/ 内のすべての 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 は、含める正規表現パターンと除外する正規表現パターンのリストを表します。option_1 ~ option_n は任意のコマンドライン オプションを表します。オプションにカンマが含まれている場合は、バックスラッシュで引用符で囲う必要があります。オプションには @ を含めることができます。文字列の分割には最初の @ のみが使用されます。例: --per_file_ltobackendopt=//foo/.*\.o,-//foo/bar\.o@-O0 は、bar.o を除く //foo/ 内のすべての 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」バイナリを生成するときにストリップに渡す追加のオプション。
タグ: 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_licenses デフォルト: "false"
依存パッケージによって課せられるライセンス制約が、ビルドされるターゲットの配信モードと競合していないことを確認します。デフォルトでは、ライセンスはチェックされません。
タグ: build_file_semantics
--[no]check_visibility デフォルト: "true"
無効にすると、ターゲット依存関係の可視性エラーは警告に降格されます。
タグ: build_file_semantics
--[no]desugar_for_android デフォルト: "true"
DEX に変換する前に 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
--experimental_import_deps_checking=<a string> デフォルト: 説明を参照
NOP。下位互換性のためだけに保持。
タグ: loading_and_analysis
--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_check_visibility_for_toolchains デフォルト: "false"
有効にすると、可視性チェックは toolchain 実装にも適用されます。
タグ: 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]incompatible_python_disable_py2 デフォルト: "true"
true の場合、Python 2 の設定を使用するとエラーが発生します。これには、python_version=PY2、srcs_version=PY2、srcs_version=PY2ONLY が含まれます。詳細については、https://github.com/bazelbuild/bazel/issues/15684 をご覧ください。
タグ: loading_and_analysisincompatible_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 の場合、システムの include パス(-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 のマニュアル ページ(SIGNING IDENTITIES)に従い、証明書のキートチェーン ID 設定または証明書の共通名の(サブ文字列)にできます。
タグ: action_command_lines
このオプションは、Starlark 言語のセマンティクスまたは BUILD ファイル、.bzl ファイル、WORKSPACE ファイルからアクセスできるビルド API に影響します。
--[no]incompatible_disallow_legacy_py_provider デフォルト: "true"
無効。まもなく削除されます。
タグ: loading_and_analysisincompatible_change
--[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"
dex2oat を並列で使用して、android_test の速度を上げることができます。
タグ: 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> 複数の使用が累積される
テストランナー環境に挿入する追加の環境変数を指定します。変数は名前で指定できます。この場合、値は Bazel クライアント環境から読み取られます。また、name=value ペアで指定することもできます。このオプションは複数回使用して、複数の変数を指定できます。「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_starlark_cc_import デフォルト: "false"
有効にすると、Starlark バージョンの cc_import を使用できます。
タグ: loading_and_analysisexperimental
--[no]experimental_unsupported_and_brittle_include_scanning デフォルト: "false"
入力ファイルを解析して #include 行を解析し、入力を C/C++ コンパイルに絞り込むかどうか。これにより、コンパイル入力ツリーのサイズが小さくなり、パフォーマンスと増分性が向上します。ただし、インクルード スキャナは C プリプロセッサのセマンティクスを完全に実装していないため、ビルドが破損することもあります。特に、動的 #include ディレクティブを認識せず、プリプロセッサの条件付きロジックを無視します。自己責任で使用してください。この報告に関連する問題はすべてクローズされます。
タグ: loading_and_analysisexecutionchanges_inputsexperimental
--[no]incremental_dexing デフォルト: "true"
Jar ファイルごとに個別にデックス処理の大部分を行います。
タグ: 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
他のカテゴリに該当しない Bazel コマンドへの汎用入力を指定する、または変更するオプション。
--flag_alias=<a 'name=value' flag alias> 複数の使用が累積される
Starlark フラグの省略形の名前を設定します。引数として、「<key>=<value>」形式の単一の Key-Value ペアを受け取ります。
タグ: changes_inputs
--[no]incompatible_default_to_explicit_init_py デフォルト: "false"
このフラグを使用すると、デフォルトの動作が変更され、Python ターゲットの実行ファイルに __init__.py ファイルが自動的に作成されなくなります。具体的には、py_binary ターゲットまたは py_test ターゲットで legacy_create_init が「auto」(デフォルト)に設定されている場合、このフラグが設定されている場合にのみ false として扱われます。https://github.com/bazelbuild/bazel/issues/10076 をご覧ください。
タグ: affects_outputsincompatible_change
--[no]incompatible_py2_outputs_are_suffixed デフォルト: "true"
true に設定すると、Python 2 構成でビルドされたターゲットは、接尾辞「-py2」を含む出力ルートの下に表示され、Python 3 用にビルドされたターゲットは、Python 関連の接尾辞のないルートに表示されます。つまり、`bazel-bin` の便利なシンボリック リンクは、Python 2 ではなく Python 3 ターゲットを指すようになります。このオプションを有効にする場合は、`--incompatible_py3_is_default` も有効にすることをおすすめします。
タグ: affects_outputsincompatible_change
--[no]incompatible_py3_is_default デフォルト: "true"
true の場合、python_version(または default_python_version)属性が設定されていない py_binary ターゲットと py_test ターゲットは、デフォルトで PY2 ではなく PY3 になります。このフラグを設定する場合は、`--incompatible_py2_outputs_are_suffixed` も設定することをおすすめします。
タグ: loading_and_analysisaffects_outputsincompatible_change
--[no]incompatible_use_python_toolchains デフォルト: "true"
true に設定すると、実行可能なネイティブ Python ルールは、--python_top などの以前のフラグで指定されたランタイムではなく、Python ツールチェーンで指定された Python ランタイムを使用します。
タグ: loading_and_analysisincompatible_change
--python_version=<PY2 or PY3> デフォルト: 説明を参照
Python のメジャー バージョン モード(PY2 または PY3)。これは、py_binary ターゲットと py_test ターゲットによってオーバーライドされるため(バージョンが明示的に指定されていない場合でも)、通常、このフラグを指定する理由はあまりありません。
タグ: loading_and_analysisaffects_outputs
その他のオプション(他のカテゴリに該当しない):
--[no]cache_test_results [-t] デフォルト: "auto"
「auto」に設定した場合、Bazel は、(1)Bazel がテストまたはその依存関係の変更を検出した場合、(2)テストが外部としてマークされている場合、(3)--runs_per_test で複数のテスト実行がリクエストされた場合、または(4)テストが以前に失敗した場合にのみ、テストを再実行します。[yes] に設定すると、Bazel は外部としてマークされたテストを除くすべてのテスト結果をキャッシュに保存します。「no」に設定すると、Bazel はテスト結果をキャッシュに保存しません。
--[no]experimental_cancel_concurrent_tests デフォルト: "false"
true に設定すると、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
--[no]experimental_j2objc_header_map デフォルト: "true"
J2ObjC 変換と並行して J2ObjC ヘッダーマップを生成するかどうか。
タグ: experimental
--[no]experimental_j2objc_shorter_header_path デフォルト: "false"
短いヘッダーパスで生成するかどうか(「_j2objc」ではなく「_ios」を使用)。
タグ: affects_outputsexperimental
--experimental_java_classpath=<off, javabuilder or bazel> デフォルト: "javabuilder"
Java コンパイルのクラスパスの削減を有効にします。
--[no]experimental_limit_android_lint_to_android_constrained_java デフォルト: "false"
NOP。下位互換性のためのみ保持。
タグ: affects_outputsexperimental
--[no]experimental_run_android_lint_on_java_rules デフォルト: "false"
java_* ソースを検証するかどうか。
タグ: affects_outputsexperimental
--[no]explicit_java_test_deps デフォルト: "false"
TestRunner の依存関係から誤って取得するのではなく、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 のパスにあるファイルをタップしてシャーディングをサポートしていることを示す場合、シャーディングされたテストは失敗します。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
JDK テストの 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> 複数の使用が累積される
JDK に渡す追加のオプション。
--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> デフォルト: 説明を参照
は、シャーディングなしでデクストリングに使用するバイナリを指定します。
--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"
プロトコンパイラのラベル。
タグ: 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> デフォルト: "@bazel_tools//tools/j2objc:j2objc_proto_toolchain"
j2objc proto のコンパイル方法を記述する 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> デフォルト: "@bazel_tools//tools/proto:javalite_toolchain"
JavaLite proto のコンパイル方法を記述する 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」
テスト シャーディング戦略を指定します。BUILD 属性に「shard_count」が存在する場合にのみシャーディングを使用する場合は「explicit」を指定します。「disabled」: テスト シャーディングをまったく使用しない。「forced=k」: 「shard_count」BUILD 属性に関係なく、テスト用に「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, working_set or working_set_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
このオプションは、Starlark 言語のセマンティクスまたは BUILD ファイル、.bzl ファイル、WORKSPACE ファイルからアクセスできるビルド API に影響します。
--[no]incompatible_use_plus_in_repo_names デフォルト: "true"
無効。
タグ: loading_and_analysis

取得オプション

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 の場合、これは無効です。それ以外の場合、このフラグが 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]incompatible_use_plus_in_repo_names デフォルト: "true"
無効。
タグ: loading_and_analysis
Bzlmod の出力とセマンティクスに関連するオプション:
--[no]configure デフォルト: "false"
システム構成の目的で、[configure] とマークされたリポジトリのみを取得します。--enable_bzlmod がオンになっている場合にのみ機能します。
タグ: changes_inputs
--[no]force デフォルト: "false"
既存のリポジトリがある場合は無視し、リポジトリを強制的に再度フェッチします。--enable_bzlmod がオンになっている場合にのみ機能します。
タグ: changes_inputs
--repo=<a string> 複数の使用が累積される
指定されたリポジトリのみを取得します。これは {@apparent_repo_name} または {@@canonical_repo_name} のいずれかです。--enable_bzlmod がオンになっている場合にのみ機能します。
タグ: changes_inputs
ロギングの詳細度、形式、場所に影響するオプション:
--experimental_repository_resolved_file=<a string> デフォルト: ""
空でない場合、実行されたすべての Starlark リポジトリ ルールの解決済み情報を含む Starlark 値を書き込みます。
タグ: affects_outputs
その他のオプション(他のカテゴリに該当しない):
--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 は「パッケージの読み込み中:」というメッセージを出力します。
ビルド実行を制御するオプション:
ヘルパー プロセスに委任するのではなく、ファイル システムを直接呼び出してシンボリック リンク ツリーを作成するかどうか。
タグ: loading_and_analysisexecutionexperimental
--[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 デフォルト: "false"
有効にすると、複数の --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 の場合、Bazel はテスト実行グループではなく、ターゲット プラットフォームを使用してテストを実行します。
タグ: 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 ターゲットが使用するプラットフォームを設定します。複数のプラットフォームを指定した場合、バイナリは指定されたターゲット プラットフォームごとにネイティブ バイナリを含む FAT APK になります。
タグ: changes_inputsloading_and_analysisloses_incremental_state
--apple_crosstool_top=<a build target label> デフォルト: "@bazel_tools//tools/cpp:toolchain"
Apple ルールと Objc ルールとその依存関係で使用されるクロスツール パッケージのラベル。
タグ: loses_incremental_statechanges_inputs
--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> デフォルト: "@bazel_tools//tools/test:coverage_report_generator"
カバレッジ レポートの生成に使用されるバイナリの場所。現在、これは単一のファイル(バイナリ)を含むファイルグループである必要があります。デフォルトは「//tools/test:coverage_report_generator」です。
タグ: changes_inputsaffects_outputsloading_and_analysis
--coverage_support=<a build target label> デフォルト: "@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
--experimental_add_exec_constraints_to_targets=<a '<RegexFilter>=<label1>[,<label2>,...]' assignment> 複数の使用が累積される
カンマ区切りの正規表現のリスト。各正規表現の前に -(否定的な式)を追加することもできます。カンマ区切りの制約値ターゲットのリストに = が割り当てられます。ターゲットが否定的な式と一致せず、少なくとも 1 つの正の式と一致する場合、制約値が実行制約として宣言されているかのように、ツールチェーンの解決が実行されます。例: //demo,-test=@platforms//cpus:x86_64 は、名前に「test」が含まれていないすべての //demo のターゲットに「x86_64」を追加します。
タグ: loading_and_analysis
--[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> 複数の使用が累積される
ツールチェーンの解決時に考慮されるツールチェーン ルール。ツールチェーンは、ターゲットの完全一致またはターゲット パターンで指定できます。これらの toolchain は、register_toolchains() によって WORKSPACE ファイルで宣言された toolchain よりも先に検討されます。
タグ: affects_outputschanges_inputsloading_and_analysis
--grte_top=<a label> デフォルト: 説明を参照
チェクインされた libc ライブラリのラベル。デフォルト値はクロスツール ツールチェーンによって選択されます。この値をオーバーライドする必要はほとんどありません。
タグ: 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> デフォルト: "@bazel_tools//tools:host_platform"
ホストシステムを記述するプラットフォーム ルールのラベル。
タグ: affects_outputschanges_inputsloading_and_analysis
--[no]incompatible_bazel_test_exec_run_under デフォルト: "false"
有効にすると、「bazel test --run_under=//:runner」は、exec 構成で「//:runner」をビルドします。無効にすると、ターゲット構成で「//:runner」がビルドされます。Bazel は実行マシンでテストを実行するため、前者のほうが正確です。これは「bazel run」には影響しません。bazel run は、ターゲット構成で常に「`--run_under=//foo」をビルドします。
タグ: affects_outputsincompatible_change
--[no]incompatible_dont_enable_host_nonhost_crosstool_features デフォルト: "true"
true の場合、Bazel は c++ ツールチェーンで「ホスト」と「非ホスト」の機能を有効にしません(詳細については、https://github.com/bazelbuild/bazel/issues/7407 をご覧ください)。
タグ: loading_and_analysisincompatible_change
--[no]incompatible_enable_apple_toolchain_resolution デフォルト: "false"
ツールチェーン解決を使用して、Apple ルールの Apple SDK(Starlark とネイティブ)を選択。
タグ: 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 のバージョンを指定します。指定しない場合、デフォルトの iOS SDK バージョン(xcode_version)が使用されます。
タグ: 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> デフォルト: 説明を参照
compiling がターゲットとする OS の最小バージョン。
タグ: loading_and_analysisaffects_outputs
--platform_mappings=<a main workspace-relative path> デフォルト: ""
プラットフォームが設定されていない場合に使用するプラットフォーム、またはプラットフォームがすでに存在する場合に設定するフラグを記述するマッピング ファイルの場所。メインのワークスペースのルートからの相対パスにする必要があります。デフォルトは「platform_mappings」(ワークスペースのルートの直下にあるファイル)です。
タグ: affects_outputschanges_inputsloading_and_analysisimmutable
--platforms=<a build target label> デフォルト: ""
現在のコマンドのターゲット プラットフォームを記述するプラットフォーム ルールのラベル。
タグ: affects_outputschanges_inputsloading_and_analysis
--python_path=<a string> デフォルト: 説明を参照
ターゲット プラットフォームで Python ターゲットを実行するために呼び出される Python インタープリタの絶対パス。非推奨。--incompatible_use_python_toolchains によって無効になっています。
タグ: loading_and_analysisaffects_outputs
--python_top=<a build target label> デフォルト: 説明を参照
ターゲット プラットフォームで Python ターゲットを実行するために呼び出される Python インタープリタを表す py_runtime のラベル。非推奨。--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
--watchos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照
watchOS アプリケーションのビルドに使用する watchOS SDK のバージョンを指定します。指定しない場合、デフォルトの watchOS SDK バージョン(xcode_version)が使用されます。
タグ: loses_incremental_state
--xcode_version=<a string> デフォルト: 説明を参照
指定すると、関連するビルド アクションに指定されたバージョンの Xcode が使用されます。指定しない場合、エグゼキュータのデフォルト バージョンの Xcode が使用されます。
タグ: loses_incremental_state
--xcode_version_config=<a build target label> デフォルト: "@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 の場合、すべてのターゲットに対して runfiles シンボリック リンク フォレストをビルドします。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> を runfile に追加します。これは、Starlark ルールの推奨される動作(https://bazel.build/extending/rules#runfiles_features_to_avoid)と一致します。
タグ: affects_outputsincompatible_change
--[no]legacy_external_runfiles デフォルト: "false"
true の場合、外部リポジトリの runfiles シンボリック リンク フォレストを .runfiles/wsname/external/repo の下に(.runfiles/repo の他に)ビルドします。
タグ: affects_outputs
--[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> 複数の使用が累積される
ターゲット構成を持つアクションで使用できる環境変数のセットを指定します。変数は名前で指定できます。この場合、値は呼び出し環境から取得されます。また、name=value ペアで指定することもできます。この場合、値は呼び出し環境から独立して設定されます。このオプションは複数回使用できます。同じ変数に指定されたオプションは最新のものが優先され、異なる変数に指定されたオプションは累積されます。
タグ: 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 databinding v2 を使用。このフラグは no-op です。
タグ: affects_outputsloading_and_analysisloses_incremental_stateexperimental
--android_dynamic_mode=<off, default or fully> デフォルト: 「off」
cc_binary が共有ライブラリを明示的に作成しない場合、Android ルールの C++ 依存関係が動的にリンクされるかどうかを決定します。「default」は、Bazel が動的にリンクするかどうかを選択することを意味します。「完全に」は、すべてのライブラリが動的にリンクされることを意味します。「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> デフォルト: ""
ターゲット CPU。
タグ: 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> デフォルト: 説明を参照
Optimzation に使用するコンテキスト依存プロファイルを表す 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 が動的にリンクするかどうかを選択することを意味します。「完全に」は、すべてのライブラリが動的にリンクされることを意味します。「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"
runfiles シンボリック リンク ツリーを有効にします。デフォルトでは、Windows ではオフ、他のプラットフォームではオンです。
タグ: affects_outputs
--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 Databinding 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, content or strip> デフォルト: 「off」
出力ツリー ルールの出力書き込み場所で使用するモデル(特にマルチプラットフォーム / マルチ構成ビルドの場合)。これは高度な試験運用版です。詳しくは、https://github.com/bazelbuild/bazel/issues/6526 をご覧ください。Starlark アクションでは、キー「supports-path-mapping」を「execution_requirements」ディクショナリに追加することで、パス マッピングを有効にできます。
タグ: loses_incremental_statebazel_internal_configurationaffects_outputsexecution
--experimental_override_name_platform_in_output_dir=<a 'label=value' assignment> 複数の使用が累積される
各エントリは label=value の形式にする必要があります。ここで、label はプラットフォームを指し、value は出力パスで使用する短い名前です。--experimental_platform_in_output_dir が true の場合にのみ使用されます。命名の優先度が最も高い。
タグ: affects_outputsexperimental
--[no]experimental_platform_in_output_dir デフォルト: "false"
true の場合、出力ディレクトリ名には CPU ではなく、ターゲット プラットフォームの短い名前が使用されます。正確なスキームは試験運用版であり、変更される可能性があります。まず、--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 ファイルツリー、自動プロファイルを含む afdo ファイル、または LLVM プロファイル ファイルを含む zip ファイルの名前を指定します。このフラグは、ラベルとして指定されたファイル(例: `//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> 複数の使用が累積される
実行構成を持つアクションで使用できる環境変数のセットを指定します。変数は名前で指定できます。この場合、値は呼び出し環境から取得されます。また、name=value ペアで指定することもできます。この場合、値は呼び出し環境から独立して設定されます。このオプションは複数回使用できます。同じ変数に指定されたオプションは最新のものが優先され、異なる変数に指定されたオプションは累積されます。
タグ: action_command_lines
--host_compilation_mode=<fastbuild, dbg or opt> デフォルト: "opt"
ビルド中に使用されるツールがビルドされるモードを指定します。値: 'fastbuild'、'dbg'、'opt'。
タグ: affects_outputsaction_command_lines
--host_conlyopt=<a string> 複数の使用が累積される
exec 構成で C ソースファイル(C++ ソースファイルは除く)をコンパイルするときに C コンパイラに渡す追加オプション。
タグ: action_command_linesaffects_outputs
--host_copt=<a string> 複数の使用が累積される
exec 構成でビルドされたツールの C コンパイラに渡す追加オプション。
タグ: action_command_linesaffects_outputs
--host_cpu=<a string> デフォルト: ""
ホスト CPU。
タグ: changes_inputsaffects_outputs
--host_cxxopt=<a string> 複数の使用が累積される
exec 構成でビルドされたツールの C++ コンパイラに渡す追加オプション。
タグ: action_command_linesaffects_outputs
--host_features=<a string> 複数の使用が累積される
指定された機能は、exec 構成でビルドされたターゲットに対してデフォルトで有効または無効になります。-<feature> を指定すると、その機能は無効になります。ネガティブな特徴は常にポジティブな特徴をオーバーライドします。
タグ: changes_inputsaffects_outputs
--host_force_python=<PY2 or PY3> デフォルト: 説明を参照
exec 構成の Python バージョンをオーバーライドします。「PY2」または「PY3」にできます。
タグ: loading_and_analysisaffects_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> 複数の使用が累積される
exec 構成で特定のファイルをコンパイルするときに、C/C++ コンパイラに選択的に渡す追加オプション。このオプションは複数回渡すことができます。構文: regex_filter@option_1,option_2,...,option_n。ここで、regex_filter は、含める正規表現パターンと除外する正規表現パターンのリストを表します(--instrumentation_filter も参照)。option_1 ~ option_n は任意のコマンドライン オプションを表します。オプションにカンマが含まれている場合は、バックスラッシュで引用符で囲う必要があります。オプションには @ を含めることができます。文字列の分割には最初の @ のみが使用されます。例: --host_per_file_copt=//foo/.*\.cc,-//foo/bar\.cc@-O0 は、bar.cc を除く //foo/ 内のすべての 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]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 も参照)。option_1 ~ option_n は任意のコマンドライン オプションを表します。オプションにカンマが含まれている場合は、バックスラッシュで引用符で囲う必要があります。オプションには @ を含めることができます。文字列の分割には最初の @ のみが使用されます。例: --per_file_copt=//foo/.*\.cc,-//foo/bar\.cc@-O0 は、bar.cc を除く //foo/ 内のすべての 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 は、含める正規表現パターンと除外する正規表現パターンのリストを表します。option_1 ~ option_n は任意のコマンドライン オプションを表します。オプションにカンマが含まれている場合は、バックスラッシュで引用符で囲う必要があります。オプションには @ を含めることができます。文字列の分割には最初の @ のみが使用されます。例: --per_file_ltobackendopt=//foo/.*\.o,-//foo/bar\.o@-O0 は、bar.o を除く //foo/ 内のすべての 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」バイナリを生成するときにストリップに渡す追加のオプション。
タグ: 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_licenses デフォルト: "false"
依存パッケージによって課せられるライセンス制約が、ビルドされるターゲットの配信モードと競合していないことを確認します。デフォルトでは、ライセンスはチェックされません。
タグ: build_file_semantics
--[no]check_visibility デフォルト: "true"
無効にすると、ターゲット依存関係の可視性エラーは警告に降格されます。
タグ: build_file_semantics
--[no]desugar_for_android デフォルト: "true"
DEX に変換する前に 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
--experimental_import_deps_checking=<a string> デフォルト: 説明を参照
NOP。下位互換性のためだけに保持。
タグ: loading_and_analysis
--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_check_visibility_for_toolchains デフォルト: "false"
有効にすると、可視性チェックは toolchain 実装にも適用されます。
タグ: 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]incompatible_python_disable_py2 デフォルト: "true"
true の場合、Python 2 の設定を使用するとエラーが発生します。これには、python_version=PY2、srcs_version=PY2、srcs_version=PY2ONLY が含まれます。詳細については、https://github.com/bazelbuild/bazel/issues/15684 をご覧ください。
タグ: loading_and_analysisincompatible_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 の場合、システムの include パス(-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 のマニュアル ページ(SIGNING IDENTITIES)に従い、証明書のキートチェーン ID 設定または証明書の共通名の(サブ文字列)にできます。
タグ: action_command_lines
このオプションは、Starlark 言語のセマンティクスまたは BUILD ファイル、.bzl ファイル、WORKSPACE ファイルからアクセスできるビルド API に影響します。
--[no]incompatible_disallow_legacy_py_provider デフォルト: "true"
無効。まもなく削除されます。
タグ: loading_and_analysisincompatible_change
--[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"
dex2oat を並列で使用して、android_test の速度を上げることができます。
タグ: 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> 複数の使用が累積される
テストランナー環境に挿入する追加の環境変数を指定します。変数は名前で指定できます。この場合、値は Bazel クライアント環境から読み取られます。また、name=value ペアで指定することもできます。このオプションは複数回使用して、複数の変数を指定できます。「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_starlark_cc_import デフォルト: "false"
有効にすると、Starlark バージョンの cc_import を使用できます。
タグ: loading_and_analysisexperimental
--[no]experimental_unsupported_and_brittle_include_scanning デフォルト: "false"
入力ファイルを解析して #include 行を解析し、入力を C/C++ コンパイルに絞り込むかどうか。これにより、コンパイル入力ツリーのサイズが小さくなり、パフォーマンスと増分性が向上します。ただし、インクルード スキャナは C プリプロセッサのセマンティクスを完全に実装していないため、ビルドが破損することもあります。特に、動的 #include ディレクティブを認識せず、プリプロセッサの条件付きロジックを無視します。自己責任で使用してください。この報告に関連する問題はすべてクローズされます。
タグ: loading_and_analysisexecutionchanges_inputsexperimental
--[no]incremental_dexing デフォルト: "true"
Jar ファイルごとに個別にデックス処理の大部分を行います。
タグ: 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
他のカテゴリに該当しない Bazel コマンドへの汎用入力を指定する、または変更するオプション。
--flag_alias=<a 'name=value' flag alias> 複数の使用が累積される
Starlark フラグの省略形の名前を設定します。引数として、「<key>=<value>」形式の単一の Key-Value ペアを受け取ります。
タグ: changes_inputs
--[no]incompatible_default_to_explicit_init_py デフォルト: "false"
このフラグを使用すると、デフォルトの動作が変更され、Python ターゲットの実行ファイルに __init__.py ファイルが自動的に作成されなくなります。具体的には、py_binary ターゲットまたは py_test ターゲットで legacy_create_init が「auto」(デフォルト)に設定されている場合、このフラグが設定されている場合にのみ false として扱われます。https://github.com/bazelbuild/bazel/issues/10076 をご覧ください。
タグ: affects_outputsincompatible_change
--[no]incompatible_py2_outputs_are_suffixed デフォルト: "true"
true に設定すると、Python 2 構成でビルドされたターゲットは、接尾辞「-py2」を含む出力ルートの下に表示され、Python 3 用にビルドされたターゲットは、Python 関連の接尾辞のないルートに表示されます。つまり、`bazel-bin` の便利なシンボリック リンクは、Python 2 ではなく Python 3 ターゲットを指すようになります。このオプションを有効にする場合は、`--incompatible_py3_is_default` も有効にすることをおすすめします。
タグ: affects_outputsincompatible_change
--[no]incompatible_py3_is_default デフォルト: "true"
true の場合、python_version(または default_python_version)属性が設定されていない py_binary ターゲットと py_test ターゲットは、デフォルトで PY2 ではなく PY3 になります。このフラグを設定する場合は、`--incompatible_py2_outputs_are_suffixed` も設定することをおすすめします。
タグ: loading_and_analysisaffects_outputsincompatible_change
--[no]incompatible_use_python_toolchains デフォルト: "true"
true に設定すると、実行可能なネイティブ Python ルールは、--python_top などの以前のフラグで指定されたランタイムではなく、Python ツールチェーンで指定された Python ランタイムを使用します。
タグ: loading_and_analysisincompatible_change
--python_version=<PY2 or PY3> デフォルト: 説明を参照
Python のメジャー バージョン モード(PY2 または PY3)。これは、py_binary ターゲットと py_test ターゲットによってオーバーライドされるため(バージョンが明示的に指定されていない場合でも)、通常、このフラグを指定する理由はあまりありません。
タグ: loading_and_analysisaffects_outputs
その他のオプション(他のカテゴリに該当しない):
--[no]cache_test_results [-t] デフォルト: "auto"
「auto」に設定した場合、Bazel は、(1)Bazel がテストまたはその依存関係の変更を検出した場合、(2)テストが外部としてマークされている場合、(3)--runs_per_test で複数のテスト実行がリクエストされた場合、または(4)テストが以前に失敗した場合にのみ、テストを再実行します。[yes] に設定すると、Bazel は外部としてマークされたテストを除くすべてのテスト結果をキャッシュに保存します。「no」に設定すると、Bazel はテスト結果をキャッシュに保存しません。
--[no]experimental_cancel_concurrent_tests デフォルト: "false"
true に設定すると、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
--[no]experimental_j2objc_header_map デフォルト: "true"
J2ObjC 変換と並行して J2ObjC ヘッダーマップを生成するかどうか。
タグ: experimental
--[no]experimental_j2objc_shorter_header_path デフォルト: "false"
短いヘッダーパスで生成するかどうか(「_j2objc」ではなく「_ios」を使用)。
タグ: affects_outputsexperimental
--experimental_java_classpath=<off, javabuilder or bazel> デフォルト: "javabuilder"
Java コンパイルのクラスパスの削減を有効にします。
--[no]experimental_limit_android_lint_to_android_constrained_java デフォルト: "false"
NOP。下位互換性のためのみ保持。
タグ: affects_outputsexperimental
--[no]experimental_run_android_lint_on_java_rules デフォルト: "false"
java_* ソースを検証するかどうか。
タグ: affects_outputsexperimental
--[no]explicit_java_test_deps デフォルト: "false"
TestRunner の依存関係から誤って取得するのではなく、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 のパスにあるファイルをタップしてシャーディングをサポートしていることを示す場合、シャーディングされたテストは失敗します。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
JDK テストの 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> 複数の使用が累積される
JDK に渡す追加のオプション。
--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> デフォルト: 説明を参照
は、シャーディングなしでデクストリングに使用するバイナリを指定します。
--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"
プロトコンパイラのラベル。
タグ: 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> デフォルト: "@bazel_tools//tools/j2objc:j2objc_proto_toolchain"
j2objc proto のコンパイル方法を記述する 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> デフォルト: "@bazel_tools//tools/proto:javalite_toolchain"
JavaLite proto のコンパイル方法を記述する 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」
テスト シャーディング戦略を指定します。BUILD 属性に「shard_count」が存在する場合にのみシャーディングを使用する場合は「explicit」を指定します。「disabled」: テスト シャーディングをまったく使用しない。「forced=k」: 「shard_count」BUILD 属性に関係なく、テスト用に「k」個のシャードを適用します。
--tool_java_language_version=<a string> デフォルト: ""
ビルド中に必要なツールの実行に使用される Java 言語のバージョン
--tool_java_runtime_version=<a string> デフォルト: "remotejdk_11"
ビルド中にツールの実行に使用される Java ランタイム バージョン
--[no]use_ijars デフォルト: "true"
このオプションを有効にすると、Java コンパイルでインターフェース JAR が使用されます。これにより、増分コンパイルが高速化されますが、エラー メッセージが異なる場合があります。

ヘルプ オプション

このオプションは、Starlark 言語のセマンティクス、または BUILD ファイル、.bzl ファイル、WORKSPACE ファイルからアクセスできるビルド API に影響します。
--[no]incompatible_use_plus_in_repo_names デフォルト: "true"
無効。
タグ: loading_and_analysis
ロギングの詳細、形式、場所に影響するオプション:
--help_verbosity=<long, medium or short> デフォルト: 「medium」
help コマンドの詳細レベルを選択します。
タグ: terminal_output
--long [-l]
各オプションの名前だけでなく、完全な説明を表示します。
展開すると次のようになります。
  --help_verbosity=long

タグ: terminal_output
--short
オプションの名前のみを表示します。タイプや意味は表示されません。
展開すると次のようになります。
  --help_verbosity=short

タグ: terminal_output

情報オプション

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

このオプションは、Starlark 言語のセマンティクス、または BUILD ファイル、.bzl ファイル、WORKSPACE ファイルからアクセスできるビルド API に影響します。
--[no]incompatible_use_plus_in_repo_names デフォルト: "true"
無効。
タグ: loading_and_analysis
ロギングの詳細、形式、場所に影響するオプション:
--[no]show_make_env デフォルト: "false"
出力に「Make」環境を含めます。
タグ: affects_outputsterminal_output

ライセンス オプション

このオプションは、Starlark 言語のセマンティクス、または BUILD ファイル、.bzl ファイル、WORKSPACE ファイルからアクセスできるビルド API に影響します。
--[no]incompatible_use_plus_in_repo_names デフォルト: "true"
無効。
タグ: loading_and_analysis

モバイル インストール オプション

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

ビルド実行を制御するオプション:
--mode=<classic, classic_internal_test_do_not_use or skylark> デフォルト: "skylark"
非推奨の無効なフラグ。引き続きサポートされているのは skylark モードのみです。
タグ: loading_and_analysisexecutionincompatible_change
アクションの実行に使用するツールチェーンを構成するオプション:
--adb=<a string> デフォルト: ""
「mobile-install」コマンドに使用する adb バイナリ。指定しない場合、--android_sdk_channel コマンドライン オプションで指定された Android SDK の 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
このオプションは、Starlark 言語のセマンティクスまたは BUILD ファイル、.bzl ファイル、WORKSPACE ファイルからアクセスできるビルド API に影響します。
--[no]incompatible_use_plus_in_repo_names デフォルト: "true"
無効。
タグ: loading_and_analysis
ロギングの詳細、形式、場所に影響するオプション:
--incremental_install_verbosity=<a string> デフォルト: ""
増分インストールの詳細度。デバッグ ロギングの場合は 1 に設定します。
タグ: bazel_monitoring

Mod オプション

ビルド実行を制御するオプション:
--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 の場合、これは無効です。それ以外の場合、このフラグが 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]incompatible_use_plus_in_repo_names デフォルト: "true"
無効。
タグ: 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 デフォルト: "false"
отображаемой внутри дерева зависимости циклы, которые обычно игнорируются по умолчанию.
タグ: 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"
また、モジュールが現在のバージョンに解決された理由(変更されている場合)もクエリに表示されます。デフォルトは、explain クエリでのみ true です。
タグ: terminal_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 は「パッケージの読み込み中:」というメッセージを出力します。

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

このオプションは、Starlark 言語のセマンティクス、または BUILD ファイル、.bzl ファイル、WORKSPACE ファイルからアクセスできるビルド API に影響します。
--[no]incompatible_use_plus_in_repo_names デフォルト: "true"
無効。
タグ: loading_and_analysis
その他のカテゴリに分類されないその他のオプション:
--print_action_mnemonics=<a string> 複数の使用が累積される
print_action データをフィルタするメモニカを一覧表示します。空白のままにすると、フィルタリングは行われません。

クエリ オプション

ビルド実行を制御するオプション:
--[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 の場合、これは無効です。それ以外の場合、このフラグが 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]incompatible_use_plus_in_repo_names デフォルト: "true"
無効。
タグ: 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"
有効にすると、すべてのクエリ コマンドで、Starlark <code>str</code> 関数を <code>Label</code> インスタンスに適用した場合のようにラベルが出力されます。これは、ルールによって出力されたさまざまなクエリ コマンドやラベルの出力を照合する必要があるツールに役立ちます。有効にしていない場合、出力フォーマッタは、出力を読みやすくするために、代わりに(メイン リポジトリを基準とした)わかりやすいリポジトリ名を出力できます。
タグ: terminal_output
--[no]experimental_explicit_aspects デフォルト: "false"
aquery、cquery: アスペクトによって生成されたアクションを出力に含めるかどうか。query: NOP(アスペクトは常に続く)。
タグ: terminal_output
--[no]experimental_graphless_query デフォルト: "auto"
true の場合、グラフのコピーを作成しないでクエリ実装を使用します。新しい実装では、--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 の場合、このオプションは解決された toolchain のフィルタリングを制御します。
タグ: build_file_semantics
--[no]include_aspects デフォルト: "true"
aquery、cquery: アスペクトによって生成されたアクションを出力に含めるかどうか。query: NOP(アスペクトは常に続く)。
タグ: 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
--[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_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"
クエリ: 無効にすると、「exec configuration」の依存関係が、クエリが実行される依存関係グラフに含まれなくなります。「exec configuration」依存関係エッジ(「proto_library」ルールからプロトコル コンパイラへのエッジなど)は、通常、同じ「target」プログラムの一部ではなく、ビルド中に実行されるツールを参照します。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
ロギングの詳細度、形式、場所に影響するオプション:
--experimental_repository_resolved_file=<a string> デフォルト: ""
空でない場合、実行されたすべての Starlark リポジトリ ルールの解決済み情報を含む Starlark 値を書き込みます。
タグ: affects_outputs
その他のオプション(他のカテゴリに該当しない):
--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> 複数の使用が累積される
ターゲット構成を持つアクションで使用できる環境変数のセットを指定します。変数は名前で指定できます。この場合、値は呼び出し環境から取得されます。また、name=value ペアで指定することもできます。この場合、値は呼び出し環境から独立して設定されます。このオプションは複数回使用できます。同じ変数に指定されたオプションは最新のものが優先され、異なる変数に指定されたオプションは累積されます。
タグ: affects_outputs
ユーザーが目的の出力を構成できるようにするオプション。出力の存在ではなく、値に影響します。
--script_path=<a path> デフォルト: 説明を参照
設定すると、ターゲットを呼び出すシェル スクリプトが指定されたファイルに書き込まれます。このオプションが設定されている場合、ターゲットは bazel から実行されません。ターゲット「//foo」を呼び出すには、「bazel run --script_path=foo //foo && ./foo」を使用します。これは、「bazel run //foo」とは異なり、bazel ロックが解除され、実行可能ファイルがターミナルの stdin に接続されます。
タグ: affects_outputsexecution
このオプションは、Starlark 言語のセマンティクスまたは BUILD ファイル、.bzl ファイル、WORKSPACE ファイルからアクセスできるビルド API に影響します。
--[no]incompatible_use_plus_in_repo_names デフォルト: "true"
無効。
タグ: loading_and_analysis

シャットダウン オプション

コマンドの出力を制御するオプション:
--iff_heap_size_greater_than=<an integer> のデフォルト: 「0」
ゼロ以外の場合、JVM によって消費される合計メモリ(MB)がこの数値を超えた場合にのみ、シャットダウンでサーバーがシャットダウンされます。
タグ: loses_incremental_stateeagerness_to_exit
このオプションは、Starlark 言語のセマンティクスまたは BUILD ファイル、.bzl ファイル、WORKSPACE ファイルからアクセスできるビルド API に影響します。
--[no]incompatible_use_plus_in_repo_names デフォルト: "true"
無効。
タグ: loading_and_analysis

同期オプション

ビルド実行を制御するオプション:
--[no]configure デフォルト: 「False」
システム構成の目的で「configure」とマークされたリポジトリのみを同期します。
タグ: 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
--only=<a string> 複数の使用が累積される
このオプションが指定されている場合、このオプションで指定されたリポジトリのみが同期されます。引き続き、すべての(または --configure が指定されている場合のすべての configure 関連)コマンドを古いコマンドと見なします。
タグ: changes_inputs
このオプションは、Starlark 言語のセマンティクスまたは BUILD ファイル、.bzl ファイル、WORKSPACE ファイルからアクセスできるビルド API に影響します。
--[no]incompatible_config_setting_private_default_visibility デフォルト: "false"
incompatible_enforce_config_setting_visibility=false の場合、これは無効です。それ以外の場合、このフラグが 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]incompatible_use_plus_in_repo_names デフォルト: "true"
無効。
タグ: loading_and_analysis
ロギングの詳細、形式、場所に影響するオプション:
--experimental_repository_resolved_file=<a string> デフォルト: ""
空でない場合、実行されたすべての Starlark リポジトリ ルールの解決済み情報を含む Starlark 値を書き込みます。
タグ: affects_outputs
その他のオプション(他のカテゴリに該当しない):
--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 のすべてのオプションを継承します。

このオプションは、Starlark 言語のセマンティクス、または BUILD ファイル、.bzl ファイル、WORKSPACE ファイルからアクセスできるビルド API に影響します。
--[no]incompatible_use_plus_in_repo_names デフォルト: "true"
無効。
タグ: loading_and_analysis
ロギングの詳細、形式、場所に影響するオプション:
--[no]print_relative_test_log_paths デフォルト: "false"
true の場合、テストログのパスを印刷するときに、「testlogs」の便利なシンボリック リンクを使用する相対パスを使用します。注 - 別の構成で「build」/「test」/etc を呼び出すと、このシンボリック リンクのターゲットが変更され、以前に印刷されたパスが使用できなくなる可能性があります。
タグ: 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 の場合、これは無効です。それ以外の場合、このフラグが 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]incompatible_use_plus_in_repo_names デフォルト: "true"
無効。
タグ: loading_and_analysis
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 は「パッケージの読み込み中:」というメッセージを出力します。
ビルド実行を制御するオプション:
ヘルパー プロセスに委任するのではなく、ファイル システムを直接呼び出してシンボリック リンク ツリーを作成するかどうか。
タグ: loading_and_analysisexecutionexperimental
--[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 デフォルト: "false"
有効にすると、複数の --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 の場合、Bazel はテスト実行グループではなく、ターゲット プラットフォームを使用してテストを実行します。
タグ: 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 ターゲットが使用するプラットフォームを設定します。複数のプラットフォームを指定した場合、バイナリは指定されたターゲット プラットフォームごとにネイティブ バイナリを含む FAT APK になります。
タグ: changes_inputsloading_and_analysisloses_incremental_state
--apple_crosstool_top=<a build target label> デフォルト: "@bazel_tools//tools/cpp:toolchain"
Apple ルールと Objc ルールとその依存関係で使用されるクロスツール パッケージのラベル。
タグ: loses_incremental_statechanges_inputs
--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> デフォルト: "@bazel_tools//tools/test:coverage_report_generator"
カバレッジ レポートの生成に使用されるバイナリの場所。現在、これは単一のファイル(バイナリ)を含むファイルグループである必要があります。デフォルトは「//tools/test:coverage_report_generator」です。
タグ: changes_inputsaffects_outputsloading_and_analysis
--coverage_support=<a build target label> デフォルト: "@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
--experimental_add_exec_constraints_to_targets=<a '<RegexFilter>=<label1>[,<label2>,...]' assignment> 複数の使用が累積される
カンマ区切りの正規表現のリスト。各正規表現の前に -(否定的な式)を追加することもできます。カンマ区切りの制約値ターゲットのリストに = が割り当てられます。ターゲットが否定的な式と一致せず、少なくとも 1 つの正の式と一致する場合、制約値が実行制約として宣言されているかのように、ツールチェーンの解決が実行されます。例: //demo,-test=@platforms//cpus:x86_64 は、名前に「test」が含まれていないすべての //demo のターゲットに「x86_64」を追加します。
タグ: loading_and_analysis
--[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> 複数の使用が累積される
ツールチェーンの解決時に考慮されるツールチェーン ルール。ツールチェーンは、ターゲットの完全一致またはターゲット パターンで指定できます。これらの toolchain は、register_toolchains() によって WORKSPACE ファイルで宣言された toolchain よりも先に検討されます。
タグ: affects_outputschanges_inputsloading_and_analysis
--grte_top=<a label> デフォルト: 説明を参照
チェクインされた libc ライブラリのラベル。デフォルト値はクロスツール ツールチェーンによって選択されます。この値をオーバーライドする必要はほとんどありません。
タグ: 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> デフォルト: "@bazel_tools//tools:host_platform"
ホストシステムを記述するプラットフォーム ルールのラベル。
タグ: affects_outputschanges_inputsloading_and_analysis
--[no]incompatible_bazel_test_exec_run_under デフォルト: "false"
有効にすると、「bazel test --run_under=//:runner」は、exec 構成で「//:runner」をビルドします。無効にすると、ターゲット構成で「//:runner」がビルドされます。Bazel は実行マシンでテストを実行するため、前者のほうが正確です。これは「bazel run」には影響しません。bazel run は、ターゲット構成で常に「`--run_under=//foo」をビルドします。
タグ: affects_outputsincompatible_change
--[no]incompatible_dont_enable_host_nonhost_crosstool_features デフォルト: "true"
true の場合、Bazel は c++ ツールチェーンで「ホスト」と「非ホスト」の機能を有効にしません(詳細については、https://github.com/bazelbuild/bazel/issues/7407 をご覧ください)。
タグ: loading_and_analysisincompatible_change
--[no]incompatible_enable_apple_toolchain_resolution デフォルト: "false"
ツールチェーン解決を使用して、Apple ルールの Apple SDK(Starlark とネイティブ)を選択。
タグ: 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 のバージョンを指定します。指定しない場合、デフォルトの iOS SDK バージョン(xcode_version)が使用されます。
タグ: 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> デフォルト: 説明を参照
compiling がターゲットとする OS の最小バージョン。
タグ: loading_and_analysisaffects_outputs
--platform_mappings=<a main workspace-relative path> デフォルト: ""
プラットフォームが設定されていない場合に使用するプラットフォーム、またはプラットフォームがすでに存在する場合に設定するフラグを記述するマッピング ファイルの場所。メインのワークスペースのルートからの相対パスにする必要があります。デフォルトは「platform_mappings」(ワークスペースのルートの直下にあるファイル)です。
タグ: affects_outputschanges_inputsloading_and_analysisimmutable
--platforms=<a build target label> デフォルト: ""
現在のコマンドのターゲット プラットフォームを記述するプラットフォーム ルールのラベル。
タグ: affects_outputschanges_inputsloading_and_analysis
--python_path=<a string> デフォルト: 説明を参照
ターゲット プラットフォームで Python ターゲットを実行するために呼び出される Python インタープリタの絶対パス。非推奨。--incompatible_use_python_toolchains によって無効になっています。
タグ: loading_and_analysisaffects_outputs
--python_top=<a build target label> デフォルト: 説明を参照
ターゲット プラットフォームで Python ターゲットを実行するために呼び出される Python インタープリタを表す py_runtime のラベル。非推奨。--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
--watchos_sdk_version=<a dotted version (for example '2.3' or '3.3alpha2.4')> デフォルト: 説明を参照
watchOS アプリケーションのビルドに使用する watchOS SDK のバージョンを指定します。指定しない場合、デフォルトの watchOS SDK バージョン(xcode_version)が使用されます。
タグ: loses_incremental_state
--xcode_version=<a string> デフォルト: 説明を参照
指定すると、関連するビルド アクションに指定されたバージョンの Xcode が使用されます。指定しない場合、エグゼキュータのデフォルト バージョンの Xcode が使用されます。
タグ: loses_incremental_state
--xcode_version_config=<a build target label> デフォルト: "@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 の場合、すべてのターゲットに対して runfiles シンボリック リンク フォレストをビルドします。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> を runfile に追加します。これは、Starlark ルールの推奨される動作(https://bazel.build/extending/rules#runfiles_features_to_avoid)と一致します。
タグ: affects_outputsincompatible_change
--[no]legacy_external_runfiles デフォルト: "false"
true の場合、外部リポジトリの runfiles シンボリック リンク フォレストを .runfiles/wsname/external/repo の下に(.runfiles/repo の他に)ビルドします。
タグ: affects_outputs
--[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> 複数の使用が累積される
ターゲット構成を持つアクションで使用できる環境変数のセットを指定します。変数は名前で指定できます。この場合、値は呼び出し環境から取得されます。また、name=value ペアで指定することもできます。この場合、値は呼び出し環境から独立して設定されます。このオプションは複数回使用できます。同じ変数に指定されたオプションは最新のものが優先され、異なる変数に指定されたオプションは累積されます。
タグ: 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 databinding v2 を使用。このフラグは no-op です。
タグ: affects_outputsloading_and_analysisloses_incremental_stateexperimental
--android_dynamic_mode=<off, default or fully> デフォルト: 「off」
cc_binary が共有ライブラリを明示的に作成しない場合、Android ルールの C++ 依存関係が動的にリンクされるかどうかを決定します。「default」は、Bazel が動的にリンクするかどうかを選択することを意味します。「完全に」は、すべてのライブラリが動的にリンクされることを意味します。「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> デフォルト: ""
ターゲット CPU。
タグ: 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> デフォルト: 説明を参照
Optimzation に使用するコンテキスト依存プロファイルを表す 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 が動的にリンクするかどうかを選択することを意味します。「完全に」は、すべてのライブラリが動的にリンクされることを意味します。「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"
runfiles シンボリック リンク ツリーを有効にします。デフォルトでは、Windows ではオフ、他のプラットフォームではオンです。
タグ: affects_outputs
--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 Databinding 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, content or strip> デフォルト: 「off」
出力ツリー ルールの出力書き込み場所で使用するモデル(特にマルチプラットフォーム / マルチ構成ビルドの場合)。これは高度な試験運用版です。詳しくは、https://github.com/bazelbuild/bazel/issues/6526 をご覧ください。Starlark アクションでは、キー「supports-path-mapping」を「execution_requirements」ディクショナリに追加することで、パス マッピングを有効にできます。
タグ: loses_incremental_statebazel_internal_configurationaffects_outputsexecution
--experimental_override_name_platform_in_output_dir=<a 'label=value' assignment> 複数の使用が累積される
各エントリは label=value の形式にする必要があります。ここで、label はプラットフォームを指し、value は出力パスで使用する短い名前です。--experimental_platform_in_output_dir が true の場合にのみ使用されます。命名の優先度が最も高い。
タグ: affects_outputsexperimental
--[no]experimental_platform_in_output_dir デフォルト: "false"
true の場合、出力ディレクトリ名には CPU ではなく、ターゲット プラットフォームの短い名前が使用されます。正確なスキームは試験運用版であり、変更される可能性があります。まず、--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 ファイルツリー、自動プロファイルを含む afdo ファイル、または LLVM プロファイル ファイルを含む zip ファイルの名前を指定します。このフラグは、ラベルとして指定されたファイル(例: `//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> 複数の使用が累積される
実行構成を持つアクションで使用できる環境変数のセットを指定します。変数は名前で指定できます。この場合、値は呼び出し環境から取得されます。また、name=value ペアで指定することもできます。この場合、値は呼び出し環境から独立して設定されます。このオプションは複数回使用できます。同じ変数に指定されたオプションは最新のものが優先され、異なる変数に指定されたオプションは累積されます。
タグ: action_command_lines
--host_compilation_mode=<fastbuild, dbg or opt> デフォルト: "opt"
ビルド中に使用されるツールがビルドされるモードを指定します。値: 'fastbuild'、'dbg'、'opt'。
タグ: affects_outputsaction_command_lines
--host_conlyopt=<a string> 複数の使用が累積される
exec 構成で C ソースファイル(C++ ソースファイルは除く)をコンパイルするときに C コンパイラに渡す追加オプション。
タグ: action_command_linesaffects_outputs
--host_copt=<a string> 複数の使用が累積される
exec 構成でビルドされたツールの C コンパイラに渡す追加オプション。
タグ: action_command_linesaffects_outputs
--host_cpu=<a string> デフォルト: ""
ホスト CPU。
タグ: changes_inputsaffects_outputs
--host_cxxopt=<a string> 複数の使用が累積される
exec 構成でビルドされたツールの C++ コンパイラに渡す追加オプション。
タグ: action_command_linesaffects_outputs
--host_features=<a string> 複数の使用が累積される
指定された機能は、exec 構成でビルドされたターゲットに対してデフォルトで有効または無効になります。-<feature> を指定すると、その機能は無効になります。ネガティブな特徴は常にポジティブな特徴をオーバーライドします。
タグ: changes_inputsaffects_outputs
--host_force_python=<PY2 or PY3> デフォルト: 説明を参照
exec 構成の Python バージョンをオーバーライドします。「PY2」または「PY3」にできます。
タグ: loading_and_analysisaffects_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> 複数の使用が累積される
exec 構成で特定のファイルをコンパイルするときに、C/C++ コンパイラに選択的に渡す追加オプション。このオプションは複数回渡すことができます。構文: regex_filter@option_1,option_2,...,option_n。ここで、regex_filter は、含める正規表現パターンと除外する正規表現パターンのリストを表します(--instrumentation_filter も参照)。option_1 ~ option_n は任意のコマンドライン オプションを表します。オプションにカンマが含まれている場合は、バックスラッシュで引用符で囲う必要があります。オプションには @ を含めることができます。文字列の分割には最初の @ のみが使用されます。例: --host_per_file_copt=//foo/.*\.cc,-//foo/bar\.cc@-O0 は、bar.cc を除く //foo/ 内のすべての 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]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 も参照)。option_1 ~ option_n は任意のコマンドライン オプションを表します。オプションにカンマが含まれている場合は、バックスラッシュで引用符で囲う必要があります。オプションには @ を含めることができます。文字列の分割には最初の @ のみが使用されます。例: --per_file_copt=//foo/.*\.cc,-//foo/bar\.cc@-O0 は、bar.cc を除く //foo/ 内のすべての 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 は、含める正規表現パターンと除外する正規表現パターンのリストを表します。option_1 ~ option_n は任意のコマンドライン オプションを表します。オプションにカンマが含まれている場合は、バックスラッシュで引用符で囲う必要があります。オプションには @ を含めることができます。文字列の分割には最初の @ のみが使用されます。例: --per_file_ltobackendopt=//foo/.*\.o,-//foo/bar\.o@-O0 は、bar.o を除く //foo/ 内のすべての 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」バイナリを生成するときにストリップに渡す追加のオプション。
タグ: 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_licenses デフォルト: "false"
依存パッケージによって課せられるライセンス制約が、ビルドされるターゲットの配信モードと競合していないことを確認します。デフォルトでは、ライセンスはチェックされません。
タグ: build_file_semantics
--[no]check_visibility デフォルト: "true"
無効にすると、ターゲット依存関係の可視性エラーは警告に降格されます。
タグ: build_file_semantics
--[no]desugar_for_android デフォルト: "true"
DEX に変換する前に 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
--experimental_import_deps_checking=<a string> デフォルト: 説明を参照
NOP。下位互換性のためだけに保持。
タグ: loading_and_analysis
--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_check_visibility_for_toolchains デフォルト: "false"
有効にすると、可視性チェックは toolchain 実装にも適用されます。
タグ: 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]incompatible_python_disable_py2 デフォルト: "true"
true の場合、Python 2 の設定を使用するとエラーが発生します。これには、python_version=PY2、srcs_version=PY2、srcs_version=PY2ONLY が含まれます。詳細については、https://github.com/bazelbuild/bazel/issues/15684 をご覧ください。
タグ: loading_and_analysisincompatible_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 の場合、システムの include パス(-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 のマニュアル ページ(SIGNING IDENTITIES)に従い、証明書のキートチェーン ID 設定または証明書の共通名の(サブ文字列)にできます。
タグ: action_command_lines
このオプションは、Starlark 言語のセマンティクスまたは BUILD ファイル、.bzl ファイル、WORKSPACE ファイルからアクセスできるビルド API に影響します。
--[no]incompatible_disallow_legacy_py_provider デフォルト: "true"
無効。まもなく削除されます。
タグ: loading_and_analysisincompatible_change
--[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"
dex2oat を並列で使用して、android_test の速度を上げることができます。
タグ: 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> 複数の使用が累積される
テストランナー環境に挿入する追加の環境変数を指定します。変数は名前で指定できます。この場合、値は Bazel クライアント環境から読み取られます。また、name=value ペアで指定することもできます。このオプションは複数回使用して、複数の変数を指定できます。「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_starlark_cc_import デフォルト: "false"
有効にすると、Starlark バージョンの cc_import を使用できます。
タグ: loading_and_analysisexperimental
--[no]experimental_unsupported_and_brittle_include_scanning デフォルト: "false"
入力ファイルを解析して #include 行を解析し、入力を C/C++ コンパイルに絞り込むかどうか。これにより、コンパイル入力ツリーのサイズが小さくなり、パフォーマンスと増分性が向上します。ただし、インクルード スキャナは C プリプロセッサのセマンティクスを完全に実装していないため、ビルドが破損することもあります。特に、動的 #include ディレクティブを認識せず、プリプロセッサの条件付きロジックを無視します。自己責任で使用してください。この報告に関連する問題はすべてクローズされます。
タグ: loading_and_analysisexecutionchanges_inputsexperimental
--[no]incremental_dexing デフォルト: "true"
Jar ファイルごとに個別にデックス処理の大部分を行います。
タグ: 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
他のカテゴリに該当しない Bazel コマンドへの汎用入力を指定する、または変更するオプション。
--flag_alias=<a 'name=value' flag alias> 複数の使用が累積される
Starlark フラグの省略形の名前を設定します。引数として、「<key>=<value>」形式の単一の Key-Value ペアを受け取ります。
タグ: changes_inputs
--[no]incompatible_default_to_explicit_init_py デフォルト: "false"
このフラグを使用すると、デフォルトの動作が変更され、Python ターゲットの実行ファイルに __init__.py ファイルが自動的に作成されなくなります。具体的には、py_binary ターゲットまたは py_test ターゲットで legacy_create_init が「auto」(デフォルト)に設定されている場合、このフラグが設定されている場合にのみ false として扱われます。https://github.com/bazelbuild/bazel/issues/10076 をご覧ください。
タグ: affects_outputsincompatible_change
--[no]incompatible_py2_outputs_are_suffixed デフォルト: "true"
true に設定すると、Python 2 構成でビルドされたターゲットは、接尾辞「-py2」を含む出力ルートの下に表示され、Python 3 用にビルドされたターゲットは、Python 関連の接尾辞のないルートに表示されます。つまり、`bazel-bin` の便利なシンボリック リンクは、Python 2 ではなく Python 3 ターゲットを指すようになります。このオプションを有効にする場合は、`--incompatible_py3_is_default` も有効にすることをおすすめします。
タグ: affects_outputsincompatible_change
--[no]incompatible_py3_is_default デフォルト: "true"
true の場合、python_version(または default_python_version)属性が設定されていない py_binary ターゲットと py_test ターゲットは、デフォルトで PY2 ではなく PY3 になります。このフラグを設定する場合は、`--incompatible_py2_outputs_are_suffixed` も設定することをおすすめします。
タグ: loading_and_analysisaffects_outputsincompatible_change
--[no]incompatible_use_python_toolchains デフォルト: "true"
true に設定すると、実行可能なネイティブ Python ルールは、--python_top などの以前のフラグで指定されたランタイムではなく、Python ツールチェーンで指定された Python ランタイムを使用します。
タグ: loading_and_analysisincompatible_change
--python_version=<PY2 or PY3> デフォルト: 説明を参照
Python のメジャー バージョン モード(PY2 または PY3)。これは、py_binary ターゲットと py_test ターゲットによってオーバーライドされるため(バージョンが明示的に指定されていない場合でも)、通常、このフラグを指定する理由はあまりありません。
タグ: loading_and_analysisaffects_outputs
その他のオプション(他のカテゴリに該当しない):
--[no]cache_test_results [-t] デフォルト: "auto"
「auto」に設定した場合、Bazel は、(1)Bazel がテストまたはその依存関係の変更を検出した場合、(2)テストが外部としてマークされている場合、(3)--runs_per_test で複数のテスト実行がリクエストされた場合、または(4)テストが以前に失敗した場合にのみ、テストを再実行します。[yes] に設定すると、Bazel は外部としてマークされたテストを除くすべてのテスト結果をキャッシュに保存します。「no」に設定すると、Bazel はテスト結果をキャッシュに保存しません。
--[no]experimental_cancel_concurrent_tests デフォルト: "false"
true に設定すると、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
--[no]experimental_j2objc_header_map デフォルト: "true"
J2ObjC 変換と並行して J2ObjC ヘッダーマップを生成するかどうか。
タグ: experimental
--[no]experimental_j2objc_shorter_header_path デフォルト: "false"
短いヘッダーパスで生成するかどうか(「_j2objc」ではなく「_ios」を使用)。
タグ: affects_outputsexperimental
--experimental_java_classpath=<off, javabuilder or bazel> デフォルト: "javabuilder"
Java コンパイルのクラスパスの削減を有効にします。
--[no]experimental_limit_android_lint_to_android_constrained_java デフォルト: "false"
NOP。下位互換性のためのみ保持。
タグ: affects_outputsexperimental
--[no]experimental_run_android_lint_on_java_rules デフォルト: "false"
java_* ソースを検証するかどうか。
タグ: affects_outputsexperimental
--[no]explicit_java_test_deps デフォルト: "false"
TestRunner の依存関係から誤って取得するのではなく、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 のパスにあるファイルをタップしてシャーディングをサポートしていることを示す場合、シャーディングされたテストは失敗します。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
JDK テストの 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> 複数の使用が累積される
JDK に渡す追加のオプション。
--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> デフォルト: 説明を参照
は、シャーディングなしでデクストリングに使用するバイナリを指定します。
--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"
プロトコンパイラのラベル。
タグ: 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> デフォルト: "@bazel_tools//tools/j2objc:j2objc_proto_toolchain"
j2objc proto のコンパイル方法を記述する 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> デフォルト: "@bazel_tools//tools/proto:javalite_toolchain"
JavaLite proto のコンパイル方法を記述する 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」
テスト シャーディング戦略を指定します。BUILD 属性に「shard_count」が存在する場合にのみシャーディングを使用する場合は「explicit」を指定します。「disabled」: テスト シャーディングをまったく使用しない。「forced=k」: 「shard_count」BUILD 属性に関係なく、テスト用に「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
このオプションは、Starlark 言語のセマンティクスまたは BUILD ファイル、.bzl ファイル、WORKSPACE ファイルからアクセスできるビルド API に影響します。
--[no]incompatible_use_plus_in_repo_names デフォルト: "true"
無効。
タグ: loading_and_analysis

オプション効果タグ

unknown このオプションの効果は不明です(ドキュメントに記載されていません)。
no_op このオプションは、文字通り効果がありません。
loses_incremental_state このオプションの値を変更すると、増分状態が大幅に失われ、ビルドが遅くなる可能性があります。サーバー再起動や依存関係グラフの大部分の無効化により、状態が失われる可能性があります。
changes_inputs このオプションは、ファイルシステムの制限、リポジトリのバージョン、その他のオプションなど、bazel がビルドに使用する入力を積極的に変更します。
affects_outputs このオプションは bazel の出力に影響します。このタグは意図的に広範囲に設定されており、伝播効果を含めることができ、影響を受ける出力のタイプは指定されません。
build_file_semantics このオプションは、BUILD ファイルまたは .bzl ファイルのセマンティクスに影響します。
bazel_internal_configuration このオプションは、bazel 内部のメカニズムの設定に影響します。このタグが付いているだけでは、ビルド アーティファクトが影響を受けているわけではありません。
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 このオプションは非推奨となりました。影響を受ける機能が非推奨になっているか、情報を提供する別の方法が推奨されている可能性があります。
immutable このオプションは遷移中に変更できません。