X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=m4%2Fgettimeofday.m4;h=e7a5a6db6e7e8c2977acc3a0a0ba0a3d877b5b97;hb=02d97fa1f7a73756747951b74de8655d9f11b509;hp=3e2baa1ea8c0c2465b8f35b145e7d590b4dd09c8;hpb=e3690a35bd90920179297ce0939230f786cdc475;p=gnulib.git diff --git a/m4/gettimeofday.m4 b/m4/gettimeofday.m4 index 3e2baa1ea..e7a5a6db6 100644 --- a/m4/gettimeofday.m4 +++ b/m4/gettimeofday.m4 @@ -1,4 +1,4 @@ -#serial 1 +#serial 4 dnl From Jim Meyering. dnl @@ -6,13 +6,13 @@ 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_CHECK_HEADERS_ONCE(stdlib.h string.h) AC_CACHE_CHECK([whether gettimeofday clobbers localtime buffer], jm_cv_func_gettimeofday_clobber, [AC_TRY_RUN([ @@ -58,10 +58,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.]) 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]) +])