X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=m4%2Fwcsrtombs.m4;h=fb769f2d62bd0600969b0bb7a415c0bea242573b;hb=82b0be34b85e7169e869e0503b607c990c524da2;hp=1ff3a2f9ba3b932f842b83ed9e4a07d92317e650;hpb=999b44930f573035ae2c6531ea4b0f83ee9cd698;p=gnulib.git diff --git a/m4/wcsrtombs.m4 b/m4/wcsrtombs.m4 index 1ff3a2f9b..fb769f2d6 100644 --- a/m4/wcsrtombs.m4 +++ b/m4/wcsrtombs.m4 @@ -1,5 +1,5 @@ -# wcsrtombs.m4 serial 1 -dnl Copyright (C) 2008 Free Software Foundation, Inc. +# wcsrtombs.m4 serial 5 +dnl Copyright (C) 2008-2010 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. @@ -9,28 +9,35 @@ AC_DEFUN([gl_FUNC_WCSRTOMBS], AC_REQUIRE([gl_WCHAR_H_DEFAULTS]) AC_REQUIRE([AC_TYPE_MBSTATE_T]) + gl_MBSTATE_T_BROKEN + AC_CHECK_FUNCS_ONCE([wcsrtombs]) if test $ac_cv_func_wcsrtombs = no; then HAVE_WCSRTOMBS=0 else - gl_WCSRTOMBS_TERMINATION - gl_WCSRTOMBS_NULL - case "$gl_cv_func_wcsrtombs_termination" in - *yes) ;; - *) AC_DEFINE([WCSRTOMBS_TERMINATION_BUG], [1], - [Define if the wcsrtombs function may set the source pointer to NULL without NUL-terminating the destination.]) - REPLACE_WCSRTOMBS=1 ;; - esac - case "$gl_cv_func_wcsrtombs_null" in - *yes) ;; - *) AC_DEFINE([WCSRTOMBS_NULL_ARG_BUG], [1], - [Define if the wcsrtombs function has the NULL destination argument bug.]) - REPLACE_WCSRTOMBS=1 ;; - esac + if test $REPLACE_MBSTATE_T = 1; then + REPLACE_WCSRTOMBS=1 + else + gl_WCSRTOMBS_TERMINATION + gl_WCSRTOMBS_NULL + case "$gl_cv_func_wcsrtombs_termination" in + *yes) ;; + *) AC_DEFINE([WCSRTOMBS_TERMINATION_BUG], [1], + [Define if the wcsrtombs function may set the source pointer to NULL without NUL-terminating the destination.]) + REPLACE_WCSRTOMBS=1 ;; + esac + case "$gl_cv_func_wcsrtombs_null" in + *yes) ;; + *) AC_DEFINE([WCSRTOMBS_NULL_ARG_BUG], [1], + [Define if the wcsrtombs function has the NULL destination argument bug.]) + REPLACE_WCSRTOMBS=1 ;; + esac + fi fi if test $HAVE_WCSRTOMBS = 0 || test $REPLACE_WCSRTOMBS = 1; then gl_REPLACE_WCHAR_H AC_LIBOBJ([wcsrtombs]) + AC_LIBOBJ([wcsrtombs-state]) gl_PREREQ_WCSRTOMBS fi ]) @@ -85,7 +92,7 @@ int main () }], [gl_cv_func_wcsrtombs_termination=yes], [gl_cv_func_wcsrtombs_termination=no], - []) + [:]) fi ]) ]) @@ -138,7 +145,7 @@ int main () }], [gl_cv_func_wcsrtombs_null=yes], [gl_cv_func_wcsrtombs_null=no], - []) + [:]) fi ]) ])