summaryrefslogtreecommitdiff
path: root/llvm-runtimes/compiler-rt/compiler-rt-22.0.0.9999.ebuild
AgeCommit message (Collapse)Author
2025-09-02llvm-runtimes/compiler-rt: Use the partial clang configuration filesMichal Rostecki
Initial installation or upgrade of compiler-rt happens before the main slotted clang configuration file is created by llvm-core/clang-runtime. Building compiler-rt requires only the linker configuration (`-fuse-ld`) to be present. To fix the initial builds, we can use the partial configuration provided by llvm-core/clang-linker-config. Signed-off-by: Michal Rostecki <vadorovsky@protonmail.com> Closes: https://bugs.gentoo.org/951445 Part-of: https://github.com/gentoo/gentoo/pull/42663 Signed-off-by: Michał Górny <mgorny@gentoo.org> Part-of: https://github.com/gentoo/gentoo/pull/42663 Signed-off-by: Michał Górny <mgorny@gentoo.org>
2025-08-06llvm-runtimes/compiler-rt: Support build with cross emerge wrapperMichal Rostecki
When cross emerge wrapper is used, using `llvm_prepend_path` without any options, results in prepending the following path: ``` ${ESYSROOT}/usr/lib/llvm/${slot}/bin ``` For example: ``` /usr/aarch64-unknown-linux-musl/usr/lib/llvm/19/bin ``` The problem is that cross emerge wrapper uses a cross clang wrapper as a compiler, e.g. `aarch64-unknown-linux-musl-clang`. However, the file with such name can be usually found in two places: * `/usr/lib/llvm/19/bin/aarch64-unknown-linux-musl-clang`, which is a clang wrapper that calls the host clang with appropriate configuration. We want to call that file. * `/usr/aarch64-unknown-linux-musl/usr/lib/llvm/19/bin/aarch64-unknown-linux-musl-clang`, which is an actual aarch64 compiler binary. We cannot execute it on x86_64, or other incompatible host. However, the path added by `llvm_prepend_path` causes resolution of `aarch64-unknown-linux-musl-clang` to the second path, therefore causing errors like: ``` /usr/aarch64-unknown-linux-musl/usr/lib/llvm/19/bin/clang: cannot execute binary file: Exec format error ``` Solve that by: * Using `LLVM_ROOT` CMake parameter to point the build to LLVM library artifacts. * Using `llvm_prepend_path` with `-b` argument if we need clang, which is the case when either `clang` or `test` USE flags are enabled. Signed-off-by: Michal Rostecki <vadorovsky@protonmail.com> Part-of: https://github.com/gentoo/gentoo/pull/39280 Signed-off-by: Michał Górny <mgorny@gentoo.org> Part-of: https://github.com/gentoo/gentoo/pull/39280 Signed-off-by: Michał Górny <mgorny@gentoo.org>
2025-07-23llvm-runtimes/compiler-rt: 21+ requires third-party/siphash on arm64Michał Górny
Thanks to vimproved for reporting! Signed-off-by: Michał Górny <mgorny@gentoo.org>
2025-07-19llvm-runtimes/compiler-rt: Add 22.0.0.9999Michał Górny
Signed-off-by: Michał Górny <mgorny@gentoo.org>