aboutsummaryrefslogtreecommitdiffstats
path: root/m4
diff options
context:
space:
mode:
authorPaul Eggert2011-03-20 22:34:48 -0700
committerPaul Eggert2011-03-20 22:34:48 -0700
commit6e5fa6bfce1362c2ebf049fcfa1e6f2a4762ccef (patch)
treef7ff137da14c352412ee3dc3fbcaf1316428fd97 /m4
parent81e56e612dab7d80485c640068531710a713d205 (diff)
parent77185bdf91d42fb19c02af0f51ce63280ce911a0 (diff)
downloademacs-6e5fa6bfce1362c2ebf049fcfa1e6f2a4762ccef.tar.gz
emacs-6e5fa6bfce1362c2ebf049fcfa1e6f2a4762ccef.zip
Merge from trunk and from gnulib stdio.
Diffstat (limited to 'm4')
-rw-r--r--m4/gl-comp.m45
-rw-r--r--m4/stdio_h.m4140
2 files changed, 145 insertions, 0 deletions
diff --git a/m4/gl-comp.m4 b/m4/gl-comp.m4
index 7f8b5a79070..af3cae75abb 100644
--- a/m4/gl-comp.m4
+++ b/m4/gl-comp.m4
@@ -50,6 +50,7 @@ AC_DEFUN([gl_EARLY],
50 # Code from module stdbool: 50 # Code from module stdbool:
51 # Code from module stddef: 51 # Code from module stddef:
52 # Code from module stdint: 52 # Code from module stdint:
53 # Code from module stdio:
53 # Code from module stdlib: 54 # Code from module stdlib:
54 # Code from module strftime: 55 # Code from module strftime:
55 # Code from module symlink: 56 # Code from module symlink:
@@ -123,6 +124,8 @@ AC_DEFUN([gl_INIT],
123 gl_STDDEF_H 124 gl_STDDEF_H
124 # Code from module stdint: 125 # Code from module stdint:
125 gl_STDINT_H 126 gl_STDINT_H
127 # Code from module stdio:
128 gl_STDIO_H
126 # Code from module stdlib: 129 # Code from module stdlib:
127 gl_STDLIB_H 130 gl_STDLIB_H
128 # Code from module strftime: 131 # Code from module strftime:
@@ -308,6 +311,7 @@ AC_DEFUN([gl_FILE_LIST], [
308 lib/stdbool.in.h 311 lib/stdbool.in.h
309 lib/stddef.in.h 312 lib/stddef.in.h
310 lib/stdint.in.h 313 lib/stdint.in.h
314 lib/stdio.in.h
311 lib/stdlib.in.h 315 lib/stdlib.in.h
312 lib/strftime.c 316 lib/strftime.c
313 lib/strftime.h 317 lib/strftime.h
@@ -336,6 +340,7 @@ AC_DEFUN([gl_FILE_LIST], [
336 m4/stdbool.m4 340 m4/stdbool.m4
337 m4/stddef_h.m4 341 m4/stddef_h.m4
338 m4/stdint.m4 342 m4/stdint.m4
343 m4/stdio_h.m4
339 m4/stdlib_h.m4 344 m4/stdlib_h.m4
340 m4/strftime.m4 345 m4/strftime.m4
341 m4/symlink.m4 346 m4/symlink.m4
diff --git a/m4/stdio_h.m4 b/m4/stdio_h.m4
new file mode 100644
index 00000000000..7f3ae56295f
--- /dev/null
+++ b/m4/stdio_h.m4
@@ -0,0 +1,140 @@
1# stdio_h.m4 serial 33
2dnl Copyright (C) 2007-2011 Free Software Foundation, Inc.
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])
10 AC_REQUIRE([AC_C_INLINE])
11 gl_NEXT_HEADERS([stdio.h])
12 dnl No need to create extra modules for these functions. Everyone who uses
13 dnl <stdio.h> likely needs them.
14 GNULIB_FPRINTF=1
15 GNULIB_PRINTF=1
16 GNULIB_VFPRINTF=1
17 GNULIB_VPRINTF=1
18 GNULIB_FPUTC=1
19 GNULIB_PUTC=1
20 GNULIB_PUTCHAR=1
21 GNULIB_FPUTS=1
22 GNULIB_PUTS=1
23 GNULIB_FWRITE=1
24 dnl This ifdef is just an optimization, to avoid performing a configure
25 dnl check whose result is not used. It does not make the test of
26 dnl GNULIB_STDIO_H_SIGPIPE or GNULIB_SIGPIPE redundant.
27 m4_ifdef([gl_SIGNAL_SIGPIPE], [
28 gl_SIGNAL_SIGPIPE
29 if test $gl_cv_header_signal_h_SIGPIPE != yes; then
30 REPLACE_STDIO_WRITE_FUNCS=1
31 AC_LIBOBJ([stdio-write])
32 fi
33 ])
34
35 dnl Check for declarations of anything we want to poison if the
36 dnl corresponding gnulib module is not in use, and which is not
37 dnl guaranteed by C89.
38 gl_WARN_ON_USE_PREPARE([[#include <stdio.h>
39 ]], [dprintf fpurge fseeko ftello getdelim getline popen renameat
40 snprintf tmpfile vdprintf vsnprintf])
41])
42
43AC_DEFUN([gl_STDIO_MODULE_INDICATOR],
44[
45 dnl Use AC_REQUIRE here, so that the default settings are expanded once only.
46 AC_REQUIRE([gl_STDIO_H_DEFAULTS])
47 gl_MODULE_INDICATOR_SET_VARIABLE([$1])
48 dnl Define it also as a C macro, for the benefit of the unit tests.
49 gl_MODULE_INDICATOR_FOR_TESTS([$1])
50])
51
52AC_DEFUN([gl_STDIO_H_DEFAULTS],
53[
54 GNULIB_DPRINTF=0; AC_SUBST([GNULIB_DPRINTF])
55 GNULIB_FCLOSE=0; AC_SUBST([GNULIB_FCLOSE])
56 GNULIB_FFLUSH=0; AC_SUBST([GNULIB_FFLUSH])
57 GNULIB_FOPEN=0; AC_SUBST([GNULIB_FOPEN])
58 GNULIB_FPRINTF=0; AC_SUBST([GNULIB_FPRINTF])
59 GNULIB_FPRINTF_POSIX=0; AC_SUBST([GNULIB_FPRINTF_POSIX])
60 GNULIB_FPURGE=0; AC_SUBST([GNULIB_FPURGE])
61 GNULIB_FPUTC=0; AC_SUBST([GNULIB_FPUTC])
62 GNULIB_FPUTS=0; AC_SUBST([GNULIB_FPUTS])
63 GNULIB_FREOPEN=0; AC_SUBST([GNULIB_FREOPEN])
64 GNULIB_FSEEK=0; AC_SUBST([GNULIB_FSEEK])
65 GNULIB_FSEEKO=0; AC_SUBST([GNULIB_FSEEKO])
66 GNULIB_FTELL=0; AC_SUBST([GNULIB_FTELL])
67 GNULIB_FTELLO=0; AC_SUBST([GNULIB_FTELLO])
68 GNULIB_FWRITE=0; AC_SUBST([GNULIB_FWRITE])
69 GNULIB_GETDELIM=0; AC_SUBST([GNULIB_GETDELIM])
70 GNULIB_GETLINE=0; AC_SUBST([GNULIB_GETLINE])
71 GNULIB_OBSTACK_PRINTF=0; AC_SUBST([GNULIB_OBSTACK_PRINTF])
72 GNULIB_OBSTACK_PRINTF_POSIX=0; AC_SUBST([GNULIB_OBSTACK_PRINTF_POSIX])
73 GNULIB_PERROR=0; AC_SUBST([GNULIB_PERROR])
74 GNULIB_POPEN=0; AC_SUBST([GNULIB_POPEN])
75 GNULIB_PRINTF=0; AC_SUBST([GNULIB_PRINTF])
76 GNULIB_PRINTF_POSIX=0; AC_SUBST([GNULIB_PRINTF_POSIX])
77 GNULIB_PUTC=0; AC_SUBST([GNULIB_PUTC])
78 GNULIB_PUTCHAR=0; AC_SUBST([GNULIB_PUTCHAR])
79 GNULIB_PUTS=0; AC_SUBST([GNULIB_PUTS])
80 GNULIB_REMOVE=0; AC_SUBST([GNULIB_REMOVE])
81 GNULIB_RENAME=0; AC_SUBST([GNULIB_RENAME])
82 GNULIB_RENAMEAT=0; AC_SUBST([GNULIB_RENAMEAT])
83 GNULIB_SNPRINTF=0; AC_SUBST([GNULIB_SNPRINTF])
84 GNULIB_SPRINTF_POSIX=0; AC_SUBST([GNULIB_SPRINTF_POSIX])
85 GNULIB_STDIO_H_SIGPIPE=0; AC_SUBST([GNULIB_STDIO_H_SIGPIPE])
86 GNULIB_TMPFILE=0; AC_SUBST([GNULIB_TMPFILE])
87 GNULIB_VASPRINTF=0; AC_SUBST([GNULIB_VASPRINTF])
88 GNULIB_VDPRINTF=0; AC_SUBST([GNULIB_VDPRINTF])
89 GNULIB_VFPRINTF=0; AC_SUBST([GNULIB_VFPRINTF])
90 GNULIB_VFPRINTF_POSIX=0; AC_SUBST([GNULIB_VFPRINTF_POSIX])
91 GNULIB_VPRINTF=0; AC_SUBST([GNULIB_VPRINTF])
92 GNULIB_VPRINTF_POSIX=0; AC_SUBST([GNULIB_VPRINTF_POSIX])
93 GNULIB_VSNPRINTF=0; AC_SUBST([GNULIB_VSNPRINTF])
94 GNULIB_VSPRINTF_POSIX=0; AC_SUBST([GNULIB_VSPRINTF_POSIX])
95 dnl Assume proper GNU behavior unless another module says otherwise.
96 HAVE_DECL_FPURGE=1; AC_SUBST([HAVE_DECL_FPURGE])
97 HAVE_DECL_FSEEKO=1; AC_SUBST([HAVE_DECL_FSEEKO])
98 HAVE_DECL_FTELLO=1; AC_SUBST([HAVE_DECL_FTELLO])
99 HAVE_DECL_GETDELIM=1; AC_SUBST([HAVE_DECL_GETDELIM])
100 HAVE_DECL_GETLINE=1; AC_SUBST([HAVE_DECL_GETLINE])
101 HAVE_DECL_OBSTACK_PRINTF=1; AC_SUBST([HAVE_DECL_OBSTACK_PRINTF])
102 HAVE_DECL_SNPRINTF=1; AC_SUBST([HAVE_DECL_SNPRINTF])
103 HAVE_DECL_VSNPRINTF=1; AC_SUBST([HAVE_DECL_VSNPRINTF])
104 HAVE_DPRINTF=1; AC_SUBST([HAVE_DPRINTF])
105 HAVE_FSEEKO=1; AC_SUBST([HAVE_FSEEKO])
106 HAVE_FTELLO=1; AC_SUBST([HAVE_FTELLO])
107 HAVE_RENAMEAT=1; AC_SUBST([HAVE_RENAMEAT])
108 HAVE_VASPRINTF=1; AC_SUBST([HAVE_VASPRINTF])
109 HAVE_VDPRINTF=1; AC_SUBST([HAVE_VDPRINTF])
110 REPLACE_DPRINTF=0; AC_SUBST([REPLACE_DPRINTF])
111 REPLACE_FCLOSE=0; AC_SUBST([REPLACE_FCLOSE])
112 REPLACE_FFLUSH=0; AC_SUBST([REPLACE_FFLUSH])
113 REPLACE_FOPEN=0; AC_SUBST([REPLACE_FOPEN])
114 REPLACE_FPRINTF=0; AC_SUBST([REPLACE_FPRINTF])
115 REPLACE_FPURGE=0; AC_SUBST([REPLACE_FPURGE])
116 REPLACE_FREOPEN=0; AC_SUBST([REPLACE_FREOPEN])
117 REPLACE_FSEEK=0; AC_SUBST([REPLACE_FSEEK])
118 REPLACE_FSEEKO=0; AC_SUBST([REPLACE_FSEEKO])
119 REPLACE_FTELL=0; AC_SUBST([REPLACE_FTELL])
120 REPLACE_FTELLO=0; AC_SUBST([REPLACE_FTELLO])
121 REPLACE_GETDELIM=0; AC_SUBST([REPLACE_GETDELIM])
122 REPLACE_GETLINE=0; AC_SUBST([REPLACE_GETLINE])
123 REPLACE_OBSTACK_PRINTF=0; AC_SUBST([REPLACE_OBSTACK_PRINTF])
124 REPLACE_PERROR=0; AC_SUBST([REPLACE_PERROR])
125 REPLACE_POPEN=0; AC_SUBST([REPLACE_POPEN])
126 REPLACE_PRINTF=0; AC_SUBST([REPLACE_PRINTF])
127 REPLACE_REMOVE=0; AC_SUBST([REPLACE_REMOVE])
128 REPLACE_RENAME=0; AC_SUBST([REPLACE_RENAME])
129 REPLACE_RENAMEAT=0; AC_SUBST([REPLACE_RENAMEAT])
130 REPLACE_SNPRINTF=0; AC_SUBST([REPLACE_SNPRINTF])
131 REPLACE_SPRINTF=0; AC_SUBST([REPLACE_SPRINTF])
132 REPLACE_STDIO_WRITE_FUNCS=0; AC_SUBST([REPLACE_STDIO_WRITE_FUNCS])
133 REPLACE_TMPFILE=0; AC_SUBST([REPLACE_TMPFILE])
134 REPLACE_VASPRINTF=0; AC_SUBST([REPLACE_VASPRINTF])
135 REPLACE_VDPRINTF=0; AC_SUBST([REPLACE_VDPRINTF])
136 REPLACE_VFPRINTF=0; AC_SUBST([REPLACE_VFPRINTF])
137 REPLACE_VPRINTF=0; AC_SUBST([REPLACE_VPRINTF])
138 REPLACE_VSNPRINTF=0; AC_SUBST([REPLACE_VSNPRINTF])
139 REPLACE_VSPRINTF=0; AC_SUBST([REPLACE_VSPRINTF])
140])