summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam James <sam@gentoo.org>2024-03-12 07:57:41 +0000
committerSam James <sam@gentoo.org>2024-03-12 08:00:18 +0000
commit3b08335ec801c4736369fa57bce00c1c8669682d (patch)
tree0c6a35dbd8eae8e7e2b66add503b6e4fbd538bde /sys-devel
parentsys-libs/compiler-rt-sanitizers: skip -Wthread-safety on older versions (diff)
downloadgentoo-3b08335ec801c4736369fa57bce00c1c8669682d.tar.gz
gentoo-3b08335ec801c4736369fa57bce00c1c8669682d.tar.bz2
gentoo-3b08335ec801c4736369fa57bce00c1c8669682d.zip
sys-devel/llvm: filter LTO for GCC again
These failures aren't GCC specific but only GCC has these warnings implemented and it's less likely that LLVM will miscompile itself because people will test it more, even if the issue is UB in LLVM. Filter to avoid people hitting roadblocks on a common package when using safe LTO flags (-Werror=...). Closes: https://bugs.gentoo.org/917536 Closes: https://bugs.gentoo.org/926529 Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'sys-devel')
-rw-r--r--sys-devel/llvm/llvm-17.0.6.ebuild7
-rw-r--r--sys-devel/llvm/llvm-18.1.0.ebuild7
-rw-r--r--sys-devel/llvm/llvm-19.0.0.9999.ebuild7
-rw-r--r--sys-devel/llvm/llvm-19.0.0_pre20240302.ebuild7
-rw-r--r--sys-devel/llvm/llvm-19.0.0_pre20240309.ebuild7
5 files changed, 30 insertions, 5 deletions
diff --git a/sys-devel/llvm/llvm-17.0.6.ebuild b/sys-devel/llvm/llvm-17.0.6.ebuild
index c5159086d72c..bb3bd996f1e3 100644
--- a/sys-devel/llvm/llvm-17.0.6.ebuild
+++ b/sys-devel/llvm/llvm-17.0.6.ebuild
@@ -5,7 +5,7 @@ EAPI=8
PYTHON_COMPAT=( python3_{10..12} )
-inherit cmake llvm.org multilib-minimal pax-utils python-any-r1
+inherit cmake flag-o-matic llvm.org multilib-minimal pax-utils python-any-r1
inherit toolchain-funcs
DESCRIPTION="Low Level Virtual Machine"
@@ -338,6 +338,11 @@ get_distribution_components() {
}
multilib_src_configure() {
+ # ODR violations (bug #917536, bug #926529). Just do it for GCC for now
+ # to avoid people grumbling. GCC is, anecdotally, more likely to miscompile
+ # LLVM with LTO anyway (which is not necessarily its fault).
+ tc-is-gcc && filter-lto
+
local ffi_cflags ffi_ldflags
if use libffi; then
ffi_cflags=$($(tc-getPKG_CONFIG) --cflags-only-I libffi)
diff --git a/sys-devel/llvm/llvm-18.1.0.ebuild b/sys-devel/llvm/llvm-18.1.0.ebuild
index 4c955a46c3e0..af10d82f811a 100644
--- a/sys-devel/llvm/llvm-18.1.0.ebuild
+++ b/sys-devel/llvm/llvm-18.1.0.ebuild
@@ -5,7 +5,7 @@ EAPI=8
PYTHON_COMPAT=( python3_{10..12} )
-inherit cmake llvm.org multilib-minimal pax-utils python-any-r1
+inherit cmake flag-o-matic llvm.org multilib-minimal pax-utils python-any-r1
inherit toolchain-funcs
DESCRIPTION="Low Level Virtual Machine"
@@ -346,6 +346,11 @@ get_distribution_components() {
}
multilib_src_configure() {
+ # ODR violations (bug #917536, bug #926529). Just do it for GCC for now
+ # to avoid people grumbling. GCC is, anecdotally, more likely to miscompile
+ # LLVM with LTO anyway (which is not necessarily its fault).
+ tc-is-gcc && filter-lto
+
local ffi_cflags ffi_ldflags
if use libffi; then
ffi_cflags=$($(tc-getPKG_CONFIG) --cflags-only-I libffi)
diff --git a/sys-devel/llvm/llvm-19.0.0.9999.ebuild b/sys-devel/llvm/llvm-19.0.0.9999.ebuild
index 5031f93dd455..b4633658a186 100644
--- a/sys-devel/llvm/llvm-19.0.0.9999.ebuild
+++ b/sys-devel/llvm/llvm-19.0.0.9999.ebuild
@@ -5,7 +5,7 @@ EAPI=8
PYTHON_COMPAT=( python3_{10..12} )
-inherit cmake llvm.org multilib-minimal pax-utils python-any-r1
+inherit cmake flag-o-matic llvm.org multilib-minimal pax-utils python-any-r1
inherit toolchain-funcs
DESCRIPTION="Low Level Virtual Machine"
@@ -345,6 +345,11 @@ get_distribution_components() {
}
multilib_src_configure() {
+ # ODR violations (bug #917536, bug #926529). Just do it for GCC for now
+ # to avoid people grumbling. GCC is, anecdotally, more likely to miscompile
+ # LLVM with LTO anyway (which is not necessarily its fault).
+ tc-is-gcc && filter-lto
+
local ffi_cflags ffi_ldflags
if use libffi; then
ffi_cflags=$($(tc-getPKG_CONFIG) --cflags-only-I libffi)
diff --git a/sys-devel/llvm/llvm-19.0.0_pre20240302.ebuild b/sys-devel/llvm/llvm-19.0.0_pre20240302.ebuild
index 5031f93dd455..b4633658a186 100644
--- a/sys-devel/llvm/llvm-19.0.0_pre20240302.ebuild
+++ b/sys-devel/llvm/llvm-19.0.0_pre20240302.ebuild
@@ -5,7 +5,7 @@ EAPI=8
PYTHON_COMPAT=( python3_{10..12} )
-inherit cmake llvm.org multilib-minimal pax-utils python-any-r1
+inherit cmake flag-o-matic llvm.org multilib-minimal pax-utils python-any-r1
inherit toolchain-funcs
DESCRIPTION="Low Level Virtual Machine"
@@ -345,6 +345,11 @@ get_distribution_components() {
}
multilib_src_configure() {
+ # ODR violations (bug #917536, bug #926529). Just do it for GCC for now
+ # to avoid people grumbling. GCC is, anecdotally, more likely to miscompile
+ # LLVM with LTO anyway (which is not necessarily its fault).
+ tc-is-gcc && filter-lto
+
local ffi_cflags ffi_ldflags
if use libffi; then
ffi_cflags=$($(tc-getPKG_CONFIG) --cflags-only-I libffi)
diff --git a/sys-devel/llvm/llvm-19.0.0_pre20240309.ebuild b/sys-devel/llvm/llvm-19.0.0_pre20240309.ebuild
index 5031f93dd455..b4633658a186 100644
--- a/sys-devel/llvm/llvm-19.0.0_pre20240309.ebuild
+++ b/sys-devel/llvm/llvm-19.0.0_pre20240309.ebuild
@@ -5,7 +5,7 @@ EAPI=8
PYTHON_COMPAT=( python3_{10..12} )
-inherit cmake llvm.org multilib-minimal pax-utils python-any-r1
+inherit cmake flag-o-matic llvm.org multilib-minimal pax-utils python-any-r1
inherit toolchain-funcs
DESCRIPTION="Low Level Virtual Machine"
@@ -345,6 +345,11 @@ get_distribution_components() {
}
multilib_src_configure() {
+ # ODR violations (bug #917536, bug #926529). Just do it for GCC for now
+ # to avoid people grumbling. GCC is, anecdotally, more likely to miscompile
+ # LLVM with LTO anyway (which is not necessarily its fault).
+ tc-is-gcc && filter-lto
+
local ffi_cflags ffi_ldflags
if use libffi; then
ffi_cflags=$($(tc-getPKG_CONFIG) --cflags-only-I libffi)