temporarily disable elisp exception tests
[bpt/guile.git] / m4 / stdio_h.m4
CommitLineData
af07e104 1# stdio_h.m4 serial 43
5e69ceb7 2dnl Copyright (C) 2007-2014 Free Software Foundation, Inc.
c4b681fd
LC
3dnl This file is free software; the Free Software Foundation
4dnl gives unlimited permission to copy and/or distribute it,
5dnl with or without modifications, as long as this notice is preserved.
6
7AC_DEFUN([gl_STDIO_H],
8[
9 AC_REQUIRE([gl_STDIO_H_DEFAULTS])
49114fd4 10 gl_NEXT_HEADERS([stdio.h])
dd7d0148
LC
11
12 dnl No need to create extra modules for these functions. Everyone who uses
13 dnl <stdio.h> likely needs them.
14 GNULIB_FSCANF=1
005de2e8 15 gl_MODULE_INDICATOR([fscanf])
dd7d0148 16 GNULIB_SCANF=1
005de2e8 17 gl_MODULE_INDICATOR([scanf])
dd7d0148
LC
18 GNULIB_FGETC=1
19 GNULIB_GETC=1
20 GNULIB_GETCHAR=1
21 GNULIB_FGETS=1
dd7d0148
LC
22 GNULIB_FREAD=1
23 dnl This ifdef is necessary to avoid an error "missing file lib/stdio-read.c"
24 dnl "expected source file, required through AC_LIBSOURCES, not found". It is
25 dnl also an optimization, to avoid performing a configure check whose result
26 dnl is not used. But it does not make the test of GNULIB_STDIO_H_NONBLOCKING
27 dnl or GNULIB_NONBLOCKING redundant.
28 m4_ifdef([gl_NONBLOCKING_IO], [
29 gl_NONBLOCKING_IO
30 if test $gl_cv_have_nonblocking != yes; then
31 REPLACE_STDIO_READ_FUNCS=1
32 AC_LIBOBJ([stdio-read])
33 fi
34 ])
35
c4b681fd
LC
36 dnl No need to create extra modules for these functions. Everyone who uses
37 dnl <stdio.h> likely needs them.
38 GNULIB_FPRINTF=1
39 GNULIB_PRINTF=1
40 GNULIB_VFPRINTF=1
41 GNULIB_VPRINTF=1
42 GNULIB_FPUTC=1
43 GNULIB_PUTC=1
44 GNULIB_PUTCHAR=1
45 GNULIB_FPUTS=1
46 GNULIB_PUTS=1
47 GNULIB_FWRITE=1
dd7d0148
LC
48 dnl This ifdef is necessary to avoid an error "missing file lib/stdio-write.c"
49 dnl "expected source file, required through AC_LIBSOURCES, not found". It is
50 dnl also an optimization, to avoid performing a configure check whose result
51 dnl is not used. But it does not make the test of GNULIB_STDIO_H_SIGPIPE or
52 dnl GNULIB_SIGPIPE redundant.
c4b681fd
LC
53 m4_ifdef([gl_SIGNAL_SIGPIPE], [
54 gl_SIGNAL_SIGPIPE
55 if test $gl_cv_header_signal_h_SIGPIPE != yes; then
56 REPLACE_STDIO_WRITE_FUNCS=1
57 AC_LIBOBJ([stdio-write])
58 fi
59 ])
dd7d0148
LC
60 dnl This ifdef is necessary to avoid an error "missing file lib/stdio-write.c"
61 dnl "expected source file, required through AC_LIBSOURCES, not found". It is
62 dnl also an optimization, to avoid performing a configure check whose result
63 dnl is not used. But it does not make the test of GNULIB_STDIO_H_NONBLOCKING
64 dnl or GNULIB_NONBLOCKING redundant.
65 m4_ifdef([gl_NONBLOCKING_IO], [
66 gl_NONBLOCKING_IO
67 if test $gl_cv_have_nonblocking != yes; then
68 REPLACE_STDIO_WRITE_FUNCS=1
69 AC_LIBOBJ([stdio-write])
70 fi
71 ])
61cd9dc9
LC
72
73 dnl Check for declarations of anything we want to poison if the
74 dnl corresponding gnulib module is not in use, and which is not
005de2e8 75 dnl guaranteed by both C89 and C11.
61cd9dc9 76 gl_WARN_ON_USE_PREPARE([[#include <stdio.h>
005de2e8
LC
77 ]], [dprintf fpurge fseeko ftello getdelim getline gets pclose popen
78 renameat snprintf tmpfile vdprintf vsnprintf])
c4b681fd
LC
79])
80
81AC_DEFUN([gl_STDIO_MODULE_INDICATOR],
82[
83 dnl Use AC_REQUIRE here, so that the default settings are expanded once only.
84 AC_REQUIRE([gl_STDIO_H_DEFAULTS])
a927b6c1 85 gl_MODULE_INDICATOR_SET_VARIABLE([$1])
f4c79b3c 86 dnl Define it also as a C macro, for the benefit of the unit tests.
a927b6c1 87 gl_MODULE_INDICATOR_FOR_TESTS([$1])
c4b681fd
LC
88])
89
90AC_DEFUN([gl_STDIO_H_DEFAULTS],
91[
c4b681fd 92 GNULIB_DPRINTF=0; AC_SUBST([GNULIB_DPRINTF])
8912421c 93 GNULIB_FCLOSE=0; AC_SUBST([GNULIB_FCLOSE])
35428fb6 94 GNULIB_FDOPEN=0; AC_SUBST([GNULIB_FDOPEN])
8912421c 95 GNULIB_FFLUSH=0; AC_SUBST([GNULIB_FFLUSH])
dd7d0148
LC
96 GNULIB_FGETC=0; AC_SUBST([GNULIB_FGETC])
97 GNULIB_FGETS=0; AC_SUBST([GNULIB_FGETS])
c4b681fd 98 GNULIB_FOPEN=0; AC_SUBST([GNULIB_FOPEN])
8912421c
LC
99 GNULIB_FPRINTF=0; AC_SUBST([GNULIB_FPRINTF])
100 GNULIB_FPRINTF_POSIX=0; AC_SUBST([GNULIB_FPRINTF_POSIX])
101 GNULIB_FPURGE=0; AC_SUBST([GNULIB_FPURGE])
102 GNULIB_FPUTC=0; AC_SUBST([GNULIB_FPUTC])
103 GNULIB_FPUTS=0; AC_SUBST([GNULIB_FPUTS])
dd7d0148 104 GNULIB_FREAD=0; AC_SUBST([GNULIB_FREAD])
c4b681fd 105 GNULIB_FREOPEN=0; AC_SUBST([GNULIB_FREOPEN])
dd7d0148 106 GNULIB_FSCANF=0; AC_SUBST([GNULIB_FSCANF])
c4b681fd
LC
107 GNULIB_FSEEK=0; AC_SUBST([GNULIB_FSEEK])
108 GNULIB_FSEEKO=0; AC_SUBST([GNULIB_FSEEKO])
109 GNULIB_FTELL=0; AC_SUBST([GNULIB_FTELL])
110 GNULIB_FTELLO=0; AC_SUBST([GNULIB_FTELLO])
c4b681fd 111 GNULIB_FWRITE=0; AC_SUBST([GNULIB_FWRITE])
dd7d0148
LC
112 GNULIB_GETC=0; AC_SUBST([GNULIB_GETC])
113 GNULIB_GETCHAR=0; AC_SUBST([GNULIB_GETCHAR])
c4b681fd
LC
114 GNULIB_GETDELIM=0; AC_SUBST([GNULIB_GETDELIM])
115 GNULIB_GETLINE=0; AC_SUBST([GNULIB_GETLINE])
8912421c
LC
116 GNULIB_OBSTACK_PRINTF=0; AC_SUBST([GNULIB_OBSTACK_PRINTF])
117 GNULIB_OBSTACK_PRINTF_POSIX=0; AC_SUBST([GNULIB_OBSTACK_PRINTF_POSIX])
35428fb6 118 GNULIB_PCLOSE=0; AC_SUBST([GNULIB_PCLOSE])
c4b681fd 119 GNULIB_PERROR=0; AC_SUBST([GNULIB_PERROR])
8912421c
LC
120 GNULIB_POPEN=0; AC_SUBST([GNULIB_POPEN])
121 GNULIB_PRINTF=0; AC_SUBST([GNULIB_PRINTF])
122 GNULIB_PRINTF_POSIX=0; AC_SUBST([GNULIB_PRINTF_POSIX])
123 GNULIB_PUTC=0; AC_SUBST([GNULIB_PUTC])
124 GNULIB_PUTCHAR=0; AC_SUBST([GNULIB_PUTCHAR])
125 GNULIB_PUTS=0; AC_SUBST([GNULIB_PUTS])
126 GNULIB_REMOVE=0; AC_SUBST([GNULIB_REMOVE])
127 GNULIB_RENAME=0; AC_SUBST([GNULIB_RENAME])
128 GNULIB_RENAMEAT=0; AC_SUBST([GNULIB_RENAMEAT])
dd7d0148 129 GNULIB_SCANF=0; AC_SUBST([GNULIB_SCANF])
8912421c
LC
130 GNULIB_SNPRINTF=0; AC_SUBST([GNULIB_SNPRINTF])
131 GNULIB_SPRINTF_POSIX=0; AC_SUBST([GNULIB_SPRINTF_POSIX])
dd7d0148 132 GNULIB_STDIO_H_NONBLOCKING=0; AC_SUBST([GNULIB_STDIO_H_NONBLOCKING])
c4b681fd 133 GNULIB_STDIO_H_SIGPIPE=0; AC_SUBST([GNULIB_STDIO_H_SIGPIPE])
a927b6c1 134 GNULIB_TMPFILE=0; AC_SUBST([GNULIB_TMPFILE])
8912421c 135 GNULIB_VASPRINTF=0; AC_SUBST([GNULIB_VASPRINTF])
dd7d0148
LC
136 GNULIB_VFSCANF=0; AC_SUBST([GNULIB_VFSCANF])
137 GNULIB_VSCANF=0; AC_SUBST([GNULIB_VSCANF])
8912421c
LC
138 GNULIB_VDPRINTF=0; AC_SUBST([GNULIB_VDPRINTF])
139 GNULIB_VFPRINTF=0; AC_SUBST([GNULIB_VFPRINTF])
140 GNULIB_VFPRINTF_POSIX=0; AC_SUBST([GNULIB_VFPRINTF_POSIX])
141 GNULIB_VPRINTF=0; AC_SUBST([GNULIB_VPRINTF])
142 GNULIB_VPRINTF_POSIX=0; AC_SUBST([GNULIB_VPRINTF_POSIX])
143 GNULIB_VSNPRINTF=0; AC_SUBST([GNULIB_VSNPRINTF])
144 GNULIB_VSPRINTF_POSIX=0; AC_SUBST([GNULIB_VSPRINTF_POSIX])
c4b681fd 145 dnl Assume proper GNU behavior unless another module says otherwise.
8912421c 146 HAVE_DECL_FPURGE=1; AC_SUBST([HAVE_DECL_FPURGE])
ab4d62ad
LC
147 HAVE_DECL_FSEEKO=1; AC_SUBST([HAVE_DECL_FSEEKO])
148 HAVE_DECL_FTELLO=1; AC_SUBST([HAVE_DECL_FTELLO])
8912421c
LC
149 HAVE_DECL_GETDELIM=1; AC_SUBST([HAVE_DECL_GETDELIM])
150 HAVE_DECL_GETLINE=1; AC_SUBST([HAVE_DECL_GETLINE])
151 HAVE_DECL_OBSTACK_PRINTF=1; AC_SUBST([HAVE_DECL_OBSTACK_PRINTF])
c4b681fd 152 HAVE_DECL_SNPRINTF=1; AC_SUBST([HAVE_DECL_SNPRINTF])
c4b681fd 153 HAVE_DECL_VSNPRINTF=1; AC_SUBST([HAVE_DECL_VSNPRINTF])
c4b681fd 154 HAVE_DPRINTF=1; AC_SUBST([HAVE_DPRINTF])
a927b6c1
LC
155 HAVE_FSEEKO=1; AC_SUBST([HAVE_FSEEKO])
156 HAVE_FTELLO=1; AC_SUBST([HAVE_FTELLO])
35428fb6
LC
157 HAVE_PCLOSE=1; AC_SUBST([HAVE_PCLOSE])
158 HAVE_POPEN=1; AC_SUBST([HAVE_POPEN])
8912421c 159 HAVE_RENAMEAT=1; AC_SUBST([HAVE_RENAMEAT])
c4b681fd 160 HAVE_VASPRINTF=1; AC_SUBST([HAVE_VASPRINTF])
8912421c
LC
161 HAVE_VDPRINTF=1; AC_SUBST([HAVE_VDPRINTF])
162 REPLACE_DPRINTF=0; AC_SUBST([REPLACE_DPRINTF])
163 REPLACE_FCLOSE=0; AC_SUBST([REPLACE_FCLOSE])
35428fb6 164 REPLACE_FDOPEN=0; AC_SUBST([REPLACE_FDOPEN])
8912421c 165 REPLACE_FFLUSH=0; AC_SUBST([REPLACE_FFLUSH])
c4b681fd 166 REPLACE_FOPEN=0; AC_SUBST([REPLACE_FOPEN])
8912421c
LC
167 REPLACE_FPRINTF=0; AC_SUBST([REPLACE_FPRINTF])
168 REPLACE_FPURGE=0; AC_SUBST([REPLACE_FPURGE])
c4b681fd 169 REPLACE_FREOPEN=0; AC_SUBST([REPLACE_FREOPEN])
c4b681fd 170 REPLACE_FSEEK=0; AC_SUBST([REPLACE_FSEEK])
8912421c 171 REPLACE_FSEEKO=0; AC_SUBST([REPLACE_FSEEKO])
c4b681fd 172 REPLACE_FTELL=0; AC_SUBST([REPLACE_FTELL])
8912421c 173 REPLACE_FTELLO=0; AC_SUBST([REPLACE_FTELLO])
61cd9dc9 174 REPLACE_GETDELIM=0; AC_SUBST([REPLACE_GETDELIM])
c4b681fd 175 REPLACE_GETLINE=0; AC_SUBST([REPLACE_GETLINE])
8912421c 176 REPLACE_OBSTACK_PRINTF=0; AC_SUBST([REPLACE_OBSTACK_PRINTF])
c4b681fd 177 REPLACE_PERROR=0; AC_SUBST([REPLACE_PERROR])
8912421c
LC
178 REPLACE_POPEN=0; AC_SUBST([REPLACE_POPEN])
179 REPLACE_PRINTF=0; AC_SUBST([REPLACE_PRINTF])
180 REPLACE_REMOVE=0; AC_SUBST([REPLACE_REMOVE])
181 REPLACE_RENAME=0; AC_SUBST([REPLACE_RENAME])
182 REPLACE_RENAMEAT=0; AC_SUBST([REPLACE_RENAMEAT])
183 REPLACE_SNPRINTF=0; AC_SUBST([REPLACE_SNPRINTF])
184 REPLACE_SPRINTF=0; AC_SUBST([REPLACE_SPRINTF])
dd7d0148 185 REPLACE_STDIO_READ_FUNCS=0; AC_SUBST([REPLACE_STDIO_READ_FUNCS])
8912421c 186 REPLACE_STDIO_WRITE_FUNCS=0; AC_SUBST([REPLACE_STDIO_WRITE_FUNCS])
a927b6c1 187 REPLACE_TMPFILE=0; AC_SUBST([REPLACE_TMPFILE])
8912421c
LC
188 REPLACE_VASPRINTF=0; AC_SUBST([REPLACE_VASPRINTF])
189 REPLACE_VDPRINTF=0; AC_SUBST([REPLACE_VDPRINTF])
190 REPLACE_VFPRINTF=0; AC_SUBST([REPLACE_VFPRINTF])
191 REPLACE_VPRINTF=0; AC_SUBST([REPLACE_VPRINTF])
192 REPLACE_VSNPRINTF=0; AC_SUBST([REPLACE_VSNPRINTF])
193 REPLACE_VSPRINTF=0; AC_SUBST([REPLACE_VSPRINTF])
c4b681fd 194])