math: test-matherr and test-matherr-2 can be regular tests
Commit Message
compat_symbol_reference is now available without tests-internal.
Do not build the test at all on glibc versions that lack the symbols,
to avoid spurious UNSUPPORTED results.
---
math/Makefile | 6 +++++-
math/test-matherr.c | 13 ++-----------
2 files changed, 7 insertions(+), 12 deletions(-)
Comments
On 04/03/2021 13:04, Florian Weimer via Libc-alpha wrote:
> compat_symbol_reference is now available without tests-internal.
> Do not build the test at all on glibc versions that lack the symbols,
> to avoid spurious UNSUPPORTED results.
LGTM, thanks.
Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
>
> ---
> math/Makefile | 6 +++++-
> math/test-matherr.c | 13 ++-----------
> 2 files changed, 7 insertions(+), 12 deletions(-)
>
> diff --git a/math/Makefile b/math/Makefile
> index 2978abf526..98b26e4f71 100644
> --- a/math/Makefile
> +++ b/math/Makefile
> @@ -249,7 +249,11 @@ tests-static = test-fpucw-static test-fpucw-ieee-static \
> test-signgam-uchar-static test-signgam-uchar-init-static \
> test-signgam-uint-static test-signgam-uint-init-static \
> test-signgam-ullong-static test-signgam-ullong-init-static
> -tests-internal = test-matherr test-matherr-2
> +
> +# The tested symbols matherr, _LIB_VERSION have been removed in glibc 2.27.
> +ifeq ($(have-GLIBC_2.26)$(build-shared),yesyes)
> +tests += test-matherr test-matherr-2
> +endif
>
> # These tests use internal (unexported) GMP functions and are linked
> # statically to obtain access to these functions.
Ok.
> diff --git a/math/test-matherr.c b/math/test-matherr.c
> index e68a4a3af1..aed396e420 100644
> --- a/math/test-matherr.c
> +++ b/math/test-matherr.c
> @@ -23,10 +23,8 @@
> #include <math-svid-compat.h>
> #include <shlib-compat.h>
>
> -#if TEST_COMPAT (libm, GLIBC_2_0, GLIBC_2_27)
> -
> -# undef matherr
> -# undef _LIB_VERSION
> +#undef matherr
> +#undef _LIB_VERSION
> compat_symbol_reference (libm, matherr, matherr, GLIBC_2_0);
> compat_symbol_reference (libm, _LIB_VERSION, _LIB_VERSION, GLIBC_2_0);
>
> @@ -47,12 +45,5 @@ do_test (void)
> acos (2.0);
> return fail;
> }
> -#else
> -static int
> -do_test (void)
> -{
> - return 77;
> -}
> -#endif
>
> #include <support/test-driver.c>
>
Ok.
@@ -249,7 +249,11 @@ tests-static = test-fpucw-static test-fpucw-ieee-static \
test-signgam-uchar-static test-signgam-uchar-init-static \
test-signgam-uint-static test-signgam-uint-init-static \
test-signgam-ullong-static test-signgam-ullong-init-static
-tests-internal = test-matherr test-matherr-2
+
+# The tested symbols matherr, _LIB_VERSION have been removed in glibc 2.27.
+ifeq ($(have-GLIBC_2.26)$(build-shared),yesyes)
+tests += test-matherr test-matherr-2
+endif
# These tests use internal (unexported) GMP functions and are linked
# statically to obtain access to these functions.
@@ -23,10 +23,8 @@
#include <math-svid-compat.h>
#include <shlib-compat.h>
-#if TEST_COMPAT (libm, GLIBC_2_0, GLIBC_2_27)
-
-# undef matherr
-# undef _LIB_VERSION
+#undef matherr
+#undef _LIB_VERSION
compat_symbol_reference (libm, matherr, matherr, GLIBC_2_0);
compat_symbol_reference (libm, _LIB_VERSION, _LIB_VERSION, GLIBC_2_0);
@@ -47,12 +45,5 @@ do_test (void)
acos (2.0);
return fail;
}
-#else
-static int
-do_test (void)
-{
- return 77;
-}
-#endif
#include <support/test-driver.c>