summaryrefslogtreecommitdiff
path: root/gnulib-m4/vasnprintf.m4
diff options
context:
space:
mode:
Diffstat (limited to 'gnulib-m4/vasnprintf.m4')
-rw-r--r--gnulib-m4/vasnprintf.m437
1 files changed, 31 insertions, 6 deletions
diff --git a/gnulib-m4/vasnprintf.m4 b/gnulib-m4/vasnprintf.m4
index a02f4e1e..1d040d6e 100644
--- a/gnulib-m4/vasnprintf.m4
+++ b/gnulib-m4/vasnprintf.m4
@@ -1,9 +1,10 @@
# vasnprintf.m4
-# serial 54
-dnl Copyright (C) 2002-2004, 2006-2024 Free Software Foundation, Inc.
+# serial 56
+dnl Copyright (C) 2002-2004, 2006-2025 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 This file is offered as-is, without any warranty.
AC_DEFUN([gl_FUNC_VASNPRINTF],
[
@@ -356,15 +357,39 @@ AC_DEFUN([gl_PREREQ_VASNPRINTF_DIRECTIVE_LC],
# Extra prerequisites of lib/vasnprintf.c for supporting the ' flag.
AC_DEFUN([gl_PREREQ_VASNPRINTF_FLAG_GROUPING],
[
+ AC_REQUIRE([AC_CANONICAL_HOST])
AC_REQUIRE([gl_PRINTF_FLAG_GROUPING])
- case "$gl_cv_func_printf_flag_grouping" in
- *yes)
- ;;
- *)
+ AC_REQUIRE([gl_PRINTF_FLAG_GROUPING_INT_PRECISION])
+ AC_REQUIRE([gl_PRINTF_FLAG_GROUPING_MULTIBYTE])
+ case "$host_os" in
+ mingw* | windows*)
+ dnl MSVC does not support the ' flag at all.
+ dnl mingw does not support it, unless __USE_MINGW_ANSI_STDIO is defined.
+ dnl mingw also has other bugs regarding the ' flag.
AC_DEFINE([NEED_PRINTF_FLAG_GROUPING], [1],
[Define if the vasnprintf implementation needs special code for the
' flag.])
;;
+ *)
+ case "$gl_cv_func_printf_flag_grouping,$gl_cv_func_printf_flag_grouping_multibyte" in
+ *yes,*yes)
+ case "$gl_cv_func_printf_flag_grouping_int_precision" in
+ *yes)
+ ;;
+ *)
+ AC_DEFINE([NEED_PRINTF_FLAG_GROUPING_INT], [1],
+ [Define if the vasnprintf implementation needs special code for the
+ ' flag, for integer directives only.])
+ ;;
+ esac
+ ;;
+ *)
+ AC_DEFINE([NEED_PRINTF_FLAG_GROUPING], [1],
+ [Define if the vasnprintf implementation needs special code for the
+ ' flag.])
+ ;;
+ esac
+ ;;
esac
])