*** empty log message ***
[gnulib.git] / m4 / strftime.m4
index 22790f6..caeb21f 100644 (file)
@@ -1,4 +1,4 @@
-#serial 11
+#serial 15
 
 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.
@@ -16,7 +16,7 @@ AC_DEFUN(_jm_STRFTIME_PREREQS,
 
  AC_CHECK_FUNCS(mblen mbrlen)
 
 
  AC_CHECK_FUNCS(mblen mbrlen)
 
- AC_CHECK_MEMBER(struct tm.tm_gmtoff,
+ AC_CHECK_MEMBER([struct tm.tm_gmtoff],
                  [AC_DEFINE(HAVE_TM_GMTOFF, 1,
                             [Define if struct tm has the tm_gmtoff member.])],
                  ,
                  [AC_DEFINE(HAVE_TM_GMTOFF, 1,
                             [Define if struct tm has the tm_gmtoff member.])],
                  ,
@@ -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,12 +144,9 @@ 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
   ])
   if test $jm_cv_func_working_gnu_strftime = no; then
-    AC_SUBST(LIBOBJS)
-    LIBOBJS="$LIBOBJS strftime.$ac_objext"
+    AC_LIBOBJ(strftime)
     AC_DEFINE_UNQUOTED(strftime, gnu_strftime,
       [Define to gnu_strftime if the replacement function should be used.])
   fi
     AC_DEFINE_UNQUOTED(strftime, gnu_strftime,
       [Define to gnu_strftime if the replacement function should be used.])
   fi