Makeconfig: sandwich gnulib-tests between libc/ld linking of tests
Commit Message
This is a continuation of the discussion from [1] and replaces the
parent patch "powerpc64le: link tests against ld.so" [2].
I have tested this on ppc64le and x86-64 and it did not break any
tests.
[1] <https://sourceware.org/pipermail/libc-alpha/2020-March/111788.html>
[2] <https://sourceware.org/pipermail/libc-alpha/2020-March/111726.html>
---8<---
This better resembles the default linking process with the gnulibs,
and also resolves the increasingly difficult to maintain
f128-loader-link usage on powerpc64le as some libgcc symbols are
dependent on those found in the loader (ld).
Likewise, rename link-libc-before-gnulib to link-libc-between-gnulib
to more accurately describe what is happening.
---
Makeconfig | 6 +++---
sysdeps/ieee754/ldbl-128ibm-compat/Makefile | 13 -------------
sysdeps/powerpc/powerpc64/le/Makefile | 17 -----------------
3 files changed, 3 insertions(+), 33 deletions(-)
Comments
Ping.
On 3/11/20 2:42 PM, Paul E. Murphy via Libc-alpha wrote:
> This is a continuation of the discussion from [1] and replaces the
> parent patch "powerpc64le: link tests against ld.so" [2].
>
> I have tested this on ppc64le and x86-64 and it did not break any
> tests.
>
> [1] <https://sourceware.org/pipermail/libc-alpha/2020-March/111788.html>
> [2] <https://sourceware.org/pipermail/libc-alpha/2020-March/111726.html>
>
> ---8<---
>
> This better resembles the default linking process with the gnulibs,
> and also resolves the increasingly difficult to maintain
> f128-loader-link usage on powerpc64le as some libgcc symbols are
> dependent on those found in the loader (ld).
>
> Likewise, rename link-libc-before-gnulib to link-libc-between-gnulib
> to more accurately describe what is happening.
> ---
> Makeconfig | 6 +++---
> sysdeps/ieee754/ldbl-128ibm-compat/Makefile | 13 -------------
> sysdeps/powerpc/powerpc64/le/Makefile | 17 -----------------
> 3 files changed, 3 insertions(+), 33 deletions(-)
>
> diff --git a/Makeconfig b/Makeconfig
> index f252842979..b9e28f4f3d 100644
> --- a/Makeconfig
> +++ b/Makeconfig
> @@ -564,13 +564,13 @@ else
> link-libc-tests-rpath-link = $(link-libc-rpath-link)
> endif # build-hardcoded-path-in-tests
>
> -link-libc-before-gnulib = $(common-objpfx)libc.so$(libc.so-version) \
> +link-libc-between-gnulib = $(common-objpfx)libc.so$(libc.so-version) \
> $(common-objpfx)$(patsubst %,$(libtype.oS),c) \
> -Wl,--as-needed $(elf-objpfx)ld.so \
> -Wl,--no-as-needed
> -link-libc = $(link-libc-before-gnulib) $(gnulib)
> +link-libc = $(link-libc-between-gnulib) $(gnulib)
>
> -link-libc-tests-after-rpath-link = $(link-libc-before-gnulib) $(gnulib-tests)
> +link-libc-tests-after-rpath-link = $(gnulib-tests) $(link-libc-between-gnulib) $(gnulib-tests)
> link-libc-tests = $(link-libc-tests-rpath-link) \
> $(link-libc-tests-after-rpath-link)
> # Pretty printer test programs always require rpath instead of rpath-link.
> diff --git a/sysdeps/ieee754/ldbl-128ibm-compat/Makefile b/sysdeps/ieee754/ldbl-128ibm-compat/Makefile
> index 42f974f85d..705424f7c2 100644
> --- a/sysdeps/ieee754/ldbl-128ibm-compat/Makefile
> +++ b/sysdeps/ieee754/ldbl-128ibm-compat/Makefile
> @@ -30,7 +30,6 @@ tests-internal += test-wcstold-ibm128 test-wcstold-ieee128
> CFLAGS-test-wcstold-ieee128.c += -mfloat128 -mabi=ieeelongdouble -Wno-psabi
> CFLAGS-test-wcstold-ibm128.c += -mabi=ibmlongdouble -Wno-psabi
>
> -$(objpfx)test-wcstold-ieee128: gnulib-tests += $(f128-loader-link)
> endif
>
> ifeq ($(subdir),stdio-common)
> @@ -89,26 +88,18 @@ tests-internal += test-scanf-ieee128 test-scanf-ibm128
> CFLAGS-test-scanf-ieee128.c += -mfloat128 -mabi=ieeelongdouble -Wno-psabi -std=c89 -D_GNU_SOURCE
> CFLAGS-test-scanf-ibm128.c += -mabi=ibmlongdouble -Wno-psabi -std=c89 -D_GNU_SOURCE
>
> -$(objpfx)test-scanf-ieee128: gnulib-tests += $(f128-loader-link)
> -
> tests-internal += test-wscanf-ieee128 test-wscanf-ibm128
> CFLAGS-test-wscanf-ieee128.c += -mfloat128 -mabi=ieeelongdouble -Wno-psabi -std=c89 -D_GNU_SOURCE
> CFLAGS-test-wscanf-ibm128.c += -mabi=ibmlongdouble -Wno-psabi -std=c89 -D_GNU_SOURCE
>
> -$(objpfx)test-wscanf-ieee128: gnulib-tests += $(f128-loader-link)
> -
> tests-internal += test-isoc99-scanf-ieee128 test-isoc99-scanf-ibm128
> CFLAGS-test-isoc99-scanf-ieee128.c += -mfloat128 -mabi=ieeelongdouble -Wno-psabi -std=c99
> CFLAGS-test-isoc99-scanf-ibm128.c += -mabi=ibmlongdouble -Wno-psabi -std=c99
>
> -$(objpfx)test-isoc99-scanf-ieee128: gnulib-tests += $(f128-loader-link)
> -
> tests-internal += test-isoc99-wscanf-ieee128 test-isoc99-wscanf-ibm128
> CFLAGS-test-isoc99-wscanf-ieee128.c += -mfloat128 -mabi=ieeelongdouble -Wno-psabi -std=c99
> CFLAGS-test-isoc99-wscanf-ibm128.c += -mabi=ibmlongdouble -Wno-psabi -std=c99
>
> -$(objpfx)test-isoc99-wscanf-ieee128: gnulib-tests += $(f128-loader-link)
> -
> ifeq ($(run-built-tests),yes)
> tests-special += $(objpfx)test-scanf-ieee128.out
> tests-special += $(objpfx)test-scanf-ibm128.out
> @@ -269,9 +260,6 @@ tests-internal += tst-ibm128-warn tst-ieee128-warn
> tests-internal += tst-ibm128-error tst-ieee128-error
> tests-internal += tst-ibm128-efgcvt tst-ieee128-efgcvt
>
> -$(objpfx)tst-ieee128-efgcvt: gnulib-tests += $(f128-loader-link)
> -$(objpfx)tst-ldbl-efgcvt: gnulib-tests += $(f128-loader-link)
> -
> $(objpfx)tst-ibm128-%.c: tst-ldbl-%.c
> cp $< $@
>
> @@ -316,7 +304,6 @@ tests-internal += test-strfrom-ibm128 test-strfrom-ieee128
> CFLAGS-test-strfrom-ieee128.c += -mfloat128 -mabi=ieeelongdouble -Wno-psabi
> CFLAGS-test-strfrom-ibm128.c += -mabi=ibmlongdouble -Wno-psabi
>
> -$(objpfx)test-strfrom-ieee128: gnulib-tests += $(f128-loader-link)
> endif
>
> ifeq ($(subdir),math)
> diff --git a/sysdeps/powerpc/powerpc64/le/Makefile b/sysdeps/powerpc/powerpc64/le/Makefile
> index 0ce3868c3c..f08994dfc3 100644
> --- a/sysdeps/powerpc/powerpc64/le/Makefile
> +++ b/sysdeps/powerpc/powerpc64/le/Makefile
> @@ -1,11 +1,6 @@
> # When building float128 we need to ensure -mfloat128 is
> # passed to all such object files.
>
> -# libgcc requires __tcb_parse_hwcap_and_convert_at_platform when built with
> -# a binary128 type. That symbol is provided by the loader on dynamically
> -# linked executables, forcing to link the loader after libgcc link.
> -f128-loader-link = -Wl,--as-needed $(elf-objpfx)ld.so -Wl,--no-as-needed
> -
> ifeq ($(subdir),math)
> # sqrtf128 requires emulation before POWER9.
> CPPFLAGS += -I../soft-fp
> @@ -28,13 +23,6 @@ CFLAGS-test-math-iscanonical.cc += -mfloat128
> CFLAGS-test-math-iseqsig.cc += -mfloat128
> CFLAGS-test-math-issignaling.cc += -mfloat128
> CFLAGS-test-math-iszero.cc += -mfloat128
> -$(foreach test, \
> - test-float128% test-ifloat128% test-float64x% test-ifloat64x% \
> - $(foreach pair,$(f128-pairs),test-$(pair)%) \
> - test-math-iscanonical test-math-iseqsig test-math-issignaling \
> - test-math-iszero, \
> - $(objpfx)$(test)): \
> - gnulib-tests += $(f128-loader-link)
> endif
>
> # Append flags to string <-> _Float128 routines.
> @@ -56,11 +44,6 @@ CFLAGS-tst-strfrom-locale.c += -mfloat128
> CFLAGS-strfrom-skeleton.c += -mfloat128
> CFLAGS-tst-strtod-nan-sign.c += -mfloat128
> CFLAGS-tst-wcstod-nan-sign.c += -mfloat128
> -$(foreach test,bug-strtod bug-strtod2 bug-strtod2 tst-strtod-round \
> -tst-wcstod-round tst-strtod6 tst-strrom tst-strfrom-locale \
> -tst-strtod-nan-locale tst-wcstod-nan-locale \
> -strfrom-skeleton tst-strtod-nan-sign tst-wcstod-nan-sign, \
> -$(objpfx)$(test)): gnulib-tests += $(f128-loader-link)
>
> # When building glibc with support for _Float128, the powers of ten tables in
> # fpioconst.c and in the string conversion functions must be extended. Some
>
Ping x2. I will commit this friday hearing no objections.
On 3/18/20 3:52 PM, Paul E Murphy via Libc-alpha wrote:
> Ping.
>
> On 3/11/20 2:42 PM, Paul E. Murphy via Libc-alpha wrote:
>> This is a continuation of the discussion from [1] and replaces the
>> parent patch "powerpc64le: link tests against ld.so" [2].
>>
>> I have tested this on ppc64le and x86-64 and it did not break any
>> tests.
>>
>> [1] <https://sourceware.org/pipermail/libc-alpha/2020-March/111788.html>
>> [2] <https://sourceware.org/pipermail/libc-alpha/2020-March/111726.html>
>>
>> ---8<---
>>
>> This better resembles the default linking process with the gnulibs,
>> and also resolves the increasingly difficult to maintain
>> f128-loader-link usage on powerpc64le as some libgcc symbols are
>> dependent on those found in the loader (ld).
>>
>> Likewise, rename link-libc-before-gnulib to link-libc-between-gnulib
>> to more accurately describe what is happening.
>> ---
>> Makeconfig | 6 +++---
>> sysdeps/ieee754/ldbl-128ibm-compat/Makefile | 13 -------------
>> sysdeps/powerpc/powerpc64/le/Makefile | 17 -----------------
>> 3 files changed, 3 insertions(+), 33 deletions(-)
>>
>> diff --git a/Makeconfig b/Makeconfig
>> index f252842979..b9e28f4f3d 100644
>> --- a/Makeconfig
>> +++ b/Makeconfig
>> @@ -564,13 +564,13 @@ else
>> link-libc-tests-rpath-link = $(link-libc-rpath-link)
>> endif # build-hardcoded-path-in-tests
>>
>> -link-libc-before-gnulib = $(common-objpfx)libc.so$(libc.so-version) \
>> +link-libc-between-gnulib = $(common-objpfx)libc.so$(libc.so-version) \
>> $(common-objpfx)$(patsubst %,$(libtype.oS),c) \
>> -Wl,--as-needed $(elf-objpfx)ld.so \
>> -Wl,--no-as-needed
>> -link-libc = $(link-libc-before-gnulib) $(gnulib)
>> +link-libc = $(link-libc-between-gnulib) $(gnulib)
>>
>> -link-libc-tests-after-rpath-link = $(link-libc-before-gnulib)
>> $(gnulib-tests)
>> +link-libc-tests-after-rpath-link = $(gnulib-tests)
>> $(link-libc-between-gnulib) $(gnulib-tests)
>> link-libc-tests = $(link-libc-tests-rpath-link) \
>> $(link-libc-tests-after-rpath-link)
>> # Pretty printer test programs always require rpath instead of
>> rpath-link.
>> diff --git a/sysdeps/ieee754/ldbl-128ibm-compat/Makefile
>> b/sysdeps/ieee754/ldbl-128ibm-compat/Makefile
>> index 42f974f85d..705424f7c2 100644
>> --- a/sysdeps/ieee754/ldbl-128ibm-compat/Makefile
>> +++ b/sysdeps/ieee754/ldbl-128ibm-compat/Makefile
>> @@ -30,7 +30,6 @@ tests-internal += test-wcstold-ibm128
>> test-wcstold-ieee128
>> CFLAGS-test-wcstold-ieee128.c += -mfloat128 -mabi=ieeelongdouble
>> -Wno-psabi
>> CFLAGS-test-wcstold-ibm128.c += -mabi=ibmlongdouble -Wno-psabi
>>
>> -$(objpfx)test-wcstold-ieee128: gnulib-tests += $(f128-loader-link)
>> endif
>>
>> ifeq ($(subdir),stdio-common)
>> @@ -89,26 +88,18 @@ tests-internal += test-scanf-ieee128
>> test-scanf-ibm128
>> CFLAGS-test-scanf-ieee128.c += -mfloat128 -mabi=ieeelongdouble
>> -Wno-psabi -std=c89 -D_GNU_SOURCE
>> CFLAGS-test-scanf-ibm128.c += -mabi=ibmlongdouble -Wno-psabi
>> -std=c89 -D_GNU_SOURCE
>>
>> -$(objpfx)test-scanf-ieee128: gnulib-tests += $(f128-loader-link)
>> -
>> tests-internal += test-wscanf-ieee128 test-wscanf-ibm128
>> CFLAGS-test-wscanf-ieee128.c += -mfloat128 -mabi=ieeelongdouble
>> -Wno-psabi -std=c89 -D_GNU_SOURCE
>> CFLAGS-test-wscanf-ibm128.c += -mabi=ibmlongdouble -Wno-psabi
>> -std=c89 -D_GNU_SOURCE
>>
>> -$(objpfx)test-wscanf-ieee128: gnulib-tests += $(f128-loader-link)
>> -
>> tests-internal += test-isoc99-scanf-ieee128 test-isoc99-scanf-ibm128
>> CFLAGS-test-isoc99-scanf-ieee128.c += -mfloat128
>> -mabi=ieeelongdouble -Wno-psabi -std=c99
>> CFLAGS-test-isoc99-scanf-ibm128.c += -mabi=ibmlongdouble -Wno-psabi
>> -std=c99
>>
>> -$(objpfx)test-isoc99-scanf-ieee128: gnulib-tests += $(f128-loader-link)
>> -
>> tests-internal += test-isoc99-wscanf-ieee128 test-isoc99-wscanf-ibm128
>> CFLAGS-test-isoc99-wscanf-ieee128.c += -mfloat128
>> -mabi=ieeelongdouble -Wno-psabi -std=c99
>> CFLAGS-test-isoc99-wscanf-ibm128.c += -mabi=ibmlongdouble -Wno-psabi
>> -std=c99
>>
>> -$(objpfx)test-isoc99-wscanf-ieee128: gnulib-tests += $(f128-loader-link)
>> -
>> ifeq ($(run-built-tests),yes)
>> tests-special += $(objpfx)test-scanf-ieee128.out
>> tests-special += $(objpfx)test-scanf-ibm128.out
>> @@ -269,9 +260,6 @@ tests-internal += tst-ibm128-warn tst-ieee128-warn
>> tests-internal += tst-ibm128-error tst-ieee128-error
>> tests-internal += tst-ibm128-efgcvt tst-ieee128-efgcvt
>>
>> -$(objpfx)tst-ieee128-efgcvt: gnulib-tests += $(f128-loader-link)
>> -$(objpfx)tst-ldbl-efgcvt: gnulib-tests += $(f128-loader-link)
>> -
>> $(objpfx)tst-ibm128-%.c: tst-ldbl-%.c
>> cp $< $@
>>
>> @@ -316,7 +304,6 @@ tests-internal += test-strfrom-ibm128
>> test-strfrom-ieee128
>> CFLAGS-test-strfrom-ieee128.c += -mfloat128 -mabi=ieeelongdouble
>> -Wno-psabi
>> CFLAGS-test-strfrom-ibm128.c += -mabi=ibmlongdouble -Wno-psabi
>>
>> -$(objpfx)test-strfrom-ieee128: gnulib-tests += $(f128-loader-link)
>> endif
>>
>> ifeq ($(subdir),math)
>> diff --git a/sysdeps/powerpc/powerpc64/le/Makefile
>> b/sysdeps/powerpc/powerpc64/le/Makefile
>> index 0ce3868c3c..f08994dfc3 100644
>> --- a/sysdeps/powerpc/powerpc64/le/Makefile
>> +++ b/sysdeps/powerpc/powerpc64/le/Makefile
>> @@ -1,11 +1,6 @@
>> # When building float128 we need to ensure -mfloat128 is
>> # passed to all such object files.
>>
>> -# libgcc requires __tcb_parse_hwcap_and_convert_at_platform when
>> built with
>> -# a binary128 type. That symbol is provided by the loader on
>> dynamically
>> -# linked executables, forcing to link the loader after libgcc link.
>> -f128-loader-link = -Wl,--as-needed $(elf-objpfx)ld.so -Wl,--no-as-needed
>> -
>> ifeq ($(subdir),math)
>> # sqrtf128 requires emulation before POWER9.
>> CPPFLAGS += -I../soft-fp
>> @@ -28,13 +23,6 @@ CFLAGS-test-math-iscanonical.cc += -mfloat128
>> CFLAGS-test-math-iseqsig.cc += -mfloat128
>> CFLAGS-test-math-issignaling.cc += -mfloat128
>> CFLAGS-test-math-iszero.cc += -mfloat128
>> -$(foreach test, \
>> - test-float128% test-ifloat128% test-float64x% test-ifloat64x% \
>> - $(foreach pair,$(f128-pairs),test-$(pair)%) \
>> - test-math-iscanonical test-math-iseqsig test-math-issignaling \
>> - test-math-iszero, \
>> - $(objpfx)$(test)): \
>> - gnulib-tests += $(f128-loader-link)
>> endif
>>
>> # Append flags to string <-> _Float128 routines.
>> @@ -56,11 +44,6 @@ CFLAGS-tst-strfrom-locale.c += -mfloat128
>> CFLAGS-strfrom-skeleton.c += -mfloat128
>> CFLAGS-tst-strtod-nan-sign.c += -mfloat128
>> CFLAGS-tst-wcstod-nan-sign.c += -mfloat128
>> -$(foreach test,bug-strtod bug-strtod2 bug-strtod2 tst-strtod-round \
>> -tst-wcstod-round tst-strtod6 tst-strrom tst-strfrom-locale \
>> -tst-strtod-nan-locale tst-wcstod-nan-locale \
>> -strfrom-skeleton tst-strtod-nan-sign tst-wcstod-nan-sign, \
>> -$(objpfx)$(test)): gnulib-tests += $(f128-loader-link)
>>
>> # When building glibc with support for _Float128, the powers of ten
>> tables in
>> # fpioconst.c and in the string conversion functions must be
>> extended. Some
>>
On Wed, 11 Mar 2020, Paul E. Murphy via Libc-alpha wrote:
> -link-libc-before-gnulib = $(common-objpfx)libc.so$(libc.so-version) \
> +link-libc-between-gnulib = $(common-objpfx)libc.so$(libc.so-version) \
> $(common-objpfx)$(patsubst %,$(libtype.oS),c) \
> -Wl,--as-needed $(elf-objpfx)ld.so \
> -Wl,--no-as-needed
The indentation for the last three lines here needs updating to reflect
the longer variable name (as each line starts lined up with the start of
the value on the first line).
The patch is OK with that fixed.
Thank you for reviewing! Pushed with requested fixes to spacing.
On 3/24/20 6:19 PM, Joseph Myers wrote:
> On Wed, 11 Mar 2020, Paul E. Murphy via Libc-alpha wrote:
>
>> -link-libc-before-gnulib = $(common-objpfx)libc.so$(libc.so-version) \
>> +link-libc-between-gnulib = $(common-objpfx)libc.so$(libc.so-version) \
>> $(common-objpfx)$(patsubst %,$(libtype.oS),c) \
>> -Wl,--as-needed $(elf-objpfx)ld.so \
>> -Wl,--no-as-needed
>
> The indentation for the last three lines here needs updating to reflect
> the longer variable name (as each line starts lined up with the start of
> the value on the first line).
>
> The patch is OK with that fixed.
>
@@ -564,13 +564,13 @@ else
link-libc-tests-rpath-link = $(link-libc-rpath-link)
endif # build-hardcoded-path-in-tests
-link-libc-before-gnulib = $(common-objpfx)libc.so$(libc.so-version) \
+link-libc-between-gnulib = $(common-objpfx)libc.so$(libc.so-version) \
$(common-objpfx)$(patsubst %,$(libtype.oS),c) \
-Wl,--as-needed $(elf-objpfx)ld.so \
-Wl,--no-as-needed
-link-libc = $(link-libc-before-gnulib) $(gnulib)
+link-libc = $(link-libc-between-gnulib) $(gnulib)
-link-libc-tests-after-rpath-link = $(link-libc-before-gnulib) $(gnulib-tests)
+link-libc-tests-after-rpath-link = $(gnulib-tests) $(link-libc-between-gnulib) $(gnulib-tests)
link-libc-tests = $(link-libc-tests-rpath-link) \
$(link-libc-tests-after-rpath-link)
# Pretty printer test programs always require rpath instead of rpath-link.
@@ -30,7 +30,6 @@ tests-internal += test-wcstold-ibm128 test-wcstold-ieee128
CFLAGS-test-wcstold-ieee128.c += -mfloat128 -mabi=ieeelongdouble -Wno-psabi
CFLAGS-test-wcstold-ibm128.c += -mabi=ibmlongdouble -Wno-psabi
-$(objpfx)test-wcstold-ieee128: gnulib-tests += $(f128-loader-link)
endif
ifeq ($(subdir),stdio-common)
@@ -89,26 +88,18 @@ tests-internal += test-scanf-ieee128 test-scanf-ibm128
CFLAGS-test-scanf-ieee128.c += -mfloat128 -mabi=ieeelongdouble -Wno-psabi -std=c89 -D_GNU_SOURCE
CFLAGS-test-scanf-ibm128.c += -mabi=ibmlongdouble -Wno-psabi -std=c89 -D_GNU_SOURCE
-$(objpfx)test-scanf-ieee128: gnulib-tests += $(f128-loader-link)
-
tests-internal += test-wscanf-ieee128 test-wscanf-ibm128
CFLAGS-test-wscanf-ieee128.c += -mfloat128 -mabi=ieeelongdouble -Wno-psabi -std=c89 -D_GNU_SOURCE
CFLAGS-test-wscanf-ibm128.c += -mabi=ibmlongdouble -Wno-psabi -std=c89 -D_GNU_SOURCE
-$(objpfx)test-wscanf-ieee128: gnulib-tests += $(f128-loader-link)
-
tests-internal += test-isoc99-scanf-ieee128 test-isoc99-scanf-ibm128
CFLAGS-test-isoc99-scanf-ieee128.c += -mfloat128 -mabi=ieeelongdouble -Wno-psabi -std=c99
CFLAGS-test-isoc99-scanf-ibm128.c += -mabi=ibmlongdouble -Wno-psabi -std=c99
-$(objpfx)test-isoc99-scanf-ieee128: gnulib-tests += $(f128-loader-link)
-
tests-internal += test-isoc99-wscanf-ieee128 test-isoc99-wscanf-ibm128
CFLAGS-test-isoc99-wscanf-ieee128.c += -mfloat128 -mabi=ieeelongdouble -Wno-psabi -std=c99
CFLAGS-test-isoc99-wscanf-ibm128.c += -mabi=ibmlongdouble -Wno-psabi -std=c99
-$(objpfx)test-isoc99-wscanf-ieee128: gnulib-tests += $(f128-loader-link)
-
ifeq ($(run-built-tests),yes)
tests-special += $(objpfx)test-scanf-ieee128.out
tests-special += $(objpfx)test-scanf-ibm128.out
@@ -269,9 +260,6 @@ tests-internal += tst-ibm128-warn tst-ieee128-warn
tests-internal += tst-ibm128-error tst-ieee128-error
tests-internal += tst-ibm128-efgcvt tst-ieee128-efgcvt
-$(objpfx)tst-ieee128-efgcvt: gnulib-tests += $(f128-loader-link)
-$(objpfx)tst-ldbl-efgcvt: gnulib-tests += $(f128-loader-link)
-
$(objpfx)tst-ibm128-%.c: tst-ldbl-%.c
cp $< $@
@@ -316,7 +304,6 @@ tests-internal += test-strfrom-ibm128 test-strfrom-ieee128
CFLAGS-test-strfrom-ieee128.c += -mfloat128 -mabi=ieeelongdouble -Wno-psabi
CFLAGS-test-strfrom-ibm128.c += -mabi=ibmlongdouble -Wno-psabi
-$(objpfx)test-strfrom-ieee128: gnulib-tests += $(f128-loader-link)
endif
ifeq ($(subdir),math)
@@ -1,11 +1,6 @@
# When building float128 we need to ensure -mfloat128 is
# passed to all such object files.
-# libgcc requires __tcb_parse_hwcap_and_convert_at_platform when built with
-# a binary128 type. That symbol is provided by the loader on dynamically
-# linked executables, forcing to link the loader after libgcc link.
-f128-loader-link = -Wl,--as-needed $(elf-objpfx)ld.so -Wl,--no-as-needed
-
ifeq ($(subdir),math)
# sqrtf128 requires emulation before POWER9.
CPPFLAGS += -I../soft-fp
@@ -28,13 +23,6 @@ CFLAGS-test-math-iscanonical.cc += -mfloat128
CFLAGS-test-math-iseqsig.cc += -mfloat128
CFLAGS-test-math-issignaling.cc += -mfloat128
CFLAGS-test-math-iszero.cc += -mfloat128
-$(foreach test, \
- test-float128% test-ifloat128% test-float64x% test-ifloat64x% \
- $(foreach pair,$(f128-pairs),test-$(pair)%) \
- test-math-iscanonical test-math-iseqsig test-math-issignaling \
- test-math-iszero, \
- $(objpfx)$(test)): \
- gnulib-tests += $(f128-loader-link)
endif
# Append flags to string <-> _Float128 routines.
@@ -56,11 +44,6 @@ CFLAGS-tst-strfrom-locale.c += -mfloat128
CFLAGS-strfrom-skeleton.c += -mfloat128
CFLAGS-tst-strtod-nan-sign.c += -mfloat128
CFLAGS-tst-wcstod-nan-sign.c += -mfloat128
-$(foreach test,bug-strtod bug-strtod2 bug-strtod2 tst-strtod-round \
-tst-wcstod-round tst-strtod6 tst-strrom tst-strfrom-locale \
-tst-strtod-nan-locale tst-wcstod-nan-locale \
-strfrom-skeleton tst-strtod-nan-sign tst-wcstod-nan-sign, \
-$(objpfx)$(test)): gnulib-tests += $(f128-loader-link)
# When building glibc with support for _Float128, the powers of ten tables in
# fpioconst.c and in the string conversion functions must be extended. Some