Bruno Haible
e4d101c4e7
New module 'localtime-buffer', split off from module 'gettimeofday'.
...
* lib/localtime-buffer.h: New file.
* lib/localtime-buffer.c: New file, extracted from lib/gettimeofday.c.
* lib/time.in.h (tzset): New declaration.
(localtime, gmtime): Don't test GNULIB_GETTIMEOFDAY.
* lib/tzset.c: New file, extracted from lib/gettimeofday.c.
* lib/gettimeofday.c: Include localtime-buffer.h. Remove code that was
moved to lib/localtime-buffer.c or lib/tzset.c.
* m4/localtime-buffer.m4: New file.
* m4/time_h.m4 (gl_HEADER_TIME_H_DEFAULTS): Initialize GNULIB_TZSET,
HAVE_TZSET, REPLACE_TZSET.
* m4/tzset.m4 (gl_FUNC_TZSET): Move code from m4/gettimeofday.m4 to
here, with modifications. Set HAVE_TZSET, REPLACE_TZSET. Invoke
gl_LOCALTIME_BUFFER_NEEDED.
(gl_FUNC_TZSET_CLOBBER): Don't require gl_HEADER_SYS_TIME_H; not needed
since 2007-01-18.
* m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): Remove code that deals with
tzset.
(gl_FUNC_GETTIMEOFDAY_CLOBBER): Require gl_LOCALTIME_BUFFER_DEFAULTS.
Invoke gl_LOCALTIME_BUFFER_NEEDED instead of
gl_GETTIMEOFDAY_REPLACE_LOCALTIME.
(gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Remove macro.
* modules/localtime-buffer: New file.
* modules/time (Depends-on): Remove 'gettimeofday'.
(Makefile.am): Substitute GNULIB_TZSET, HAVE_TZSET,
REPLACE_TZSET. Don't substitute GNULIB_GETTIMEOFDAY.
* modules/tzset (Description): Enable hyperlink to POSIX spec.
(Files): Add lib/tzset.c.
(Depends-on): Remove gettimeofday. Add localtime-buffer, time.
(configure.ac): Arrange to conditionally compile lib/tzset.c. Invoke
gl_TIME_MODULE_INDICATOR.
* modules/gettimeofday (Depends-on): Add localtime-buffer.
2017-05-01 18:36:22 +02:00
Bruno Haible
9df4babee6
strftime-fixes: New module.
...
* lib/time.in.h (strftime): New declaration.
* lib/strftime-fixes.c: New file.
* m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Inline gl_FUNC_STRFTIME macro.
(gl_FUNC_STRFTIME): Remove macro.
* m4/strftime-fixes.m4: New file.
* m4/time_h.m4 (gl_HEADER_TIME_H_DEFAULTS): Initialize GNULIB_STRFTIME,
REPLACE_STRFTIME.
* modules/time (Makefile.am): Substitute GNULIB_STRFTIME,
REPLACE_STRFTIME.
* modules/strftime-fixes: New file.
* doc/posix-functions/strftime.texi: Mention the new module.
2017-04-30 19:26:38 +02:00
Bruno Haible
16778a2911
localtime: New module.
...
* lib/time.in.h (localtime): Declare also if requested by module
'localtime'.
* lib/localtime.c: New file.
* m4/localtime.m4: New file.
* m4/time_h.m4 (gl_HEADER_TIME_H_DEFAULTS): Initialize GNULIB_LOCALTIME.
* modules/time (Makefile.am): Substitute GNULIB_LOCALTIME.
* modules/localtime: New file.
* doc/posix-functions/localtime.texi: Mention the new module.
2017-04-30 19:26:37 +02:00
Bruno Haible
8c59a9eb5c
ctime: New module.
...
* lib/time.in.h (ctime): New declaration.
* lib/ctime.c: New file.
* m4/ctime.m4: New file.
* m4/time_h.m4 (gl_HEADER_TIME_H_DEFAULTS): Initialize GNULIB_CTIME,
REPLACE_CTIME.
* modules/time (Makefile.am): Substitute GNULIB_CTIME, REPLACE_CTIME.
* modules/ctime: New file.
* doc/posix-functions/ctime.texi: Mention the new module.
2017-04-30 19:26:37 +02:00
Paul Eggert
4bc76593d5
time_rz: new module
...
* MODULES.html.sh: Add time_rz.
* lib/time_rz.c, m4/time_rz.m4, modules/time_rz: New files.
* lib/time.in.h (timezone_t, tzalloc, tzfree, localtime_rz, mktime_z):
New decls if _GNU_SOURCE && @GNULIB_TIME_RZ@ && ! @HAVE_TIMEZONE_T@.
* m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_DEFAULTS):
New var HAVE_TIMEZONE_T (default 0).
* m4/time_h.m4 (gl_HEADER_TIME_H_DEFAULTS):
New var GNULIB_TIME_RZ (default 0).
* modules/time (time.h): Substitute the new vars.
2015-07-23 18:31:07 -07:00
Paul Eggert
342d9f09f2
time: port to MinGW32 3.21
...
Problem reported by Eli Zaretskii in:
http://lists.gnu.org/archive/html/bug-gnulib/2015-01/msg00042.html
* lib/time.in.h:
* m4/time_h.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC):
* modules/time (Depends-on):
Fall back on unistd.h if the other include files don't define
struct timespec.
2015-01-15 17:37:49 -08:00
Paul Eggert
23eecb48e3
gettimeofday: port recent C++ fix to Emacs
...
Without this further patch, Emacs won't build due to
the portcheck failing. Also, this simplifies the patch a bit.
* lib/time.in.h (localtime, gmtime): Don't replace unless
GNULIB_GETTIMEOFDAY. Treat them more like mktime.
* lib/time.in.h (localtime, gmtime):
* m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME):
* m4/time_h.m4 (gl_HEADER_TIME_H_DEFAULTS):
* modules/time (time.h):
Don't worry about about the possibility of localtime and gmtime
being absent; they're present in all C libraries we know about.
* m4/time_h.m4 (gl_HEADER_TIME_H_DEFAULTS):
Don't assume sys_time is present and has been initialized.
Instead, use a hack that should work even if it hasn't been.
Don't use a portcheck for gmtime or localtime; this supports
the hack.
* modules/time (time.h): Substitute GNULIB_GETTIMEOFDAY.
2013-12-17 12:44:49 -08:00
John W. Eaton
2484671850
gettimeofday: fix C++ crosscompilation
...
Never replace gmtime and localtime by macros when compiling with
C++, this prevents <ctime> from being included.
* m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Do not
define gmtime and localtime as preprocessor macros. Instead
define some HAVE_GMTIME, HAVE_LOCALTIME, REPLACE_GMTIME, and
REPLACE_LOCALTIME substitutions.
* lib/time.in.h: Declare gmtime and localtime when needed.
* m4/time_h.m4 (gl_HEADER_TIME_H_DEFAULTS): AC_SUBST HAVE_GMTIME,
HAVE_LOCALTIME, REPLACE_GMTIME, and REPLACE_LOCALTIME.
* modules/time: Depend on gettimeofday, and substitute the above
variables in time.h.
2013-12-17 11:05:13 -08:00
Bruno Haible
ddb4ab5665
Rename module 'warn-on-use' to 'snippet/warn-on-use'.
...
* modules/snippet/warn-on-use: Renamed from modules/warn-on-use.
(Files, Makefile.am): Update.
* build-aux/snippet/warn-on-use.h: Renamed from build-aux/warn-on-use.h.
* modules/arpa_inet (Depends-on): Update.
* modules/ctype (Depends-on): Update.
* modules/dirent (Depends-on): Update.
* modules/fcntl-h (Depends-on): Update.
* modules/glob (Depends-on): Update.
* modules/iconv-h (Depends-on): Update.
* modules/inttypes-incomplete (Depends-on): Update.
* modules/langinfo (Depends-on): Update.
* modules/locale (Depends-on): Update.
* modules/math (Depends-on): Update.
* modules/netdb (Depends-on): Update.
* modules/poll-h (Depends-on): Update.
* modules/pty (Depends-on): Update.
* modules/search (Depends-on): Update.
* modules/signal (Depends-on): Update.
* modules/spawn (Depends-on): Update.
* modules/stdio (Depends-on): Update.
* modules/stdlib (Depends-on): Update.
* modules/string (Depends-on): Update.
* modules/strings (Depends-on): Update.
* modules/sys_file (Depends-on): Update.
* modules/sys_ioctl (Depends-on): Update.
* modules/sys_select (Depends-on): Update.
* modules/sys_socket (Depends-on): Update.
* modules/sys_stat (Depends-on): Update.
* modules/sys_time (Depends-on): Update.
* modules/sys_times (Depends-on): Update.
* modules/sys_utsname (Depends-on): Update.
* modules/sys_wait (Depends-on): Update.
* modules/termios (Depends-on): Update.
* modules/time (Depends-on): Update.
* modules/unistd (Depends-on): Update.
* modules/wchar (Depends-on): Update.
* modules/wctype-h (Depends-on): Update.
* MODULES.html.sh (Support for building libraries and executables):
Update.
2011-07-12 11:58:49 +02:00
Bruno Haible
6045c2ba7c
Rename module 'c++defs' to 'snippet/c++defs'.
...
* modules/snippet/c++defs: Renamed from modules/c++defs.
(Files, Makefile.am): Update.
* build-aux/snippet/c++defs.h: Renamed from build-aux/c++defs.h.
* modules/arpa_inet (Depends-on): Update.
* modules/ctype (Depends-on): Update.
* modules/dirent (Depends-on): Update.
* modules/fcntl-h (Depends-on): Update.
* modules/glob (Depends-on): Update.
* modules/iconv-h (Depends-on): Update.
* modules/langinfo (Depends-on): Update.
* modules/locale (Depends-on): Update.
* modules/math (Depends-on): Update.
* modules/netdb (Depends-on): Update.
* modules/poll-h (Depends-on): Update.
* modules/pty (Depends-on): Update.
* modules/search (Depends-on): Update.
* modules/signal (Depends-on): Update.
* modules/spawn (Depends-on): Update.
* modules/stdio (Depends-on): Update.
* modules/stdlib (Depends-on): Update.
* modules/string (Depends-on): Update.
* modules/strings (Depends-on): Update.
* modules/sys_ioctl (Depends-on): Update.
* modules/sys_select (Depends-on): Update.
* modules/sys_socket (Depends-on): Update.
* modules/sys_stat (Depends-on): Update.
* modules/sys_time (Depends-on): Update.
* modules/sys_wait (Depends-on): Update.
* modules/termios (Depends-on): Update.
* modules/time (Depends-on): Update.
* modules/unistd (Depends-on): Update.
* modules/wchar (Depends-on): Update.
* modules/wctype-h (Depends-on): Update.
2011-07-12 11:39:50 +02:00
Bruno Haible
95e1b7bdbf
Rename module 'arg-nonnull' to 'snippet/arg-nonnull'.
...
* modules/snippet/arg-nonnull: Renamed from modules/arg-nonnull.
(Files, Makefile.am): Update.
* build-aux/snippet/arg-nonnull.h: Renamed from build-aux/arg-nonnull.h.
* modules/argv-iter (Depends-on): Update.
* modules/arpa_inet (Depends-on): Update.
* modules/dirent (Depends-on): Update.
* modules/fcntl-h (Depends-on): Update.
* modules/fnmatch (Depends-on): Update.
* modules/getopt-posix (Depends-on): Update.
* modules/glob (Depends-on): Update.
* modules/iconv-h (Depends-on): Update.
* modules/inttypes-incomplete (Depends-on): Update.
* modules/locale (Depends-on): Update.
* modules/math (Depends-on): Update.
* modules/netdb (Depends-on): Update.
* modules/search (Depends-on): Update.
* modules/signal (Depends-on): Update.
* modules/spawn (Depends-on): Update.
* modules/stdio (Depends-on): Update.
* modules/stdlib (Depends-on): Update.
* modules/string (Depends-on): Update.
* modules/strings (Depends-on): Update.
* modules/sys_socket (Depends-on): Update.
* modules/sys_stat (Depends-on): Update.
* modules/sys_time (Depends-on): Update.
* modules/sys_times (Depends-on): Update.
* modules/sys_utsname (Depends-on): Update.
* modules/time (Depends-on): Update.
* modules/unistd (Depends-on): Update.
* modules/wchar (Depends-on): Update.
* MODULES.html.sh (Support for building libraries and executables):
Update.
2011-07-12 11:34:36 +02:00
Bruno Haible
284602e284
gnulib-tool: Better isolation between different gnulib-tool invocations.
...
* gnulib-tool: New option --witness-c-macro.
(witness_c_macro): New variable.
(func_emit_lib_Makefile_am): If --witness-c-macro was specified, let
AM_CPPFLAGS define it as a C macro.
(func_emit_tests_Makefile_am): Likewise.
(func_import): Store witness_c_macro setting in gnulib-cache.m4 and
read it from there.
* m4/gnulib-common.m4 (gl_MODULE_INDICATOR_CONDITION): Define through
m4_define, not AC_DEFUN.
(gl_MODULE_INDICATOR_SET_VARIABLE_AUX,
gl_MODULE_INDICATOR_SET_VARIABLE_AUX_OR): New macros.
(gl_MODULE_INDICATOR_SET_VARIABLE): Use them.
* modules/arpa_inet (Makefile.am): Use sed expression s/.../.../, not
s|...|...|, to substitute the values of the GNULIB_* module indicator
variables.
* modules/dirent (Makefile.am): Likewise.
* modules/fcntl-h (Makefile.am): Likewise.
* modules/iconv-h (Makefile.am): Likewise.
* modules/langinfo (Makefile.am): Likewise.
* modules/locale (Makefile.am): Likewise.
* modules/math (Makefile.am): Likewise.
* modules/netdb (Makefile.am): Likewise.
* modules/poll-h (Makefile.am): Likewise.
* modules/pty (Makefile.am): Likewise.
* modules/search (Makefile.am): Likewise.
* modules/signal (Makefile.am): Likewise.
* modules/spawn (Makefile.am): Likewise.
* modules/stdio (Makefile.am): Likewise.
* modules/stdlib (Makefile.am): Likewise.
* modules/string (Makefile.am): Likewise.
* modules/sys_ioctl (Makefile.am): Likewise.
* modules/sys_select (Makefile.am): Likewise.
* modules/sys_socket (Makefile.am): Likewise.
* modules/sys_stat (Makefile.am): Likewise.
* modules/sys_times (Makefile.am): Likewise.
* modules/sys_utsname (Makefile.am): Likewise.
* modules/sys_wait (Makefile.am): Likewise.
* modules/termios (Makefile.am): Likewise.
* modules/time (Makefile.am): Likewise.
* modules/unistd (Makefile.am): Likewise.
* modules/wchar (Makefile.am): Likewise.
2011-06-08 13:25:12 +02:00
Bruno Haible
0ab583c0ea
Allow multiple gnulib generated include files to be combined.
...
* gnulib-tool (func_compute_include_guard_prefix): New function.
(func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Resolve also
${gl_include_guard_prefix} references.
(func_import, func_create_testdir): Invoke
func_compute_include_guard_prefix.
* lib/arpa_inet.in.h: Use the @GUARD_PREFIX@ placeholder.
* lib/ctype.in.h: Likewise.
* lib/dirent.in.h: Likewise.
* lib/errno.in.h: Likewise.
* lib/fcntl.in.h: Likewise.
* lib/float.in.h: Likewise.
* lib/getopt.in.h: Likewise.
* lib/iconv.in.h: Likewise.
* lib/langinfo.in.h: Likewise.
* lib/locale.in.h: Likewise.
* lib/math.in.h: Likewise.
* lib/netdb.in.h: Likewise.
* lib/netinet_in.in.h: Likewise.
* lib/poll.in.h: Likewise.
* lib/pthread.in.h: Likewise.
* lib/pty.in.h: Likewise.
* lib/sched.in.h: Likewise.
* lib/se-selinux.in.h: Likewise.
* lib/search.in.h: Likewise.
* lib/signal.in.h: Likewise.
* lib/spawn.in.h: Likewise.
* lib/stdarg.in.h: Likewise.
* lib/stddef.in.h: Likewise.
* lib/stdint.in.h: Likewise.
* lib/stdio.in.h: Likewise.
* lib/stdlib.in.h: Likewise.
* lib/string.in.h: Likewise.
* lib/strings.in.h: Likewise.
* lib/sys_file.in.h: Likewise.
* lib/sys_ioctl.in.h: Likewise.
* lib/sys_select.in.h: Likewise.
* lib/sys_socket.in.h: Likewise.
* lib/sys_stat.in.h: Likewise.
* lib/sys_time.in.h: Likewise.
* lib/sys_times.in.h: Likewise.
* lib/sys_uio.in.h: Likewise.
* lib/sys_utsname.in.h: Likewise.
* lib/sys_wait.in.h: Likewise.
* lib/sysexits.in.h: Likewise.
* lib/termios.in.h: Likewise.
* lib/time.in.h: Likewise.
* lib/unistd.in.h: Likewise.
* lib/wchar.in.h: Likewise.
* lib/wctype.in.h: Likewise.
* modules/arpa_inet (Makefile.am): Substitute @GUARD_PREFIX@.
* modules/ctype (Makefile.am): Likewise.
* modules/dirent (Makefile.am): Likewise.
* modules/errno (Makefile.am): Likewise.
* modules/fcntl-h (Makefile.am): Likewise.
* modules/float (Makefile.am): Likewise.
* modules/getopt-posix (Makefile.am): Likewise.
* modules/iconv-h (Makefile.am): Likewise.
* modules/langinfo (Makefile.am): Likewise.
* modules/locale (Makefile.am): Likewise.
* modules/math (Makefile.am): Likewise.
* modules/netdb (Makefile.am): Likewise.
* modules/netinet_in (Makefile.am): Likewise.
* modules/poll-h (Makefile.am): Likewise.
* modules/pthread (Makefile.am): Likewise.
* modules/pty (Makefile.am): Likewise.
* modules/sched (Makefile.am): Likewise.
* modules/search (Makefile.am): Likewise.
* modules/selinux-h (Makefile.am): Likewise.
* modules/signal (Makefile.am): Likewise.
* modules/spawn (Makefile.am): Likewise.
* modules/stdarg (Makefile.am): Likewise.
* modules/stddef (Makefile.am): Likewise.
* modules/stdint (Makefile.am): Likewise.
* modules/stdio (Makefile.am): Likewise.
* modules/stdlib (Makefile.am): Likewise.
* modules/string (Makefile.am): Likewise.
* modules/strings (Makefile.am): Likewise.
* modules/sys_file (Makefile.am): Likewise.
* modules/sys_ioctl (Makefile.am): Likewise.
* modules/sys_select (Makefile.am): Likewise.
* modules/sys_socket (Makefile.am): Likewise.
* modules/sys_stat (Makefile.am): Likewise.
* modules/sys_time (Makefile.am): Likewise.
* modules/sys_times (Makefile.am): Likewise.
* modules/sys_uio (Makefile.am): Likewise.
* modules/sys_utsname (Makefile.am): Likewise.
* modules/sys_wait (Makefile.am): Likewise.
* modules/sysexits (Makefile.am): Likewise.
* modules/termios (Makefile.am): Likewise.
* modules/time (Makefile.am): Likewise.
* modules/unistd (Makefile.am): Likewise.
* modules/wchar (Makefile.am): Likewise.
* modules/wctype-h (Makefile.am): Likewise.
* modules/assert-h (Makefile.am): Replace _GL_VERIFY_H specially.
2011-05-29 15:44:42 +02:00
Bruno Haible
b4b6391081
Ensure to rebuild generated .h files when config.status has changed.
...
* modules/arpa_inet (Makefile.am): Add dependency from .h file to
config.status.
* modules/ctype (Makefile.am): Likewise.
* modules/dirent (Makefile.am): Likewise.
* modules/errno (Makefile.am): Likewise.
* modules/fcntl-h (Makefile.am): Likewise.
* modules/float (Makefile.am): Likewise.
* modules/getopt-posix (Makefile.am): Likewise.
* modules/glob (Makefile.am): Likewise.
* modules/iconv-h (Makefile.am): Likewise.
* modules/inttypes (Makefile.am): Likewise.
* modules/langinfo (Makefile.am): Likewise.
* modules/locale (Makefile.am): Likewise.
* modules/math (Makefile.am): Likewise.
* modules/netdb (Makefile.am): Likewise.
* modules/netinet_in (Makefile.am): Likewise.
* modules/poll-h (Makefile.am): Likewise.
* modules/pthread (Makefile.am): Likewise.
* modules/pty (Makefile.am): Likewise.
* modules/sched (Makefile.am): Likewise.
* modules/search (Makefile.am): Likewise.
* modules/selinux-h (Makefile.am): Likewise.
* modules/signal (Makefile.am): Likewise.
* modules/spawn (Makefile.am): Likewise.
* modules/stdarg (Makefile.am): Likewise.
* modules/stdbool (Makefile.am): Likewise.
* modules/stddef (Makefile.am): Likewise.
* modules/stdint (Makefile.am): Likewise.
* modules/stdio (Makefile.am): Likewise.
* modules/stdlib (Makefile.am): Likewise.
* modules/string (Makefile.am): Likewise.
* modules/strings (Makefile.am): Likewise.
* modules/sys_file (Makefile.am): Likewise.
* modules/sys_ioctl (Makefile.am): Likewise.
* modules/sys_select (Makefile.am): Likewise.
* modules/sys_socket (Makefile.am): Likewise.
* modules/sys_stat (Makefile.am): Likewise.
* modules/sys_time (Makefile.am): Likewise.
* modules/sys_times (Makefile.am): Likewise.
* modules/sys_utsname (Makefile.am): Likewise.
* modules/sys_wait (Makefile.am): Likewise.
* modules/sysexits (Makefile.am): Likewise.
* modules/termios (Makefile.am): Likewise.
* modules/time (Makefile.am): Likewise.
* modules/unistd (Makefile.am): Likewise.
* modules/wchar (Makefile.am): Likewise.
* modules/wctype-h (Makefile.am): Likewise.
Reported by Karl Berry, Eric Blake, and Ralf Wildenhues.
2011-04-06 01:52:51 +02:00
Bruce Korb
4013d14c4b
libposix: Revert the unreviewed part of yesterday's big merge.
...
Back out yesterday's big merge from the libposix branch, except for the
openat-die.c change that was reviewed and approved by Paul Eggert.
Put the ChangeLog entry at the top, to reflect the order of changes in the
master branch.
2011-02-06 21:15:53 +01:00
Bruce Korb
abac9b7349
libposix: Add _HEADERS primaries to posix modules.
...
Modify gnulib-tool to strip them from generated Makefile.am-s where
they are not needed. Also, replace M4 macro prefixes when requested.
Finally, omit calls to error() for libposix.
2011-02-05 11:48:43 -08:00
Bruno Haible
115dcb2a1a
time_r: Add missing declarations on HP-UX 11.
...
* lib/time.in.h (localtime_r, gmtime_r): Test HAVE_DECL_LOCALTIME_R
instead of HAVE_LOCALTIME_R.
* m4/time_r.m4 (gl_TIME_R): Test whether localtime_r is declared. Set
HAVE_LOCALTIME_R always.
* m4/time_h.m4 (gl_HEADER_TIME_H_DEFAULTS): Initialize
HAVE_DECL_LOCALTIME_R, not HAVE_LOCALTIME_R.
* modules/time (Makefile.am): Substitute HAVE_DECL_LOCALTIME_R, not
HAVE_LOCALTIME_R.
* doc/posix-functions/gmtime_r.texi: Document the HP-UX 11 problem.
* doc/posix-functions/localtime_r.texi: Likewise.
2010-12-31 14:01:33 +01:00
Bruno Haible
968e74c2c0
Avoid line length limitation from HP NonStop system header files.
...
* m4/include_next.m4 (gl_INCLUDE_NEXT): Define also PRAGMA_COLUMNS.
* lib/arpa_inet.in.h: Use PRAGMA_COLUMNS.
* lib/ctype.in.h: Likewise.
* lib/dirent.in.h: Likewise.
* lib/errno.in.h: Likewise.
* lib/fcntl.in.h: Likewise.
* lib/float.in.h: Likewise.
* lib/getopt.in.h: Likewise.
* lib/iconv.in.h: Likewise.
* lib/inttypes.in.h: Likewise.
* lib/langinfo.in.h: Likewise.
* lib/locale.in.h: Likewise.
* lib/math.in.h: Likewise.
* lib/netdb.in.h: Likewise.
* lib/netinet_in.in.h: Likewise.
* lib/poll.in.h: Likewise.
* lib/pthread.in.h: Likewise.
* lib/pty.in.h: Likewise.
* lib/sched.in.h: Likewise.
* lib/se-selinux.in.h: Likewise.
* lib/search.in.h: Likewise.
* lib/signal.in.h: Likewise.
* lib/spawn.in.h: Likewise.
* lib/stdarg.in.h: Likewise.
* lib/stddef.in.h: Likewise.
* lib/stdint.in.h: Likewise.
* lib/stdio.in.h: Likewise.
* lib/stdlib.in.h: Likewise.
* lib/string.in.h: Likewise.
* lib/strings.in.h: Likewise.
* lib/sys_file.in.h: Likewise.
* lib/sys_ioctl.in.h: Likewise.
* lib/sys_select.in.h: Likewise.
* lib/sys_socket.in.h: Likewise.
* lib/sys_stat.in.h: Likewise.
* lib/sys_time.in.h: Likewise.
* lib/sys_times.in.h: Likewise.
* lib/sys_utsname.in.h: Likewise.
* lib/sys_wait.in.h: Likewise.
* lib/sysexits.in.h: Likewise.
* lib/termios.in.h: Likewise.
* lib/time.in.h: Likewise.
* lib/unistd.in.h: Likewise.
* lib/wchar.in.h: Likewise.
* lib/wctype.in.h: Likewise.
* modules/arpa_inet (Makefile.am): Substitute PRAGMA_COLUMNS.
* modules/ctype (Makefile.am): Likewise.
* modules/dirent (Makefile.am): Likewise.
* modules/errno (Makefile.am): Likewise.
* modules/fcntl-h (Makefile.am): Likewise.
* modules/float (Makefile.am): Likewise.
* modules/getopt-posix (Makefile.am): Likewise.
* modules/iconv-h (Makefile.am): Likewise.
* modules/inttypes (Makefile.am): Likewise.
* modules/langinfo (Makefile.am): Likewise.
* modules/locale (Makefile.am): Likewise.
* modules/math (Makefile.am): Likewise.
* modules/netdb (Makefile.am): Likewise.
* modules/netinet_in (Makefile.am): Likewise.
* modules/poll-h (Makefile.am): Likewise.
* modules/pthread (Makefile.am): Likewise.
* modules/pty (Makefile.am): Likewise.
* modules/sched (Makefile.am): Likewise.
* modules/search (Makefile.am): Likewise.
* modules/selinux-h (Makefile.am): Likewise.
* modules/signal (Makefile.am): Likewise.
* modules/spawn (Makefile.am): Likewise.
* modules/stdarg (Makefile.am): Likewise.
* modules/stddef (Makefile.am): Likewise.
* modules/stdint (Makefile.am): Likewise.
* modules/stdio (Makefile.am): Likewise.
* modules/stdlib (Makefile.am): Likewise.
* modules/string (Makefile.am): Likewise.
* modules/strings (Makefile.am): Likewise.
* modules/sys_file (Makefile.am): Likewise.
* modules/sys_ioctl (Makefile.am): Likewise.
* modules/sys_select (Makefile.am): Likewise.
* modules/sys_socket (Makefile.am): Likewise.
* modules/sys_stat (Makefile.am): Likewise.
* modules/sys_time (Makefile.am): Likewise.
* modules/sys_times (Makefile.am): Likewise.
* modules/sys_utsname (Makefile.am): Likewise.
* modules/sys_wait (Makefile.am): Likewise.
* modules/sysexits (Makefile.am): Likewise.
* modules/termios (Makefile.am): Likewise.
* modules/time (Makefile.am): Likewise.
* modules/unistd (Makefile.am): Likewise.
* modules/wchar (Makefile.am): Likewise.
* modules/wctype (Makefile.am): Likewise.
2010-10-04 23:35:51 +02:00
Eric Blake
df6774c094
time: work with mingw + pthreads-win32 library
...
When using the pthreads-win32 library with mingw, struct timespec
is available in <pthread.h>. Meanwhile, that header has some
rather buggy macros for localtime_r and gmtime_r that interfere
with proper gnulib replacement header actions.
Tested in a cross-compilation environment: Fedora 13 with mingw32-gcc
and mingw32-pthreads installed.
* m4/time_h.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Set new variable
if timespec is defined only in pthread.h.
* modules/time (Makefile.am): Substitute it.
* lib/time.in.h (!TIME_H_DEFINES_STRUCT_TIMESPEC): Include
<pthread.h>, when needed.
(GNULIB_TIME_R): Undefine broken localtime_r and gmtime_r macros
from the library.
Signed-off-by: Eric Blake <eblake@redhat.com >
2010-06-02 14:12:18 -06:00
Bruno Haible
5bc553f79a
nanosleep: Fix C++ test error on mingw.
2010-04-04 02:12:01 +02:00
Bruno Haible
3361b6d48f
strptime: Fix C++ test error on mingw.
2010-04-03 20:23:47 +02:00
Bruno Haible
1ecf90d34b
timegm: Fix C++ test error on mingw.
2010-04-03 19:35:06 +02:00
Bruno Haible
40b243881a
time_r: Fix C++ test error on mingw.
2010-04-03 18:52:49 +02:00
Bruno Haible
a8c2b3083d
Fix compilation error on mingw when module 'time_r' is not used.
2010-03-14 19:55:44 +01:00
Bruno Haible
5f04866f4c
time: Avoid #define replacements in C++ mode.
2010-03-08 03:11:14 +01:00
Bruno Haible
6948250861
New module 'arg-nonnull'. Declare which arguments expect non-NULL values.
2009-12-11 01:15:28 +01:00
Eric Blake
6a9b156fdf
maint: make Include sections of modules consistent
...
Done with "sed -i 's/^#include //' `git grep -l ^#include modules`".
* modules/alloca: Use only header name; no need to list #include.
* modules/alloca-opt: Likewise.
* modules/arpa_inet: Likewise.
* modules/canon-host: Likewise.
* modules/configmake: Likewise.
* modules/dirent: Likewise.
* modules/eealloc: Likewise.
* modules/environ: Likewise.
* modules/fchdir: Likewise.
* modules/fcntl: Likewise.
* modules/fcntl-h: Likewise.
* modules/gethrxtime: Likewise.
* modules/gettime: Likewise.
* modules/ignore-value: Likewise.
* modules/inet_ntop: Likewise.
* modules/inet_pton: Likewise.
* modules/inttypes: Likewise.
* modules/isnand-nolibm: Likewise.
* modules/isnanf-nolibm: Likewise.
* modules/mbchar: Likewise.
* modules/mbfile: Likewise.
* modules/mbiter: Likewise.
* modules/mbuiter: Likewise.
* modules/netdb: Likewise.
* modules/netinet_in: Likewise.
* modules/nproc: Likewise.
* modules/pagealign_alloc: Likewise.
* modules/poll: Likewise.
* modules/printf-frexp: Likewise.
* modules/pthread: Likewise.
* modules/putenv: Likewise.
* modules/random_r: Likewise.
* modules/relocatable-prog: Likewise.
* modules/search: Likewise.
* modules/select: Likewise.
* modules/selinux-h: Likewise.
* modules/settime: Likewise.
* modules/signal: Likewise.
* modules/size_max: Likewise.
* modules/socklen: Likewise.
* modules/ssize_t: Likewise.
* modules/stdarg: Likewise.
* modules/stdbool: Likewise.
* modules/stddef: Likewise.
* modules/stdint: Likewise.
* modules/stdio: Likewise.
* modules/stdlib: Likewise.
* modules/string: Likewise.
* modules/strings: Likewise.
* modules/sys_file: Likewise.
* modules/sys_ioctl: Likewise.
* modules/sys_select: Likewise.
* modules/sys_socket: Likewise.
* modules/sys_stat: Likewise.
* modules/sys_time: Likewise.
* modules/sys_times: Likewise.
* modules/sys_utsname: Likewise.
* modules/sys_wait: Likewise.
* modules/sysexits: Likewise.
* modules/time: Likewise.
* modules/times: Likewise.
* modules/tmpfile: Likewise.
* modules/trim: Likewise.
* modules/unistd: Likewise.
* modules/wchar: Likewise.
* modules/wctype: Likewise.
Signed-off-by: Eric Blake <ebb9@byu.net >
2009-09-17 19:16:10 -06:00
Jim Meyering
47a8dd64ac
annotate automake snippets with $(AM_V_GEN) and $(AM_V_at)
...
This makes it so packages using automake-1.11's silent-rules option
can print e.g., a single "GEN configmake.h" line, rather than
the 30+ statements that perform the job. If you want to see the
actual commands, you can still run "make V=1".
Improved-by: Bruno Haible <bruno@clisp.org >
* modules/alloca-opt: Add $(AM_V_GEN) and $(AM_V_at) prefixes
so that make output is abbreviated when those variables are defined
appropriately.
* modules/argz: Likewise.
* modules/arpa_inet: Likewise.
* modules/byteswap: Likewise.
* modules/configmake: Likewise.
* modules/dirent: Likewise.
* modules/errno: Likewise.
* modules/fcntl: Likewise.
* modules/float: Likewise.
* modules/fnmatch: Likewise.
* modules/getopt-posix: Likewise.
* modules/glob: Likewise.
* modules/iconv_open: Likewise.
* modules/inttypes: Likewise.
* modules/localcharset: Likewise.
* modules/locale: Likewise.
* modules/math: Likewise.
* modules/netdb: Likewise.
* modules/netinet_in: Likewise.
* modules/poll: Likewise.
* modules/posix_spawnp-tests: Likewise.
* modules/sched: Likewise.
* modules/search: Likewise.
* modules/selinux-h: Likewise.
* modules/signal: Likewise.
* modules/spawn: Likewise.
* modules/stdarg: Likewise.
* modules/stdbool: Likewise.
* modules/stddef: Likewise.
* modules/stdint: Likewise.
* modules/stdio: Likewise.
* modules/stdlib: Likewise.
* modules/string: Likewise.
* modules/strings: Likewise.
* modules/sys_file: Likewise.
* modules/sys_ioctl: Likewise.
* modules/sys_select: Likewise.
* modules/sys_socket: Likewise.
* modules/sys_stat: Likewise.
* modules/sys_time: Likewise.
* modules/sys_times: Likewise.
* modules/sys_utsname: Likewise.
* modules/sys_wait: Likewise.
* modules/sysexits: Likewise.
* modules/time: Likewise.
* modules/unistd: Likewise.
* modules/wchar: Likewise.
* modules/wctype: Likewise.
2009-08-22 12:09:17 +02:00
Eric Blake
2f5181b1a2
stddef: fix NetBSD 5.0 NULL bug, rather than working around it
...
* tests/test-locale.c: Revert previous patch related to NULL.
* tests/test-stdio.c: Likewise.
* tests/test-stdlib.c: Likewise.
* tests/test-string.c: Likewise.
* tests/test-unistd.c: Likewise.
* modules/time-tests (Depends-on): Add verify.
* modules/wchar-tests (Depends-on): Likewise.
* tests/test-time.c: Test for NULL compliance.
* tests/test-wchar.c: Likewise.
* modules/locale (Depends-on): Add stddef.
* modules/stdio (Depends-on): Likewise.
* modules/stdlib (Depends-on): Likewise.
* modules/string (Depends-on): Likewise.
* modules/time (Depends-on): Likewise.
* modules/unistd (Depends-on): Likewise.
* modules/wchar (Depends-on): Likewise.
* lib/locale.in.h (includes): Use <stddef.h> to fix NULL.
* lib/stdlib.in.h (includes): Likewise.
* lib/string.in.h (includes): Likewise.
* lib/time.in.h (includes): Likewise.
* lib/unistd.in.h (includes): Likewise.
* m4/locale_h.m4 (gl_LOCALE_H): Replace locale.h if stddef.h was
replaced.
* m4/wchar.m4 (gl_WCHAR_H): Likewise.
* m4/stddef_h.m4: New file.
* modules/stddef: Likewise.
* lib/stddef.in.h: Likewise.
* modules/stddef-tests: Likewise.
* tests/test-stddef.c: Likewise.
* MODULES.html.sh (Basic types <stddef.h>): Mention new module.
* doc/posix-headers/stddef.texi (stddef.h): Document the bug.
* doc/posix-headers/locale.texi (locale.h): Likewise.
* doc/posix-headers/stdio.texi (stdio.h): Likewise.
* doc/posix-headers/stdlib.texi (stdlib.h): Likewise.
* doc/posix-headers/string.texi (string.h): Likewise.
* doc/posix-headers/time.texi (time.h): Likewise.
* doc/posix-headers/unistd.texi (unistd.h): Likewise.
* doc/posix-headers/wchar.texi (wchar.h): Likewise.
Signed-off-by: Eric Blake <ebb9@byu.net >
2009-08-14 06:45:29 -06:00
Bruno Haible
ab3390dfbe
Fix compilation error when <ctime> is used and mktime is replaced.
...
* 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 >.
2009-07-28 21:01:52 +02:00
Bruno Haible
c2318e8859
Avoid some "gcc -pedantic" warnings.
2008-08-30 03:09:15 +02:00
Bruno Haible
9ac0b22ea0
Rename time_.h to time.in.h.
2007-10-02 00:39:46 +02:00
Bruno Haible
89861a8be8
Use the synonymous term LGPLv2.
2007-07-16 10:45:26 +00:00
Paul Eggert
b6a9d33ee8
* m4/include_next.m4 (gl_INCLUDE_NEXT): Define and AC_SUBST
...
INCLUDE_NEXT.
(gl_CHECK_NEXT_HEADERS): New macro.
* m4/fcntl_h.m4 (gl_FCNTL_H): use gl_CHECK_NEXT_HEADERS instead of
the obsolescent gl_ABSOLUTE_HEADER.
* m4/float_h.m4 (gl_FLOAT_H): Likewise.
* m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
* m4/math_h.m4 (gl_MATH_H): Likewise.
* m4/search_h.m4 (gl_SEARCH_H): Likewise.
* m4/signal_h.m4 (gl_SIGNAL_H): Likewise.
* m4/stdint.m4 (gl_STDINT_H): Likewise.
* m4/stdio_h.m4 (gl_STDIO_H): Likewise.
* m4/stdlib_h.m4 (gl_STDLIB_H): Likewise.
* m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Likewise.
* m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Likewise.
* m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Likewise.
* m4/time_h.m4 (gl_HEADER_TIME_H_BODY): Likewise.
* m4/unistd_h.m4 (gl_UNISTD_H): Likewise.
* m4/wchar.m4 (gl_WCHAR_H): Likewise.
* m4/wctype.m4 (gl_WCTYPE_H): Likewise.
* m4/inttypes.m4 (gl_INTTYPES_H): Define
_GL_JUST_INCLUDE_SYSTEM_INTTYPES_H to avoid the problem of unclean
builds, since ABSOLUTE_INTTYPES_H is no longer being defined.
* m4/stdint.m4 (gl_STDINT_H): Likewise, for
_GL_JUST_INCLUDE_SYSTEM_STDINT_H.
* lib/fcntl_.h: Use @INCLUDE_NEXT@ @NEXT_foo_H@
rather than @HAVE_INCLUDE_NEXT@ and @ABSOLUTE_foo_H@.
* lib/float_.h: Likewise.
* lib/inttypes_.h: Likewise.
* lib/math_.h: Likewise.
* lib/search_.h: Likewise.
* lib/signal_.h: Likewise.
* lib/stdint_.h: Likewise.
* lib/stdio_.h: Likewise.
* lib/stdlib_.h: Likewise.
* lib/string_.h: Likewise.
* lib/sys_stat_.h: Likewise.
* lib/sys_time_.h: Likewise.
* lib/time_.h: Likewise.
* lib/unistd_.h: Likewise.
* lib/wchar_.h: Likewise.
* lib/wctype_.h: Likewise.
* modules/fcntl (Depends-on): Depend on absolute-header, not
include_next.
(Makefile): Substitute INCLUDE_NEXT and NEXT_foo_H, not
HAVE_INCLUDE_NEXT and ABSOLUTE_foo_H.
* modules/float: Likewise.
* modules/inttypes: Likewise.
* modules/math: Likewise.
* modules/search: Likewise.
* modules/signal: Likewise.
* modules/stdint: Likewise.
* modules/stdio: Likewise.
* modules/stdlib: Likewise.
* modules/string: Likewise.
* modules/sys_stat: Likewise.
* modules/sys_time: Likewise.
* modules/time: Likewise.
* modules/unistd: Likewise.
* modules/wchar: Likewise.
* modules/wctype: Likewise.
* modules/sys_stat: Change maintainer to "all".
* modules/unistd: Likewise.
2007-06-21 04:39:09 +00:00
Paul Eggert
ab681e53f8
* lib/fcntl_.h: Prefer #include_next <foo.h> to #include
...
@ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@. This works better with
GCC 4.2, which otherwise issues a lot of warnings.
* lib/inttypes_.h, lib/math_.h, lib/search_.h, lib/signal_.h:
* lib/stdint_.h, lib/stdio_.h, lib/stdlib_.h, lib/string_.h:
* lib/sys_time_.h, lib/time_.h, lib/wchar_.h, lib/wctype_.h: Likewise.
* lib/stdlib_.h: Don't bother with #pragma GCC system_header, as
it should no longer be needed.
* lib/string_.h: Likewise.
* modules/absolute-header (HAVE_INCLUDE_NEXT): New 'make' define.
* modules/fcntl (fcntl.h): Substitute @HAVE_INCLUDE_NEXT@.
* modules/inttypes (inttypes.h): Likewise.
* modules/math (math.h): Likewise.
* modules/search (search.h): Likewise.
* modules/signal (signal.h): Likewise.
* modules/stdint (stdint.h): Likewise.
* modules/stdio (stdio.h): Likewise.
* modules/stdlib (stdlib.h): Likewise.
* modules/string (string.h): Likewise.
* modules/sys_time (sys/time.h): Likewise.
* modules/time (time.h): Likewise.
* modules/wchar (wchar.h): Likewise.
* modules/wctype (wtype.h): Likewise.
2007-05-17 06:14:29 +00:00
Bruno Haible
69abfab674
Ensure rule action lines start with a tab.
2007-03-25 15:34:55 +00:00
Simon Josefsson
0ce7f76658
Revert.
2007-02-22 14:08:02 +00:00
Simon Josefsson
2265a9814a
modules/time (Depends-on): Add restrict.
2007-02-22 08:14:32 +00:00
Paul Eggert
3ac9552429
New module 'time', so that apps can include <time.h> as per
...
POSIX and GNU instead of separate include files like time_r.h
and timegm.h. This implementation tries out a simpler approach
for replacing decls in standard include files (as compared to
the string module), somewhat as an experiment.
* config/srclist.txt: Comment out mktime.c for now.
* doc/gnulib-tool.texi (Initial import): Don't use time_r as an example
since it doesn't apply any more. Use generic wording instead.
* MODULES.html.sh (Support for systems lacking POSIX:2001): New module
'time'.
* lib/time_.h, m4/time_h.m4, modules/time: New files.
* lib/strptime.h, lib/time_r.h, lib/timegm.h: Remove.
* lib/mktime.c: Include config.h depending on _LIBC, not HAVE_CONFIG_H.
Don't include <sys/types.h>; no longer needed since we assume C89.
* lib/mktime.c: Don't include "time_r.h"; no longer needed.
* lib/strftime.c: Likewise.
* lib/time_r.c: Likewise.
* lib/nanosleep.c (nanosleep): #undef after include files, not before.
* lib/nanosleep.c: Include <time.h> first, to check interface.
* lib/strptime.c: Likewise.
* lib/time_r.c: Likewise.
* lib/timegm.c: Likewise.
* lib/strptime.c: Don't include strptime.h or time_r.h; no longer
needed.
* lib/timegm.c: Don't include timegm.h; no longer needed.
* lib/timespec.h: Don't include <sys/time.h> before <time.h>;
time.h now handles any problems in that area.
(struct timespec, nanosleep): Remove; time.h now arranges for these.
* lib/xnanosleep.c: Don't include timespec.h; no longer needed now
that time.h defines struct timespec.
* m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check that nanosleep is declared.
Set REPLACE_NANOSLEEP. Don't AC_DEFINE nanosleep; the time module now
handles that.
* m4/strptime.m4 (gl_FUNC_STPRTIME): Set REPLACE_STRPTIME.
* m4/time_r.m4 (gl_TIME_R): Don't define HAVE_TIME_R_POSIX; no longer
needed. Set REPLACE_LOCALTIME.
* m4/timegm.m4 (gl_FUNC_TIMEGM): Set REPLACE_TIMEGM.
* m4/timespec.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Move to time_h.m4.
(gl_TIMESPEC): Don't check for sys/time.h or struct timespec or
nanosleep; time_h.m4 now does that. Don't require
gl_USE_SYSTEM_EXTENSIONS; no longer needed directly, and the time
module handles this now.
* modules/getdate (Depends-on): Remove timespec. Add time.
* modules/nanosleep (Depends-on): Likewise.
* modules/stat-time (Depends-on): Likewise.
* modules/nanosleep (Include): Include time.h, not timespec.h.
* modules/strptime (Files): Remove lib/strptime.h.
(Depends-on): Add extensions, time.
(Include): Include time.h, not strptime.h.
* modules/time_r (Files): Remove lib/time_r.h.
(Depends-on): Add time.
(Include): Include time.h, not time_r.h.
* modules/timegm: Likewise.
* modules/timespec (Description): Now does timespec-related decls
of our own, instead of struct timespec itself.
(Depends-on): Add time; remove extensions.
(Maintainer): Add self.
* modules/utimecmp (Depends-on): Add time; remove timespec.
* modules/utimens (Depends-on): Likewise.
* modules/xnanosleep (Depends-on): Likewise.
2007-02-12 18:49:19 +00:00