"Fossies" - the Fresh Open Source Software Archive

Member "gentoo-0.20.7/m4/printf-posix.m4" (14 Mar 2014, 1481 Bytes) of archive /linux/misc/gentoo-0.20.7.tar.gz:


As a special service "Fossies" has tried to format the requested text file into HTML format (style: standard) with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file.

    1 # printf-posix.m4 serial 3 (gettext-0.17)
    2 dnl Copyright (C) 2003, 2007 Free Software Foundation, Inc.
    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 
    7 dnl From Bruno Haible.
    8 dnl Test whether the printf() function supports POSIX/XSI format strings with
    9 dnl positions.
   10 
   11 AC_DEFUN([gt_PRINTF_POSIX],
   12 [
   13   AC_REQUIRE([AC_PROG_CC])
   14   AC_CACHE_CHECK([whether printf() supports POSIX/XSI format strings],
   15     gt_cv_func_printf_posix,
   16     [
   17       AC_TRY_RUN([
   18 #include <stdio.h>
   19 #include <string.h>
   20 /* The string "%2$d %1$d", with dollar characters protected from the shell's
   21    dollar expansion (possibly an autoconf bug).  */
   22 static char format[] = { '%', '2', '$', 'd', ' ', '%', '1', '$', 'd', '\0' };
   23 static char buf[100];
   24 int main ()
   25 {
   26   sprintf (buf, format, 33, 55);
   27   return (strcmp (buf, "55 33") != 0);
   28 }], gt_cv_func_printf_posix=yes, gt_cv_func_printf_posix=no,
   29       [
   30         AC_EGREP_CPP(notposix, [
   31 #if defined __NetBSD__ || defined __BEOS__ || defined _MSC_VER || defined __MINGW32__ || defined __CYGWIN__
   32   notposix
   33 #endif
   34         ], gt_cv_func_printf_posix="guessing no",
   35            gt_cv_func_printf_posix="guessing yes")
   36       ])
   37     ])
   38   case $gt_cv_func_printf_posix in
   39     *yes)
   40       AC_DEFINE(HAVE_POSIX_PRINTF, 1,
   41         [Define if your printf() function supports format strings with positions.])
   42       ;;
   43   esac
   44 ])