如何从Bazel导出/打包一组文件

时间:2018-10-12 21:41:13

标签: makefile tar bazel

这感觉太明显了,无法回答,但是如果答案在那里,我还没有找到答案。对于上下文,我将其他人的现有代码合并到Bazel构建中,所以我并不是在寻找“只是不要那样做”类型的答案。

该代码产生了许多相关文件:库,编译的二进制文件(如果需要的话,来自C和C ++),python和shell脚本等。这些文件希望在特定位置找到彼此(例如shell脚本通过相对路径或绝对路径),我需要打包并安装整个程序。

在Bazel中有没有办法做到这一点?要挑选一堆由bazel生成的文件(在这种情况下,这是我们未经修改就传递的一堆输入文件),并以tarball或标准包格式(例如.deb)甚至只是将它们放在已知位置的本地文件系统中?

我见过的最接近的想法基本上是手工完成的(例如,编写shell脚本进入Bazel的输出目录并复制感兴趣的文件),但这似乎很容易出错。必须有一种方法可以利用构建系统的智能来捆绑一堆目标和数据文件,对吗?

1 个答案:

答案 0 :(得分:0)

自然,发布问题https://docs.bazel.build/versions/master/be/pkg.html之后不久,我发现了可能的答案。但是,如果有人有进一步的见解,我一定很高兴听到它!