diff options
author | Karel Zak <kzak@redhat.com> | 2006-12-07 00:26:54 +0100 |
---|---|---|
committer | Karel Zak <kzak@redhat.com> | 2006-12-07 00:26:54 +0100 |
commit | 48d7b13a1eab85fab91c8d6c5ddf298f733c74f5 (patch) | |
tree | 8813d36590ee3361bd75f57a12fd2032e9296ddb /m4/printf-posix.m4 | |
parent | 2ab8f9d3cec110ce8291f2525fe90239aeef8376 (diff) | |
download | util-linux-old-48d7b13a1eab85fab91c8d6c5ddf298f733c74f5.tar.gz |
Imported from util-linux-2.13-pre1 tarball.
Diffstat (limited to 'm4/printf-posix.m4')
-rw-r--r-- | m4/printf-posix.m4 | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/m4/printf-posix.m4 b/m4/printf-posix.m4 new file mode 100644 index 00000000..af10170a --- /dev/null +++ b/m4/printf-posix.m4 @@ -0,0 +1,44 @@ +# printf-posix.m4 serial 2 (gettext-0.13.1) +dnl Copyright (C) 2003 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 From Bruno Haible. +dnl Test whether the printf() function supports POSIX/XSI format strings with +dnl positions. + +AC_DEFUN([gt_PRINTF_POSIX], +[ + AC_REQUIRE([AC_PROG_CC]) + AC_CACHE_CHECK([whether printf() supports POSIX/XSI format strings], + gt_cv_func_printf_posix, + [ + AC_TRY_RUN([ +#include <stdio.h> +#include <string.h> +/* The string "%2$d %1$d", with dollar characters protected from the shell's + dollar expansion (possibly an autoconf bug). */ +static char format[] = { '%', '2', '$', 'd', ' ', '%', '1', '$', 'd', '\0' }; +static char buf[100]; +int main () +{ + sprintf (buf, format, 33, 55); + return (strcmp (buf, "55 33") != 0); +}], gt_cv_func_printf_posix=yes, gt_cv_func_printf_posix=no, + [ + AC_EGREP_CPP(notposix, [ +#if defined __NetBSD__ || defined _MSC_VER || defined __MINGW32__ || defined __CYGWIN__ + notposix +#endif + ], gt_cv_func_printf_posix="guessing no", + gt_cv_func_printf_posix="guessing yes") + ]) + ]) + case $gt_cv_func_printf_posix in + *yes) + AC_DEFINE(HAVE_POSIX_PRINTF, 1, + [Define if your printf() function supports format strings with positions.]) + ;; + esac +]) |