X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=m4%2Fsnprintf-posix.m4;h=b321984313a4edbb281f8904bd87567d1ed4a285;hb=e7086a9a301ffcfef17edbcba9e7c0312c33f7a8;hp=d1f889ed88a2b9d86ff3c16d85986b5f72ceac9e;hpb=5754af88053fdd150ce73b22e608ab2f00bf9006;p=gnulib.git diff --git a/m4/snprintf-posix.m4 b/m4/snprintf-posix.m4 index d1f889ed8..b32198431 100644 --- a/m4/snprintf-posix.m4 +++ b/m4/snprintf-posix.m4 @@ -1,39 +1,98 @@ -# snprintf-posix.m4 serial 1 -dnl Copyright (C) 2007 Free Software Foundation, Inc. +# snprintf-posix.m4 serial 14 +dnl Copyright (C) 2007-2013 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. AC_DEFUN([gl_FUNC_SNPRINTF_POSIX], [ - AC_REQUIRE([gl_EOVERFLOW]) AC_REQUIRE([gl_PRINTF_SIZES_C99]) + AC_REQUIRE([gl_PRINTF_LONG_DOUBLE]) + AC_REQUIRE([gl_PRINTF_INFINITE]) + AC_REQUIRE([gl_PRINTF_INFINITE_LONG_DOUBLE]) AC_REQUIRE([gl_PRINTF_DIRECTIVE_A]) + AC_REQUIRE([gl_PRINTF_DIRECTIVE_F]) AC_REQUIRE([gl_PRINTF_DIRECTIVE_N]) + AC_REQUIRE([gl_PRINTF_DIRECTIVE_LS]) AC_REQUIRE([gl_PRINTF_POSITIONS]) + AC_REQUIRE([gl_PRINTF_FLAG_GROUPING]) + AC_REQUIRE([gl_PRINTF_FLAG_LEFTADJUST]) + AC_REQUIRE([gl_PRINTF_FLAG_ZERO]) + AC_REQUIRE([gl_PRINTF_PRECISION]) + AC_REQUIRE([gl_PRINTF_ENOMEM]) gl_cv_func_snprintf_posix=no AC_CHECK_FUNCS([snprintf]) if test $ac_cv_func_snprintf = yes; then gl_SNPRINTF_TRUNCATION_C99 gl_SNPRINTF_RETVAL_C99 gl_SNPRINTF_DIRECTIVE_N + gl_SNPRINTF_SIZE1 + gl_VSNPRINTF_ZEROSIZE_C99 case "$gl_cv_func_printf_sizes_c99" in *yes) - case "$gl_cv_func_printf_directive_a" in + case "$gl_cv_func_printf_long_double" in *yes) - case "$gl_cv_func_printf_directive_n" in + case "$gl_cv_func_printf_infinite" in *yes) - case "$gl_cv_func_printf_positions" in + case "$gl_cv_func_printf_infinite_long_double" in *yes) - case "$gl_cv_func_snprintf_truncation_c99" in + case "$gl_cv_func_printf_directive_a" in *yes) - case "$gl_cv_func_snprintf_retval_c99" in + case "$gl_cv_func_printf_directive_f" in *yes) - case "$gl_cv_func_snprintf_directive_n" in + case "$gl_cv_func_printf_directive_n" in *yes) - # snprintf exists and is already POSIX - # compliant. - gl_cv_func_snprintf_posix=yes + case "$gl_cv_func_printf_directive_ls" in + *yes) + case "$gl_cv_func_printf_positions" in + *yes) + case "$gl_cv_func_printf_flag_grouping" in + *yes) + case "$gl_cv_func_printf_flag_leftadjust" in + *yes) + case "$gl_cv_func_printf_flag_zero" in + *yes) + case "$gl_cv_func_printf_precision" in + *yes) + case "$gl_cv_func_printf_enomem" in + *yes) + case "$gl_cv_func_snprintf_truncation_c99" in + *yes) + case "$gl_cv_func_snprintf_retval_c99" in + *yes) + case "$gl_cv_func_snprintf_directive_n" in + *yes) + case "$gl_cv_func_snprintf_size1" in + *yes) + case "$gl_cv_func_vsnprintf_zerosize_c99" in + *yes) + # snprintf exists and is + # already POSIX compliant. + gl_cv_func_snprintf_posix=yes + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac + ;; + esac ;; esac ;; @@ -50,11 +109,17 @@ AC_DEFUN([gl_FUNC_SNPRINTF_POSIX], esac fi if test $gl_cv_func_snprintf_posix = no; then - if ! expr "$gl_cv_func_printf_directive_a" : ".*yes" > /dev/null; then - AC_DEFINE([NEED_PRINTF_DIRECTIVE_A], 1, - [Define if the vasnprintf implementation needs special code for - the 'a' and 'A' directives.]) - fi + gl_PREREQ_VASNPRINTF_LONG_DOUBLE + gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE + gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE + gl_PREREQ_VASNPRINTF_DIRECTIVE_A + gl_PREREQ_VASNPRINTF_DIRECTIVE_F + gl_PREREQ_VASNPRINTF_DIRECTIVE_LS + gl_PREREQ_VASNPRINTF_FLAG_GROUPING + gl_PREREQ_VASNPRINTF_FLAG_LEFTADJUST + gl_PREREQ_VASNPRINTF_FLAG_ZERO + gl_PREREQ_VASNPRINTF_PRECISION + gl_PREREQ_VASNPRINTF_ENOMEM gl_REPLACE_VASNPRINTF gl_REPLACE_SNPRINTF fi