Mercurial > hg > octave-lyh > gnulib-hg
changeset 3295:5425e8255877
*** empty log message ***
author | Jim Meyering <jim@meyering.net> |
---|---|
date | Sun, 15 Jul 2001 14:30:55 +0000 |
parents | 0477051f57eb |
children | 0336638ada4a |
files | m4/ChangeLog m4/gettimeofday.m4 |
diffstat | 2 files changed, 78 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/m4/ChangeLog +++ b/m4/ChangeLog @@ -1,3 +1,16 @@ +2001-07-15 Jim Meyering <meyering@lucent.com> + + * Makefile.am.in (Makefile.am): Remove most of the unlocked-io.h stuff. + Now it's in ../Makefile.cfg. + + * gettimeofday.m4: New file. + +2001-07-04 Jim Meyering <meyering@lucent.com> + + * Makefile.am.in (glibc-io.struct): New target. Rework the code + that generates jm-glibc-io.m4 so that it doesn't trigger any make + distcheck failure. + 2001-07-02 Jim Meyering <meyering@lucent.com> The following changes were prompted by suggestions from Bruno Haible.
new file mode 100644 --- /dev/null +++ b/m4/gettimeofday.m4 @@ -0,0 +1,65 @@ +#serial 1 + +dnl From Jim Meyering. +dnl +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. + +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 <stdio.h> +#if HAVE_STRING_H +# include <string.h> +#endif + +#if TIME_WITH_SYS_TIME +# include <sys/time.h> +# include <time.h> +#else +# if HAVE_SYS_TIME_H +# include <sys/time.h> +# else +# include <time.h> +# endif +#endif + +#if HAVE_STDLIB_H +# include <stdlib.h> +#endif + +int +main () +{ + time_t t = 0; + struct tm *lt; + struct tm saved_lt; + struct timeval tv; + lt = localtime (&t); + saved_lt = *lt; + gettimeofday (&tv, NULL); + if (memcmp (lt, &saved_lt, sizeof (struct tm)) != 0) + exit (1); + + exit (0); +} + ], + jm_cv_func_gettimeofday_clobber=yes, + jm_cv_func_gettimeofday_clobber=no, + dnl When crosscompiling, assume it is broken. + jm_cv_func_gettimeofday_clobber=yes) + ]) + if test $jm_cv_func_gettimeofday_clobber = yes; then + AC_LIBOBJ(gettimeofday) + AC_DEFINE_UNQUOTED(gettimeofday, rpl_gettimeofday, + [Define to rpl_gettimeofday if the replacement function should be used.]) + fi +])