[llvm-dev] Contributing Bazel BUILD files similar to gn

Renato Golin via llvm-dev llvm-dev at lists.llvm.org
Thu Oct 29 12:56:59 PDT 2020


On Thu, 29 Oct 2020 at 19:41, Stefan Teleman via llvm-dev <
llvm-dev at lists.llvm.org> wrote:

> Everyone has their own favorite build system. That is nice, but it is
> not enough of a reason to propose adding it.
>
> I would also like to become informed as to what particular
> needs/shortcomings/defects are addressed by Bazel, that are lacking in
> / cannot be addressed by CMake.
>

I don't think they're proposing adding Bazel as a new core build system nor
replacing CMake.

This is just about adding Bazel files to the project so external projects
(like Tensorflow) can build LLVM more easily. Also, so that all Bazel-based
builds that use LLVM can share the same files without having to reproduce
them in every sub-project.

It is a worthy goal in itself, but I think this speaks very loudly to how
weird it is to build LLVM. We had to add some horrible hacks on our project
because exporting CMake and TD files to our project (in order to use MLIR)
was super weird.

So, perhaps there's an underlying goal there to finally fix the LLVM build
"once and for all", and export libraries, headers, and meta-files in an
orderly fashion, so that wrapping projects don't need to care what build
system LLVM is in.

But I'm not a build-system specialist, so I can't even begin to fathom how
that would work. I'm not even sure that's possible, so... lots of salt.

In the meantime, having those files wouldn't be the end of the world. But I
fear that once we add, they'll stay there forever, and will lead to people
ignoring CMake and segregating the project.

cheers,
--renato
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20201029/3a063e2a/attachment.html>


More information about the llvm-dev mailing list