*** empty log message ***
[gnulib.git] / m4 / strftime.m4
index 22790f6..732eacc 100644 (file)
@@ -1,4 +1,4 @@
-#serial 11
+#serial 13
 
 dnl This macro is intended to be used solely in this file.
 dnl These are the prerequisite macros for GNU's strftime.c replacement.
 
 dnl This macro is intended to be used solely in this file.
 dnl These are the prerequisite macros for GNU's strftime.c replacement.
@@ -36,11 +36,7 @@ AC_DEFUN(jm_FUNC_GNU_STRFTIME,
  AC_REQUIRE([AC_HEADER_STDC])dnl
  AC_CHECK_HEADERS(sys/time.h)
  AC_CACHE_CHECK([for working GNU strftime], jm_cv_func_working_gnu_strftime,
  AC_REQUIRE([AC_HEADER_STDC])dnl
  AC_CHECK_HEADERS(sys/time.h)
  AC_CACHE_CHECK([for working GNU strftime], jm_cv_func_working_gnu_strftime,
-  [# Set TZ to GMT0 to make strftime give consistent results during the test.
-   ac_save_TZ="${TZ-GMT0}"
-   TZ=GMT0
-   export TZ
-   AC_TRY_RUN(
+  [AC_TRY_RUN(
 [ /* Ulrich Drepper provided parts of the test program.  */
 #if STDC_HEADERS
 # include <stdlib.h>
 [ /* Ulrich Drepper provided parts of the test program.  */
 #if STDC_HEADERS
 # include <stdlib.h>
@@ -81,6 +77,15 @@ main ()
   time_t t = 738367; /* Fri Jan  9 13:06:07 1970 */
   tm = gmtime (&t);
 
   time_t t = 738367; /* Fri Jan  9 13:06:07 1970 */
   tm = gmtime (&t);
 
+  /* Undefine this in case the configure-time putenv test has defined it
+     to something else.  The use we make of this function here doesn't
+     require the added functionality of the replacement one.  */
+#undef putenv
+
+  /* This is necessary to make strftime give consistent zone strings and
+     e.g., seconds since the epoch (%s).  */
+  putenv ("TZ=GMT0");
+
 #undef CMP
 #define CMP(Fmt, Expected) n_fail += compare ((Fmt), tm, (Expected))
 
 #undef CMP
 #define CMP(Fmt, Expected) n_fail += compare ((Fmt), tm, (Expected))
 
@@ -139,8 +144,6 @@ main ()
              jm_cv_func_working_gnu_strftime=no,
             dnl When crosscompiling, assume strftime is missing or broken.
             jm_cv_func_working_gnu_strftime=no)
              jm_cv_func_working_gnu_strftime=no,
             dnl When crosscompiling, assume strftime is missing or broken.
             jm_cv_func_working_gnu_strftime=no)
-   dnl If TZ wasn't set before, this sets it to GMT0.  No real harm done.
-   TZ="$ac_save_TZ"
   ])
   if test $jm_cv_func_working_gnu_strftime = no; then
     AC_SUBST(LIBOBJS)
   ])
   if test $jm_cv_func_working_gnu_strftime = no; then
     AC_SUBST(LIBOBJS)