]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
posix: tst-glob_lstat_compat no longer needs to be an internal test
authorFlorian Weimer <fweimer@redhat.com>
Tue, 9 Mar 2021 20:07:24 +0000 (21:07 +0100)
committerFlorian Weimer <fweimer@redhat.com>
Tue, 9 Mar 2021 20:07:24 +0000 (21:07 +0100)
compat_symbol_reference is now available for regular tests as well.
Also avoid building and running the tests in case the pre-2.27
symbol version of glob is not available.  This avoids a spurious
UNSUPPORTED result.

Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
posix/Makefile
posix/tst-glob_lstat_compat.c

index 239fbb340ac9b4a87245132e34e752ac920b22bd..2ee5bb6e1d557a7caaffb213a31da319255b375a 100644 (file)
@@ -104,9 +104,15 @@ tests              := test-errno tstgetopt testfnm runtests runptests \
                   tst-glob-tilde test-ssize-max tst-spawn4 bug-regex37 \
                   bug-regex38 tst-regcomp-truncated tst-spawn-chdir \
                   tst-wordexp-nocmd
+
+# Test for the glob symbol version that was replaced in glibc 2.27.
+ifeq ($(have-GLIBC_2.26)$(build-shared),yesyes)
+tests += tst-glob_lstat_compat
+endif
+
 tests-internal := bug-regex5 bug-regex20 bug-regex33 \
                   tst-rfc3484 tst-rfc3484-2 tst-rfc3484-3 \
-                  tst-glob_lstat_compat tst-spawn4-compat
+                  tst-spawn4-compat
 tests-container := bug-ga2
 xtests         := tst-getaddrinfo4 tst-getaddrinfo5 tst-sched_rr_get_interval
 ifeq (yes,$(build-shared))
index ef6f1b8c27f24705fafde8338b4e7bd90d68de9f..97ee51101b071e20f27e781ee784504999d45a24 100644 (file)
 #include <sys/types.h>
 #include <sys/stat.h>
 #include <unistd.h>
-
+#include <stdbool.h>
 #include <stdio.h>
 
 #include <shlib-compat.h>
 #include <support/check.h>
 #include <support/temp_file.h>
 
-#if TEST_COMPAT (libc, GLIBC_2_0, GLIBC_2_27)
-
 __typeof (glob) glob;
 /* On alpha glob exists in version GLIBC_2_0, GLIBC_2_1, and GLIBC_2_27.
    This test needs to access the version prior to GLIBC_2_27, which is
    GLIBC_2_1 on alpha, GLIBC_2_0 elsewhere.  */
-# ifdef __alpha__
+#ifdef __alpha__
 compat_symbol_reference (libc, glob, glob, GLIBC_2_1);
-# else
+#else
 compat_symbol_reference (libc, glob, glob, GLIBC_2_0);
-# endif
+#endif
 
 /* Compat glob should not call gl_lstat since for some old binaries it
    might be unitialized (for instance GNUmake).  Check if it is indeed
@@ -256,13 +254,4 @@ do_test (void)
   return 0;
 }
 
-#else /* TEST_COMPAT (libc, GLIBC_2_0, GLIBC_2_27)  */
-
-static int
-do_test (void)
-{
-  return 77;
-}
-#endif
-
 #include <support/test-driver.c>