summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makeconfig3
-rwxr-xr-xconfigure30
-rw-r--r--configure.ac11
-rw-r--r--conform/Makefile2
4 files changed, 45 insertions, 1 deletions
diff --git a/Makeconfig b/Makeconfig
index 86eff8686a..db51d8851a 100644
--- a/Makeconfig
+++ b/Makeconfig
@@ -1006,6 +1006,9 @@ endif
# Filter out LFS flags if compiler defines it by default.
+cflags += $(no-file-offset-bits-source)
+# Filter out 64 bit time_t flags if compiler defines it by default.
++cflags += $(no-time-bits-source)
+
# Each sysdeps directory can contain header files that both will be
# used to compile and will be installed. Each can also contain an
# include/ subdirectory, whose header files will be used to compile
diff --git a/configure b/configure
index e16f588a8e..10ea2fe22f 100755
--- a/configure
+++ b/configure
@@ -642,6 +642,7 @@ libc_cv_gcc_unwind_find_fde
libc_extra_cppflags
libc_extra_cflags
libc_cv_cxx_thread_local
+no_time_bits_source
no_file_offset_bits_source
fortify_source
no_fortify_source
@@ -7568,6 +7569,35 @@ fi
config_vars="$config_vars
no-file-offset-bits-source = $no_file_offset_bits_source"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+int
+main (void)
+{
+
+#ifndef _TIME_BITS
+# error _TIME_BITS not defined
+#endif
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_cpp "$LINENO"
+then :
+ libc_cv_compiler_default_time_bits=yes
+else case e in #(
+ e) libc_cv_compiler_default_time_bits=no ;;
+esac
+fi
+rm -f conftest.err conftest.i conftest.$ac_ext
+if test "$libc_cv_compiler_default_time_bits" = yes
+then :
+ no_time_bits_source="-U_TIME_BITS"
+fi
+
+config_vars="$config_vars
+no-time-bits-source = $no_time_bits_source"
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the assembler requires one version per symbol" >&5
printf %s "checking whether the assembler requires one version per symbol... " >&6; }
diff --git a/configure.ac b/configure.ac
index e1a3404475..4ff134577a 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1543,6 +1543,17 @@ AS_IF([test "$libc_cv_compiler_default_file_offset_bits" = yes],
AC_SUBST(no_file_offset_bits_source)
LIBC_CONFIG_VAR([no-file-offset-bits-source], [$no_file_offset_bits_source])
+dnl Check if compiler define _TIME_BITS by default
+AC_PREPROC_IFELSE([AC_LANG_PROGRAM([[]], [[
+#ifndef _TIME_BITS
+# error _TIME_BITS not defined
+#endif]])],
+ [libc_cv_compiler_default_time_bits=yes],
+ [libc_cv_compiler_default_time_bits=no])
+AS_IF([test "$libc_cv_compiler_default_time_bits" = yes],
+ [no_time_bits_source="-U_TIME_BITS"])
+AC_SUBST(no_time_bits_source)
+LIBC_CONFIG_VAR([no-time-bits-source], [$no_time_bits_source])
dnl Starting with binutils 2.35, GAS can attach multiple symbol versions
dnl to one symbol (PR 23840).
diff --git a/conform/Makefile b/conform/Makefile
index 30ceeeed51..94939d32f1 100644
--- a/conform/Makefile
+++ b/conform/Makefile
@@ -160,7 +160,7 @@ test-xfail-UNIX98/ndbm.h/conform = yes
test-xfail-XOPEN2K/ndbm.h/conform = yes
test-xfail-XOPEN2K8/ndbm.h/conform = yes
-conformtest-cc-flags = -I../include $(+sysdep-includes) $(sysincludes) -I.. $(no-file-offset-bits-source)
+conformtest-cc-flags = -I../include $(+sysdep-includes) $(sysincludes) -I.. $(no-file-offset-bits-source) $(no-time-bits-source)
# conformtest-xfail-conds may be set by a sysdeps Makefile fragment to
# a list of conditions that are considered to be true when encountered
# in xfail[cond]- lines in test expectations.