~ubuntu-branches/ubuntu/intrepid/schroot/intrepid

« back to all changes in this revision

Viewing changes to m4/printf-posix.m4

  • Committer: Bazaar Package Importer
  • Author(s): Reinhard Tartler
  • Date: 2006-07-08 18:33:28 UTC
  • mfrom: (1.1.4 upstream)
  • Revision ID: james.westby@ubuntu.com-20060708183328-rlo4mpldmyoda55q
Tags: 0.99.2-2ubuntu1
* remerge ubuntu changes:
  + debian/control: libpam-dev (>> 0.79-3ubuntu6)

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
# printf-posix.m4 serial 2 (gettext-0.13.1)
 
2
dnl Copyright (C) 2003 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 _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
])