2 dnl Copyright (C) 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.
9 AC_REQUIRE([gl_STDIO_H_DEFAULTS])
10 gl_CHECK_NEXT_HEADERS([stdio.h])
13 AC_DEFUN([gl_STDIO_MODULE_INDICATOR],
15 dnl Use AC_REQUIRE here, so that the default settings are expanded once only.
16 AC_REQUIRE([gl_STDIO_H_DEFAULTS])
17 GNULIB_[]m4_translit([$1],[abcdefghijklmnopqrstuvwxyz./-],[ABCDEFGHIJKLMNOPQRSTUVWXYZ___])=1
20 AC_DEFUN([gl_STDIO_H_DEFAULTS],
22 GNULIB_FPRINTF_POSIX=0; AC_SUBST([GNULIB_FPRINTF_POSIX])
23 GNULIB_PRINTF_POSIX=0; AC_SUBST([GNULIB_PRINTF_POSIX])
24 GNULIB_SNPRINTF=0; AC_SUBST([GNULIB_SNPRINTF])
25 GNULIB_SPRINTF_POSIX=0; AC_SUBST([GNULIB_SPRINTF_POSIX])
26 GNULIB_VFPRINTF_POSIX=0; AC_SUBST([GNULIB_VFPRINTF_POSIX])
27 GNULIB_VPRINTF_POSIX=0; AC_SUBST([GNULIB_VPRINTF_POSIX])
28 GNULIB_VSNPRINTF=0; AC_SUBST([GNULIB_VSNPRINTF])
29 GNULIB_VSPRINTF_POSIX=0; AC_SUBST([GNULIB_VSPRINTF_POSIX])
30 GNULIB_VASPRINTF=0; AC_SUBST([GNULIB_VASPRINTF])
31 GNULIB_FOPEN=0; AC_SUBST([GNULIB_FOPEN])
32 GNULIB_FREOPEN=0; AC_SUBST([GNULIB_FREOPEN])
33 GNULIB_FSEEK=0; AC_SUBST([GNULIB_FSEEK])
34 GNULIB_FSEEKO=0; AC_SUBST([GNULIB_FSEEKO])
35 GNULIB_FTELL=0; AC_SUBST([GNULIB_FTELL])
36 GNULIB_FTELLO=0; AC_SUBST([GNULIB_FTELLO])
37 GNULIB_FFLUSH=0; AC_SUBST([GNULIB_FFLUSH])
38 GNULIB_GETDELIM=0; AC_SUBST([GNULIB_GETDELIM])
39 GNULIB_GETLINE=0; AC_SUBST([GNULIB_GETLINE])
40 dnl Assume proper GNU behavior unless another module says otherwise.
41 REPLACE_FPRINTF=0; AC_SUBST([REPLACE_FPRINTF])
42 REPLACE_VFPRINTF=0; AC_SUBST([REPLACE_VFPRINTF])
43 REPLACE_PRINTF=0; AC_SUBST([REPLACE_PRINTF])
44 REPLACE_VPRINTF=0; AC_SUBST([REPLACE_VPRINTF])
45 REPLACE_SNPRINTF=0; AC_SUBST([REPLACE_SNPRINTF])
46 HAVE_DECL_SNPRINTF=1; AC_SUBST([HAVE_DECL_SNPRINTF])
47 REPLACE_VSNPRINTF=0; AC_SUBST([REPLACE_VSNPRINTF])
48 HAVE_DECL_VSNPRINTF=1; AC_SUBST([HAVE_DECL_VSNPRINTF])
49 REPLACE_SPRINTF=0; AC_SUBST([REPLACE_SPRINTF])
50 REPLACE_VSPRINTF=0; AC_SUBST([REPLACE_VSPRINTF])
51 HAVE_VASPRINTF=1; AC_SUBST([HAVE_VASPRINTF])
52 REPLACE_VASPRINTF=0; AC_SUBST([REPLACE_VASPRINTF])
53 REPLACE_FOPEN=0; AC_SUBST([REPLACE_FOPEN])
54 REPLACE_FREOPEN=0; AC_SUBST([REPLACE_FREOPEN])
55 HAVE_FSEEKO=1; AC_SUBST([HAVE_FSEEKO])
56 REPLACE_FSEEKO=0; AC_SUBST([REPLACE_FSEEKO])
57 REPLACE_FSEEK=0; AC_SUBST([REPLACE_FSEEK])
58 HAVE_FTELLO=1; AC_SUBST([HAVE_FTELLO])
59 REPLACE_FTELLO=0; AC_SUBST([REPLACE_FTELLO])
60 REPLACE_FTELL=0; AC_SUBST([REPLACE_FTELL])
61 REPLACE_FFLUSH=0; AC_SUBST([REPLACE_FFLUSH])
62 HAVE_DECL_GETDELIM=1; AC_SUBST([HAVE_DECL_GETDELIM])
63 HAVE_DECL_GETLINE=1; AC_SUBST([HAVE_DECL_GETLINE])
64 REPLACE_GETLINE=0; AC_SUBST([REPLACE_GETLINE])
67 dnl Code shared by fseeko and ftello. Determine if large files are supported,
68 dnl but stdin does not start as a large file by default.
69 AC_DEFUN([gl_STDIN_LARGE_OFFSET],
71 AC_CACHE_CHECK([whether stdin defaults to large file offsets],
72 [gl_cv_var_stdin_large_offset],
73 [AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <stdio.h>],
74 [#if defined __SL64 && defined __SCLE /* cygwin */
75 /* Cygwin 1.5.24 and earlier fail to put stdin in 64-bit mode, making
76 fseeko/ftello needlessly fail. This bug was fixed at the same time
77 that cygwin started exporting asnprintf (cygwin 1.7.0), so we use
78 that as a link-time test for cross-compiles rather than building
81 if (asnprintf (NULL, &s, ""))
84 [gl_cv_var_stdin_large_offset=yes],
85 [gl_cv_var_stdin_large_offset=no])])