From 3f16d9fbc90f0e28ef6947d7492010094512a14e Mon Sep 17 00:00:00 2001
From: Daniel Stenberg <daniel@haxx.se>
Date: Mon, 16 May 2005 14:40:10 +0000
Subject: [PATCH] attempt to detect a bad (as in HPUX 10.20 bad) gmtime_r
 function

---
 configure.ac | 35 +++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)

diff --git a/configure.ac b/configure.ac
index ef77da6649..81c77dd5fd 100644
--- a/configure.ac
+++ b/configure.ac
@@ -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
-- 
GitLab