(LOCALTIME_CACHE): Define if tzset exists and

if localtime caches TZ.  Check for tzset.
This commit is contained in:
Richard M. Stallman 1995-09-10 04:18:58 +00:00
parent d7437ef689
commit 0c565a0ad1

View file

@ -1259,7 +1259,37 @@ AC_FUNC_ALLOCA
AC_CHECK_LIB(m, sqrt(0.0) + t)
AC_CHECK_FUNCS(gettimeofday gethostname dup2 rename closedir mkdir rmdir \
random lrand48 bcopy bcmp logb frexp fmod drem ftime res_init setsid \
strerror fpathconf select mktime eaccess getpagesize)
strerror fpathconf select mktime eaccess getpagesize tzset)
AC_MSG_CHECKING(whether localtime caches TZ)
AC_CACHE_VAL(emacs_cv_localtime_cache,
[if test $ac_cv_func_tzset = yes; then
AC_TRY_RUN([#include <time.h>
#if STDC_HEADERS
# include <stdlib.h>
#endif
main()
{
time_t now = time ((time_t *) 0);
int hour;
if (putenv ("TZ=GMT0") != 0)
exit (1);
hour = localtime (&now)->tm_hour;
if (putenv ("TZ=PST8") != 0)
exit (1);
exit (localtime (&now)->tm_hour == hour);
}], emacs_cv_localtime_cache=no, emacs_cv_localtime_cache=yes,
[# If we have tzset, assume the worst when cross-compiling.
emacs_cv_localtime_cache=yes])
else
# If we lack tzset, report that localtime does not cache TZ,
# since we can't invalidate the cache if we don't have tzset.
emacs_cv_localtime_cache=no
fi])dnl
AC_MSG_RESULT($emacs_cv_localtime_cache)
if test $emacs_cv_localtime_cache = yes; then
AC_DEFINE(LOCALTIME_CACHE)
fi
if test $HAVE_TIMEVAL = yes; then
AC_MSG_CHECKING(whether gettimeofday can't accept two arguments)