【发布时间】:2017-07-14 16:32:25
【问题描述】:
我最近一直在我的公司制定一大堆 bazel 规则,并为我的公司创建了一些特定的自定义规则。我注意到的一件事是,在创建规则时,我经常使用自定义设计的传递数据传播来帮助我的规则完成工作。这就是我的意思:
attrs = {
'deps': attr.label_list(
providers=[
'transitive_srcs',
'transitive_gens',
'transitive_data',
'transitive_reqs',
'transitive_deps',
'transitive_builds'
],
allow_files=False
)
}
这最终导致的是它与其他标准 bazel 规则不兼容。如果我的规则依赖于cc_binary(),那么它期望cc_binary() 发送额外的传递数据。关于我们应该如何建立规则有什么约定吗?我很想遵循一些或创建一些,以便更容易分享规则。
这是我从中获取代码示例的地方。 https://github.com/findmine/bazel-pex-rule
【问题讨论】:
标签: python bazel pex build-system