commit:     aec36c6fbd87fab890fc4e53fe7c39dee49fdda5
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Dec 12 04:32:34 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Dec 12 04:37:16 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=aec36c6f

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
 <AT> gentoo.org/

Closes: https://bugs.gentoo.org/942314
Closes: https://bugs.gentoo.org/944788
Thanks-to: Matt Whitlock <gentoo <AT> mattwhitlock.name>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 llvm-core/clang/clang-18.1.8-r6.ebuild          | 5 ++---
 llvm-core/clang/clang-19.1.4.ebuild             | 5 ++---
 llvm-core/clang/clang-19.1.5.ebuild             | 5 ++---
 llvm-core/clang/clang-20.0.0.9999.ebuild        | 5 ++---
 llvm-core/clang/clang-20.0.0_pre20241207.ebuild | 5 ++---
 5 files changed, 10 insertions(+), 15 deletions(-)

diff --git a/llvm-core/clang/clang-18.1.8-r6.ebuild 
b/llvm-core/clang/clang-18.1.8-r6.ebuild
index 52805e3df3fe..ecd51bb5ea94 100644
--- a/llvm-core/clang/clang-18.1.8-r6.ebuild
+++ b/llvm-core/clang/clang-18.1.8-r6.ebuild
@@ -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}"

diff --git a/llvm-core/clang/clang-19.1.4.ebuild 
b/llvm-core/clang/clang-19.1.4.ebuild
index 44fb3430d316..3167033c4a45 100644
--- a/llvm-core/clang/clang-19.1.4.ebuild
+++ b/llvm-core/clang/clang-19.1.4.ebuild
@@ -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}"

diff --git a/llvm-core/clang/clang-19.1.5.ebuild 
b/llvm-core/clang/clang-19.1.5.ebuild
index dd0c7132c2d2..c994c37fe3eb 100644
--- a/llvm-core/clang/clang-19.1.5.ebuild
+++ b/llvm-core/clang/clang-19.1.5.ebuild
@@ -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}"

diff --git a/llvm-core/clang/clang-20.0.0.9999.ebuild 
b/llvm-core/clang/clang-20.0.0.9999.ebuild
index 458b6079f63e..e85ebda1b26b 100644
--- a/llvm-core/clang/clang-20.0.0.9999.ebuild
+++ b/llvm-core/clang/clang-20.0.0.9999.ebuild
@@ -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}"

diff --git a/llvm-core/clang/clang-20.0.0_pre20241207.ebuild 
b/llvm-core/clang/clang-20.0.0_pre20241207.ebuild
index 458b6079f63e..e85ebda1b26b 100644
--- a/llvm-core/clang/clang-20.0.0_pre20241207.ebuild
+++ b/llvm-core/clang/clang-20.0.0_pre20241207.ebuild
@@ -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}"

Reply via email to