Use []-quoted list in AC_CHECK_MEMBERS, now that autoconf requires that.
[gnulib.git] / m4 / strftime.m4
index 6c12da6..fa952f4 100644 (file)
@@ -1,11 +1,12 @@
-#serial 7
+#serial 14
 
 dnl This macro is intended to be used solely in this file.
 dnl These are the prerequisite macros for GNU's strftime.c replacement.
 AC_DEFUN(_jm_STRFTIME_PREREQS,
 [
- dnl strftime.c uses localtime_r if it exists.  Check for it.
- AC_CHECK_FUNCS(localtime_r)
+ dnl strftime.c uses localtime_r and the underyling system strftime
+ dnl if they exist.
+ AC_CHECK_FUNCS(localtime_r strftime)
 
  AC_CHECK_HEADERS(limits.h)
  AC_CHECK_FUNCS(bcopy tzset mempcpy memcpy memset)
@@ -15,15 +16,11 @@ AC_DEFUN(_jm_STRFTIME_PREREQS,
 
  AC_CHECK_FUNCS(mblen mbrlen)
 
- AC_CHECK_MEMBER(struct tm.tm_gmtoff,
-                 [AC_DEFINE(HAVE_TM_GMTOFF)],
+ AC_CHECK_MEMBER([struct tm.tm_gmtoff],
+                 [AC_DEFINE(HAVE_TM_GMTOFF, 1,
+                            [Define if struct tm has the tm_gmtoff member.])],
                  ,
-                 dnl FIXME: having to put the closing square bracket on the
-                 dnl FIXME: next line is a gross kludge to work around an
-                 dnl FIXME: infelicity in how the new autoconf works.
-                 dnl FIXME: This should be fixed pretty soon.
-                 [#include <time.h>
-                 ])
+                 [#include <time.h>])
 ])
 
 dnl Determine if the strftime function has all the features of the GNU one.
@@ -40,8 +37,7 @@ AC_DEFUN(jm_FUNC_GNU_STRFTIME,
  AC_CHECK_HEADERS(sys/time.h)
  AC_CACHE_CHECK([for working GNU strftime], jm_cv_func_working_gnu_strftime,
   [AC_TRY_RUN(
-changequote(<<, >>)dnl
-<< /* Ulrich Drepper provided parts of the test program.  */
+[ /* Ulrich Drepper provided parts of the test program.  */
 #if STDC_HEADERS
 # include <stdlib.h>
 #endif
@@ -81,6 +77,11 @@ main ()
   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");
@@ -138,9 +139,7 @@ main ()
   CMP ("%z", "+0000");         /* GNU */
 
   exit (n_fail ? 1 : 0);
-}
-             >>,
-changequote([, ])dnl
+}],
             jm_cv_func_working_gnu_strftime=yes,
              jm_cv_func_working_gnu_strftime=no,
             dnl When crosscompiling, assume strftime is missing or broken.