X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=m4%2Fgettimeofday.m4;h=3875972d2614bdb5b7fdc82a7d044433048dc95f;hb=a802e7b9420571c932f0e98a1c3cca4f43adf8a3;hp=21da6782042dfa1bd5564ee4253d04da1681ce38;hpb=c026d66bb6383b26061f0ddbc1132621a7f11007;p=gnulib.git diff --git a/m4/gettimeofday.m4 b/m4/gettimeofday.m4 index 21da67820..3875972d2 100644 --- a/m4/gettimeofday.m4 +++ b/m4/gettimeofday.m4 @@ -1,4 +1,4 @@ -#serial 1 +#serial 5 dnl From Jim Meyering. dnl @@ -6,20 +6,17 @@ dnl See if gettimeofday clobbers the static buffer that localtime uses dnl for it's return value. The gettimeofday function from Mac OS X 10.0.4, dnl i.e. Darwin 1.3.7 has this problem. dnl -dnl If it does, then arrange to use gettimeofday only via the wrapper -dnl function that works around the problem. +dnl If it does, then arrange to use gettimeofday and localtime only via +dnl the wrapper functions that work around the problem. AC_DEFUN([AC_FUNC_GETTIMEOFDAY_CLOBBER], [ AC_REQUIRE([AC_HEADER_TIME]) - AC_CHECK_HEADERS(string.h stdlib.h) AC_CACHE_CHECK([whether gettimeofday clobbers localtime buffer], jm_cv_func_gettimeofday_clobber, [AC_TRY_RUN([ #include -#if HAVE_STRING_H -# include -#endif +#include #if TIME_WITH_SYS_TIME # include @@ -32,9 +29,7 @@ AC_DEFUN([AC_FUNC_GETTIMEOFDAY_CLOBBER], # endif #endif -#if HAVE_STDLIB_H -# include -#endif +#include int main () @@ -58,11 +53,25 @@ main () jm_cv_func_gettimeofday_clobber=yes) ]) if test $jm_cv_func_gettimeofday_clobber = yes; then - AC_LIBOBJ(gettimeofday) - AC_DEFINE_UNQUOTED(gettimeofday, rpl_gettimeofday, + gl_GETTIMEOFDAY_REPLACE_LOCALTIME + + AC_DEFINE(gettimeofday, rpl_gettimeofday, [Define to rpl_gettimeofday if the replacement function should be used.]) - jm_gtod_init_rhs='GTOD_init ()' AC_DEFINE(GETTIMEOFDAY_CLOBBERS_LOCALTIME_BUFFER, 1, [Define if gettimeofday clobbers localtime's static buffer.]) + gl_PREREQ_GETTIMEOFDAY fi ]) + +AC_DEFUN([gl_GETTIMEOFDAY_REPLACE_LOCALTIME], [ + AC_LIBOBJ(gettimeofday) + AC_DEFINE(gmtime, rpl_gmtime, + [Define to rpl_gmtime if the replacement function should be used.]) + AC_DEFINE(localtime, rpl_localtime, + [Define to rpl_localtime if the replacement function should be used.]) +]) + +# Prerequisites of lib/gettimeofday.c. +AC_DEFUN([gl_PREREQ_GETTIMEOFDAY], [ + AC_REQUIRE([AC_HEADER_TIME]) +])