[PATCH] D107799: [CMake] Enable LLVM_ENABLE_PER_TARGET_RUNTIME_DIR by default on Linux

Petr Hosek via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Jun 7 23:11:20 PDT 2022


phosek added a comment.

In D107799#3557780 <https://reviews.llvm.org/D107799#3557780>, @MaskRay wrote:

> In D107799#3556057 <https://reviews.llvm.org/D107799#3556057>, @manojgupta wrote:
>
>> Yes, LLVM_ENABLE_RUNTIMES and LLVM_ENABLE_PER_TARGET_RUNTIME_DIR are two separate things.
>
> They are separate, but LLVM_ENABLE_RUNTIMES implies LLVM_ENABLE_PER_TARGET_RUNTIME_DIR=on for non-AIX.
>
> I haven't figured out what `runtimes/` is yet.

`runtimes/` is what we now refer to the //runtimes build//: it's a way to build runtimes <https://github.com/llvm/llvm-project/blob/7207373e1eb0dd419b4e13a5e2d0ca146ef9544e/runtimes/CMakeLists.txt#L18> in a single CMake build, sharing CMake modules, common configuration bits, etc.
`llvm/runtimes/` is what we now refer to the //bootstrapping build//: it's a way to build a complete toolchain by first building Clang and LLVM tools, and then using those to build runtimes (using the runtimes build), potentially for multiple targets (using the runtimes build multiple times, once for each target).

The directory naming is a bit confusing and we should probably consider renaming `llvm/runtimes/` to `bootstrap/` (or perhaps `clang/bootstrap/`) to make it clearer.

To make things even more confusing, there's also `clang/runtime` which is the predecessor of the bootstrapping build. I don't know if anyone is still using it, we might be able to delete it.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D107799/new/

https://reviews.llvm.org/D107799



More information about the llvm-commits mailing list