diff options
author | Khem Raj <raj.khem@gmail.com> | 2023-08-21 15:58:45 -0700 |
---|---|---|
committer | Khem Raj <raj.khem@gmail.com> | 2023-08-22 18:04:45 -0700 |
commit | 4c124cadcc2023856686317de3d0304dcb2349bd (patch) | |
tree | 2cff0e4653c181708ad7466a04299a3873fd7bbf | |
parent | 2e4dcca830ad68c6573837390cfd9aa28acb2226 (diff) | |
download | meta-clang-4c124cadcc2023856686317de3d0304dcb2349bd.tar.gz |
go-runtime: Use BFD linker when LLD is default system linker on aarch64
go linker is not able to link subsequent binaries e.g. gosu with lld
produced libstd.so and crashes. This is just seen on arm64
Signed-off-by: Khem Raj <raj.khem@gmail.com>
-rw-r--r-- | conf/nonclangable.conf | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/conf/nonclangable.conf b/conf/nonclangable.conf index d34b6b6..7bfe1d9 100644 --- a/conf/nonclangable.conf +++ b/conf/nonclangable.conf | |||
@@ -564,4 +564,9 @@ LDFLAGS:append:pn-libffi:x86:toolchain-clang = "${@bb.utils.contains('DISTRO_FEA | |||
564 | LDFLAGS:append:pn-libffi:arm:toolchain-clang = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-lld', ' -Wl,--undefined-version', '', d)}" | 564 | LDFLAGS:append:pn-libffi:arm:toolchain-clang = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-lld', ' -Wl,--undefined-version', '', d)}" |
565 | LDFLAGS:append:pn-elfutils:toolchain-clang = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-lld', ' -Wl,--undefined-version', '', d)}" | 565 | LDFLAGS:append:pn-elfutils:toolchain-clang = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-lld', ' -Wl,--undefined-version', '', d)}" |
566 | 566 | ||
567 | # Avoid's go linker crash as reported in https://github.com/golang/go/issues/61872 | ||
568 | # it happens when libstd.so is linked with lld for aarch64 | ||
569 | LDFLAGS:append:pn-go-runtime:toolchain-clang:aarch64 = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-lld', ' -fuse-ld=bfd', '', d)}" | ||
570 | LDFLAGS:remove:pn-go-runtime:toolchain-clang:aarch64 = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-lld', '-fuse-ld=lld', '', d)}" | ||
571 | |||
567 | LD:pn-gnu-efi:toolchain-clang = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-lld', '${HOST_PREFIX}ld.bfd${TOOLCHAIN_OPTIONS} ${HOST_LD_ARCH}', '${HOST_PREFIX}ld${TOOLCHAIN_OPTIONS} ${HOST_LD_ARCH}', d)}" | 572 | LD:pn-gnu-efi:toolchain-clang = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-lld', '${HOST_PREFIX}ld.bfd${TOOLCHAIN_OPTIONS} ${HOST_LD_ARCH}', '${HOST_PREFIX}ld${TOOLCHAIN_OPTIONS} ${HOST_LD_ARCH}', d)}" |