summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2025-05-06 14:22:55 -0700
committerKhem Raj <raj.khem@gmail.com>2025-05-06 18:09:21 -0700
commit02e254ba1fb4937530d94a154b4c713c904c2d06 (patch)
tree0c9e72b70099f59eb1f766b086b8d01418be19e2
parent0a368377826ffda847979b8da497f679071ab2d5 (diff)
downloadmeta-clang-master.tar.gz
clang: Do not add lld linker for ppc32 when ld-is-lld is in distro featuresHEADmaster
Causes binaries to segfault in qemu user mode Signed-off-by: Khem Raj <raj.khem@gmail.com>
-rw-r--r--classes/clang.bbclass3
1 files changed, 2 insertions, 1 deletions
diff --git a/classes/clang.bbclass b/classes/clang.bbclass
index 0671ef6..450500d 100644
--- a/classes/clang.bbclass
+++ b/classes/clang.bbclass
@@ -78,8 +78,9 @@ LDFLAGS:toolchain-clang:class-nativesdk = "${BUILDSDK_LDFLAGS} \
78 -Wl,-rpath-link,${STAGING_LIBDIR}/.. \ 78 -Wl,-rpath-link,${STAGING_LIBDIR}/.. \
79 -Wl,-rpath,${libdir}/.. " 79 -Wl,-rpath,${libdir}/.. "
80 80
81# Enable lld globally" 81# Enable lld globally except for ppc32 where it causes random segfaults in Qemu usermode
82LDFLAGS:append:toolchain-clang = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-lld', ' -fuse-ld=lld', '', d)}" 82LDFLAGS:append:toolchain-clang = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-lld', ' -fuse-ld=lld', '', d)}"
83LDFLAGS:remove:toolchain-clang:powerpc = "-fuse-ld=lld"
83 84
84# Remove gcc specific -fcanon-prefix-map option, added in gcc-13+ 85# Remove gcc specific -fcanon-prefix-map option, added in gcc-13+
85# clang does not support it yet 86# clang does not support it yet