summaryrefslogtreecommitdiff
path: root/m4/mktime.m4
Commit message (Collapse)AuthorAgeFilesLines
* maint: run 'make update-copyright'Simon Josefsson2023-01-011-1/+1
|
* mktime: improve heuristic for ca-1986 Indiana DSTPaul Eggert2022-02-191-4/+25
| | | | | | | | | | | | | | | | Problem reported by Mark Krenz <https://bugs.gnu.org/48085>. * lib/mktime.c (__mktime_internal): Be more generous about accepting arguments with the wrong value of tm_isdst, by falling back to a one-hour DST difference if we find no nearby DST that is unusual. This fixes a problem where "1986-04-28 00:00 EDT" was rejected when TZ="America/Indianapolis" because the nearest DST timestamp occurred in 1970, a temporal distance too great for the old heuristic. This also also narrows the search a bit, which is a minor performance win. * m4/mktime.m4 (gl_FUNC_MKTIME_WORKS): Check for putenv failures and for Bug#48085. * tests/test-parse-datetime.c (main): Test for setenv failures and for Bug#48085.
* maint: run 'make update-copyright'Paul Eggert2022-01-011-1/+1
|
* Support several gnulib-tool invocations under the same configure.ac.Bruno Haible2021-04-111-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reported by Reuben Thomas <rrt@sc3d.org> in <https://lists.gnu.org/archive/html/bug-gnulib/2021-04/msg00104.html>. This is done by defining the Gnulib module indicator variables per gnulib-tool invocation. So that a generated .h file is no longer influenced by the set of modules used in other gnulib-tool invocations. * gnulib-tool (func_compute_include_guard_prefix): Set module_indicator_prefix. (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Use it to modify $(GNULIB_*) variable references in the Automake snippets. (func_emit_initmacro_start): Push macro definitions for GL_MACRO_PREFIX and GL_MODULE_INDICATOR_PREFIX. (func_emit_initmacro_end): Pop these macro definitions. * pygnulib/GLConfig.py (GLConfig.getIncludeGuardPrefix): New method. * pygnulib/GLEmiter.py (GLEmiter.initmacro_start): Push macro definitions for GL_MACRO_PREFIX and GL_MODULE_INDICATOR_PREFIX. (GLEmiter.initmacro_end): Pop these macro definitions. (GLEmiter.lib_Makefile_am, GLEmiter.tests_Makefile_am): Use the module indicator prefix to modify $(GNULIB_*) variable references in the Automake snippets. * m4/gnulib-common.m4 (gl_MODULE_INDICATOR_INIT_VARIABLE, gl_MODULE_INDICATOR_SET_VARIABLE): Use the value of GL_MODULE_INDICATOR_PREFIX. * m4/arpa_inet_h.m4: Use new idiom for header files that contain references to Gnulib module indicator variables: - Define the main macro through AC_DEFUN_ONCE. - Define a macro gl_*_H_REQUIRE_DEFAULTS that initializes the Gnulib module indicator variables (each prefixed with GL_MODULE_INDICATOR_PREFIX). - Invoke this macro in the gl_*_MODULE_INDICATOR macro. * m4/ctype.m4: Likewise. * m4/dirent_h.m4: Likewise. * m4/fcntl_h.m4: Likewise. * m4/fnmatch_h.m4: Likewise. * m4/glob_h.m4: Likewise. * m4/iconv_h.m4: Likewise. * m4/inttypes.m4: Likewise. * m4/langinfo_h.m4: Likewise. * m4/locale_h.m4: Likewise. * m4/malloc_h.m4: Likewise. * m4/math_h.m4: Likewise. * m4/monetary_h.m4: Likewise. * m4/netdb_h.m4: Likewise. * m4/poll_h.m4: Likewise. * m4/pthread_h.m4: Likewise. * m4/pty_h.m4: Likewise. * m4/sched_h.m4: Likewise. * m4/search_h.m4: Likewise. * m4/signal_h.m4: Likewise. * m4/spawn_h.m4: Likewise. * m4/stddef_h.m4: Likewise. * m4/stdio_h.m4: Likewise. * m4/stdlib_h.m4: Likewise. * m4/string_h.m4: Likewise. * m4/strings_h.m4: Likewise. * m4/sys_file_h.m4: Likewise. * m4/sys_ioctl_h.m4: Likewise. * m4/sys_random_h.m4: Likewise. * m4/sys_resource_h.m4: Likewise. * m4/sys_select_h.m4: Likewise. * m4/sys_socket_h.m4: Likewise. * m4/sys_stat_h.m4: Likewise. * m4/sys_time_h.m4: Likewise. * m4/sys_times_h.m4: Likewise. * m4/sys_types_h.m4: Likewise. * m4/sys_uio_h.m4: Likewise. * m4/sys_utsname_h.m4: Likewise. * m4/sys_wait_h.m4: Likewise. * m4/termios_h.m4: Likewise. * m4/threads.m4: Likewise. * m4/time_h.m4: Likewise. * m4/uchar.m4: Likewise. * m4/unistd_h.m4: Likewise. * m4/utime_h.m4: Likewise. * m4/wchar_h.m4: Likewise. * m4/wctype_h.m4: Likewise. * modules/arpa_inet (configure.ac): Invoke the macro gl_*_H_REQUIRE_DEFAULTS explicitly. * modules/ctype (configure.ac): Likewise. * modules/dirent (configure.ac): Likewise. * modules/fcntl-h (configure.ac): Likewise. * modules/fnmatch-h (configure.ac): Likewise. * modules/glob-h (configure.ac): Likewise. * modules/iconv-h (configure.ac): Likewise. * modules/inttypes-incomplete (configure.ac): Likewise. * modules/langinfo (configure.ac): Likewise. * modules/locale (configure.ac): Likewise. * modules/malloc-h (configure.ac): Likewise. * modules/math (configure.ac): Likewise. * modules/monetary (configure.ac): Likewise. * modules/netdb (configure.ac): Likewise. * modules/poll-h (configure.ac): Likewise. * modules/pthread-h (configure.ac): Likewise. * modules/pty (configure.ac): Likewise. * modules/sched (configure.ac): Likewise. * modules/search (configure.ac): Likewise. * modules/signal-h (configure.ac): Likewise. * modules/spawn (configure.ac): Likewise. * modules/stddef (configure.ac): Likewise. * modules/stdio (configure.ac): Likewise. * modules/stdlib (configure.ac): Likewise. * modules/string (configure.ac): Likewise. * modules/strings (configure.ac): Likewise. * modules/sys_file (configure.ac): Likewise. * modules/sys_ioctl (configure.ac): Likewise. * modules/sys_random (configure.ac): Likewise. * modules/sys_resource (configure.ac): Likewise. * modules/sys_select (configure.ac): Likewise. * modules/sys_socket (configure.ac): Likewise. * modules/sys_stat (configure.ac): Likewise. * modules/sys_time (configure.ac): Likewise. * modules/sys_times (configure.ac): Likewise. * modules/sys_types (configure.ac): Likewise. * modules/sys_uio (configure.ac): Likewise. * modules/sys_utsname (configure.ac): Likewise. * modules/sys_wait (configure.ac): Likewise. * modules/termios (configure.ac): Likewise. * modules/threads-h (configure.ac): Likewise. * modules/time (configure.ac): Likewise. * modules/uchar (configure.ac): Likewise. * modules/unistd (configure.ac): Likewise. * modules/utime-h (configure.ac): Likewise. * modules/wchar (configure.ac): Likewise. * modules/wctype-h (configure.ac): Likewise. * m4/af_alg.m4: Update after a macro name changed. * m4/ctime.m4: Likewise. * m4/explicit_bzero.m4: Likewise. * m4/ffs.m4: Likewise. * m4/ffsl.m4: Likewise. * m4/ffsll.m4: Likewise. * m4/flock.m4: Likewise. * m4/fstat.m4: Likewise. * m4/getaddrinfo.m4: Likewise. * m4/getdomainname.m4: Likewise. * m4/gettimeofday.m4: Likewise. * m4/hostent.m4: Likewise. * m4/ioctl.m4: Likewise. * m4/localtime.m4: Likewise. * m4/mbslen.m4: Likewise. * m4/memchr.m4: Likewise. * m4/memmem.m4: Likewise. * m4/mempcpy.m4: Likewise. * m4/memrchr.m4: Likewise. * m4/mktime.m4: Likewise. * m4/nanosleep.m4: Likewise. * m4/passfd.m4: Likewise. * m4/pselect.m4: Likewise. * m4/rawmemchr.m4: Likewise. * m4/select.m4: Likewise. * m4/servent.m4: Likewise. * m4/sigabbrev_np.m4: Likewise. * m4/sigdescr_np.m4: Likewise. * m4/sockpfaf.m4: Likewise. * m4/stat.m4: Likewise. * m4/stpcpy.m4: Likewise. * m4/stpncpy.m4: Likewise. * m4/strcase.m4: Likewise. * m4/strcasestr.m4: Likewise. * m4/strchrnul.m4: Likewise. * m4/strdup.m4: Likewise. * m4/strerror.m4: Likewise. * m4/strerror_r.m4: Likewise. * m4/strerrorname_np.m4: Likewise. * m4/strftime-fixes.m4: Likewise. * m4/strncat.m4: Likewise. * m4/strndup.m4: Likewise. * m4/strnlen.m4: Likewise. * m4/strpbrk.m4: Likewise. * m4/strptime.m4: Likewise. * m4/strsep.m4: Likewise. * m4/strsignal.m4: Likewise. * m4/strstr.m4: Likewise. * m4/strtok_r.m4: Likewise. * m4/strverscmp.m4: Likewise. * m4/time_r.m4: Likewise. * m4/time_rz.m4: Likewise. * m4/timegm.m4: Likewise. * m4/timespec_get.m4: Likewise. * m4/tzset.m4: Likewise. * modules/accept (configure.ac): Likewise. * modules/bind (configure.ac): Likewise. * modules/connect (configure.ac): Likewise. * modules/flock (configure.ac): Likewise. * modules/getpeername (configure.ac): Likewise. * modules/getsockname (configure.ac): Likewise. * modules/getsockopt (configure.ac): Likewise. * modules/listen (configure.ac): Likewise. * modules/recv (configure.ac): Likewise. * modules/recvfrom (configure.ac): Likewise. * modules/send (configure.ac): Likewise. * modules/sendto (configure.ac): Likewise. * modules/setsockopt (configure.ac): Likewise. * modules/shutdown (configure.ac): Likewise. * modules/socket (configure.ac): Likewise. Use the gl_*_H_REQUIRE_DEFAULTS macros. * modules/nonblocking (configure.ac): Use the gl_*_H_REQUIRE_DEFAULTS and gl_MODULE_INDICATOR_INIT_VARIABLE macros. * modules/sigpipe (configure.ac): Likewise. * modules/windows-stat-override (configure.ac): Likewise. * m4/nonblocking.m4: Update a comment. * m4/sigpipe.m4: Likewise.
* maint: run 'make update-copyright'Paul Eggert2020-12-311-1/+1
|
* Support compiling without -loldnames on native Windows.Bruno Haible2020-08-151-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * m4/gnulib-common.m4 (GL_MDA_DEFINES, _GL_MDA_DEFINES): New macros. * m4/chown.m4 (AC_FUNC_CHOWN): In the test programs, use GL_MDA_DEFINES. (gl_FUNC_CHOWN, gl_FUNC_CHOWN_FOLLOWS_SYMLINK): Likewise. * m4/dup.m4 (gl_FUNC_DUP): Likewise. * m4/dup2.m4 (gl_FUNC_DUP2): Likewise. * m4/fchdir.m4 (gl_FUNC_FCHDIR): Likewise. * m4/fchmodat.m4 (gl_FUNC_FCHMODAT): Likewise. * m4/fchownat.m4 (gl_FUNC_FCHOWNAT_EMPTY_FILENAME_BUG): Likewise. * m4/fcntl-o.m4 (gl_FCNTL_O_FLAGS): Likewise. * m4/fcntl.m4 (gl_FUNC_FCNTL): Likewise. * m4/fdopen.m4 (gl_FUNC_FDOPEN): Likewise. * m4/fdopendir.m4 (gl_FUNC_FDOPENDIR): Likewise. * m4/fflush.m4 (gl_FUNC_FFLUSH_STDIN): Likewise. * m4/fopen.m4 (gl_FUNC_FOPEN_GNU): Likewise. * m4/freopen.m4 (gl_FUNC_FREOPEN): Likewise. * m4/futimens.m4 (gl_FUNC_FUTIMENS): Likewise. * m4/getcwd-abort-bug.m4 (gl_FUNC_GETCWD_ABORT_BUG): Likewise. * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Likewise. * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL, gl_FUNC_GETCWD_SIGNATURE): Likewise. * m4/getdtablesize.m4 (gl_FUNC_GETDTABLESIZE): Likewise. * m4/linkat.m4 (gl_FUNC_LINKAT): Likewise. * m4/lseek.m4 (gl_FUNC_LSEEK): Likewise. * m4/mkdir.m4 (gl_FUNC_MKDIR): Likewise. * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Likewise. * m4/mktime.m4 (gl_FUNC_MKTIME_WORKS): Likewise. * m4/open-slash.m4 (gl_OPEN_TRAILING_SLASH_BUG): Likewise. * m4/poll.m4 (gl_FUNC_POLL): Likewise. * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Likewise. * m4/pread.m4 (gl_FUNC_PREAD): Likewise. * m4/pselect.m4 (gl_FUNC_PSELECT): Likewise. * m4/pthread_sigmask.m4 (gl_FUNC_PTHREAD_SIGMASK): Likewise. * m4/ptsname_r.m4 (gl_PREREQ_PTSNAME_R): Likewise. * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise. * m4/pwrite.m4 (gl_FUNC_PWRITE): Likewise. * m4/rename.m4 (gl_FUNC_RENAME): Likewise. * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Likewise. * m4/rmdir.m4 (gl_FUNC_RMDIR): Likewise. * m4/select.m4 (gl_FUNC_SELECT): Likewise. * m4/setenv.m4 (gl_FUNC_UNSETENV): Likewise. * m4/strncat.m4 (gl_FUNC_STRNCAT): Likewise. * m4/ttyname_r.m4 (gl_FUNC_TTYNAME_R): Likewise. * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Likewise. * m4/unlink.m4 (gl_FUNC_UNLINK): Likewise. * m4/utimens.m4 (gl_UTIMENS): Likewise. * m4/utimensat.m4 (gl_FUNC_UTIMENSAT): Likewise. * m4/utimes.m4 (gl_FUNC_UTIMES): Likewise. * m4/canonicalize.m4 (gl_CANONICALIZE_LGPL): On native Windows, don't test for getcwd. * m4/utime.m4 (gl_FUNC_UTIME): On native Windows, don't test for utime. * m4/wcsdup.m4 (gl_FUNC_WCSDUP): To test for wcsdup, use a test program with GL_MDA_DEFINES. * lib/c++defs.h (_GL_CXXALIAS_MDA): New macro. * lib/fcntl.in.h (creat, open): On native Windows, use the underscore- prefixed symbol. * lib/search.in.h (lfind, lsearch): Likewise. * lib/stdio.in.h (fcloseall, fdopen, fileno, getw, putw, tempnam): Likewise. * lib/stdlib.in.h (ecvt, fcvt, gcvt, mktemp, putenv): Likewise. * lib/string.in.h (memccpy, strdup): Likewise. * lib/sys_stat.in.h (chmod, umask): Likewise. * lib/time.in.h (tzset): Likewise. * lib/unistd.in.h (access, chdir, close, dup, dup2, execl, execle, execlp, execv, execve, execvp, execvpe, getcwd, getpid, isatty, lseek, read, rmdir, swab, unlink, write): Likewise. * lib/utime.in.h (utime): Likewise. * lib/wchar.in.h (wcsdup): Likewise. * lib/math.in.h (j0, j1, jn, y0, y1, yn): Likewise. (isfinite, isinf, isnan, signbit): On native Windows, don't define as an rpl_-prefixed macro. * lib/canonicalize-lgpl.c (__getcwd): On native Windows, use _getcwd. * lib/close.c (close_nothrow): On native Windows, use _close. * lib/creat.c (orig_creat): On native Windows, use _creat. * lib/dup.c (dup_nothrow): On native Windows, use _dup. * lib/dup2.c (dup2_nothrow): Use _dup2. * lib/fdopen.c (fdopen_nothrow): On native Windows, use _fdopen. * lib/getcwd-lgpl.c: On native Windows, use _getcwd. * lib/getcwd.c (getcwd_nothrow): Use _getcwd also on mingw. * lib/open.c (orig_open): On native Windows, use _open. * lib/read.c (read_nothrow): Use _read. * lib/rmdir.c: On native Windows, use _rmdir. * lib/unlink.c: On native Windows, use _unlink. * lib/write.c (write_nothrow): Use _write. * lib/sys_select.in.h (close): With clang, don't attach a warning on an undefined symbol. * lib/sys_socket.in.h (close): Likewise. * lib/sys_time.in.h (close): Likewise. * tests/test-spawn-pipe-child.c: On native Windows, use _fdopen.
* mktime, mktime-internal: Remove obsolete code.Bruno Haible2020-08-141-4/+1
| | | | * m4/mktime.m4 (gl_FUNC_MKTIME_WORKS): Don't #undef putenv.
* mktime, mktime-internal: Assume tzset exists.Bruno Haible2020-08-141-2/+1
| | | | | * lib/mktime.c (my_tzset): Assume HAVE_TZSET is 1. * m4/mktime.m4 (gl_FUNC_MKTIME_WORKS): Don't test for tzset.
* Small autoconf macro improvements.Bruno Haible2020-07-261-17/+18
| | | | | | | | | * m4/mktime.m4 (gl_FUNC_MKTIME_WORKS): Make it possible for the user to override the value of gl_cv_func_working_mktime. * m4/multiarch.m4 (gl_MULTIARCH): Show a line "checking whether the compiler produces multi-arch binaries..." in the configure output. * m4/size_max.m4 (gl_SIZE_MAX): When not found, say "no". * m4/parse-datetime.m4 (gl_C_COMPOUND_LITERALS): Improve indentation.
* maint: Run 'make update-copyright'Paul Eggert2019-12-311-1/+1
|
* Add option to assume the best, not the worst, when cross-compiling.Bruno Haible2019-09-091-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Suggested by Jonas Termansen <sortie@maxsi.org>. * m4/gnulib-common.m4 (gl_COMMON_BODY): Add --enable-cross-guesses=... option. Set gl_cross_guess_normal and gl_cross_guess_inverted. * m4/argz.m4 (gl_FUNC_ARGZ): Obey --enable-cross-guesses for lt_cv_sys_argz_works. * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Obey --enable-cross-guesses for ac_cv_func_calloc_0_nonnull. * m4/canonicalize.m4 (gl_FUNC_REALPATH_WORKS): Obey --enable-cross-guesses for gl_cv_func_realpath_works. * m4/cbrtl.m4 (gl_FUNC_CBRTL): Obey --enable-cross-guesses for gl_cv_func_cbrtl_ieee. * m4/ceil.m4 (gl_FUNC_CEIL): Obey --enable-cross-guesses for gl_cv_func_ceil_ieee. * m4/ceilf.m4 (gl_FUNC_CEILF): Obey --enable-cross-guesses for gl_cv_func_ceilf_ieee. * m4/ceill.m4 (gl_FUNC_CEILL): Obey --enable-cross-guesses for gl_cv_func_ceill_ieee. * m4/chown.m4 (AC_FUNC_CHOWN): Obey --enable-cross-guesses for ac_cv_func_chown_works. (gl_FUNC_CHOWN): Obey --enable-cross-guesses for gl_cv_func_chown_slash_works, gl_cv_func_chown_ctime_works. * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Obey --enable-cross-guesses for gl_cv_struct_dirent_d_ino. * m4/exp2l.m4 (gl_FUNC_EXP2L): Obey --enable-cross-guesses for gl_cv_func_exp2l_works, gl_cv_func_exp2l_ieee. * m4/expl.m4 (gl_FUNC_EXPL): Obey --enable-cross-guesses for gl_cv_func_expl_works. * m4/expm1.m4 (gl_FUNC_EXPM1): Obey --enable-cross-guesses for gl_cv_func_expm1_ieee. * m4/expm1l.m4 (gl_FUNC_EXPM1L): Obey --enable-cross-guesses for gl_cv_func_expm1l_works. * m4/fchdir.m4 (gl_FUNC_FCHDIR): Obey --enable-cross-guesses for gl_cv_func_open_directory_works. * m4/fchownat.m4 (gl_FUNC_FCHOWNAT_DEREF_BUG): Obey --enable-cross-guesses for gl_cv_func_fchownat_nofollow_works. (gl_FUNC_FCHOWNAT_EMPTY_FILENAME_BUG): Obey --enable-cross-guesses for gl_cv_func_fchownat_empty_filename_works. * m4/fdopendir.m4 (gl_FUNC_FDOPENDIR): Obey --enable-cross-guesses for gl_cv_func_fdopendir_works. * m4/floor.m4 (gl_FUNC_FLOOR): Obey --enable-cross-guesses for gl_cv_func_floor_ieee. * m4/floorf.m4 (gl_FUNC_FLOORF): Obey --enable-cross-guesses for gl_cv_func_floorf_ieee. * m4/fma.m4 (gl_FUNC_FMA_WORKS): Obey --enable-cross-guesses for gl_cv_func_fma_works. * m4/fmaf.m4 (gl_FUNC_FMAF_WORKS): Obey --enable-cross-guesses for gl_cv_func_fmaf_works. * m4/fmal.m4 (gl_FUNC_FMAL_WORKS): Obey --enable-cross-guesses for gl_cv_func_fmal_works. * m4/fmod.m4 (gl_FUNC_FMOD): Obey --enable-cross-guesses for gl_cv_func_fmod_ieee. * m4/fmodf.m4 (gl_FUNC_FMODF): Obey --enable-cross-guesses for gl_cv_func_fmodf_ieee. * m4/fmodl.m4 (gl_FUNC_FMODL): Obey --enable-cross-guesses for gl_cv_func_fmodl_ieee. * m4/fpurge.m4 (gl_FUNC_FPURGE): Obey --enable-cross-guesses for gl_cv_func_fpurge_works. * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Obey --enable-cross-guesses for gl_cv_func_getcwd_path_max. * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): Obey --enable-cross-guesses for gl_cv_func_getcwd_null. (gl_FUNC_GETCWD): Update for getcwd-path-max.m4 change. * m4/getdelim.m4 (gl_FUNC_GETDELIM): Obey --enable-cross-guesses for gl_cv_func_working_getdelim. * m4/getgroups.m4 (AC_FUNC_GETGROUPS): Obey --enable-cross-guesses for ac_cv_func_getgroups_works. Keep this macro also in Autoconf >= 2.70. (gl_FUNC_GETGROUPS): Obey --enable-cross-guesses for gl_cv_func_getgroups_works. * m4/getline.m4 (gl_FUNC_GETLINE): Obey --enable-cross-guesses for am_cv_func_working_getline. * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Obey --enable-cross-guesses for gl_cv_func_getopt_gnu. * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY_CLOBBER): Obey --enable-cross-guesses for gl_cv_func_gettimeofday_clobber. * m4/hypot.m4 (gl_FUNC_HYPOT): Obey --enable-cross-guesses for gl_cv_func_hypot_ieee. * m4/hypotf.m4 (gl_FUNC_HYPOTF): Obey --enable-cross-guesses for gl_cv_func_hypotf_ieee. * m4/hypotl.m4 (gl_FUNC_HYPOTL): Obey --enable-cross-guesses for gl_cv_func_hypotl_ieee. * m4/iconv_open-utf.m4 (gl_FUNC_ICONV_OPEN_UTF_SUPPORT): Obey --enable-cross-guesses for gl_cv_func_iconv_supports_utf. * m4/link.m4 (gl_FUNC_LINK): Obey --enable-cross-guesses for gl_cv_func_link_works. * m4/linkat.m4 (gl_FUNC_LINKAT): Obey --enable-cross-guesses for gl_cv_func_linkat_slash. * m4/log.m4 (gl_FUNC_LOG): Obey --enable-cross-guesses for gl_cv_func_log_ieee. * m4/logf.m4 (gl_FUNC_LOGF): Obey --enable-cross-guesses for gl_cv_func_logf_ieee. * m4/logl.m4 (gl_FUNC_LOGL_WORKS): Obey --enable-cross-guesses for gl_cv_func_logl_works. * m4/log10.m4 (gl_FUNC_LOG10): Obey --enable-cross-guesses for gl_cv_func_log10_ieee. * m4/log10f.m4 (gl_FUNC_LOG10F): Obey --enable-cross-guesses for gl_cv_func_log10f_ieee. * m4/log10l.m4 (gl_FUNC_LOG10L_WORKS): Obey --enable-cross-guesses for gl_cv_func_log10l_works. * m4/log1p.m4 (gl_FUNC_LOG1P): Obey --enable-cross-guesses for gl_cv_func_log1p_ieee. * m4/log1pf.m4 (gl_FUNC_LOG1PF): Obey --enable-cross-guesses for gl_cv_func_log1pf_ieee. * m4/log1pl.m4 (gl_FUNC_LOG1PL): Obey --enable-cross-guesses for gl_cv_func_log1pl_ieee. * m4/log2.m4 (gl_FUNC_LOG2): Obey --enable-cross-guesses for gl_cv_func_log2_ieee. * m4/log2f.m4 (gl_FUNC_LOG2F): Obey --enable-cross-guesses for gl_cv_func_log2f_ieee. * m4/lstat.m4 (gl_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK): Obey --enable-cross-guesses for gl_cv_func_lstat_dereferences_slashed_symlink. * m4/malloc.m4 (_AC_FUNC_MALLOC_IF): Obey --enable-cross-guesses for ac_cv_func_malloc_0_nonnull. Keep this macro also in Autoconf >= 2.70. * m4/mbrtowc.m4 (gl_MBRTOWC_C_LOCALE): Obey --enable-cross-guesses for gl_cv_C_locale_sans_EILSEQ. * m4/memchr.m4 (gl_FUNC_MEMCHR): Obey --enable-cross-guesses for gl_cv_func_memchr_works. * m4/memmem.m4 (gl_FUNC_MEMMEM_SIMPLE): Obey --enable-cross-guesses for gl_cv_func_memmem_works_always. (gl_FUNC_MEMMEM): Obey --enable-cross-guesses for gl_cv_func_memmem_works_fast. * m4/mkdir.m4 (gl_FUNC_MKDIR): Obey --enable-cross-guesses for gl_cv_func_mkdir_trailing_slash_works, gl_cv_func_mkdir_trailing_dot_works. * m4/mkfifo.m4 (gl_FUNC_MKFIFO): Obey --enable-cross-guesses for gl_cv_func_mkfifo_works. * m4/mknod.m4 (gl_FUNC_MKNOD): Obey --enable-cross-guesses for gl_cv_func_mknod_works. * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Obey --enable-cross-guesses for gl_cv_func_working_mkstemp. * m4/mktime.m4 (gl_FUNC_MKTIME_WORKS): Obey --enable-cross-guesses for gl_cv_func_working_mktime. * m4/modf.m4 (gl_FUNC_MODF): Obey --enable-cross-guesses for gl_cv_func_modf_ieee. * m4/modff.m4 (gl_FUNC_MODFF): Obey --enable-cross-guesses for gl_cv_func_modff_ieee. * m4/modfl.m4 (gl_FUNC_MODFL): Obey --enable-cross-guesses for gl_cv_func_modfl_ieee. * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Obey --enable-cross-guesses for gl_cv_func_nanosleep. * m4/perror.m4 (gl_FUNC_PERROR): Obey --enable-cross-guesses for gl_cv_func_perror_works. * m4/printf.m4 (gl_PRINTF_SIZES_C99): Obey --enable-cross-guesses for gl_cv_func_printf_sizes_c99. (gl_PRINTF_INFINITE): Obey --enable-cross-guesses for gl_cv_func_printf_infinite. (gl_PRINTF_INFINITE_LONG_DOUBLE): Obey --enable-cross-guesses for gl_cv_func_printf_infinite_long_double. (gl_PRINTF_DIRECTIVE_A): Obey --enable-cross-guesses for gl_cv_func_printf_directive_a. (gl_PRINTF_DIRECTIVE_F): Obey --enable-cross-guesses for gl_cv_func_printf_directive_f. (gl_PRINTF_FLAG_ZERO): Obey --enable-cross-guesses for gl_cv_func_printf_flag_zero. (gl_PRINTF_ENOMEM): Obey --enable-cross-guesses for gl_cv_func_printf_enomem. (gl_SNPRINTF_TRUNCATION_C99): Obey --enable-cross-guesses for gl_cv_func_snprintf_truncation_c99. (gl_SNPRINTF_RETVAL_C99): Obey --enable-cross-guesses for gl_cv_func_snprintf_retval_c99. (gl_SNPRINTF_DIRECTIVE_N): Obey --enable-cross-guesses for gl_cv_func_snprintf_directive_n. (gl_VSNPRINTF_ZEROSIZE_C99): Obey --enable-cross-guesses for gl_cv_func_vsnprintf_zerosize_c99. * m4/pselect.m4 (gl_FUNC_PSELECT): Obey --enable-cross-guesses for gl_cv_func_pselect_detects_ebadf. * m4/pthread_rwlock_rdlock.m4 (gl_PTHREAD_RWLOCK_RDLOCK_PREFER_WRITER): Obey --enable-cross-guesses for gl_cv_pthread_rwlock_rdlock_prefer_writer. * m4/ptsname.m4 (gl_FUNC_PTSNAME): Obey --enable-cross-guesses for gl_cv_func_ptsname_sets_errno. * m4/putenv.m4 (gl_FUNC_PUTENV): Obey --enable-cross-guesses for gl_cv_func_svid_putenv. * m4/readlink.m4 (gl_FUNC_READLINK): Obey --enable-cross-guesses for gl_cv_func_readlink_works. * m4/realloc.m4 (_AC_FUNC_REALLOC_IF): Obey --enable-cross-guesses for ac_cv_func_realloc_0_nonnull. Keep this macro also in Autoconf >= 2.70. * m4/regex.m4 (gl_REGEX): Obey --enable-cross-guesses for gl_cv_func_re_compile_pattern_working. * m4/remainder.m4 (gl_FUNC_REMAINDER): Obey --enable-cross-guesses for gl_cv_func_remainder_ieee. * m4/remainderf.m4 (gl_FUNC_REMAINDERF): Obey --enable-cross-guesses for gl_cv_func_remainderf_ieee. * m4/remainderl.m4 (gl_FUNC_REMAINDERL): Obey --enable-cross-guesses for gl_cv_func_remainderl_ieee. * m4/rintl.m4 (gl_FUNC_RINTL): Obey --enable-cross-guesses for gl_cv_func_rintl_works. * m4/rmdir.m4 (gl_FUNC_RMDIR): Obey --enable-cross-guesses for gl_cv_func_rmdir_works. * m4/round.m4 (gl_FUNC_ROUND): Obey --enable-cross-guesses for gl_cv_func_round_ieee. * m4/roundf.m4 (gl_FUNC_ROUNDF): Obey --enable-cross-guesses for gl_cv_func_roundf_ieee. * m4/roundl.m4 (gl_FUNC_ROUNDL): Obey --enable-cross-guesses for gl_cv_func_roundl_ieee. * m4/select.m4 (gl_FUNC_SELECT): Obey --enable-cross-guesses for gl_cv_func_select_detects_ebadf. * m4/setenv.m4 (gl_FUNC_SETENV): Obey --enable-cross-guesses for gl_cv_func_setenv_works. (gl_FUNC_UNSETENV): Obey --enable-cross-guesses for gl_cv_func_unsetenv_works. * m4/signbit.m4 (gl_SIGNBIT): Obey --enable-cross-guesses for gl_cv_func_signbit, gl_cv_func_signbit_gcc. * m4/sleep.m4 (gl_FUNC_SLEEP): Obey --enable-cross-guesses for gl_cv_func_sleep_works. * m4/stat.m4 (gl_FUNC_STAT): Obey --enable-cross-guesses for gl_cv_func_stat_file_slash. * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Obey --enable-cross-guesses for gl_cv_func_stpncpy. * m4/strcasestr.m4 (gl_FUNC_STRCASESTR_SIMPLE): Obey --enable-cross-guesses for gl_cv_func_strcasestr_works_always. (gl_FUNC_STRCASESTR): Obey --enable-cross-guesses for gl_cv_func_strcasestr_linear. * m4/strerror.m4 (gl_FUNC_STRERROR): Obey --enable-cross-guesses for gl_cv_func_working_strerror. (gl_FUNC_STRERROR_0): Obey --enable-cross-guesses for gl_cv_func_strerror_0_works. * m4/strerror_r.m4 (gl_FUNC_STRERROR_R_WORKS): Obey --enable-cross-guesses for gl_cv_func_strerror_r_works. * m4/strstr.m4 (gl_FUNC_STRSTR_SIMPLE): Obey --enable-cross-guesses for gl_cv_func_strstr_works_always. (gl_FUNC_STRSTR): Obey --enable-cross-guesses for gl_cv_func_strstr_linear. * m4/strtod.m4 (gl_FUNC_STRTOD): Obey --enable-cross-guesses for gl_cv_func_strtod_works. * m4/strtold.m4 (gl_FUNC_STRTOLD): Obey --enable-cross-guesses for gl_cv_func_strtold_works. * m4/symlink.m4 (gl_FUNC_SYMLINK): Obey --enable-cross-guesses for gl_cv_func_symlink_works. * m4/symlinkat.m4 (gl_FUNC_SYMLINKAT): Obey --enable-cross-guesses for gl_cv_func_symlinkat_works. * m4/trunc.m4 (gl_FUNC_TRUNC): Obey --enable-cross-guesses for gl_cv_func_trunc_ieee. * m4/truncf.m4 (gl_FUNC_TRUNCF): Obey --enable-cross-guesses for gl_cv_func_truncf_ieee. * m4/truncl.m4 (gl_FUNC_TRUNCL): Obey --enable-cross-guesses for gl_cv_func_truncl_ieee. * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Obey --enable-cross-guesses for gl_cv_func_tzset_clobber. * m4/ungetc.m4 (gl_FUNC_UNGETC_WORKS): Obey --enable-cross-guesses for gl_cv_func_ungetc_works. * m4/unlink.m4 (gl_FUNC_UNLINK): Obey --enable-cross-guesses for gl_cv_func_unlink_honors_slashes, gl_cv_func_unlink_parent_fails. * m4/usleep.m4 (gl_FUNC_USLEEP): Obey --enable-cross-guesses for gl_cv_func_usleep_works. * m4/utimens.m4 (gl_UTIMENS): Obey --enable-cross-guesses for gl_cv_func_futimesat_works. * m4/utimes.m4 (gl_FUNC_UTIMES): Obey --enable-cross-guesses for gl_cv_func_working_utimes. * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Obey --enable-cross-guesses for gl_cv_func_wcwidth_works. * m4/glob.m4 (gl_GLOB): When cross-compiling, don't create symlinks for testing. Obey --enable-cross-guesses for gl_cv_glob_lists_symlinks. * m4/rename.m4 (gl_FUNC_RENAME): When cross-compiling, don't create links for testing. Obey --enable-cross-guesses for gl_cv_func_rename_slash_dst_works, gl_cv_func_rename_slash_src_works, gl_cv_func_rename_link_works, gl_cv_func_rename_dest_works.
* maint: Run 'make update-copyright'Paul Eggert2019-01-011-1/+1
|
* maint: Run 'make update-copyright'Paul Eggert2018-01-011-1/+1
|
* mktime: port to OpenVMSPaul Eggert2017-09-211-1/+5
| | | | | | Problem reported by John E. Malmberg in: https://lists.gnu.org/archive/html/bug-gnulib/2017-09/msg00100.html * m4/mktime.m4 (TIME_T_IS_SIGNED): Default to 0.
* Improve cross-compilation guesses for native Windows.Bruno Haible2017-07-131-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * m4/btowc.m4 (gl_FUNC_BTOWC): Add cross-compilation guess for native Windows. * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Likewise. * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Likewise. * m4/canonicalize.m4 (gl_FUNC_REALPATH_WORKS): Likewise. * m4/cbrtf.m4 (gl_FUNC_CBRTF_WORKS): Likewise. * m4/cbrtl.m4 (gl_FUNC_CBRTL, gl_FUNC_CBRTL_WORKS): Likewise. * m4/ceil.m4 (gl_FUNC_CEIL): Likewise. * m4/ceilf.m4 (gl_FUNC_CEILF): Likewise. * m4/ceill.m4 (gl_FUNC_CEILL): Likewise. * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Likewise. * m4/dup.m4 (gl_FUNC_DUP): Likewise. * m4/expl.m4 (gl_FUNC_EXPL): Likewise. * m4/exp2.m4 (gl_FUNC_EXP2_WORKS): Likewise. * m4/exp2l.m4 (gl_FUNC_EXP2L): Likewise. * m4/expm1.m4 (gl_FUNC_EXPM1): Likewise. * m4/expm1f.m4 (gl_FUNC_EXPM1F_WORKS): Likewise. * m4/exponentl.m4 (gl_LONG_DOUBLE_EXPONENT_LOCATION): Likewise. * m4/fabsl.m4 (gl_FUNC_FABSL_WORKS): Likewise. * m4/fchdir.m4 (gl_FUNC_FCHDIR): Likewise. * m4/fcntl-o.m4 (gl_FCNTL_O_FLAGS): Likewise. * m4/float_h.m4 (gl_FLOAT_H): Likewise. * m4/floor.m4 (gl_FUNC_FLOOR): Likewise. * m4/floorf.m4 (gl_FUNC_FLOORF): Likewise. * m4/fma.m4 (gl_FUNC_FMA_WORKS): Likewise. * m4/fmaf.m4 (gl_FUNC_FMAF_WORKS): Likewise. * m4/fmal.m4 (gl_FUNC_FMAL_WORKS): Likewise. * m4/fmod.m4 (gl_FUNC_FMOD): Likewise. * m4/fmodf.m4 (gl_FUNC_FMODF): Likewise. * m4/fmodl.m4 (gl_FUNC_FMODL): Likewise. * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Likewise. * m4/frexpf.m4 (gl_FUNC_FREXPF_WORKS): Likewise. * m4/ftello.m4 (gl_FUNC_FTELLO): Likewise. * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY_CLOBBER): Likewise. * m4/hypot.m4 (gl_FUNC_HYPOT): Likewise. * m4/hypotf.m4 (gl_FUNC_HYPOTF, gl_FUNC_HYPOTF_WORKS): Likewise. * m4/hypotl.m4 (gl_FUNC_HYPOTL, gl_FUNC_HYPOTL_WORKS): Likewise. * m4/ilogb.m4 (gl_FUNC_ILOGB_WORKS): Likewise. * m4/ilogbf.m4 (gl_FUNC_ILOGBF_WORKS): Likewise. * m4/isfinite.m4 (gl_ISFINITEL_WORKS): Likewise. * m4/isinf.m4 (gl_ISINFL_WORKS): Likewise. * m4/isnanf.m4 (gl_ISNANF_WORKS): Likewise. * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Likewise. * m4/ldexpl.m4 (gl_FUNC_LDEXPL_WORKS): Likewise. * m4/log.m4 (gl_FUNC_LOG, gl_FUNC_LOG_WORKS): Likewise. * m4/logf.m4 (gl_FUNC_LOGF, gl_FUNC_LOGF_WORKS): Likewise. * m4/logl.m4 (gl_FUNC_LOGL_WORKS): Likewise. * m4/log10.m4 (gl_FUNC_LOG10, gl_FUNC_LOG10_WORKS): Likewise. * m4/log10f.m4 (gl_FUNC_LOG10F, gl_FUNC_LOG10F_WORKS): Likewise. * m4/log10l.m4 (gl_FUNC_LOG10L_WORKS): Likewise. * m4/log1p.m4 (gl_FUNC_LOG1P): Likewise. * m4/log1pf.m4 (gl_FUNC_LOG1PF, gl_FUNC_LOG1PF_WORKS): Likewise. * m4/log1pl.m4 (gl_FUNC_LOG1PL): Likewise. * m4/log2.m4 (gl_FUNC_LOG2, gl_FUNC_LOG2_WORKS): Likewise. * m4/log2f.m4 (gl_FUNC_LOG2F, gl_FUNC_LOG2F_WORKS): Likewise. * m4/log2l.m4 (gl_FUNC_LOG2L_WORKS): Likewise. * m4/logb.m4 (gl_FUNC_LOGB_WORKS): Likewise. * m4/logbf.m4 (gl_FUNC_LOGBF_WORKS): Likewise. * m4/logbl.m4 (gl_FUNC_LOGBL_WORKS): Likewise. * m4/lstat.m4 (gl_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK): Likewise. * m4/mbrtowc.m4 (gl_MBRTOWC_EMPTY_INPUT, gl_MBRTOWC_C_LOCALE): Likewise. * m4/mkdir.m4 (gl_FUNC_MKDIR): Likewise. * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Likewise. * m4/mktime.m4 (gl_FUNC_MKTIME_WORKS): Likewise. * m4/modf.m4 (gl_FUNC_MODF): Likewise. * m4/modff.m4 (gl_FUNC_MODFF): Likewise. * m4/modfl.m4 (gl_FUNC_MODFL): Likewise. * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise. * m4/perror.m4 (gl_FUNC_PERROR): Likewise. * m4/popen.m4 (gl_FUNC_POPEN): Likewise. * m4/posix_spawn.m4 (gl_FUNC_POSIX_SPAWN_FILE_ACTIONS_ADDCLOSE, gl_FUNC_POSIX_SPAWN_FILE_ACTIONS_ADDDUP2, gl_FUNC_POSIX_SPAWN_FILE_ACTIONS_ADDOPEN): Likewise. * m4/ptsname_r.m4 (gl_PREREQ_PTSNAME_R): Likewise. * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise. * m4/regex.m4 (gl_REGEX): Likewise. * m4/remainder.m4 (gl_FUNC_REMAINDER): Likewise. * m4/remainderf.m4 (gl_FUNC_REMAINDERF, gl_FUNC_REMAINDERF_WORKS): Likewise. * m4/remainderl.m4 (gl_FUNC_REMAINDERL, gl_FUNC_REMAINDERL_WORKS): Likewise. * m4/rename.m4 (gl_FUNC_RENAME): Likewise. * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Likewise. * m4/rmdir.m4 (gl_FUNC_RMDIR): Likewise. * m4/round.m4 (gl_FUNC_ROUND): Likewise. * m4/roundf.m4 (gl_FUNC_ROUNDF): Likewise. * m4/roundl.m4 (gl_FUNC_ROUNDL): Likewise. * m4/signbit.m4 (gl_SIGNBIT): Likewise. * m4/sleep.m4 (gl_FUNC_SLEEP): Likewise. * m4/sqrtl.m4 (gl_FUNC_SQRTL_WORKS): Likewise. * m4/stdint.m4 (gl_STDINT_H): Likewise. * m4/strerror.m4 (gl_FUNC_STRERROR_0): Likewise. * m4/strncat.m4 (gl_FUNC_STRNCAT): Likewise. * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise. * m4/strtoimax.m4 (gl_FUNC_STRTOIMAX): Likewise. * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise. * m4/trunc.m4 (gl_FUNC_TRUNC): Likewise. * m4/truncf.m4 (gl_FUNC_TRUNCF): Likewise. * m4/truncl.m4 (gl_FUNC_TRUNCL): Likewise. * m4/tsearch.m4 (gl_FUNC_TSEARCH): Likewise. * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Likewise. * m4/ungetc.m4 (gl_FUNC_UNGETC_WORKS): Likewise. * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Likewise. * m4/unlink.m4 (gl_FUNC_UNLINK): Likewise. * m4/usleep.m4 (gl_FUNC_USLEEP): Likewise. * m4/utimes.m4 (gl_FUNC_UTIMES): Likewise. * m4/wcrtomb.m4 (gl_FUNC_WCRTOMB): Likewise. * m4/wcsrtombs.m4 (gl_WCSRTOMBS_TERMINATION, gl_WCSRTOMBS_NULL): Likewise. * m4/wctob.m4 (gl_FUNC_WCTOB): Likewise. * m4/chown.m4 (AC_FUNC_CHOWN): Add cross-compilation guess for native Windows. Enable also on Autoconf 2.70. * m4/printf.m4 (gl_PRINTF_SIZES_C99, gl_PRINTF_LONG_DOUBLE, gl_PRINTF_INFINITE, gl_PRINTF_INFINITE_LONG_DOUBLE, gl_PRINTF_DIRECTIVE_A, gl_PRINTF_DIRECTIVE_F, gl_PRINTF_DIRECTIVE_N, gl_PRINTF_DIRECTIVE_LS, gl_PRINTF_FLAG_LEFTADJUST, gl_PRINTF_FLAG_ZERO, gl_SNPRINTF_TRUNCATION_C99, gl_SNPRINTF_RETVAL_C99, gl_SNPRINTF_DIRECTIVE_N, gl_SNPRINTF_SIZE1): Add cross-compilation guess for native Windows. (gl_PRINTF_POSITIONS, gl_PRINTF_FLAG_GROUPING, gl_VSNPRINTF_ZEROSIZE_C99): Add comment.
* mktime: Work around TZ problem on native Windows.Bruno Haible2017-04-301-19/+40
| | | | | | | | | | | | | | | | | | | | * lib/mktime.c: Add #ifs to make the algorithmic workaround independent from the native Windows workaround. * m4/mktime.m4 (gl_FUNC_MKTIME_WORKS): New macro, extracted from gl_FUNC_MKTIME. If guessing, set gl_cv_func_working_mktime to 'guessing no'. (gl_FUNC_MKTIME): Require it. Require AC_CANONICAL_HOST. Set REPLACE_MKTIME to 1 on native Windows. Define NEED_MKTIME_WORKING, NEED_MKTIME_WINDOWS. (gl_FUNC_MKTIME_INTERNAL): Require gl_FUNC_MKTIME_WORKS, not gl_FUNC_MKTIME. Set WANT_MKTIME_INTERNAL, not REPLACE_MKTIME. Define NEED_MKTIME_INTERNAL. * m4/timegm.m4 (gl_FUNC_TIMEGM): Require gl_FUNC_MKTIME_WORKS, not gl_FUNC_MKTIME. Cope with 'guessing yes' value. * modules/mktime-internal (configure.ac): Test WANT_MKTIME_INTERNAL, not REPLACE_MKTIME. * doc/posix-functions/mktime.texi: Mention the native Windows workaround.
* version-etc: new yearPaul Eggert2017-01-011-1/+1
| | | | | | | | | | * build-aux/gendocs.sh (version): * doc/gendocs_template: * doc/gendocs_template_min: * doc/gnulib.texi: * lib/version-etc.c (COPYRIGHT_YEAR): Update copyright dates by hand in templates and the like. * all files: Run 'make update-copyright'.
* mktime: call tzset as per POSIXPaul Eggert2016-07-031-1/+2
| | | | | | | Problem reported by Ludovic Courtès in: http://lists.gnu.org/archive/html/bug-gnulib/2016-06/msg00068.html * lib/mktime.c (mktime) [!_LIBC && HAVE_TZSET]: Call tzset. * m4/mktime.m4 (gl_FUNC_MKTIME): Check for tzset.
* Port mktime_internal offset to unsigned time_tPaul Eggert2016-05-011-4/+18
| | | | | | | | | | | | This avoids some assumptions about wraparound arithmetic on signed integer overflow. * lib/mktime-internal.h (mktime_offset_t): New type. (mktime_internal): Use it in decl. * lib/mktime.c, lib/timegm.c (mktime_offset_t) [_LIBC]: New type. * lib/mktime.c (__mktime_internal, localtime_offset): * lib/timegm.c (timegm): Use it. * m4/mktime.m4 (gl_TIME_T_IS_SIGNED): New macro. (gl_FUNC_MKTIME): Require it.
* version-etc: new yearPaul Eggert2016-01-011-1/+1
| | | | | | | | | | * build-aux/gendocs.sh (version): * doc/gendocs_template: * doc/gendocs_template_min: * doc/gnulib.texi: * lib/version-etc.c (COPYRIGHT_YEAR): Update copyright dates by hand in templates and the like. * all files: Run 'make update-copyright'.
* version-etc: new yearPaul Eggert2014-12-311-1/+1
| | | | | | * doc/gnulib.texi: * lib/version-etc.c (COPYRIGHT_YEAR): Update copyright date. * all files: Run 'make update-copyright'.
* maint: update copyrightEric Blake2014-01-011-1/+1
| | | | | | I ran 'make update-copyright'. Signed-off-by: Eric Blake <eblake@redhat.com>
* mktime: fix configure typoPaul Eggert2013-03-121-1/+1
| | | | * m4/mktime.m4 (gl_FUNC_MKTIME): Fix typo in previous change.
* regex: port to mingw's recent addition of undeclared alarmEric Blake2013-03-111-4/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | On mingw (at least, when cross-compiling with Fedora 18's mingw32-headers-2.0.999-0.15.trunk.20121110.fc18.noarch build), compilation of test-regex fails: test-regex.c: In function 'main': test-regex.c:42:11: error: 'SIGALRM' undeclared (first use in this function) test-regex.c:42:11: note: each undeclared identifier is reported only once for each function it appears in test-regex.c:43:3: warning: implicit declaration of function 'alarm' It turns out that recent mingw64 added an export of alarm() and SIGALRM, but guarded their declarations behind __USE_MINGW_ALARM (default off, and with alarm() only in the non-standard <io.h>); so the m4 tests were setting HAVE_ALARM to 1 based on link success but then failing to compile. * doc/posix-functions/alarm.texi (alarm): Document that alarm exists but still doesn't work in newer mingw. * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Check for alarm declaration, not existence. Ensure SIGALRM is not trapped. * m4/mktime.m4 (gl_FUNC_MKTIME): Likewise. * m4/regex.m4 (gl_REGEX): Likewise. * m4/remainderf.m4 (gl_FUNC_REMAINDERF_WORKS): Likewise. * tests/test-regex.c (main): Use correct probe for alarm. Signed-off-by: Eric Blake <eblake@redhat.com>
* maint: update all copyright year number rangesEric Blake2013-01-011-1/+1
| | | | | | Run "make update-copyright". Compare to commit 1602f0a from last year. Signed-off-by: Eric Blake <eblake@redhat.com>
* mktime: avoid 'static inline'Paul Eggert2012-08-191-5/+2
| | | | | * lib/mktime.c (leapyear, ydhms_diff): Now static, not static inline. * m4/mktime.m4 (gl_PREREQ_MKTIME): Do not require AC_C_INLINE.
* Write "Mac OS X" instead of "MacOS X".Bruno Haible2012-06-221-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * README: Write "Mac OS X" instead of "MacOS X". * build-aux/bootstrap: Likewise. * build-aux/install-reloc: Likewise. * lib/acl-internal.h: Likewise. * lib/acl_entries.c: Likewise. * lib/argp-ba.c: Likewise. * lib/argp-pv.c: Likewise. * lib/config.charset: Likewise. * lib/copy-acl.c: Likewise. * lib/csharpexec.c: Likewise. * lib/euidaccess.c: Likewise. * lib/fbufmode.c: Likewise. * lib/fflush.c: Likewise. * lib/file-has-acl.c: Likewise. * lib/filemode.h: Likewise. * lib/fpurge.c: Likewise. * lib/freadable.c: Likewise. * lib/freadahead.c: Likewise. * lib/freading.c: Likewise. * lib/freadptr.c: Likewise. * lib/freadseek.c: Likewise. * lib/fseeko.c: Likewise. * lib/fseterr.c: Likewise. * lib/fsusage.c: Likewise. * lib/fwritable.c: Likewise. * lib/fwriting.c: Likewise. * lib/get-rusage-as.c: Likewise. * lib/get-rusage-data.c: Likewise. * lib/getdomainname.c: Likewise. * lib/idpriv-drop.c: Likewise. * lib/idpriv-droptemp.c: Likewise. * lib/localcharset.c: Likewise. * lib/locale.in.h: Likewise. * lib/localename.c: Likewise. * lib/mbsrtowcs-state.c: Likewise. * lib/nproc.c: Likewise. * lib/passfd.c: Likewise. * lib/posix_openpt.c: Likewise. * lib/printf-parse.c: Likewise. * lib/progreloc.c: Likewise. * lib/safe-read.h: Likewise. * lib/safe-write.h: Likewise. * lib/sched.in.h: Likewise. * lib/set-mode-acl.c: Likewise. * lib/signal.in.h: Likewise. * lib/stdint.in.h: Likewise. * lib/stdio-impl.h: Likewise. * lib/stdlib.in.h: Likewise. * lib/strtod.c: Likewise. * lib/sys_select.in.h: Likewise. * lib/tcgetsid.c: Likewise. * lib/unistd.in.h: Likewise. * lib/unlockpt.c: Likewise. * lib/vasnprintf.c: Likewise. * lib/vma-iter.c: Likewise. * lib/wcsrtombs-state.c: Likewise. * m4/acl.m4: Likewise. * m4/acosl.m4: Likewise. * m4/asinl.m4: Likewise. * m4/atanl.m4: Likewise. * m4/c-stack.m4: Likewise. * m4/cosl.m4: Likewise. * m4/expl.m4: Likewise. * m4/extensions.m4: Likewise. * m4/fdatasync.m4: Likewise. * m4/fmal.m4: Likewise. * m4/frexp.m4: Likewise. * m4/frexpf.m4: Likewise. * m4/frexpl.m4: Likewise. * m4/fsusage.m4: Likewise. * m4/getdomainname.m4: Likewise. * m4/getloadavg.m4: Likewise. * m4/getopt.m4: Likewise. * m4/gettext.m4: Likewise. * m4/gnulib-common.m4: Likewise. * m4/intdiv0.m4: Likewise. * m4/intlmacosx.m4: Likewise. * m4/largefile.m4: Likewise. * m4/ldexpl.m4: Likewise. * m4/link-follow.m4: Likewise. * m4/locale-ar.m4: Likewise. * m4/locale-fr.m4: Likewise. * m4/locale-ja.m4: Likewise. * m4/locale-tr.m4: Likewise. * m4/locale-zh.m4: Likewise. * m4/locale_h.m4: Likewise. * m4/lock.m4: Likewise. * m4/logl.m4: Likewise. * m4/mathfunc.m4: Likewise. * m4/minus-zero.m4: Likewise. * m4/mktime.m4: Likewise. * m4/mmap-anon.m4: Likewise. * m4/multiarch.m4: Likewise. * m4/nanosleep.m4: Likewise. * m4/nocrash.m4: Likewise. * m4/poll.m4: Likewise. * m4/printf-frexpl.m4: Likewise. * m4/printf.m4: Likewise. * m4/signbit.m4: Likewise. * m4/sinl.m4: Likewise. * m4/sqrtl.m4: Likewise. * m4/strerror_r.m4: Likewise. * m4/tanl.m4: Likewise. * m4/threadlib.m4: Likewise. * m4/ttyname_r.m4: Likewise. * m4/unlink.m4: Likewise. * m4/visibility.m4: Likewise. * m4/wcwidth.m4: Likewise. * tests/minus-zero.h: Likewise. * tests/test-alloca-opt.c: Likewise. * tests/test-copy-acl.sh: Likewise. * tests/test-copy-file.sh: Likewise. * tests/test-fdatasync.c: Likewise. * tests/test-file-has-acl.sh: Likewise. * tests/test-flock.c: Likewise. * tests/test-fsync.c: Likewise. * tests/test-localename.c: Likewise. * tests/test-malloca.c: Likewise. * tests/test-nonblocking-pipe.h: Likewise. * tests/test-nonblocking-socket.h: Likewise. * tests/test-openpty.c: Likewise. * tests/test-posix_openpt.c: Likewise. * tests/test-ptsname.c: Likewise. * tests/test-ptsname_r.c: Likewise. * tests/test-sameacls.c: Likewise. * tests/test-select.h: Likewise. * tests/test-set-mode-acl.sh: Likewise. * tests/test-snprintf-posix.h: Likewise. * tests/test-sprintf-posix.h: Likewise. * tests/test-strtod.c: Likewise. * tests/test-time.c: Likewise. * tests/test-vasnprintf-posix.c: Likewise. * tests/test-vasprintf-posix.c: Likewise. * doc/acl-resources.txt: Likewise. * doc/**/*.texi: Likewise. Reported by Max Horn <max@quendi.de>.
* mktime: fix integer overflow in 'configure'-time testPaul Eggert2012-06-211-11/+14
| | | | | | | | * m4/mktime.m4 (gl_FUNC_MKTIME): Do not rely on undefined behavior after integer overflow. Problem reported by Rich Felker in <http://lists.gnu.org/archive/html/bug-gnulib/2012-06/msg00257.html>. Also, don't look for further instances of a bug if we've already found one instance; this helps 'configure' run faster.
* maint: update all copyright year number rangesJim Meyering2012-01-011-1/+1
| | | | Run "make update-copyright".
* mktime: Respect rules for use of AC_LIBOBJ.Bruno Haible2011-06-161-32/+24
| | | | | | | | | | * m4/mktime.m4 (AC_FUNC_MKTIME): Remove macro. (gl_FUNC_MKTIME): Inline it here. Set gl_cv_func_working_mktime. Move AC_LIBOBJ and gl_PREREQ_MKTIME invocations from here... (gl_FUNC_MKTIME_INTERNAL): ... and here... * modules/mktime (configure.ac): ... to here. * modules/mktime-internal (configure.ac): ... and here. * m4/timegm.m4 (gl_FUNC_TIMEGM): Update.
* New module 'mktime-internal'.Bruno Haible2011-05-221-1/+18
| | | | | | | | | | * modules/mktime-internal: New file. * m4/timegm.m4 (gl_PREREQ_TIMEGM): Move contents to ... * m4/mktime.m4 (gl_FUNC_MKTIME_INTERNAL): New macro. Define mktime_internal as a C macro if libc has __mktime_internal. * modules/timegm (Depends-on): Add mktime-internal. Remove mktime. Add conditions. * MODULES.html.sh (Date and time <time.h>): Add mktime-internal.
* TYPE_MAXIMUM: avoid theoretically undefined behaviorPaul Eggert2011-01-301-3/+4
| | | | | | | | | | | | | | * lib/intprops.h (TYPE_MINIMUM, TYPE_MAXIMUM): Do not shift a negative number, which the C Standard says has undefined behavior. In practice this is not a problem, but might as well do it by the book. Reported by Rich Felker and Eric Blake; see <http://lists.gnu.org/archive/html/bug-gnulib/2011-01/msg00493.html>. * lib/strtol.c (TYPE_MINIMUM, TYPE_MAXIMUM): Likewise. * m4/mktime.m4 (AC_FUNC_MKTIME): Likewise. * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise. * m4/parse-datetime.m4 (gl_PARSE_DATETIME): Likewise. * m4/stdint.m4 (gl_STDINT_H): Likewise. * lib/mktime.c (TYPE_MAXIMUM): Redo slightly to match the others.
* mktime: avoid infinite loopEric Blake2011-01-291-9/+11
| | | | | | | | * m4/mktime.m4 (AC_FUNC_MKTIME): Avoid overflow on possibly-signed type; behavior is still undefined but portable to all known targets. Reported by Rich Felker. Signed-off-by: Eric Blake <eblake@redhat.com>
* maint: update almost all copyright ranges to include 2011Jim Meyering2011-01-011-1/+1
| | | | Run the new "make update-copyright" rule.
* Put more information about failed tests into the test return codes.Bruno Haible2010-12-061-6/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Change test program so that it returns an enumerated value (0, 1, 2, 3, 4, ...). * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Likewise. * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Likewise. * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): Likewise. * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise. * m4/getline.m4 (gl_FUNC_GETLINE): Likewise. * m4/intdiv0.m4 (gt_INTDIV0): Likewise. * m4/isapipe.m4 (gl_PREREQ_ISAPIPE): Likewise. * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise. * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Likewise. * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise. * m4/sleep.m4 (gl_FUNC_SLEEP): Likewise. * m4/stdint.m4 (gl_STDINT_H): Likewise. * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Change test program so that it returns a bit mask. * m4/canonicalize.m4 (gl_FUNC_REALPATH_WORKS): Likewise. * m4/chown.m4 (gl_FUNC_CHOWN_FOLLOWS_SYMLINK): Likewise. * m4/dup2.m4 (gl_FUNC_DUP2): Likewise. * m4/fcntl-o.m4 (gl_FCNTL_O_FLAGS): Likewise. * m4/fnmatch.m4 (gl_FUNC_FNMATCH_POSIX): Likewise. * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Likewise. * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Likewise. * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Likewise. * m4/iconv.m4 (AM_ICONV_LINK): Likewise. * m4/iconv_open.m4 (gl_FUNC_ICONV_OPEN_UTF): Likewise. * m4/isfinite.m4 (gl_ISFINITEL_WORKS): Likewise. * m4/isnanf.m4 (gl_ISNANF_WORKS): Likewise. * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Likewise. * m4/ldexpl.m4 (gl_FUNC_LDEXPL_WORKS): Likewise. * m4/link.m4 (gl_FUNC_LINK): Likewise. * m4/linkat.m4 (gl_FUNC_LINKAT): Likewise. * m4/mbrlen.m4 (gl_MBRLEN_RETVAL): Likewise. * m4/mbrtowc.m4 (gl_MBRTOWC_RETVAL): Likewise. * m4/mbsrtowcs.m4 (gl_MBSRTOWCS_WORKS): Likewise. * m4/memchr.m4 (gl_FUNC_MEMCHR): Likewise. * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise. * m4/mkfifo.m4 (gl_FUNC_MKFIFO): Likewise. * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Likewise. * m4/mktime.m4 (AC_FUNC_MKTIME): Likewise. * m4/open.m4 (gl_FUNC_OPEN): Likewise. * m4/poll.m4 (gl_FUNC_POLL): Likewise. * m4/popen.m4 (gl_FUNC_POPEN): Likewise. * m4/printf.m4 (gl_PRINTF_SIZES_C99, gl_PRINTF_LONG_DOUBLE, gl_PRINTF_INFINITE, gl_PRINTF_INFINITE_LONG_DOUBLE, gl_PRINTF_DIRECTIVE_A, gl_PRINTF_DIRECTIVE_F, gl_PRINTF_DIRECTIVE_LS, gl_PRINTF_PRECISION): Likewise. * m4/regex.m4 (gl_REGEX): Likewise. * m4/rename.m4 (gl_FUNC_RENAME): Likewise. * m4/rmdir.m4 (gl_FUNC_RMDIR): Likewise. * m4/setenv.m4 (gl_FUNC_SETENV_SEPARATE): Likewise. * m4/stat.m4 (gl_FUNC_STAT): Likewise. * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise. * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise. * m4/strerror_r.m4 (gl_FUNC_STRERROR_R): Likewise. * m4/strsignal.m4 (gl_FUNC_STRSIGNAL): Likewise. * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise. * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise. * m4/symlink.m4 (gl_FUNC_SYMLINK): Likewise. * m4/tsearch.m4 (gl_FUNC_TSEARCH): Likewise. * m4/ttyname_r.m4 (gl_FUNC_TTYNAME_R): Likewise. * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Likewise. * m4/unlink.m4 (gl_FUNC_UNLINK): Likewise. * m4/utimensat.m4 (gl_FUNC_UTIMENSAT): Likewise. * m4/utimes.m4 (gl_FUNC_UTIMES): Likewise. * m4/wcrtomb.m4 (gl_FUNC_WCRTOMB): Likewise. * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise. * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): Likewise. (gl_FLOATTYPE_SIGN_LOCATION): Change test program so that it returns an enumerated value. * m4/acl.m4 (gl_ACL_GET_FILE): Use "if ... return 1; return 0;" style.
* Take over the maintenance of some older macros from Autoconf.Bruno Haible2010-09-171-5/+2
| | | | | | | | | | * m4/error.m4 (AC_FUNC_ERROR_AT_LINE): New macro, from GNU Autoconf. * m4/lstat.m4 (AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK): New macro, from GNU Autoconf. * m4/memcmp.m4 (AC_FUNC_MEMCMP): New macro, from GNU Autoconf. * m4/mktime.m4 (AC_FUNC_MKTIME): Change comment. Signed-off-by: Eric Blake <eblake@redhat.com>
* update nearly all FSF copyright year lists to include 2010Jim Meyering2010-01-011-1/+2
| | | | | Use the same procedure as for 2009, outlined in http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/20081
* Use spaces for indentation, not tabs.Bruno Haible2009-12-101-29/+29
|
* mktime: correct setting of REPLACE_MKTIMEJim Meyering2009-07-291-0/+2
| | | | * m4/mktime.m4 (gl_FUNC_MKTIME): Set REPLACE_MKTIME=0, when required.
* Fix compilation error when <ctime> is used and mktime is replaced.Bruno Haible2009-07-281-2/+2
| | | | | | | | | * lib/time.in.h (mktime): New declaration. * m4/mktime.m4 (gl_FUNC_MKTIME): Require gl_HEADER_TIME_H_DEFAULTS. Set REPLACE_MKTIME instead of defining mktime in config.h. * m4/time_h.m4 (gl_HEADER_TIME_H_DEFAULTS): Initialize REPLACE_MKTIME. * modules/time (Makefile.am): Substitute REPLACE_MKTIME. Reported by Ross McFarland <rwmcfa1@neces.com>.
* mktime: skip configure test (fail it) for apple universal buildsBruno Haible2009-01-211-1/+8
| | | | | | * m4/mktime.m4 (AC_FUNC_MKTIME): Require gl_MULTIARCH. In Apple universal builds, assume that mktime does not work. * modules/mktime (Depends-on): Add multiarch.
* mktime.m4: remove K&R-style function prototypesAlbert Chin-A-Young2009-01-151-6/+3
| | | | | * m4/mktime.m4 (AC_FUNC_MKTIME): Remove K&R-style function prototypes for the Sun C++ compiler.
* many *.m4 files: improve m4 quotingJim Meyering2009-01-141-7/+7
| | | | | | | | | | | | | | | | 99% of this change was performed by running the following commands: git ls-files | grep '\.m4$' | xargs perl -pi \ -e 's/(AC_\w+\()([^[()]+?)([,)])/$1\[$2]$3/g;' \ -e 's/(AC_\w+\((?:\[[^,]+?\], ){1})([^,[()]+?)([,)])/$1\[$2]$3/g;' \ -e 's/(AC_\w+\((?:\[[^,]+?\], ){2})([^,[()]+?)([,)])/$1\[$2]$3/g;' \ -e 's/(AC_\w+\((?:\[[^,]+?\], ){3})([^,[()]+?)([,)])/$1\[$2]$3/g' perl -pi -e 's/\[\.\.\.\]/.../' m4/onceonly.m4 The remainder were to add Copyright dates, increment serial numbers, undo some changes in comments, exclude m4/intl.m4, and add quotes around the "1" in ",1" where the unusual spacing prohibited the above regexps from doing the job. For more details, see <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/16175>.
* mktime.c requires 'inline'.Bruno Haible2007-03-111-2/+5
|
* 2007-01-24 Bruno Haible <bruno@clisp.org>Bruno Haible2007-01-251-2/+3
| | | | | | | | | | | | | | | | | | | Don't AC_REQUIRE autoconf macros that invoke AC_LIBOBJ. See <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00279.html>. * m4/argp.m4 (gl_ARGP): Invoke, don't require, gl_GETOPT_SUBSTITUTE. * m4/fts.m4 (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): Invoke, don't require, gl_FUNC_FTS_CORE. (gl_FUNC_FTS_CORE): Invoke, don't require, gl_FUNC_OPENAT. * m4/lstat.m4 (gl_FUNC_LSTAT): Invoke, don't require, AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK. * m4/memcmp.m4 (gl_FUNC_MEMCMP): Invoke, don't require, AC_FUNC_MEMCMP. * m4/mktime.m4 (gl_FUNC_MKTIME): Invoke, don't require, AC_FUNC_MKTIME. * m4/openat.m4 (gl_FUNC_OPENAT): Invoke, don't require, gl_FUNC_FCHOWNAT. * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Invoke, don't require, gl_FUNC_STRFTIME. * m4/strtod.m4 (gl_FUNC_STRTOD): Invoke, don't require, AC_FUNC_STRTOD. Reported by Ralf Wildenhues.
* 2007-01-18 Bruno Haible <bruno@clisp.org>Bruno Haible2007-01-191-2/+2
| | | | | * m4/mktime.m4 (AC_FUNC_MKTIME): Remove test for <sys/time.h>. * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
* * MODULES.html.sh (Support for systems lacking POSIX:2001): NewPaul Eggert2007-01-181-15/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | module sys_time. * lib/gethrxtime.c: Include <sys/time.h>, since we can no longer assume timespec.h defines struct timeval. * lib/settime.c: Likewise. * lib/utimens.c: Likewise. * lib/gettime.c (gettime): Remove test against HAVE_GETTIMEOFDAY, since we now assume the gettimeofday module. * lib/tempname.c (__gen_tempname): Likewise. * lib/gettimeofday.h: Remove. * lib/gettimeofday.c: Include <sys/time.h> instead of "gettimeofday.h". Don't include <sys/types.h> and <stdlib.h>; shouldn't be needed. Include <time.h>, for 'time()'. (localtime_buffer_addr): Also use this workaround if TZSET_CLOBBERS_LOCALTIME. Set to a dummy static variable by default, to simplify the uses. All uses changed. (localtime, gmtime, tzset, gettimeofday): Reformat slightly so that #undef is inside {}, and 'const' follows type name consistently. (tzset): Define replacement only if TZSET_CLOBBERS_LOCALTIME. (gettimeofday): Do not use the maximum possible value for tv->tv_usec, since that might break usages other than ls.c. Instead, we'll leave ls.c alone. This undoes today's patch by Bruno. Add a compile-time warning for 1s-clock resolution; we've never observed the problem but might as well keep the canary. * lib/nanosleep.c: Include timespec.h first, for interface check. * lib/nanosleep.c: Include <sys/time.h> unconditionally, since we now assume the sys_time module. * lib/tempname.c: Likewise. * lib/timespec.h: Likewise. * lib/nanosleep.c: Don't worry about TIME_WITH_SYS_TIME; no longer needed. * lib/strftime.c: Likewise. * lib/timespec.h: Likewise. * lib/posixtm.c: Include posixtm.h first, for interface check. Don't worry about TM_IN_SYS_TIME; that's wayyy obsolete. * lib/posixtm.h: Include stdbool.h and time.h, for proper interface. * lib/strftime.c: Don't include <sys/types.h>; shouldn't be needed. * lib/sys_time_.h: New file. * lib/timespec.h (struct timespec): Use long int, not long. * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): (gl_FUNC_GETTIMEOFDAY_CLOBBER, gl_PREREQ_GETTIMEOFDAY): Remove obsolescent call to AC_HEADER_TIME. * m4/mktime.m4 (AC_FUNC_MKTIME): Likewise. * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise. * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise. * m4/timespec.m4 (gl_TIMESPEC, gl_CHECK_TYPE_STRUCT_TIMESPEC): Likewise. * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Likewise. * m4/utimbuf.m4 (gl_CHECK_TYPE_STRUCT_UTIMBUF): Likewise. * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): Move sys/time.h tests into the sys_time module. Check for gettimeofday just once. Prefix our variables with gl_, not with ac_ or jm_. Tighten test for gettimeofday signature to just check the signature. Merely compile it, since linking doesn't test signature. Improve test for whether gettimeofday.o is actually needed. (gl_FUNC_GETTIMEOFDAY_CLOBBER): Renamed from AC_FUNC_GETTIMEOFDAY_CLOBBER. All uses changed. Use AC_RUN_IFELSE rather than AC_TRY_RUN. If clobbering, set and define GETTIMEOFDAY_CLOBBERS_LOCALTIME. (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Don't define GETTIMEOFDAY_CLOBBERS_LOCALTIME; that's gl_FUNC_GETTIMEOFDAY_CLOBBER's job. Don't define tzset; that's gl_FUNC_TZSET_CLOBBER's job. * m4/mktime.m4 (AC_FUNC_MKTIME): Just include <time.h> rather than worrying about sys/time.h. * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Don't bother worrying about TIME_WITH_SYS_TIME. * m4/stat-time.m4 (gl_STAT_TIME): Likewise. * m4/posixtm.m4 (gl_POSIXTM): Remove obsolescent call to AC_STRUCT_TM. * m4/sys_time_h.m4: New file. * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Require gl_HEADER_SYS_TIME_H. Don't include sys/time.h. Return from main rather than exiting. Define TZSET_CLOBBERS_LOCALTIME, for consistency with other names; all uses changed. * modules/gethrxtime (Depends-on): Add sys_time. * modules/gettime (Depends-on): Likewise. * modules/gettimeofday (Depends-on): Likewise. * modules/nanosleep (Depends-on): Likewise. * modules/settime (Depends-on): Likewise. * modules/tempname (Depends-on): Likewise. * modules/utimens (Depends-on): Likewise. * modules/gettimeofday (Files): Remove lib/gettimeofday.h. (Include:) Change back to <sys/time.h>. (Maintainer:) Add self. * modules/sys_time: New file. * modules/tempname (Depends-on): Add gettimeofday. * tests/test-gettimeofday.c: Include <sys/time.h> rather than gettimeofday.h.
* * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.Paul Eggert2006-12-221-11/+17
| | | | | | | | | | | Include <limits.h>, and use its INT_MAX to rewrite the j loop so that it does not overflow 'int'. Problem reported by Ralf Wildenhues in <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00084.html>. Play it safe by shifting left by 1 rather than multiplying by 2, as GCC is less likely to optimize this away when the value is signed (when it assumes overflow leads to undefined behavior). Also, don't assume time_t uses two's complement.
* * config/srclist.txt: Temporarily comment out mktime.c until glibc bugPaul Eggert2006-09-081-35/+68
| | | | | | | | | | | | | | | | | | | | | | | 2821 is fixed. * lib/mktime.c (guess_time_tm): Fix bug where mktime returned the maximum time_t value rather than (time_t) -1. Problem originally reported by William Bardwell <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>. * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf. Check for unistd.h too, since Autoconf doesn't assume POSIX. Also: 2006-09-08 Paul Eggert <eggert@cs.ucla.edu> Add year_2050_test to catch glibc bug 2821 <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>. 2006-08-15 Paul Eggert <eggert@cs.ucla.edu> Prefer #ifdef to #if. 2006-04-02 Paul Eggert <eggert@cs.ucla.edu> Return from 'main' instead of calling 'exit'.
* Sync from coreutils.Paul Eggert2005-09-231-11/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * .cppi-disable: Add regcomp.c, regex_internal.c, regex_internal.h, stat-time.h. * argmatch.h: Include verify.h (ARGMATCH_VERIFY): Use verify rather than rolling our own. (ARGMATCH_ASSERT): Remove; unused. * canonicalize.c: Assume STDC_HEADERS. * exclude.c: Include "strcase.h". * regex_internal.h [!defined _LIBC]: Likewise. * getusershell.c: Include stdio--.h rather than stdio.h and stdio-safer.h. (getusershell): Call fopen, not fopen_safer. * save-cwd.c: Include fcntl--.h rather than fcntl.h. Do not include unistd-safer.h. (save_cwd): Don't call fd_safer; no longer needed now that we include fcntl--.h. * modules/argmatch (Depends-on): Add verify. * modules/getloadavg (Depends-on): Depend on fcntl-safer, not unistd-safer. * modules/save-cwd (Depends-on): Likewise. * backupfile.m4, calloc.m4, chown.m4, cloexec.m4, dup2.m4: * fileblocks.m4, free.m4, ftruncate.m4, getcwd.m4, getpagesize.m4: * getugroups.m4, group-member.m4, idcache.m4, link-follow.m4: * mkstemp.m4, mktime.m4, mountlist.m4, nanosleep.m4, pathmax.m4: * physmem.m4, posixver.m4, putenv.m4, safe-read.m4, same.m4: * save-cwd.m4, stdio-safer.m4, unistd-safer.m4, unlinkdir.m4: * userspec.m4, xgetcwd.m4, xreadlink.m4: Don't bother checking for string.h, stdlib.h, unistd.h. * fts.m4 (gl_FUNC_FTS_CORE): Don't require AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK; that's now the lstat module's job. * jm-macros.m4 (gl_MACROS): Likewise. * prereq.m4 (gl_PREREQ): Add gl_FUNC_LSTAT. * backupfile.c: Use ARGMATCH_VERIFY, just in case. * posixtm.c (posixtime) [lint]: Initialize *all* of tm0, not just the .tm_year member, since otherwise gcc-4.0 would now warn about tm_zone, tm_gmtoff, tm_isdst, tm_yday, tm_wday. * quotearg.c (quotearg_n_options): Change code to be suboptimal, in order to avoid an unsuppressible warning from gcc on 64-bit systems. * lstat.m4 (gl_FUNC_LSTAT): Use AC_LIBSOURCES to require lstat.c and lstat.h. Remove obsolete comment. * xreadlink.m4: Use AC_LIBSOURCES and AC_LIBOBJ. * xstrtod.m4: Likewise.