public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Michał Górny" <mgorny@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: llvm-runtimes/compiler-rt/
Date: Tue, 02 Sep 2025 14:29:11 +0000 (UTC)	[thread overview]
Message-ID: <1756819064.f1d6e8dd62416c2c4fba99600600b068fdbc21fd.mgorny@gentoo> (raw)

commit:     f1d6e8dd62416c2c4fba99600600b068fdbc21fd
Author:     Michal Rostecki <vadorovsky <AT> protonmail <DOT> com>
AuthorDate: Tue Aug 26 17:00:49 2025 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Tue Sep  2 13:17:44 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f1d6e8dd

llvm-runtimes/compiler-rt: Use the partial clang configuration files

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 <AT> protonmail.com>
Closes: https://bugs.gentoo.org/951445
Part-of: https://github.com/gentoo/gentoo/pull/42663
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>
Part-of: https://github.com/gentoo/gentoo/pull/42663
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 ....0.9999.ebuild => compiler-rt-20.1.8-r1.ebuild} | 23 +++++++++++++++++-----
 ....0.9999.ebuild => compiler-rt-21.1.0-r1.ebuild} | 21 ++++++++++++++++----
 .../compiler-rt/compiler-rt-22.0.0.9999.ebuild     | 18 ++++++++++++++---
 .../compiler-rt-22.0.0_pre20250831.ebuild          | 18 ++++++++++++++---
 4 files changed, 65 insertions(+), 15 deletions(-)

diff --git a/llvm-runtimes/compiler-rt/compiler-rt-22.0.0.9999.ebuild b/llvm-runtimes/compiler-rt/compiler-rt-20.1.8-r1.ebuild
similarity index 86%
copy from llvm-runtimes/compiler-rt/compiler-rt-22.0.0.9999.ebuild
copy to llvm-runtimes/compiler-rt/compiler-rt-20.1.8-r1.ebuild
index 2a785527c374..200e6d37d46f 100644
--- a/llvm-runtimes/compiler-rt/compiler-rt-22.0.0.9999.ebuild
+++ b/llvm-runtimes/compiler-rt/compiler-rt-20.1.8-r1.ebuild
@@ -12,7 +12,8 @@ HOMEPAGE="https://llvm.org/"
 
 LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
 SLOT="${LLVM_MAJOR}"
-IUSE="+abi_x86_32 abi_x86_64 +atomic-builtins +clang +debug test"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc64 ~riscv ~x86 ~amd64-linux ~arm64-macos ~ppc-macos ~x64-macos"
+IUSE="+abi_x86_32 abi_x86_64 +atomic-builtins +clang debug test"
 REQUIRED_USE="atomic-builtins? ( clang )"
 RESTRICT="!test? ( test ) !clang? ( test )"
 
@@ -20,7 +21,10 @@ DEPEND="
 	llvm-core/llvm:${LLVM_MAJOR}
 "
 BDEPEND="
-	clang? ( llvm-core/clang:${LLVM_MAJOR} )
+	clang? (
+		llvm-core/clang:${LLVM_MAJOR}
+		llvm-core/clang-linker-config:${LLVM_MAJOR}
+	)
 	test? (
 		$(python_gen_any_dep ">=dev-python/lit-15[\${PYTHON_USEDEP}]")
 		=llvm-core/clang-${LLVM_VERSION}*:${LLVM_MAJOR}
@@ -30,7 +34,7 @@ BDEPEND="
 	)
 "
 
-LLVM_COMPONENTS=( compiler-rt cmake llvm/cmake third-party/siphash )
+LLVM_COMPONENTS=( compiler-rt cmake llvm/cmake )
 LLVM_TEST_COMPONENTS=( llvm/include/llvm/TargetParser )
 llvm.org_set_globals
 
@@ -77,11 +81,20 @@ src_configure() {
 		# Only do this conditionally to allow overriding with
 		# e.g. CC=clang-13 in case of breakage
 		if ! tc-is-clang ; then
-			local -x CC=${CHOST}-clang
-			local -x CXX=${CHOST}-clang++
+			local -x CC=${CHOST}-clang-${LLVM_MAJOR}
+			local -x CXX=${CHOST}-clang++-${LLVM_MAJOR}
 		fi
 
 		strip-unsupported-flags
+
+		# The full clang configuration might not be ready yet. Given that compiler-rt
+		# require runtime, use only the linker configuration.
+		local flags=(
+			--config="${ESYSROOT}"/etc/clang/"${LLVM_MAJOR}"/gentoo-linker.cfg
+		)
+		local -x CFLAGS="${CFLAGS} ${flags[@]}"
+		local -x CXXFLAGS="${CXXFLAGS} ${flags[@]}"
+		local -x LDFLAGS="${LDFLAGS} ${flags[@]}"
 	fi
 
 	if ! is_crosspkg && ! test_compiler ; then

diff --git a/llvm-runtimes/compiler-rt/compiler-rt-22.0.0.9999.ebuild b/llvm-runtimes/compiler-rt/compiler-rt-21.1.0-r1.ebuild
similarity index 87%
copy from llvm-runtimes/compiler-rt/compiler-rt-22.0.0.9999.ebuild
copy to llvm-runtimes/compiler-rt/compiler-rt-21.1.0-r1.ebuild
index 2a785527c374..9d0337799be0 100644
--- a/llvm-runtimes/compiler-rt/compiler-rt-22.0.0.9999.ebuild
+++ b/llvm-runtimes/compiler-rt/compiler-rt-21.1.0-r1.ebuild
@@ -12,7 +12,8 @@ HOMEPAGE="https://llvm.org/"
 
 LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
 SLOT="${LLVM_MAJOR}"
-IUSE="+abi_x86_32 abi_x86_64 +atomic-builtins +clang +debug test"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc64 ~riscv ~x86 ~amd64-linux ~arm64-macos ~ppc-macos ~x64-macos"
+IUSE="+abi_x86_32 abi_x86_64 +atomic-builtins +clang debug test"
 REQUIRED_USE="atomic-builtins? ( clang )"
 RESTRICT="!test? ( test ) !clang? ( test )"
 
@@ -20,7 +21,10 @@ DEPEND="
 	llvm-core/llvm:${LLVM_MAJOR}
 "
 BDEPEND="
-	clang? ( llvm-core/clang:${LLVM_MAJOR} )
+	clang? (
+		llvm-core/clang:${LLVM_MAJOR}
+		llvm-core/clang-linker-config:${LLVM_MAJOR}
+	)
 	test? (
 		$(python_gen_any_dep ">=dev-python/lit-15[\${PYTHON_USEDEP}]")
 		=llvm-core/clang-${LLVM_VERSION}*:${LLVM_MAJOR}
@@ -77,11 +81,20 @@ src_configure() {
 		# Only do this conditionally to allow overriding with
 		# e.g. CC=clang-13 in case of breakage
 		if ! tc-is-clang ; then
-			local -x CC=${CHOST}-clang
-			local -x CXX=${CHOST}-clang++
+			local -x CC=${CHOST}-clang-${LLVM_MAJOR}
+			local -x CXX=${CHOST}-clang++-${LLVM_MAJOR}
 		fi
 
 		strip-unsupported-flags
+
+		# The full clang configuration might not be ready yet. Given that compiler-rt
+		# require runtime, use only the linker configuration.
+		local flags=(
+			--config="${ESYSROOT}"/etc/clang/"${LLVM_MAJOR}"/gentoo-linker.cfg
+		)
+		local -x CFLAGS="${CFLAGS} ${flags[@]}"
+		local -x CXXFLAGS="${CXXFLAGS} ${flags[@]}"
+		local -x LDFLAGS="${LDFLAGS} ${flags[@]}"
 	fi
 
 	if ! is_crosspkg && ! test_compiler ; then

diff --git a/llvm-runtimes/compiler-rt/compiler-rt-22.0.0.9999.ebuild b/llvm-runtimes/compiler-rt/compiler-rt-22.0.0.9999.ebuild
index 2a785527c374..86fe125a08cd 100644
--- a/llvm-runtimes/compiler-rt/compiler-rt-22.0.0.9999.ebuild
+++ b/llvm-runtimes/compiler-rt/compiler-rt-22.0.0.9999.ebuild
@@ -20,7 +20,10 @@ DEPEND="
 	llvm-core/llvm:${LLVM_MAJOR}
 "
 BDEPEND="
-	clang? ( llvm-core/clang:${LLVM_MAJOR} )
+	clang? (
+		llvm-core/clang:${LLVM_MAJOR}
+		llvm-core/clang-linker-config:${LLVM_MAJOR}
+	)
 	test? (
 		$(python_gen_any_dep ">=dev-python/lit-15[\${PYTHON_USEDEP}]")
 		=llvm-core/clang-${LLVM_VERSION}*:${LLVM_MAJOR}
@@ -77,11 +80,20 @@ src_configure() {
 		# Only do this conditionally to allow overriding with
 		# e.g. CC=clang-13 in case of breakage
 		if ! tc-is-clang ; then
-			local -x CC=${CHOST}-clang
-			local -x CXX=${CHOST}-clang++
+			local -x CC=${CHOST}-clang-${LLVM_MAJOR}
+			local -x CXX=${CHOST}-clang++-${LLVM_MAJOR}
 		fi
 
 		strip-unsupported-flags
+
+		# The full clang configuration might not be ready yet. Given that compiler-rt
+		# require runtime, use only the linker configuration.
+		local flags=(
+			--config="${ESYSROOT}"/etc/clang/"${LLVM_MAJOR}"/gentoo-linker.cfg
+		)
+		local -x CFLAGS="${CFLAGS} ${flags[@]}"
+		local -x CXXFLAGS="${CXXFLAGS} ${flags[@]}"
+		local -x LDFLAGS="${LDFLAGS} ${flags[@]}"
 	fi
 
 	if ! is_crosspkg && ! test_compiler ; then

diff --git a/llvm-runtimes/compiler-rt/compiler-rt-22.0.0_pre20250831.ebuild b/llvm-runtimes/compiler-rt/compiler-rt-22.0.0_pre20250831.ebuild
index 2a785527c374..86fe125a08cd 100644
--- a/llvm-runtimes/compiler-rt/compiler-rt-22.0.0_pre20250831.ebuild
+++ b/llvm-runtimes/compiler-rt/compiler-rt-22.0.0_pre20250831.ebuild
@@ -20,7 +20,10 @@ DEPEND="
 	llvm-core/llvm:${LLVM_MAJOR}
 "
 BDEPEND="
-	clang? ( llvm-core/clang:${LLVM_MAJOR} )
+	clang? (
+		llvm-core/clang:${LLVM_MAJOR}
+		llvm-core/clang-linker-config:${LLVM_MAJOR}
+	)
 	test? (
 		$(python_gen_any_dep ">=dev-python/lit-15[\${PYTHON_USEDEP}]")
 		=llvm-core/clang-${LLVM_VERSION}*:${LLVM_MAJOR}
@@ -77,11 +80,20 @@ src_configure() {
 		# Only do this conditionally to allow overriding with
 		# e.g. CC=clang-13 in case of breakage
 		if ! tc-is-clang ; then
-			local -x CC=${CHOST}-clang
-			local -x CXX=${CHOST}-clang++
+			local -x CC=${CHOST}-clang-${LLVM_MAJOR}
+			local -x CXX=${CHOST}-clang++-${LLVM_MAJOR}
 		fi
 
 		strip-unsupported-flags
+
+		# The full clang configuration might not be ready yet. Given that compiler-rt
+		# require runtime, use only the linker configuration.
+		local flags=(
+			--config="${ESYSROOT}"/etc/clang/"${LLVM_MAJOR}"/gentoo-linker.cfg
+		)
+		local -x CFLAGS="${CFLAGS} ${flags[@]}"
+		local -x CXXFLAGS="${CXXFLAGS} ${flags[@]}"
+		local -x LDFLAGS="${LDFLAGS} ${flags[@]}"
 	fi
 
 	if ! is_crosspkg && ! test_compiler ; then


             reply	other threads:[~2025-09-02 14:29 UTC|newest]

Thread overview: 105+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-09-02 14:29 Michał Górny [this message]
  -- strict thread matches above, loose matches on Subject: below --
2025-10-08 17:28 [gentoo-commits] repo/gentoo:master commit in: llvm-runtimes/compiler-rt/ Michał Górny
2025-10-04  9:16 Michał Górny
2025-10-03 11:43 Michał Górny
2025-10-01  6:35 Michał Górny
2025-09-24 16:18 Michał Górny
2025-09-24  2:27 Michał Górny
2025-09-10 11:47 Michał Górny
2025-09-07 19:47 Michał Górny
2025-08-31 13:28 Michał Górny
2025-08-27 17:00 Eli Schwartz
2025-08-27 17:00 Eli Schwartz
2025-08-27 12:28 Michał Górny
2025-08-26 19:38 Michał Górny
2025-08-24 19:02 Arthur Zamarin
2025-08-24 18:51 Arthur Zamarin
2025-08-24 18:51 Arthur Zamarin
2025-08-21  8:22 Michał Górny
2025-08-21  8:18 Michał Górny
2025-08-16 13:51 Michał Górny
2025-08-12 17:09 Michał Górny
2025-08-09  9:47 Michał Górny
2025-08-06 12:29 Michał Górny
2025-08-02 10:29 Michał Górny
2025-07-29 19:04 Michał Górny
2025-07-26 19:53 Michał Górny
2025-07-23  9:53 Michał Górny
2025-07-22  9:20 Michał Górny
2025-07-20 14:15 Michał Górny
2025-07-20  8:24 Sam James
2025-07-20  8:24 Sam James
2025-07-19  6:50 Michał Górny
2025-07-13 20:03 Michał Górny
2025-07-09 18:49 Michał Górny
2025-06-28 15:03 Michał Górny
2025-06-28 14:55 Michał Górny
2025-06-14 14:24 Sam James
2025-06-14 11:02 Arthur Zamarin
2025-06-14  7:15 Michał Górny
2025-06-07 18:05 Michał Górny
2025-05-29 20:22 Michał Górny
2025-05-29  4:22 Michał Górny
2025-05-28 11:54 Michał Górny
2025-05-28 10:50 Michał Górny
2025-05-24 11:56 Michał Górny
2025-05-17 12:59 Michał Górny
2025-05-17  5:31 Michał Górny
2025-05-16  9:31 Michał Górny
2025-05-10 13:03 Michał Górny
2025-05-03 19:42 Michał Górny
2025-05-03 10:07 Michał Górny
2025-04-26 15:59 Michał Górny
2025-04-21 15:26 Viorel Munteanu
2025-04-20 11:50 Michał Górny
2025-04-19  6:29 Michał Górny
2025-04-16 18:34 Michał Górny
2025-04-15 10:15 Michał Górny
2025-04-12 10:21 Michał Górny
2025-04-12  8:59 Michał Górny
2025-04-12  4:57 Michał Górny
2025-04-05 12:24 Michał Górny
2025-04-03 11:29 Michał Górny
2025-03-29 10:27 Michał Górny
2025-03-23 13:46 Arthur Zamarin
2025-03-23 13:46 Arthur Zamarin
2025-03-22 10:43 Michał Górny
2025-03-20 16:50 Michał Górny
2025-03-17 20:13 Michał Górny
2025-03-16 17:41 Michał Górny
2025-03-11 14:56 Michał Górny
2025-03-08 16:42 Arthur Zamarin
2025-03-05 10:13 Michał Górny
2025-03-05  6:25 Michał Górny
2025-03-01 12:58 Michał Górny
2025-03-01  8:34 Michał Górny
2025-02-26 18:55 Michał Górny
2025-02-25 14:03 Michał Górny
2025-02-22 15:19 Michał Górny
2025-02-15  7:19 Michał Górny
2025-02-13  7:53 Michał Górny
2025-02-11 11:29 Michał Górny
2025-02-08 11:51 Michał Górny
2025-02-07 20:08 Arthur Zamarin
2025-02-02 18:25 Michał Górny
2025-02-01 13:15 Michał Górny
2025-02-01  8:05 Michał Górny
2025-01-31 21:51 Michał Górny
2025-01-25 13:33 Michał Górny
2025-01-22 19:15 Michał Górny
2025-01-18 15:09 Michał Górny
2025-01-18  8:21 Michał Górny
2025-01-15  4:24 Michał Górny
2025-01-11 18:12 Michał Górny
2025-01-04 15:28 Michał Górny
2024-12-28 19:35 Michał Górny
2024-12-27 21:25 Michał Górny
2024-12-24  7:38 Sam James
2024-12-21 10:28 Michał Górny
2024-12-17 21:37 Michał Górny
2024-12-16  5:57 Michał Górny
2024-12-12  5:03 Sam James
2024-12-12  5:03 Sam James
2024-12-11 20:31 Sam James
2024-12-11 20:31 Sam James
2024-12-11 20:31 Sam James

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1756819064.f1d6e8dd62416c2c4fba99600600b068fdbc21fd.mgorny@gentoo \
    --to=mgorny@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox