0

Bazel 规则可以组成其他的 bazel 规则。例如:

def cpp_library(name,deps=[]):

    explicit_cpp_file = name + ".cpp"
    explicit_hpp_file = name + ".hpp"

    native.cc_library(
        name = name,
        srcs = [explicit_cpp_file],
        hdrs = [explicit_hpp_file],
        deps = deps,
    )

在这里我们看到了cpp_library用途native.cc_library
有没有办法使用 bazel 查询来打印这种关系信息?

您可以想象随着项目规模的增长和许多可用的规则,想知道哪些规则被哪些其他规则使用是多么困难。

4

1 回答 1

0

bazel query您可以通过获取此信息--output--output build将在宏运行后显示规则。--output graph将显示规则之间的关系,例如

bazel query //some/package --output graph | xdot

(或例如| dot -Tpng > /tmp/dep.png

请参阅https://docs.bazel.build/versions/master/query.html#output-formats

于 2019-02-26T21:48:07.897 回答