* m4/fcntl_h.m4 (gl_FCNTL_H): Test the atime, not the mtime.
[gnulib.git] / m4 / mbrtowc.m4
index 6e1b58c..a3bd911 100644 (file)
@@ -1,27 +1,31 @@
-# mbrtowc.m4 serial 6
-dnl Copyright (C) 2001-2002 Free Software Foundation, Inc.
-dnl This file is free software, distributed under the terms of the GNU
-dnl General Public License.  As a special exception to the GNU General
-dnl Public License, this file may be distributed as part of a program
-dnl that contains a configuration script generated by Autoconf, under
-dnl the same distribution terms as the rest of that program.
+# mbrtowc.m4 serial 8
+dnl Copyright (C) 2001-2002, 2004-2005 Free Software Foundation, Inc.
+dnl This file is free software; the Free Software Foundation
+dnl gives unlimited permission to copy and/or distribute it,
+dnl with or without modifications, as long as this notice is preserved.
 
 dnl From Paul Eggert
 
 dnl This file can be removed, and gl_FUNC_MBRTOWC replaced with
-dnl AC_FUNC_MBRTOWC, when autoconf 2.57 can be assumed everywhere.
+dnl AC_FUNC_MBRTOWC, when autoconf 2.60 can be assumed everywhere.
 
 AC_DEFUN([gl_FUNC_MBRTOWC],
 [
+  dnl Same as AC_FUNC_MBRTOWC in autoconf-2.60.
   AC_CACHE_CHECK([whether mbrtowc and mbstate_t are properly declared],
-    jm_cv_func_mbrtowc,
-    [AC_TRY_LINK(
-       [#include <wchar.h>],
-       [mbstate_t state; return ! (sizeof state && mbrtowc);],
-       jm_cv_func_mbrtowc=yes,
-       jm_cv_func_mbrtowc=no)])
-  if test $jm_cv_func_mbrtowc = yes; then
-    AC_DEFINE(HAVE_MBRTOWC, 1,
+    gl_cv_func_mbrtowc,
+    [AC_LINK_IFELSE(
+       [AC_LANG_PROGRAM(
+            [[#include <wchar.h>]],
+            [[wchar_t wc;
+              char const s[] = "";
+              size_t n = 1;
+              mbstate_t state;
+              return ! (sizeof state && (mbrtowc) (&wc, s, n, &state));]])],
+       gl_cv_func_mbrtowc=yes,
+       gl_cv_func_mbrtowc=no)])
+  if test $gl_cv_func_mbrtowc = yes; then
+    AC_DEFINE([HAVE_MBRTOWC], 1,
       [Define to 1 if mbrtowc and mbstate_t are properly declared.])
   fi
 ])