【发布时间】:2022-08-16 05:14:19
【问题描述】:
我需要使用 bazel 来管理我们的源依赖项,以便最终构建产品纯粹是工具链的一个功能,来自 linux-distribution 的文件数量非常少,以及源代码本身。这意味着构建诸如 libz、libssl、libcrypto、libcurl 之类的东西......
- 这些依赖相互依赖
- 他们有自己的本地(主要基于自动工具)构建系统,基于
./configure --prefix=foo && make -j && make install之类的东西。在我看来,Bazel 不太适合这个用例。特别是,我们需要为每个库手动重新创建
make install步骤,以便将make install工件复制出执行根.我不清楚下一个依赖项如何重用产品。因此,例如,在构建 zlib 时,我们会生成libz.a和一堆头文件。然后,在构建libcrypto.a时,我们需要修改CPPFLAGS和LDFLAGS指向zlib\"installation\"。这让我觉得很迂腐,以至于它乞求代码生成来生成 BUILD 文件。
是否有不需要将“make install”逻辑定制复制到 genrule 的替代方法?
标签: bazel bazel-rules