+2023-03-17 Bruno Haible <bruno@clisp.org>
+
+ time: Fix test failure on native Windows.
+ * m4/time.m4 (gl_FUNC_TIME): Guess that it does not work on native
+ Windows.
+ * modules/time (Depends-on): Add gettimeofday.
+ * doc/posix-functions/time.texi: Mention the bug on Windows.
+
2023-03-17 Bruno Haible <bruno@clisp.org>
vasnprintf, vasnwprintf: Include all necessary workarounds in libintl.
This function is not consistent with @code{gettimeofday} and @code{timespec_get}
on some platforms:
@c https://sourceware.org/bugzilla/show_bug.cgi?id=30200
-glibc 2.31 or newer on Linux.
-Namely, in the first 1 to 2.5 milliseconds of every second, @code{time}
-returns a value that is one less than the @code{tv_sec} part of the return
-value of @code{gettimeofday} or @code{timespec_get}.
+glibc 2.31 or newer on Linux, native Windows.
+Namely, in the first 1 to 2.5 milliseconds of every second (or, on Windows,
+in the first 5 milliseconds of every second), @code{time} returns a value
+that is one less than the @code{tv_sec} part of the return value of
+@code{gettimeofday} or @code{timespec_get}.
@end itemize
Portability problems not fixed by Gnulib:
-# time.m4 serial 1
+# time.m4 serial 2
dnl Copyright (C) 2023 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl glibc has the bug https://sourceware.org/bugzilla/show_bug.cgi?id=30200 .
AC_CACHE_CHECK([whether time() works],
[gl_cv_func_time_works],
- [dnl Guess that it works except on glibc >= 2.31 with Linux.
- dnl And binaries produced on glibc < 2.31 need to run fine on newer
- dnl glibc versions as well; therefore ignore __GLIBC_MINOR__.
+ [dnl Guess that it works except on
+ dnl - glibc >= 2.31 with Linux. And binaries produced on glibc < 2.31
+ dnl need to run fine on newer glibc versions as well; therefore ignore
+ dnl __GLIBC_MINOR__.
+ dnl - native Windows.
case "$host_os" in
linux*-gnu*)
AC_EGREP_CPP([Unlucky], [
[gl_cv_func_time_works="guessing no"],
[gl_cv_func_time_works="guessing yes"])
;;
+ mingw*) gl_cv_func_time_works="guessing no";;
*) gl_cv_func_time_works="guessing yes";;
esac
])
Depends-on:
time-h
+gettimeofday [test $REPLACE_TIME = 1]
configure.ac:
gl_FUNC_TIME