メンバー
- action_is_enabled
- CcToolchainInfo
- コンパイル
- configure_features
- create_cc_toolchain_config_info
- create_compilation_context
- create_compilation_outputs
- create_compile_variables
- create_library_to_link
- create_link_variables
- create_linker_input
- create_linking_context
- create_linking_context_from_compilation_outputs
- do_not_use_tools_cpp_compiler_present
- get_environment_variables
- get_execution_requirements
- get_memory_inefficient_command_line
- get_tool_for_action
- is_enabled
- リンク
- merge_cc_infos
- merge_compilation_contexts
- merge_compilation_outputs
action_is_enabled
bool cc_common.action_is_enabled(feature_configuration, action_name)指定された action_config が機能構成で有効になっている場合は true を返します。
パラメータ
パラメータ | 説明 |
---|---|
feature_configuration
|
必須 クエリ対象の特徴構成。 |
action_name
|
必須 アクション コンフィグの名前。 |
CcToolchainInfo
Provider cc_common.CcToolchainInfo使用されている C++ ツールチェーンに関する情報を含むプロバイダを取得するために使用されるキー
compile
tuple cc_common.compile(actions, feature_configuration, cc_toolchain, srcs=[], public_hdrs=[], private_hdrs=[], includes=[], quote_includes=[], system_includes=[], framework_includes=[], defines=[], local_defines=[], include_prefix='', strip_include_prefix='', user_compile_flags=[], compilation_contexts=[], name, disallow_pic_outputs=False, disallow_nopic_outputs=False, additional_inputs=[], grep_includes=None)C++ コンパイルに使用する必要があります。(
CompilationContext
、CcCompilationOutputs
)のタプルを返します。
パラメータ
パラメータ | 説明 |
---|---|
actions
|
必須の actions オブジェクト。 |
feature_configuration
|
feature_configuration をクエリする必要があります。 |
cc_toolchain
|
必須CcToolchainInfo プロバイダの使用。
|
srcs
|
デフォルト = [] コンパイルするソースファイルのリスト。 |
public_hdrs
|
default = [] src のコンパイルに必要なヘッダーのリスト。依存するルールによって伝播的に含めることができます。 |
private_hdrs
|
default = [] src のコンパイルに必要なヘッダーのリスト。依存するルールに含まれません。 |
includes
|
デフォルト = [] 角かっこと引用符の両方で参照されるヘッダー ファイルのパスを検索します。通常は -I で渡します。依存関係に推移的に伝播されます。 |
quote_includes
|
default = [] 引用符で参照されるヘッダー ファイルの検索パス(#include "foo/bar/header.h" など)。実行ルート相対または絶対のいずれかです。通常は -iquote で渡します。依存関係に推移的に伝播されます。 |
system_includes
|
default = [] 角かっこで参照されるヘッダー ファイルの検索パス(#include <foo/bar/header.h> など)。exec ルート相対または絶対のいずれかです。通常は -isystem で渡されます。依存関係に推移的に伝播されます。 |
framework_includes
|
デフォルト = [] Apple フレームワークのヘッダー ファイルの検索パス。実行ルート相対または絶対のいずれかです。通常は -F で渡します。依存関係に推移的に伝播されます。 |
defines
|
default = [] このターゲットのコンパイルに必要な定義のセットを指定します。各定義は文字列です。依存関係に推移的に伝播されます。 |
local_defines
|
default = [] このターゲットのコンパイルに必要な定義のセットを指定します。各定義は文字列です。依存関係に推移的に伝播されません。 |
include_prefix
|
default = '' このルールのヘッダーのパスに追加する接頭辞。設定すると、このルールの hdrs 属性のヘッダーに、リポジトリ相対パスにこの属性の値が追加されたパスでアクセスできます。この接頭辞が追加される前に、strip_include_prefix 属性の接頭辞が削除されます。 |
strip_include_prefix
|
default = '' このルールのヘッダーのパスの接頭辞。設定すると、このルールの hdrs 属性のヘッダーには、この接頭辞が削除されたパスでアクセスできます。相対パスの場合は、パッケージ相対パスとして扱われます。絶対パスの場合は、リポジトリ相対パスとして解釈されます。include_prefix 属性の接頭辞は、この接頭辞が削除された後に追加されます。 |
user_compile_flags
|
default = [] コンパイル オプションの追加リスト。 |
compilation_contexts
|
default = [] コンパイルに使用される依存関係のヘッダー。 |
name
|
必須 このメソッドによって作成されたアクションの出力アーティファクトに名前を付けるために使用されます。「main_output」引数もご覧ください。 |
disallow_pic_outputs
|
デフォルト = False PIC 出力を作成するかどうか。 |
disallow_nopic_outputs
|
デフォルト = False NOPIC 出力を作成するかどうか。 |
additional_inputs
|
デフォルト = [] srcs のコンパイルに必要な追加ファイルのリスト |
grep_includes
|
File; or None ;
default = None |
configure_features
FeatureConfiguration cc_common.configure_features(ctx=None, cc_toolchain, language=None, requested_features=[], unsupported_features=[])feature_configuration インスタンスを作成します。cpp 構成フラグメントが必要です。
パラメータ
パラメータ | 説明 |
---|---|
ctx
|
ctx; or None ;
デフォルト = Noneルールのコンテキスト。 |
cc_toolchain
|
必要な cc_toolchain で、機能を構成します。 |
language
|
string; or None ;
デフォルト = None構成する言語: c++ または objc(デフォルトは c++) |
requested_features
|
default = [] 有効にする機能のリスト。 |
unsupported_features
|
default = [] 現在ルールでサポートされていない機能のリスト。 |
create_cc_toolchain_config_info
CcToolchainConfigInfo cc_common.create_cc_toolchain_config_info(ctx, features=[], action_configs=[], artifact_name_patterns=[], cxx_builtin_include_directories=[], toolchain_identifier, host_system_name=None, target_system_name, target_cpu, target_libc, compiler, abi_version=None, abi_libc_version=None, tool_paths=[], make_variables=[], builtin_sysroot=None, cc_target_os=None)
CcToolchainConfigInfo
プロバイダを作成します
パラメータ
パラメータ | 説明 |
---|---|
ctx
|
必須 ルールのコンテキスト。 |
features
|
default = [] 1 つの特徴のすべてのフラグ仕様が含まれます。 引数: name: 特徴の名前。ツールチェーンに「feature」セクションを追加し、対応する文字列を BUILD ファイルに feature として追加することで、Bazel を変更せずに機能を導入できます。 enabled: 「True」の場合、ルールタイプで明示的にサポート対象外としてマークされていない限り、この機能は有効になります。 flag_sets: FlagSet リスト - 指定した機能が有効になっている場合、指定されたアクションにフラグセットが適用されます。 env_sets: EnvSet リスト - 指定された機能が有効になっている場合、env セットは指定されたアクションに適用されます。 requires: この機能が toolchain でサポートされている場合を定義する機能セットのリスト。この機能は、いずれかの特徴セットが完全に適用されている場合(つまり、特徴セットのすべての特徴が有効になっている場合)にサポートされます。「requires」を省略すると、この機能は他の機能が有効かどうかに関係なくサポートされます。たとえば、有効なビルドモード(opt / fastbuild / dbg)に応じてフラグをフィルタリングする場合に使用します。 意味: この機能が有効になると自動的に有効になる機能またはアクションの設定の文字列リスト。暗黙的な機能またはアクション構成のいずれかを有効にできない場合、この機能も(サイレント)有効になりません。 provides: この機能が競合する名前のリスト。 次の場合に、機能を有効にできません。- provides に、有効にする別の機能またはアクション構成の名前が含まれている。 - provides に、有効にする別の機能またはアクション構成の provides と同じ値が含まれている。互換性のない機能が誤って同時に有効になり、コンパイラ エラーの診断が困難にならないようにするために使用します。 |
action_configs
|
default = [] アクション構成は Bazel アクションに対応しており、有効な機能に基づいてツールを選択できます。アクション構成の有効化は、機能と同じセマンティクスで発生します。機能は、他の機能と同じように、アクション構成を「必須」または「暗黙的に」指定できます。 引数: action_name: この構成が適用される Bazel アクションの名前(「c-compile」や「c-module-compile」など)。 enabled: 「True」の場合、ルールタイプでサポートされていないと明示的にマークされていない限り、このアクションは有効になります。 tools: アクションに適用されるツールは、特徴構成に一致する特徴セットを持つ最初のツールになります。指定された特徴構成に一致するツールがない場合、エラーがスローされます。そのため、空の特徴セットを持つデフォルトのツールを指定することをおすすめします。 flag_sets: 指定されたアクション構成が有効になっている場合、フラグセットが対応するアクションに適用されます。 暗黙的: このアクション構成が有効になると自動的に有効になる機能またはアクション構成のリスト。暗黙的な機能またはアクション構成のいずれかを有効にできない場合、このアクション構成も(サイレント)有効になりません。 |
artifact_name_patterns
|
default = [] アクションへの入力または出力アーティファクトの特定のカテゴリのアーティファクトの名前。 引数: category_name: この選択が適用されるアーティファクトのカテゴリ。このフィールドは、Bazel で定義されたカテゴリのリストと照合されます。カテゴリの例としては、「linked_output」や、この選択のアートファクトなどがあります。拡張機能とともに、ターゲット名に基づいてアーティファクト名を作成するために使用されます。 extension: この選択のアトリビュートを作成する拡張機能。接頭辞とともに、ターゲット名に基づいてアーティファクト名を作成するために使用されます。 |
cxx_builtin_include_directories
|
default = [] C++ コンパイルに組み込まれたインクルード ディレクトリ。これらは、コンパイラで使用されるパスと完全に一致している必要があります。通常は、exec ルートからの相対パスです。 コンパイラで使用されるパスは、gcc -E -xc++ - -v で確認できます。 現在、C コンパイルに C++ パスも使用しています。C++ ヘッダー ファイルと C ヘッダー ファイルの間に名前の競合がなければ、安全です。 相対パスは、構成ファイル ディレクトリを基準に解決されます。 コンパイラが --sysroot をサポートしている場合、これらのパスではインクルードパスではなく %sysroot% を使用し、sysroot 属性を指定して、正しい置換を行うために必要な情報を blaze に提供する必要があります。 |
toolchain_identifier
|
必須 クロスツール リリース内のツールチェーンの一意の識別子。パスのディレクトリ名として使用できる必要があります。 次の正規表現 [a-zA-Z_][\.\- \w]* と一致する必要があります。 |
host_system_name
|
string; or None ;
デフォルト = None無視されます。 |
target_system_name
|
必須 GNU システム名。 |
target_cpu
|
必須 ターゲット アーキテクチャの文字列。 |
target_libc
|
必須 libc バージョンの文字列(glibc-2.2.2 など)。 |
compiler
|
必須 コンパイラのバージョン文字列(「gcc-4.1.1」など)。 |
abi_version
|
string; or None ;
デフォルト = Nonegcc バージョンである、使用中の ABI。例: 「gcc-3.4」 |
abi_libc_version
|
string; or None ;
デフォルト = None現在使用している ABI で使用されている glibc バージョン。 |
tool_paths
|
default = [] ツールの場所。 引数: name: ツールの名前。 path: ツールの場所。絶対パス(非完全な toolchain の場合)または cc_toolchain のパッケージに対する相対パスを指定できます。 |
make_variables
|
default = [] ルールにアクセスできる make 変数。 |
builtin_sysroot
|
string; or None ;
default = None組み込みの sysroot。この属性が指定されていない場合、Bazel は別の sysroot(--grte_top オプションなど)を使用することを許可しません。 |
cc_target_os
|
string; or None ;
デフォルト = None内部専用。使用しないでください。 |
create_compilation_context
CompilationContext cc_common.create_compilation_context(headers=unbound, system_includes=unbound, includes=unbound, quote_includes=unbound, framework_includes=unbound, defines=unbound, local_defines=unbound)
CompilationContext
を作成します。
パラメータ
パラメータ | 説明 |
---|---|
headers
|
デフォルト = 無制限 このターゲットをコンパイルするために必要なヘッダーのセット |
system_includes
|
デフォルト = 無制限 角かっこで参照されるヘッダー ファイルの検索パスのセット(#include <foo/bar/header.h> など)。exec ルート相対または絶対のいずれかです。通常は -isystem で渡します。 |
includes
|
デフォルト = 無制限 角かっこと引用符の両方で参照されるヘッダー ファイルの検索パスのセット。通常は -I とともに渡されます。 |
quote_includes
|
デフォルト = 無制限 引用符で参照されるヘッダー ファイルの検索パスのセット(#include "foo/bar/header.h" など)。実行ルート相対または絶対のいずれかです。通常は -iquote で渡します。 |
framework_includes
|
デフォルト = 無制限 ヘッダー ファイルのフレームワーク検索パスのセット(Apple プラットフォームのみ) |
defines
|
default = unbound このターゲットのコンパイルに必要な定義のセット。各定義は文字列です。依存関係に推移的に伝播されます。 |
local_defines
|
default = unbound このターゲットのコンパイルに必要な定義のセット。各定義は文字列です。依存関係に推移的に伝播されません。 |
create_compilation_outputs
CcCompilationOutputs cc_common.create_compilation_outputs(objects=None, pic_objects=None)コンパイル出力オブジェクトを作成する。
パラメータ
パラメータ | 説明 |
---|---|
objects
|
depset; or None ;
デフォルト = Noneオブジェクト ファイルのリスト。 |
pic_objects
|
depset; or None ;
デフォルト = Nonepic オブジェクト ファイルのリスト。 |
create_compile_variables
Variables cc_common.create_compile_variables(cc_toolchain, feature_configuration, source_file=None, output_file=None, user_compile_flags=None, include_directories=None, quote_include_directories=None, system_include_directories=None, framework_include_directories=None, preprocessor_defines=None, thinlto_index=None, thinlto_input_bitcode_file=None, thinlto_output_object_file=None, use_pic=False, add_legacy_cxx_options=False, variables_extension=unbound)コンパイル アクションに使用される変数を返します。
パラメータ
パラメータ | 説明 |
---|---|
cc_toolchain
|
ビルド変数を作成する cc_toolchain が必要です。 |
feature_configuration
|
必須 クエリ対象の特徴構成。 |
source_file
|
デフォルト = None コンパイルのソースファイル(省略可)。cc_common.get_memory_inefficient_command_line から生成されたコマンドラインの末尾に追加するのではなく、ここで source_file を渡すことをおすすめします。そうすれば、コンパイラ フラグを適切に指定して配置するのは toolchain の作成者の責任になります。 |
output_file
|
デフォルト = None コンパイルの出力ファイル(省略可)。cc_common.get_memory_inefficient_command_line から生成されたコマンドライン末尾に追加するのではなく、ここで output_file を渡すことをおすすめします。これにより、コンパイラ フラグを適切に指定して配置するのは toolchain 作成者の責任になります。 |
user_compile_flags
|
sequence of strings; or None ;
デフォルト = None追加のコンパイル フラグ(copts)のリスト。 |
include_directories
|
depset; or None ;
デフォルト = Noneinclude ディレクトリの Depset。 |
quote_include_directories
|
depset; or None ;
デフォルト = None引用符を含むディレクトリの Depset。 |
system_include_directories
|
depset; or None ;
デフォルト = Noneシステム インクルード ディレクトリの Depset。 |
framework_include_directories
|
depset; or None ;
デフォルト = Noneフレームワークの include ディレクトリの Depset。 |
preprocessor_defines
|
depset; or None ;
デフォルト = Noneプリプロセッサ定義の Depset。 |
thinlto_index
|
string; or None ;
デフォルト = NoneLTO インデックス ファイルのパス。 |
thinlto_input_bitcode_file
|
string; or None ;
デフォルト = NoneLTO バックエンドに入力される Bitcode ファイル。 |
thinlto_output_object_file
|
string; or None ;
デフォルト = NoneLTO バックエンドによって出力されるオブジェクト ファイル。 |
use_pic
|
デフォルト = False true にすると、コンパイル時に位置依存コードが生成されます。 |
add_legacy_cxx_options
|
デフォルト = False 未使用。 |
variables_extension
|
dict ;
デフォルト = 未バインドコンパイル アクションで使用される追加変数の辞書。 |
create_library_to_link
LibraryToLink cc_common.create_library_to_link(actions, feature_configuration=None, cc_toolchain=None, static_library=None, pic_static_library=None, dynamic_library=None, interface_library=None, pic_objects=unbound, objects=unbound, alwayslink=False, dynamic_library_symlink_path='', interface_library_symlink_path='')
LibraryToLink
を作成します
パラメータ
パラメータ | 説明 |
---|---|
actions
|
必須の actions オブジェクト。 |
feature_configuration
|
デフォルト = None queried feature_configuration にクエリを実行します。 |
cc_toolchain
|
デフォルト = None 使用する CcToolchainInfo プロバイダ。
|
static_library
|
File; or None ;
デフォルト = Noneリンクされる静的ライブラリの File 。
|
pic_static_library
|
File; or None ;
デフォルト = Noneリンクされる pic 静的ライブラリの File 。
|
dynamic_library
|
File; or None ;
デフォルト = Noneリンクされる動的ライブラリの File 。ランタイムで常に使用され、interface_library が渡されていない場合はリンクにも使用されます。
|
interface_library
|
File; or None 。デフォルトは None。リンクするインターフェース ライブラリの File 。 |
pic_objects
|
sequence of Files ;
デフォルト = 未バインド試験運用版、使用しないでください |
objects
|
sequence of Files ;
デフォルト = 未バインド試験運用版、使用しないでください |
alwayslink
|
デフォルト = False --whole_archive ブロック内の静的ライブラリ/オブジェクトをリンクするかどうか。 |
dynamic_library_symlink_path
|
string ;
デフォルト = ''solib ディレクトリ内の動的ライブラリ リンクのデフォルト パスをオーバーライドします。デフォルトを使用する場合は空の文字列。 |
interface_library_symlink_path
|
default = '' solib ディレクトリにあるインターフェース ライブラリ リンクのデフォルト パスをオーバーライドします。デフォルトを使用する場合は空の文字列。 |
create_link_variables
Variables cc_common.create_link_variables(cc_toolchain, feature_configuration, library_search_directories=None, runtime_library_search_directories=None, user_link_flags=None, output_file=None, param_file=None, def_file=None, is_using_linker=True, is_linking_dynamic_library=False, must_keep_debug=True, use_test_only_flags=False, is_static_linking_mode=True)アクションのリンクに使用されるリンク変数を返します。
パラメータ
パラメータ | 説明 |
---|---|
cc_toolchain
|
ビルド変数を作成する cc_toolchain が必要です。 |
feature_configuration
|
必須 クエリ対象の特徴構成。 |
library_search_directories
|
None; or depset ;
デフォルト = Noneリンカーがリンク時にライブラリを検索するディレクトリの Depset。 |
runtime_library_search_directories
|
None; or depset ;
デフォルト = Noneローダーが実行時にライブラリを検索するディレクトリの Depset。 |
user_link_flags
|
None; or sequence ;
デフォルト = None追加のリンクフラグ(linkopts)のリスト。 |
output_file
|
デフォルト = None (省略可)出力ファイルのパス。 |
param_file
|
デフォルト = None オプションのパラメータ ファイルパス。 |
def_file
|
デフォルト = None (省略可).def ファイルパス。 |
is_using_linker
|
デフォルト = True linker を使用する場合は True、archiver を使用する場合は False。呼び出し元は、これを使用して使用されるアクション名と同期を保つ必要があります(実行可能ファイルまたは動的ライブラリのリンクの場合は is_using_linker = True、静的ライブラリのアーカイブの場合は is_using_linker = False)。 |
is_linking_dynamic_library
|
デフォルト = False 動的ライブラリを作成する場合は True、実行可能ファイルまたは静的ライブラリの場合は False。呼び出し元は、この名前を使用したアクション名と同期させる責任があります。このフィールドは、b/65151735 が修正されると削除されます。 |
must_keep_debug
|
デフォルト = True True に設定すると、bazel は「strip_debug_symbols」変数を公開します。この変数は通常、リンカーを使用して出力ファイルからデバッグ シンボルを削除するために使用されます。 |
use_test_only_flags
|
デフォルト = False true に設定すると、「is_cc_test」変数が設定されます。 |
is_static_linking_mode
|
デフォルト = True 未使用。 |
create_linker_input
LinkerInput cc_common.create_linker_input(owner, libraries=None, user_link_flags=None, additional_inputs=None)
LinkerInput
を作成します。
パラメータ
パラメータ | 説明 |
---|---|
owner
|
必須 この入力で使用されるすべてのファイルを生成したターゲットのラベル。 |
libraries
|
None; or depset ;
default = NoneLibraryToLink のリスト。
|
user_link_flags
|
None; or depset of strings; or sequence of strings ;
デフォルト = Noneユーザーリンク フラグは文字列として渡されます。[String]、[[String]]、depset(String) のいずれかを指定します。後者は、互換性を確保するためにのみ保持され、depset がフラット化されるため、推奨されません。フラット化されていない depset() を介して user_link_flags を伝播する場合は、最後までフラット化されないように LinkerInput でラップします。 |
additional_inputs
|
None; or depset ;
デフォルト = Noneリンク アクションへの追加入力(リンク スクリプトなど)。 |
create_linking_context
LinkingContext cc_common.create_linking_context(linker_inputs=None, libraries_to_link=None, user_link_flags=None, additional_inputs=None)
LinkingContext
を作成します。
パラメータ
パラメータ | 説明 |
---|---|
linker_inputs
|
None; or depset ;
デフォルト = NoneLinkerInput の Depset。
|
libraries_to_link
|
None; or sequence ;
デフォルト = None非推奨。このパラメータは非推奨となり、まもなく削除されます。これに依存しないでください。 --+incompatible_require_linker_input_cc_api では無効になっています。このフラグを使用すると、コードがまもなく削除される機能と互換性があることを確認できます。LibraryToLink のリスト。
|
user_link_flags
|
None; or sequence ;
デフォルト = None非推奨。このパラメータは非推奨となり、まもなく削除されます。これに依存しないでください。 --+incompatible_require_linker_input_cc_api では無効になっています。このフラグを使用すると、コードがまもなく削除される機能と互換性があることを確認できます。文字列として渡されるユーザーリンク フラグのリスト。 |
additional_inputs
|
None; or sequence ;
デフォルト = None非推奨。このパラメータは非推奨となり、まもなく削除されます。これに依存しないでください。 --+incompatible_require_linker_input_cc_api では無効になっています。このフラグを使用すると、コードがまもなく削除される機能と互換性があることを確認できます。リンク アクションへの追加入力(リンク スクリプトなど)。 |
create_linking_context_from_compilation_outputs
tuple cc_common.create_linking_context_from_compilation_outputs(actions, feature_configuration, cc_toolchain, compilation_outputs, user_link_flags=[], linking_contexts=[], name, language='c++', alwayslink=False, additional_inputs=[], disallow_static_libraries=False, disallow_dynamic_library=False, grep_includes=None)情報のダウンストリームへの伝播を可能にするライブラリルールの作成に使用します。これにより、後で、実行可能ライブラリまたは動的ライブラリを作成するために、伝播リンクを行うトップレベル ルールによってリンクされます。(
CcLinkingContext
、CcLinkingOutputs
)のタプルを返します。
パラメータ
パラメータ | 説明 |
---|---|
actions
|
必須の actions オブジェクト。 |
feature_configuration
|
feature_configuration をクエリする必要があります。 |
cc_toolchain
|
必須CcToolchainInfo プロバイダの使用。
|
compilation_outputs
|
必須 リンクするオブジェクト ファイルを含むコンパイル出力。 |
user_link_flags
|
default = [] リンク オプションの追加リスト。 |
linking_contexts
|
default = [] 依存関係のライブラリ。これらのライブラリは、バイナリまたはライブラリのいずれであっても、link() 呼び出しの出力アーティファクトにリンクされます。 |
name
|
必須 このメソッドによって作成されたアクションの出力アーティファクトに名前を付けるために使用されます。 |
language
|
default = 'c++' 現在のところ、C++ のみがサポートされています。このパラメータは使用しないでください。 |
alwayslink
|
デフォルト = False このライブラリを常にリンクするかどうか。 |
additional_inputs
|
default = [] リンク アクションへの追加入力(リンク スクリプトなど)。 |
disallow_static_libraries
|
デフォルト = False 静的ライブラリを作成するかどうか。 |
disallow_dynamic_library
|
default = False ダイナミック ライブラリを作成するかどうか。 |
grep_includes
|
File; or None ;
default = None |
do_not_use_tools_cpp_compiler_present
None cc_common.do_not_use_tools_cpp_compiler_presentこのフィールドは使用しないでください。このフィールドの唯一の目的は、config_setting.values{'compiler'} から config_settings.flag_values{'@bazel_tools//tools/cpp:compiler'} への移行を支援することです。
get_environment_variables
dict cc_common.get_environment_variables(feature_configuration, action_name, variables)指定されたアクションに設定する環境変数を返します。
パラメータ
パラメータ | 説明 |
---|---|
feature_configuration
|
必須 クエリ対象の特徴構成。 |
action_name
|
必須 アクションの名前。@bazel_tools//tools/build_defs/cc:action_names.bzl(https://github.com/bazelbuild/bazel/blob/master/tools/build_defs/cc/action_names.bzl)の名前のいずれかである必要があります。 |
variables
|
必須 テンプレートの展開に使用する変数をビルドします。 |
get_execution_requirements
sequence cc_common.get_execution_requirements(feature_configuration, action_name)指定されたアクションの実行要件を返します。
パラメータ
パラメータ | 説明 |
---|---|
feature_configuration
|
必須 クエリ対象の特徴構成。 |
action_name
|
必須 アクションの名前。@bazel_tools//tools/build_defs/cc:action_names.bzl(https://github.com/bazelbuild/bazel/blob/master/tools/build_defs/cc/action_names.bzl)の名前のいずれかである必要があります。 |
get_memory_inefficient_command_line
sequence cc_common.get_memory_inefficient_command_line(feature_configuration, action_name, variables)指定された変数を使用して展開し、指定されたアクションのフラグをフラット化したものを返します。ネストされたセットをフラット化します。理想的には使用しないか、少なくとも分析の存続期間を超えないようにする必要があります。Args を返すメモリ効率の高い関数に関する作業は継続中です。
パラメータ
パラメータ | 説明 |
---|---|
feature_configuration
|
必須 クエリ対象の特徴構成。 |
action_name
|
必須 アクションの名前。@bazel_tools//tools/build_defs/cc:action_names.bzl(https://github.com/bazelbuild/bazel/blob/master/tools/build_defs/cc/action_names.bzl)の名前のいずれかである必要があります。 |
variables
|
必須 テンプレートの展開に使用する変数をビルドします。 |
get_tool_for_action
string cc_common.get_tool_for_action(feature_configuration, action_name)指定されたアクションのツールパスを返します。
パラメータ
パラメータ | 説明 |
---|---|
feature_configuration
|
必須 クエリ対象の特徴構成。 |
action_name
|
必須 アクションの名前。@bazel_tools//tools/build_defs/cc:action_names.bzl(https://github.com/bazelbuild/bazel/blob/master/tools/build_defs/cc/action_names.bzl)の名前のいずれかである必要があります。 |
is_enabled
bool cc_common.is_enabled(feature_configuration, feature_name)指定された機能が機能構成で有効になっている場合は true を返します。
パラメータ
パラメータ | 説明 |
---|---|
feature_configuration
|
必須 クエリ対象の特徴構成。 |
feature_name
|
必須 特徴の名前。 |
リンク
CcLinkingOutputs cc_common.link(actions, feature_configuration, cc_toolchain, compilation_outputs=None, user_link_flags=[], linking_contexts=[], name, language='c++', output_type='executable', link_deps_statically=True, stamp=0, additional_inputs=[], grep_includes=None, additional_outputs=unbound)C++ の伝播リンクに使用する必要があります。
パラメータ
パラメータ | 説明 |
---|---|
actions
|
必須の actions オブジェクト。 |
feature_configuration
|
feature_configuration をクエリする必要があります。 |
cc_toolchain
|
必須CcToolchainInfo プロバイダの使用。
|
compilation_outputs
|
CcCompilationOutputs; or None ;
デフォルト = Noneリンクするオブジェクト ファイルを含むコンパイル出力。 |
user_link_flags
|
default = [] リンカー オプションの追加リスト。 |
linking_contexts
|
default = [] このルールによって生成されたリンク コンテキストにリンクされる依存関係のリンク コンテキスト。 |
name
|
必須 このメソッドによって作成されたアクションの出力アーティファクトに名前を付けるために使用されます。 |
language
|
default = 'c++' 現在のところ、C++ のみがサポートされています。このパラメータは使用しないでください。 |
output_type
|
default = 'executable' 「executable」または「dynamic_library」のいずれかです。 |
link_deps_statically
|
デフォルト = True 依存関係を静的にリンクする場合は true、動的にリンクする場合は false です。 |
stamp
|
デフォルト = 0 output_type が「executable」の場合、リンクされた実行可能ファイルにビルド情報を含めるかどうか。1 の場合、ビルド情報は常に含まれます。0 の場合(デフォルトのビルド情報は常に除外されます。-1 の場合、デフォルトの動作が使用されます。これは --[no]stamp フラグでオーバーライドできます。テストルールの実行可能出力を生成する場合は、この値を設定解除(または 0 に設定)する必要があります。 |
additional_inputs
|
sequence; or depset ;
デフォルト = []リンク アクションへの追加入力(リンク スクリプトなど)。 |
grep_includes
|
File; or None ;
default = None |
additional_outputs
|
sequence ;
デフォルト = 未バインドリンク アクションの追加出力(マップファイルなど)の場合。 |
merge_cc_infos
CcInfo cc_common.merge_cc_infos(direct_cc_infos=[], cc_infos=[])複数の
CcInfo
を 1 つに統合します。
パラメータ
パラメータ | 説明 |
---|---|
direct_cc_infos
|
default = [] 統合される CcInfo のリスト。ヘッダーは、返されたプロバイダの直接フィールドによってエクスポートされます。
|
cc_infos
|
デフォルト = [] 統合する CcInfo のリスト。返されたプロバイダの直接フィールドによってヘッダーがエクスポートされません。
|
merge_compilation_contexts
CompilationContext cc_common.merge_compilation_contexts(compilation_contexts=[])複数の
CompilationContexts
を 1 つに統合します。
パラメータ
パラメータ | 説明 |
---|---|
compilation_contexts
|
default = [] 統合する CompilationContexts のリスト。各コンテキストのヘッダーは、返されたプロバイダの直接フィールドによってエクスポートされます。 |
merge_compilation_outputs
CcCompilationOutputs cc_common.merge_compilation_outputs(compilation_outputs=[])コンパイル出力を統合します。
パラメータ
パラメータ | 説明 |
---|---|
compilation_outputs
|
default = [] |