attempt to detect a bad (as in HPUX 10.20 bad) gmtime_r function

This commit is contained in:
Daniel Stenberg 2005-05-16 14:40:10 +00:00
parent 3afc57bab8
commit 3f16d9fbc9
1 changed files with 35 additions and 0 deletions

View File

@ -1293,6 +1293,41 @@ if test "x$RECENTAIX" = "xyes"; then
AC_CHECK_FUNCS( gmtime_r )
fi
if test x$cross_compiling != xyes; then
dnl if gmtime_r was found, verify that it actuall works, as (at least) HPUX
dnl 10.20 is known to have a buggy one. If it doesn't work, disable use of
dnl it.
AC_MSG_CHECKING([if gmtime_r works])
AC_RUN_IFELSE([[
#include <time.h>
int main(void)
{
time_t local = 1170352587;
struct tm *gmt;
struct tm keeper;
putenv("TZ=CST6CDT");
tzset();
gmt = gmtime_r(&local, &keeper);
if(gmt) {
return 0;
}
return 1; /* failure */
}
]],
dnl success, do nothing
AC_MSG_RESULT(yes)
,
dnl failure, now disable the function
AC_MSG_RESULT(no)
ac_cv_func_gmtime_r="no"
,
dnl not invoked when crosscompiling)
])
fi
dnl **********************************************************************
dnl Back to "normal" configuring