bazel query
を使用して、ルール内の特定の属性の内容を返す方法はありますか?私はエクスポートされたヘッダ(hdrs
属性はcc_library
です)のリストをフル(ワークスペース相対)パスで出力することができるようにしたいと思います。特定の種類のソースファイルのBazelクエリ
私はbazel build
を実行し、外部スクリプトを使用して別のビルドシステムで使用する成果物をパッケージ化したいので、ヘッダーとコンパイルされたライブラリを取得する必要があります。ヘッダの
、私は、のように公開さマークされているcc_library
ターゲットを照会その依存関係の推移閉包を取得し、その後、私はコピーする必要があるヘッダファイルとしてそのhdrs
属性の和集合を取るよ把握。
私が使用して依存関係のリストを取得することができます。
bazel query 'kind("cc_library",
deps(attr("visibility",
"//visibility:public",
//... except //tools/...)
)
)'
私は上記をネストすることによって、完全なソースファイルのリストを取得することができます。
bazel query 'kind("source file",
deps(kind("cc_library",
deps(attr("visibility",
"//visibility:public",
//... except //tools/...)
)
))
)' --noimplicit_deps
はしかし、それはどのヘッダソースリストから明らかではありませんhdrs
属性で「エクスポート」され、srcs
属性ではエクスポートされません。 BUILDルールの特定の属性の内容を選択できるbazelクエリ関数はありますか?