llvm-core/clang: drop llvm_prepend_path use

The hackery with PATH here is wrong and it breaks building Clang itself
with a different version of Clang (which is why we're looking at rejigging
how the eclass works/replacing it with llvm-r1.eclass [0]).

As suggested by Matt, use LLVM_CMAKE_DIR instead so that Clang finds
the right version of LLVM to build against without any sort of nonsense
messing with build tooling.

[0] https://public-inbox.gentoo.org/gentoo-dev/d5489fa24ef3d1129540879e628120addb3af8ce.camel@gentoo.org/

Closes: https://bugs.gentoo.org/942314
Closes: https://bugs.gentoo.org/944788
Thanks-to: Matt Whitlock <gentoo@mattwhitlock.name>
Signed-off-by: Sam James <sam@gentoo.org>
This commit is contained in:
Sam James
2024-12-12 04:32:34 +00:00
parent 73e247edb1
commit aec36c6fbd
5 changed files with 10 additions and 15 deletions

View File

@@ -5,7 +5,7 @@ EAPI=8
PYTHON_COMPAT=( python3_{10..13} )
inherit cmake llvm.org llvm-utils multilib multilib-minimal
inherit cmake llvm.org multilib multilib-minimal
inherit prefix python-single-r1 toolchain-funcs
DESCRIPTION="C language family frontend for LLVM"
@@ -255,12 +255,11 @@ get_distribution_components() {
}
multilib_src_configure() {
llvm_prepend_path "${LLVM_MAJOR}"
local mycmakeargs=(
-DDEFAULT_SYSROOT=$(usex prefix-guest "" "${EPREFIX}")
-DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}"
-DCMAKE_INSTALL_MANDIR="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/share/man"
-DLLVM_CMAKE_DIR="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/$(get_libdir)/cmake"
-DCLANG_CONFIG_FILE_SYSTEM_DIR="${EPREFIX}/etc/clang"
# relative to bindir
-DCLANG_RESOURCE_DIR="../../../../lib/clang/${LLVM_MAJOR}"

View File

@@ -5,7 +5,7 @@ EAPI=8
PYTHON_COMPAT=( python3_{10..13} )
inherit cmake llvm.org llvm-utils multilib multilib-minimal
inherit cmake llvm.org multilib multilib-minimal
inherit prefix python-single-r1 toolchain-funcs
DESCRIPTION="C language family frontend for LLVM"
@@ -254,12 +254,11 @@ get_distribution_components() {
}
multilib_src_configure() {
llvm_prepend_path "${LLVM_MAJOR}"
local mycmakeargs=(
-DDEFAULT_SYSROOT=$(usex prefix-guest "" "${EPREFIX}")
-DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}"
-DCMAKE_INSTALL_MANDIR="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/share/man"
-DLLVM_CMAKE_DIR="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/$(get_libdir)/cmake"
-DCLANG_CONFIG_FILE_SYSTEM_DIR="${EPREFIX}/etc/clang"
# relative to bindir
-DCLANG_RESOURCE_DIR="../../../../lib/clang/${LLVM_MAJOR}"

View File

@@ -5,7 +5,7 @@ EAPI=8
PYTHON_COMPAT=( python3_{10..13} )
inherit cmake llvm.org llvm-utils multilib multilib-minimal
inherit cmake llvm.org multilib multilib-minimal
inherit prefix python-single-r1 toolchain-funcs
DESCRIPTION="C language family frontend for LLVM"
@@ -254,12 +254,11 @@ get_distribution_components() {
}
multilib_src_configure() {
llvm_prepend_path "${LLVM_MAJOR}"
local mycmakeargs=(
-DDEFAULT_SYSROOT=$(usex prefix-guest "" "${EPREFIX}")
-DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}"
-DCMAKE_INSTALL_MANDIR="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/share/man"
-DLLVM_CMAKE_DIR="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/$(get_libdir)/cmake"
-DCLANG_CONFIG_FILE_SYSTEM_DIR="${EPREFIX}/etc/clang"
# relative to bindir
-DCLANG_RESOURCE_DIR="../../../../lib/clang/${LLVM_MAJOR}"

View File

@@ -5,7 +5,7 @@ EAPI=8
PYTHON_COMPAT=( python3_{10..13} )
inherit cmake llvm.org llvm-utils multilib multilib-minimal
inherit cmake llvm.org multilib multilib-minimal
inherit prefix python-single-r1 toolchain-funcs
DESCRIPTION="C language family frontend for LLVM"
@@ -253,12 +253,11 @@ get_distribution_components() {
}
multilib_src_configure() {
llvm_prepend_path "${LLVM_MAJOR}"
local mycmakeargs=(
-DDEFAULT_SYSROOT=$(usex prefix-guest "" "${EPREFIX}")
-DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}"
-DCMAKE_INSTALL_MANDIR="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/share/man"
-DLLVM_CMAKE_DIR="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/$(get_libdir)/cmake"
-DCLANG_CONFIG_FILE_SYSTEM_DIR="${EPREFIX}/etc/clang"
# relative to bindir
-DCLANG_RESOURCE_DIR="../../../../lib/clang/${LLVM_MAJOR}"

View File

@@ -5,7 +5,7 @@ EAPI=8
PYTHON_COMPAT=( python3_{10..13} )
inherit cmake llvm.org llvm-utils multilib multilib-minimal
inherit cmake llvm.org multilib multilib-minimal
inherit prefix python-single-r1 toolchain-funcs
DESCRIPTION="C language family frontend for LLVM"
@@ -253,12 +253,11 @@ get_distribution_components() {
}
multilib_src_configure() {
llvm_prepend_path "${LLVM_MAJOR}"
local mycmakeargs=(
-DDEFAULT_SYSROOT=$(usex prefix-guest "" "${EPREFIX}")
-DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}"
-DCMAKE_INSTALL_MANDIR="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/share/man"
-DLLVM_CMAKE_DIR="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}/$(get_libdir)/cmake"
-DCLANG_CONFIG_FILE_SYSTEM_DIR="${EPREFIX}/etc/clang"
# relative to bindir
-DCLANG_RESOURCE_DIR="../../../../lib/clang/${LLVM_MAJOR}"