diff options
author | Fangrui Song <maskray@google.com> | 2021-08-30 13:59:33 -0700 |
---|---|---|
committer | Fangrui Song <maskray@google.com> | 2021-08-31 20:23:34 -0700 |
commit | 224edada607ebc6aaa1aadaae423128fae7880df (patch) | |
tree | 95f5da42b7f141f21bb460049257a6f34a2a7ce0 /sysdeps/x86/Makefile | |
parent | 60dfb30976761c9b20a22f18356e0c3e581f5394 (diff) | |
download | glibc-224edada607ebc6aaa1aadaae423128fae7880df.zip glibc-224edada607ebc6aaa1aadaae423128fae7880df.tar.gz glibc-224edada607ebc6aaa1aadaae423128fae7880df.tar.bz2 |
configure: Allow LD to be LLD 13.0.0 or above [BZ #26558]
When using LLD (LLVM linker) as the linker, configure prints a confusing
message.
*** These critical programs are missing or too old: GNU ld
LLD>=13.0.0 can build glibc --enable-static-pie. (8.0.0 needs one
workaround for -Wl,-defsym=_begin=0. 9.0.0 works with
--disable-static-pie).
XFAIL two tests sysdeps/x86/tst-ifunc-isa-* which have the BZ #28154
issue (LLD follows the PowerPC port of GNU ld for ifunc by placing
IRELATIVE relocations in .rela.dyn, triggering a glibc ifunc fragility).
The set of dynamic symbols is the same with GNU ld and LLD,
modulo unused SHN_ABS version node symbols.
For comparison, gold does not support --enable-static-pie
yet (--no-dynamic-linker is unsupported BZ #22221), yet
has 6 failures more than LLD. gold linked libc.so has
larger .dynsym differences with GNU ld and LLD
(non-default version symbols are changed to default versions
by a version script BZ #28196).
Diffstat (limited to 'sysdeps/x86/Makefile')
-rw-r--r-- | sysdeps/x86/Makefile | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/sysdeps/x86/Makefile b/sysdeps/x86/Makefile index 5ee06f9..402986f 100644 --- a/sysdeps/x86/Makefile +++ b/sysdeps/x86/Makefile @@ -22,12 +22,16 @@ tests += \ tst-ifunc-isa-1-static tests-static += \ tst-ifunc-isa-1-static +test-xfail-tst-ifunc-isa-1 = $(with-lld) +test-xfail-tst-ifunc-isa-1-static = $(with-lld) ifneq ($(have-tunables),no) tests += \ tst-ifunc-isa-2 \ tst-ifunc-isa-2-static tests-static += \ tst-ifunc-isa-2-static +test-xfail-tst-ifunc-isa-2 = $(with-lld) +test-xfail-tst-ifunc-isa-2-static = $(with-lld) endif endif endif |