Commit | Line | Data |
---|---|---|
35428fb6 | 1 | # snprintf.m4 serial 6 |
5e69ceb7 | 2 | dnl Copyright (C) 2002-2004, 2007-2014 Free Software Foundation, Inc. |
61cd9dc9 LC |
3 | dnl This file is free software; the Free Software Foundation |
4 | dnl gives unlimited permission to copy and/or distribute it, | |
5 | dnl with or without modifications, as long as this notice is preserved. | |
6 | ||
35428fb6 LC |
7 | dnl Libintl 0.17 will replace snprintf only if it does not support %1$s, |
8 | dnl but defers to any gnulib snprintf replacements. Therefore, gnulib | |
9 | dnl must guarantee that the decision for replacing snprintf is a superset | |
10 | dnl of the reasons checked by libintl. | |
61cd9dc9 LC |
11 | AC_DEFUN([gl_FUNC_SNPRINTF], |
12 | [ | |
13 | AC_REQUIRE([gl_STDIO_H_DEFAULTS]) | |
14 | gl_cv_func_snprintf_usable=no | |
15 | AC_CHECK_FUNCS([snprintf]) | |
16 | if test $ac_cv_func_snprintf = yes; then | |
17 | gl_SNPRINTF_SIZE1 | |
18 | case "$gl_cv_func_snprintf_size1" in | |
19 | *yes) | |
49114fd4 LC |
20 | gl_SNPRINTF_RETVAL_C99 |
21 | case "$gl_cv_func_snprintf_retval_c99" in | |
22 | *yes) | |
35428fb6 LC |
23 | gl_PRINTF_POSITIONS |
24 | case "$gl_cv_func_printf_positions" in | |
25 | *yes) | |
26 | gl_cv_func_snprintf_usable=yes | |
27 | ;; | |
28 | esac | |
49114fd4 LC |
29 | ;; |
30 | esac | |
61cd9dc9 LC |
31 | ;; |
32 | esac | |
33 | fi | |
34 | if test $gl_cv_func_snprintf_usable = no; then | |
35 | gl_REPLACE_SNPRINTF | |
36 | fi | |
37 | AC_CHECK_DECLS_ONCE([snprintf]) | |
38 | if test $ac_cv_have_decl_snprintf = no; then | |
39 | HAVE_DECL_SNPRINTF=0 | |
40 | fi | |
41 | ]) | |
42 | ||
43 | AC_DEFUN([gl_REPLACE_SNPRINTF], | |
44 | [ | |
45 | AC_REQUIRE([gl_STDIO_H_DEFAULTS]) | |
46 | AC_LIBOBJ([snprintf]) | |
47 | if test $ac_cv_func_snprintf = yes; then | |
48 | REPLACE_SNPRINTF=1 | |
49 | fi | |
50 | gl_PREREQ_SNPRINTF | |
51 | ]) | |
52 | ||
53 | # Prerequisites of lib/snprintf.c. | |
54 | AC_DEFUN([gl_PREREQ_SNPRINTF], [:]) |