X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=m4%2Fwcwidth.m4;h=dbcc231be4c0ab1f1a8088205c7ee85fb0c3a9fa;hb=cca883f60cf5e624b7752fa837548965512e2861;hp=acceba5477ce7f1cb271896edade66821a36866b;hpb=ee1e85f8f9f5667aace29d549411e5a78eb86ed1;p=gnulib.git diff --git a/m4/wcwidth.m4 b/m4/wcwidth.m4 index acceba547..dbcc231be 100644 --- a/m4/wcwidth.m4 +++ b/m4/wcwidth.m4 @@ -1,5 +1,5 @@ -# wcwidth.m4 serial 16 -dnl Copyright (C) 2006-2010 Free Software Foundation, Inc. +# wcwidth.m4 serial 19 +dnl Copyright (C) 2006-2011 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. @@ -41,7 +41,8 @@ AC_DEFUN([gl_FUNC_WCWIDTH], AC_CACHE_CHECK([whether wcwidth works reasonably in UTF-8 locales], [gl_cv_func_wcwidth_works], [ - AC_TRY_RUN([ + AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ #include /* AIX 3.2.5 declares wcwidth in . */ #include @@ -62,17 +63,24 @@ int wcwidth (int); #endif int main () { + int result = 0; if (setlocale (LC_ALL, "fr_FR.UTF-8") != NULL) - if (wcwidth (0x0301) > 0 || wcwidth (0x200B) > 0) - return 1; - return 0; -}], [gl_cv_func_wcwidth_works=yes], [gl_cv_func_wcwidth_works=no], + { + if (wcwidth (0x0301) > 0) + result |= 1; + if (wcwidth (0x200B) > 0) + result |= 2; + } + return result; +}]])], + [gl_cv_func_wcwidth_works=yes], + [gl_cv_func_wcwidth_works=no], [ changequote(,)dnl case "$host_os" in - # Guess yes on glibc systems. - *-gnu*) gl_cv_func_wcwidth_works="guessing yes";; - *) gl_cv_func_wcwidth_works="guessing no";; + # Guess yes on glibc and AIX 7 systems. + *-gnu* | aix[7-9]*) gl_cv_func_wcwidth_works="guessing yes";; + *) gl_cv_func_wcwidth_works="guessing no";; esac changequote([,])dnl ]) @@ -85,10 +93,6 @@ changequote([,])dnl if test $ac_cv_func_wcwidth != yes || test $REPLACE_WCWIDTH = 1; then AC_LIBOBJ([wcwidth]) fi - if test $ac_cv_func_wcwidth != yes || test $REPLACE_WCWIDTH = 1 \ - || test $HAVE_DECL_WCWIDTH = 0; then - gl_REPLACE_WCHAR_H - fi dnl We don't substitute HAVE_WCWIDTH. We assume that if the system does not dnl have the wcwidth function, then it does not declare it. ])