Commit | Line | Data |
---|---|---|
698be2d8 | 1 | # stdlib_h.m4 serial 49 |
5df4cba6 | 2 | dnl Copyright (C) 2007-2020 Free Software Foundation, Inc. |
98399780 YQ |
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 | AC_DEFUN([gl_STDLIB_H], | |
8 | [ | |
9 | AC_REQUIRE([gl_STDLIB_H_DEFAULTS]) | |
10 | gl_NEXT_HEADERS([stdlib.h]) | |
11 | ||
12 | dnl Check for declarations of anything we want to poison if the | |
13 | dnl corresponding gnulib module is not in use, and which is not | |
14 | dnl guaranteed by C89. | |
15 | gl_WARN_ON_USE_PREPARE([[#include <stdlib.h> | |
16 | #if HAVE_SYS_LOADAVG_H | |
c0c3707f CB |
17 | /* OpenIndiana has a bug: <sys/time.h> must be included before |
18 | <sys/loadavg.h>. */ | |
19 | # include <sys/time.h> | |
98399780 YQ |
20 | # include <sys/loadavg.h> |
21 | #endif | |
22 | #if HAVE_RANDOM_H | |
23 | # include <random.h> | |
24 | #endif | |
25 | ]], [_Exit atoll canonicalize_file_name getloadavg getsubopt grantpt | |
c0c3707f CB |
26 | initstate initstate_r mbtowc mkdtemp mkostemp mkostemps mkstemp mkstemps |
27 | posix_openpt ptsname ptsname_r qsort_r random random_r reallocarray | |
28 | realpath rpmatch secure_getenv setenv setstate setstate_r srandom | |
29 | srandom_r strtod strtold strtoll strtoull unlockpt unsetenv]) | |
698be2d8 CB |
30 | |
31 | AC_REQUIRE([AC_C_RESTRICT]) | |
98399780 YQ |
32 | ]) |
33 | ||
34 | AC_DEFUN([gl_STDLIB_MODULE_INDICATOR], | |
35 | [ | |
36 | dnl Use AC_REQUIRE here, so that the default settings are expanded once only. | |
37 | AC_REQUIRE([gl_STDLIB_H_DEFAULTS]) | |
38 | gl_MODULE_INDICATOR_SET_VARIABLE([$1]) | |
39 | dnl Define it also as a C macro, for the benefit of the unit tests. | |
40 | gl_MODULE_INDICATOR_FOR_TESTS([$1]) | |
41 | ]) | |
42 | ||
43 | AC_DEFUN([gl_STDLIB_H_DEFAULTS], | |
44 | [ | |
45 | GNULIB__EXIT=0; AC_SUBST([GNULIB__EXIT]) | |
46 | GNULIB_ATOLL=0; AC_SUBST([GNULIB_ATOLL]) | |
47 | GNULIB_CALLOC_POSIX=0; AC_SUBST([GNULIB_CALLOC_POSIX]) | |
48 | GNULIB_CANONICALIZE_FILE_NAME=0; AC_SUBST([GNULIB_CANONICALIZE_FILE_NAME]) | |
49 | GNULIB_GETLOADAVG=0; AC_SUBST([GNULIB_GETLOADAVG]) | |
50 | GNULIB_GETSUBOPT=0; AC_SUBST([GNULIB_GETSUBOPT]) | |
51 | GNULIB_GRANTPT=0; AC_SUBST([GNULIB_GRANTPT]) | |
52 | GNULIB_MALLOC_POSIX=0; AC_SUBST([GNULIB_MALLOC_POSIX]) | |
53 | GNULIB_MBTOWC=0; AC_SUBST([GNULIB_MBTOWC]) | |
54 | GNULIB_MKDTEMP=0; AC_SUBST([GNULIB_MKDTEMP]) | |
55 | GNULIB_MKOSTEMP=0; AC_SUBST([GNULIB_MKOSTEMP]) | |
56 | GNULIB_MKOSTEMPS=0; AC_SUBST([GNULIB_MKOSTEMPS]) | |
57 | GNULIB_MKSTEMP=0; AC_SUBST([GNULIB_MKSTEMP]) | |
58 | GNULIB_MKSTEMPS=0; AC_SUBST([GNULIB_MKSTEMPS]) | |
59 | GNULIB_POSIX_OPENPT=0; AC_SUBST([GNULIB_POSIX_OPENPT]) | |
60 | GNULIB_PTSNAME=0; AC_SUBST([GNULIB_PTSNAME]) | |
61 | GNULIB_PTSNAME_R=0; AC_SUBST([GNULIB_PTSNAME_R]) | |
62 | GNULIB_PUTENV=0; AC_SUBST([GNULIB_PUTENV]) | |
4a626d0a | 63 | GNULIB_QSORT_R=0; AC_SUBST([GNULIB_QSORT_R]) |
98399780 YQ |
64 | GNULIB_RANDOM=0; AC_SUBST([GNULIB_RANDOM]) |
65 | GNULIB_RANDOM_R=0; AC_SUBST([GNULIB_RANDOM_R]) | |
c0c3707f | 66 | GNULIB_REALLOCARRAY=0; AC_SUBST([GNULIB_REALLOCARRAY]) |
98399780 YQ |
67 | GNULIB_REALLOC_POSIX=0; AC_SUBST([GNULIB_REALLOC_POSIX]) |
68 | GNULIB_REALPATH=0; AC_SUBST([GNULIB_REALPATH]) | |
69 | GNULIB_RPMATCH=0; AC_SUBST([GNULIB_RPMATCH]) | |
4a626d0a | 70 | GNULIB_SECURE_GETENV=0; AC_SUBST([GNULIB_SECURE_GETENV]) |
98399780 YQ |
71 | GNULIB_SETENV=0; AC_SUBST([GNULIB_SETENV]) |
72 | GNULIB_STRTOD=0; AC_SUBST([GNULIB_STRTOD]) | |
c0c3707f | 73 | GNULIB_STRTOLD=0; AC_SUBST([GNULIB_STRTOLD]) |
98399780 YQ |
74 | GNULIB_STRTOLL=0; AC_SUBST([GNULIB_STRTOLL]) |
75 | GNULIB_STRTOULL=0; AC_SUBST([GNULIB_STRTOULL]) | |
76 | GNULIB_SYSTEM_POSIX=0; AC_SUBST([GNULIB_SYSTEM_POSIX]) | |
77 | GNULIB_UNLOCKPT=0; AC_SUBST([GNULIB_UNLOCKPT]) | |
78 | GNULIB_UNSETENV=0; AC_SUBST([GNULIB_UNSETENV]) | |
79 | GNULIB_WCTOMB=0; AC_SUBST([GNULIB_WCTOMB]) | |
80 | dnl Assume proper GNU behavior unless another module says otherwise. | |
81 | HAVE__EXIT=1; AC_SUBST([HAVE__EXIT]) | |
82 | HAVE_ATOLL=1; AC_SUBST([HAVE_ATOLL]) | |
83 | HAVE_CANONICALIZE_FILE_NAME=1; AC_SUBST([HAVE_CANONICALIZE_FILE_NAME]) | |
84 | HAVE_DECL_GETLOADAVG=1; AC_SUBST([HAVE_DECL_GETLOADAVG]) | |
85 | HAVE_GETSUBOPT=1; AC_SUBST([HAVE_GETSUBOPT]) | |
86 | HAVE_GRANTPT=1; AC_SUBST([HAVE_GRANTPT]) | |
c0c3707f CB |
87 | HAVE_INITSTATE=1; AC_SUBST([HAVE_INITSTATE]) |
88 | HAVE_DECL_INITSTATE=1; AC_SUBST([HAVE_DECL_INITSTATE]) | |
89 | HAVE_MBTOWC=1; AC_SUBST([HAVE_MBTOWC]) | |
98399780 YQ |
90 | HAVE_MKDTEMP=1; AC_SUBST([HAVE_MKDTEMP]) |
91 | HAVE_MKOSTEMP=1; AC_SUBST([HAVE_MKOSTEMP]) | |
92 | HAVE_MKOSTEMPS=1; AC_SUBST([HAVE_MKOSTEMPS]) | |
93 | HAVE_MKSTEMP=1; AC_SUBST([HAVE_MKSTEMP]) | |
94 | HAVE_MKSTEMPS=1; AC_SUBST([HAVE_MKSTEMPS]) | |
95 | HAVE_POSIX_OPENPT=1; AC_SUBST([HAVE_POSIX_OPENPT]) | |
96 | HAVE_PTSNAME=1; AC_SUBST([HAVE_PTSNAME]) | |
97 | HAVE_PTSNAME_R=1; AC_SUBST([HAVE_PTSNAME_R]) | |
4c62b19f | 98 | HAVE_QSORT_R=1; AC_SUBST([HAVE_QSORT_R]) |
98399780 YQ |
99 | HAVE_RANDOM=1; AC_SUBST([HAVE_RANDOM]) |
100 | HAVE_RANDOM_H=1; AC_SUBST([HAVE_RANDOM_H]) | |
101 | HAVE_RANDOM_R=1; AC_SUBST([HAVE_RANDOM_R]) | |
c0c3707f | 102 | HAVE_REALLOCARRAY=1; AC_SUBST([HAVE_REALLOCARRAY]) |
98399780 YQ |
103 | HAVE_REALPATH=1; AC_SUBST([HAVE_REALPATH]) |
104 | HAVE_RPMATCH=1; AC_SUBST([HAVE_RPMATCH]) | |
4a626d0a | 105 | HAVE_SECURE_GETENV=1; AC_SUBST([HAVE_SECURE_GETENV]) |
98399780 YQ |
106 | HAVE_SETENV=1; AC_SUBST([HAVE_SETENV]) |
107 | HAVE_DECL_SETENV=1; AC_SUBST([HAVE_DECL_SETENV]) | |
c0c3707f CB |
108 | HAVE_SETSTATE=1; AC_SUBST([HAVE_SETSTATE]) |
109 | HAVE_DECL_SETSTATE=1; AC_SUBST([HAVE_DECL_SETSTATE]) | |
98399780 | 110 | HAVE_STRTOD=1; AC_SUBST([HAVE_STRTOD]) |
c0c3707f | 111 | HAVE_STRTOLD=1; AC_SUBST([HAVE_STRTOLD]) |
98399780 YQ |
112 | HAVE_STRTOLL=1; AC_SUBST([HAVE_STRTOLL]) |
113 | HAVE_STRTOULL=1; AC_SUBST([HAVE_STRTOULL]) | |
114 | HAVE_STRUCT_RANDOM_DATA=1; AC_SUBST([HAVE_STRUCT_RANDOM_DATA]) | |
115 | HAVE_SYS_LOADAVG_H=0; AC_SUBST([HAVE_SYS_LOADAVG_H]) | |
116 | HAVE_UNLOCKPT=1; AC_SUBST([HAVE_UNLOCKPT]) | |
117 | HAVE_DECL_UNSETENV=1; AC_SUBST([HAVE_DECL_UNSETENV]) | |
118 | REPLACE_CALLOC=0; AC_SUBST([REPLACE_CALLOC]) | |
119 | REPLACE_CANONICALIZE_FILE_NAME=0; AC_SUBST([REPLACE_CANONICALIZE_FILE_NAME]) | |
c0c3707f | 120 | REPLACE_INITSTATE=0; AC_SUBST([REPLACE_INITSTATE]) |
98399780 YQ |
121 | REPLACE_MALLOC=0; AC_SUBST([REPLACE_MALLOC]) |
122 | REPLACE_MBTOWC=0; AC_SUBST([REPLACE_MBTOWC]) | |
123 | REPLACE_MKSTEMP=0; AC_SUBST([REPLACE_MKSTEMP]) | |
124 | REPLACE_PTSNAME=0; AC_SUBST([REPLACE_PTSNAME]) | |
125 | REPLACE_PTSNAME_R=0; AC_SUBST([REPLACE_PTSNAME_R]) | |
126 | REPLACE_PUTENV=0; AC_SUBST([REPLACE_PUTENV]) | |
4a626d0a | 127 | REPLACE_QSORT_R=0; AC_SUBST([REPLACE_QSORT_R]) |
c0c3707f | 128 | REPLACE_RANDOM=0; AC_SUBST([REPLACE_RANDOM]) |
98399780 YQ |
129 | REPLACE_RANDOM_R=0; AC_SUBST([REPLACE_RANDOM_R]) |
130 | REPLACE_REALLOC=0; AC_SUBST([REPLACE_REALLOC]) | |
131 | REPLACE_REALPATH=0; AC_SUBST([REPLACE_REALPATH]) | |
132 | REPLACE_SETENV=0; AC_SUBST([REPLACE_SETENV]) | |
c0c3707f | 133 | REPLACE_SETSTATE=0; AC_SUBST([REPLACE_SETSTATE]) |
98399780 | 134 | REPLACE_STRTOD=0; AC_SUBST([REPLACE_STRTOD]) |
c0c3707f | 135 | REPLACE_STRTOLD=0; AC_SUBST([REPLACE_STRTOLD]) |
98399780 YQ |
136 | REPLACE_UNSETENV=0; AC_SUBST([REPLACE_UNSETENV]) |
137 | REPLACE_WCTOMB=0; AC_SUBST([REPLACE_WCTOMB]) | |
138 | ]) |