ルール
- <ph type="x-smartling-placeholder"></ph> action_listener
- <ph type="x-smartling-placeholder"></ph> extra_action
action_listener
<ph type="x-smartling-placeholder"></ph> ルールのソースを表示action_listener(name, compatible_with, deprecation, distribs, exec_compatible_with, exec_properties, extra_actions, features, licenses, mnemonics, restricted_to, tags, target_compatible_with, testonly, visibility)
警告: 追加のアクションは非推奨となりました。使用 アスペクト してください。
action_listener
ルール自体は出力を生成しません。
代わりに、ツール開発者が
extra_action
をビルドシステムに追加する。
アクションから extra_action
へのマッピングを提供することで、
。
このルールの引数は、アクション ニーモニックを
extra_action
ルール。
オプション を指定する
--experimental_action_listener=<label>
,
ビルドは指定された action_listener
を使用して、
extra_action
をビルドグラフに追加します。
例
action_listener( name = "index_all_languages", mnemonics = [ "Javac", "CppCompile", "Python", ], extra_actions = [":indexer"], ) action_listener( name = "index_java", mnemonics = ["Javac"], extra_actions = [":indexer"], ) extra_action( name = "indexer", tools = ["//my/tools:indexer"], cmd = "$(location //my/tools:indexer)" + "--extra_action_file=$(EXTRA_ACTION_FILE)", )
引数
属性 | |
---|---|
name |
名前:必須 このターゲットの一意の名前。 |
extra_actions
|
ラベルのリスト。必須 extra_action ターゲットのリスト
この action_listener がビルドグラフに追加されます。
例:[ "//my/tools:analyzer" ] 。
|
mnemonics
|
文字列のリスト。必須 このaction_listener がリッスンするアクション ニーモニックのリスト
たとえば[ "Javac" ] 。
ニーモニックは公開インターフェースではありません。 ニーモニックとそのアクションが変わらない保証はありません。 |
extra_action
<ph type="x-smartling-placeholder"></ph> ルールのソースを表示extra_action(name, data, cmd, compatible_with, deprecation, distribs, exec_compatible_with, exec_properties, features, licenses, out_templates, requires_action_output, restricted_to, tags, target_compatible_with, testonly, toolchains, tools, visibility)
警告: 追加のアクションは非推奨となりました。使用 アスペクト してください。
extra_action
ルールから意味のある出力が生成されない
通常のビルド ターゲットとして指定した場合。代わりにツール開発者が
を使用して、既存のアクションをシャドウする追加のアクションをビルドグラフに挿入します。
詳しくは、action_listener
をご覧ください。
extra_action
を有効にする方法についてご覧ください。
extra_action
はコマンドラインとして実行されます。コマンドライン ツールは、
$(EXTRA_ACTION_FILE) としてプロトコル バッファを含むファイルへのアクセス
シャドーイングしている元のアクションの詳細情報を
提供できます
また、元のアクションがアクセスできるすべての入力ファイルにもアクセスできます。
extra_actions_base.proto をご覧ください。
をご覧ください。各 proto ファイルは、
ExtraActionInfo メッセージが含まれています。
他のすべてのアクションと同様に、追加のアクションもサンドボックス化されているため、これに対処できるように設計する必要があります。
引数
属性 | |
---|---|
name |
名前:必須 このターゲットの一意の名前。 このルールは、extra_actions 引数の label で参照できます。
ルールの数: action_listener
|
cmd
|
String;必須 実行するコマンド。genrule cmd 属性のように、次のように設定します。 違いがあります。
|
out_templates
|
文字列のリスト。デフォルトは extra_action コマンドで生成されたファイルのテンプレートのリスト。
テンプレートでは、次の変数を使用できます。
|
requires_action_output
|
ブール値デフォルトは extra_action では、
この extra_action への入力として存在する元のアクション。
true(デフォルトは false)の場合、extra_action は 入力の一部として使用できます。 |
tools
|
ラベルのリスト。デフォルトは tool 依存関係のリスト。
詳細については、依存関係の定義をご覧ください。 情報です。
ビルドシステムは、コマンドラインを実行する前に、
すべてのツールとそのデータ依存関係が 1 つのツリーに統合される 相対パスを使用できます。作業ディレクトリが ルートノードになります |