22 gl_STDLIB_H_REQUIRE_DEFAULTS
26 BUILT_SOURCES += stdlib.h
28 # We need the following in order to create <stdlib.h> when the system
29 # doesn't have one that works with the given compiler.
30 stdlib.h: stdlib.in.h $(top_builddir)/config.status $(CXXDEFS_H) \
31 $(_NORETURN_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H)
32 @NMD@ $(AM_V_GEN)$(MKDIR_P) '%reldir%'
33 $(gl_V_at)$(SED_HEADER_STDOUT) \
34 -e 's|@''GUARD_PREFIX''@|${gl_include_guard_prefix}|g' \
35 -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \
36 -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \
37 -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \
38 -e 's|@''NEXT_STDLIB_H''@|$(NEXT_STDLIB_H)|g' \
39 -e 's/@''GNULIB__EXIT''@/$(GNULIB__EXIT)/g' \
40 -e 's/@''GNULIB_ABORT_DEBUG''@/$(GNULIB_ABORT_DEBUG)/g' \
41 -e 's/@''GNULIB_ALIGNED_ALLOC''@/$(GNULIB_ALIGNED_ALLOC)/g' \
42 -e 's/@''GNULIB_ATOLL''@/$(GNULIB_ATOLL)/g' \
43 -e 's/@''GNULIB_CALLOC_GNU''@/$(GNULIB_CALLOC_GNU)/g' \
44 -e 's/@''GNULIB_CALLOC_POSIX''@/$(GNULIB_CALLOC_POSIX)/g' \
45 -e 's/@''GNULIB_CANONICALIZE_FILE_NAME''@/$(GNULIB_CANONICALIZE_FILE_NAME)/g' \
46 -e 's/@''GNULIB_FREE_POSIX''@/$(GNULIB_FREE_POSIX)/g' \
47 -e 's/@''GNULIB_GETLOADAVG''@/$(GNULIB_GETLOADAVG)/g' \
48 -e 's/@''GNULIB_GETPROGNAME''@/$(GNULIB_GETPROGNAME)/g' \
49 -e 's/@''GNULIB_GETSUBOPT''@/$(GNULIB_GETSUBOPT)/g' \
50 -e 's/@''GNULIB_GRANTPT''@/$(GNULIB_GRANTPT)/g' \
51 -e 's/@''GNULIB_MALLOC_GNU''@/$(GNULIB_MALLOC_GNU)/g' \
52 -e 's/@''GNULIB_MALLOC_POSIX''@/$(GNULIB_MALLOC_POSIX)/g' \
53 -e 's/@''GNULIB_MBSTOWCS''@/$(GNULIB_MBSTOWCS)/g' \
54 -e 's/@''GNULIB_MBTOWC''@/$(GNULIB_MBTOWC)/g' \
55 -e 's/@''GNULIB_MKDTEMP''@/$(GNULIB_MKDTEMP)/g' \
56 -e 's/@''GNULIB_MKOSTEMP''@/$(GNULIB_MKOSTEMP)/g' \
57 -e 's/@''GNULIB_MKOSTEMPS''@/$(GNULIB_MKOSTEMPS)/g' \
58 -e 's/@''GNULIB_MKSTEMP''@/$(GNULIB_MKSTEMP)/g' \
59 -e 's/@''GNULIB_MKSTEMPS''@/$(GNULIB_MKSTEMPS)/g' \
60 -e 's/@''GNULIB_POSIX_MEMALIGN''@/$(GNULIB_POSIX_MEMALIGN)/g' \
61 -e 's/@''GNULIB_POSIX_OPENPT''@/$(GNULIB_POSIX_OPENPT)/g' \
62 -e 's/@''GNULIB_PTSNAME''@/$(GNULIB_PTSNAME)/g' \
63 -e 's/@''GNULIB_PTSNAME_R''@/$(GNULIB_PTSNAME_R)/g' \
64 -e 's/@''GNULIB_PUTENV''@/$(GNULIB_PUTENV)/g' \
65 -e 's/@''GNULIB_QSORT_R''@/$(GNULIB_QSORT_R)/g' \
66 -e 's/@''GNULIB_RAND''@/$(GNULIB_RAND)/g' \
67 -e 's/@''GNULIB_RANDOM''@/$(GNULIB_RANDOM)/g' \
68 -e 's/@''GNULIB_RANDOM_R''@/$(GNULIB_RANDOM_R)/g' \
69 -e 's/@''GNULIB_REALLOC_GNU''@/$(GNULIB_REALLOC_GNU)/g' \
70 -e 's/@''GNULIB_REALLOC_POSIX''@/$(GNULIB_REALLOC_POSIX)/g' \
71 -e 's/@''GNULIB_REALLOCARRAY''@/$(GNULIB_REALLOCARRAY)/g' \
72 -e 's/@''GNULIB_REALPATH''@/$(GNULIB_REALPATH)/g' \
73 -e 's/@''GNULIB_RPMATCH''@/$(GNULIB_RPMATCH)/g' \
74 -e 's/@''GNULIB_SECURE_GETENV''@/$(GNULIB_SECURE_GETENV)/g' \
75 -e 's/@''GNULIB_SETENV''@/$(GNULIB_SETENV)/g' \
76 -e 's/@''GNULIB_STRTOD''@/$(GNULIB_STRTOD)/g' \
77 -e 's/@''GNULIB_STRTOF''@/$(GNULIB_STRTOF)/g' \
78 -e 's/@''GNULIB_STRTOL''@/$(GNULIB_STRTOL)/g' \
79 -e 's/@''GNULIB_STRTOLD''@/$(GNULIB_STRTOLD)/g' \
80 -e 's/@''GNULIB_STRTOLL''@/$(GNULIB_STRTOLL)/g' \
81 -e 's/@''GNULIB_STRTOUL''@/$(GNULIB_STRTOUL)/g' \
82 -e 's/@''GNULIB_STRTOULL''@/$(GNULIB_STRTOULL)/g' \
83 -e 's/@''GNULIB_SYSTEM_POSIX''@/$(GNULIB_SYSTEM_POSIX)/g' \
84 -e 's/@''GNULIB_UNLOCKPT''@/$(GNULIB_UNLOCKPT)/g' \
85 -e 's/@''GNULIB_UNSETENV''@/$(GNULIB_UNSETENV)/g' \
86 -e 's/@''GNULIB_WCTOMB''@/$(GNULIB_WCTOMB)/g' \
87 -e 's/@''GNULIB_MDA_ECVT''@/$(GNULIB_MDA_ECVT)/g' \
88 -e 's/@''GNULIB_MDA_FCVT''@/$(GNULIB_MDA_FCVT)/g' \
89 -e 's/@''GNULIB_MDA_GCVT''@/$(GNULIB_MDA_GCVT)/g' \
90 -e 's/@''GNULIB_MDA_MKTEMP''@/$(GNULIB_MDA_MKTEMP)/g' \
91 -e 's/@''GNULIB_MDA_PUTENV''@/$(GNULIB_MDA_PUTENV)/g' \
92 < $(srcdir)/stdlib.in.h > $@-t1
94 -e 's|@''HAVE__EXIT''@|$(HAVE__EXIT)|g' \
95 -e 's|@''HAVE_ALIGNED_ALLOC''@|$(HAVE_ALIGNED_ALLOC)|g' \
96 -e 's|@''HAVE_ATOLL''@|$(HAVE_ATOLL)|g' \
97 -e 's|@''HAVE_CANONICALIZE_FILE_NAME''@|$(HAVE_CANONICALIZE_FILE_NAME)|g' \
98 -e 's|@''HAVE_DECL_ECVT''@|$(HAVE_DECL_ECVT)|g' \
99 -e 's|@''HAVE_DECL_FCVT''@|$(HAVE_DECL_FCVT)|g' \
100 -e 's|@''HAVE_DECL_GCVT''@|$(HAVE_DECL_GCVT)|g' \
101 -e 's|@''HAVE_DECL_GETLOADAVG''@|$(HAVE_DECL_GETLOADAVG)|g' \
102 -e 's|@''HAVE_DECL_PROGRAM_INVOCATION_NAME''@|$(HAVE_DECL_PROGRAM_INVOCATION_NAME)|g' \
103 -e 's|@''HAVE_GETPROGNAME''@|$(HAVE_GETPROGNAME)|g' \
104 -e 's|@''HAVE_GETSUBOPT''@|$(HAVE_GETSUBOPT)|g' \
105 -e 's|@''HAVE_GRANTPT''@|$(HAVE_GRANTPT)|g' \
106 -e 's|@''HAVE_INITSTATE''@|$(HAVE_INITSTATE)|g' \
107 -e 's|@''HAVE_DECL_INITSTATE''@|$(HAVE_DECL_INITSTATE)|g' \
108 -e 's|@''HAVE_MBTOWC''@|$(HAVE_MBTOWC)|g' \
109 -e 's|@''HAVE_MKDTEMP''@|$(HAVE_MKDTEMP)|g' \
110 -e 's|@''HAVE_MKOSTEMP''@|$(HAVE_MKOSTEMP)|g' \
111 -e 's|@''HAVE_MKOSTEMPS''@|$(HAVE_MKOSTEMPS)|g' \
112 -e 's|@''HAVE_MKSTEMP''@|$(HAVE_MKSTEMP)|g' \
113 -e 's|@''HAVE_MKSTEMPS''@|$(HAVE_MKSTEMPS)|g' \
114 -e 's|@''HAVE_POSIX_MEMALIGN''@|$(HAVE_POSIX_MEMALIGN)|g' \
115 -e 's|@''HAVE_POSIX_OPENPT''@|$(HAVE_POSIX_OPENPT)|g' \
116 -e 's|@''HAVE_PTSNAME''@|$(HAVE_PTSNAME)|g' \
117 -e 's|@''HAVE_PTSNAME_R''@|$(HAVE_PTSNAME_R)|g' \
118 -e 's|@''HAVE_QSORT_R''@|$(HAVE_QSORT_R)|g' \
119 -e 's|@''HAVE_RANDOM''@|$(HAVE_RANDOM)|g' \
120 -e 's|@''HAVE_RANDOM_H''@|$(HAVE_RANDOM_H)|g' \
121 -e 's|@''HAVE_RANDOM_R''@|$(HAVE_RANDOM_R)|g' \
122 -e 's|@''HAVE_REALLOCARRAY''@|$(HAVE_REALLOCARRAY)|g' \
123 -e 's|@''HAVE_REALPATH''@|$(HAVE_REALPATH)|g' \
124 -e 's|@''HAVE_RPMATCH''@|$(HAVE_RPMATCH)|g' \
125 -e 's|@''HAVE_SECURE_GETENV''@|$(HAVE_SECURE_GETENV)|g' \
126 -e 's|@''HAVE_DECL_SETENV''@|$(HAVE_DECL_SETENV)|g' \
127 -e 's|@''HAVE_SETSTATE''@|$(HAVE_SETSTATE)|g' \
128 -e 's|@''HAVE_DECL_SETSTATE''@|$(HAVE_DECL_SETSTATE)|g' \
129 -e 's|@''HAVE_STRTOD''@|$(HAVE_STRTOD)|g' \
130 -e 's|@''HAVE_STRTOF''@|$(HAVE_STRTOF)|g' \
131 -e 's|@''HAVE_STRTOL''@|$(HAVE_STRTOL)|g' \
132 -e 's|@''HAVE_STRTOLD''@|$(HAVE_STRTOLD)|g' \
133 -e 's|@''HAVE_STRTOLL''@|$(HAVE_STRTOLL)|g' \
134 -e 's|@''HAVE_STRTOUL''@|$(HAVE_STRTOUL)|g' \
135 -e 's|@''HAVE_STRTOULL''@|$(HAVE_STRTOULL)|g' \
136 -e 's|@''HAVE_STRUCT_RANDOM_DATA''@|$(HAVE_STRUCT_RANDOM_DATA)|g' \
137 -e 's|@''HAVE_SYS_LOADAVG_H''@|$(HAVE_SYS_LOADAVG_H)|g' \
138 -e 's|@''HAVE_UNLOCKPT''@|$(HAVE_UNLOCKPT)|g' \
139 -e 's|@''HAVE_DECL_UNSETENV''@|$(HAVE_DECL_UNSETENV)|g' \
142 -e 's|@''REPLACE__EXIT''@|$(REPLACE__EXIT)|g' \
143 -e 's|@''REPLACE_ABORT''@|$(REPLACE_ABORT)|g' \
144 -e 's|@''REPLACE_ALIGNED_ALLOC''@|$(REPLACE_ALIGNED_ALLOC)|g' \
145 -e 's|@''REPLACE_CALLOC_FOR_CALLOC_GNU''@|$(REPLACE_CALLOC_FOR_CALLOC_GNU)|g' \
146 -e 's|@''REPLACE_CALLOC_FOR_CALLOC_POSIX''@|$(REPLACE_CALLOC_FOR_CALLOC_POSIX)|g' \
147 -e 's|@''REPLACE_CANONICALIZE_FILE_NAME''@|$(REPLACE_CANONICALIZE_FILE_NAME)|g' \
148 -e 's|@''REPLACE_FREE''@|$(REPLACE_FREE)|g' \
149 -e 's|@''REPLACE_GETLOADAVG''@|$(REPLACE_GETLOADAVG)|g' \
150 -e 's|@''REPLACE_GETPROGNAME''@|$(REPLACE_GETPROGNAME)|g' \
151 -e 's|@''REPLACE_GETSUBOPT''@|$(REPLACE_GETSUBOPT)|g' \
152 -e 's|@''REPLACE_INITSTATE''@|$(REPLACE_INITSTATE)|g' \
153 -e 's|@''REPLACE_MALLOC_FOR_MALLOC_GNU''@|$(REPLACE_MALLOC_FOR_MALLOC_GNU)|g' \
154 -e 's|@''REPLACE_MALLOC_FOR_MALLOC_POSIX''@|$(REPLACE_MALLOC_FOR_MALLOC_POSIX)|g' \
155 -e 's|@''REPLACE_MB_CUR_MAX''@|$(REPLACE_MB_CUR_MAX)|g' \
156 -e 's|@''REPLACE_MBSTOWCS''@|$(REPLACE_MBSTOWCS)|g' \
157 -e 's|@''REPLACE_MBTOWC''@|$(REPLACE_MBTOWC)|g' \
158 -e 's|@''REPLACE_MKOSTEMP''@|$(REPLACE_MKOSTEMP)|g' \
159 -e 's|@''REPLACE_MKOSTEMPS''@|$(REPLACE_MKOSTEMPS)|g' \
160 -e 's|@''REPLACE_MKSTEMP''@|$(REPLACE_MKSTEMP)|g' \
161 -e 's|@''REPLACE_POSIX_MEMALIGN''@|$(REPLACE_POSIX_MEMALIGN)|g' \
162 -e 's|@''REPLACE_POSIX_OPENPT''@|$(REPLACE_POSIX_OPENPT)|g' \
163 -e 's|@''REPLACE_PTSNAME''@|$(REPLACE_PTSNAME)|g' \
164 -e 's|@''REPLACE_PTSNAME_R''@|$(REPLACE_PTSNAME_R)|g' \
165 -e 's|@''REPLACE_PUTENV''@|$(REPLACE_PUTENV)|g' \
166 -e 's|@''REPLACE_QSORT_R''@|$(REPLACE_QSORT_R)|g' \
167 -e 's|@''REPLACE_RAND''@|$(REPLACE_RAND)|g' \
168 -e 's|@''REPLACE_RANDOM''@|$(REPLACE_RANDOM)|g' \
169 -e 's|@''REPLACE_RANDOM_R''@|$(REPLACE_RANDOM_R)|g' \
170 -e 's|@''REPLACE_REALLOC_FOR_REALLOC_GNU''@|$(REPLACE_REALLOC_FOR_REALLOC_GNU)|g' \
171 -e 's|@''REPLACE_REALLOC_FOR_REALLOC_POSIX''@|$(REPLACE_REALLOC_FOR_REALLOC_POSIX)|g' \
172 -e 's|@''REPLACE_REALLOCARRAY''@|$(REPLACE_REALLOCARRAY)|g' \
173 -e 's|@''REPLACE_REALPATH''@|$(REPLACE_REALPATH)|g' \
174 -e 's|@''REPLACE_SETENV''@|$(REPLACE_SETENV)|g' \
175 -e 's|@''REPLACE_SETSTATE''@|$(REPLACE_SETSTATE)|g' \
176 -e 's|@''REPLACE_STRTOD''@|$(REPLACE_STRTOD)|g' \
177 -e 's|@''REPLACE_STRTOF''@|$(REPLACE_STRTOF)|g' \
178 -e 's|@''REPLACE_STRTOL''@|$(REPLACE_STRTOL)|g' \
179 -e 's|@''REPLACE_STRTOLD''@|$(REPLACE_STRTOLD)|g' \
180 -e 's|@''REPLACE_STRTOLL''@|$(REPLACE_STRTOLL)|g' \
181 -e 's|@''REPLACE_STRTOUL''@|$(REPLACE_STRTOUL)|g' \
182 -e 's|@''REPLACE_STRTOULL''@|$(REPLACE_STRTOULL)|g' \
183 -e 's|@''REPLACE_UNSETENV''@|$(REPLACE_UNSETENV)|g' \
184 -e 's|@''REPLACE_WCTOMB''@|$(REPLACE_WCTOMB)|g' \
185 -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \
186 -e '/definition of _Noreturn/r $(_NORETURN_H)' \
187 -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \
188 -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \
190 $(AM_V_at)rm -f $@-t1 $@-t2
191 $(AM_V_at)mv $@-t3 $@
192 MOSTLYCLEANFILES += stdlib.h stdlib.h-t1 stdlib.h-t2 stdlib.h-t3