Merge remote-tracking branch 'origin/stable-2.0'
[bpt/guile.git] / m4 / stdlib_h.m4
CommitLineData
dd36ce77 1# stdlib_h.m4 serial 37
49114fd4 2dnl Copyright (C) 2007-2011 Free Software Foundation, Inc.
f240aacb
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_STDLIB_H],
8[
9 AC_REQUIRE([gl_STDLIB_H_DEFAULTS])
49114fd4 10 gl_NEXT_HEADERS([stdlib.h])
61cd9dc9
LC
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
17# include <sys/loadavg.h>
18#endif
19#if HAVE_RANDOM_H
20# include <random.h>
21#endif
35428fb6
LC
22 ]], [_Exit atoll canonicalize_file_name getloadavg getsubopt grantpt
23 initstate_r mkdtemp mkostemp mkostemps mkstemp mkstemps posix_openpt
24 ptsname random_r realpath rpmatch setenv setstate_r srandom_r strtod
25 strtoll strtoull unlockpt unsetenv])
f240aacb
LC
26])
27
28AC_DEFUN([gl_STDLIB_MODULE_INDICATOR],
29[
30 dnl Use AC_REQUIRE here, so that the default settings are expanded once only.
31 AC_REQUIRE([gl_STDLIB_H_DEFAULTS])
a927b6c1 32 gl_MODULE_INDICATOR_SET_VARIABLE([$1])
f4c79b3c 33 dnl Define it also as a C macro, for the benefit of the unit tests.
a927b6c1 34 gl_MODULE_INDICATOR_FOR_TESTS([$1])
f240aacb
LC
35])
36
37AC_DEFUN([gl_STDLIB_H_DEFAULTS],
38[
9157d901 39 GNULIB__EXIT=0; AC_SUBST([GNULIB__EXIT])
f240aacb 40 GNULIB_ATOLL=0; AC_SUBST([GNULIB_ATOLL])
8912421c
LC
41 GNULIB_CALLOC_POSIX=0; AC_SUBST([GNULIB_CALLOC_POSIX])
42 GNULIB_CANONICALIZE_FILE_NAME=0; AC_SUBST([GNULIB_CANONICALIZE_FILE_NAME])
f240aacb
LC
43 GNULIB_GETLOADAVG=0; AC_SUBST([GNULIB_GETLOADAVG])
44 GNULIB_GETSUBOPT=0; AC_SUBST([GNULIB_GETSUBOPT])
a927b6c1 45 GNULIB_GRANTPT=0; AC_SUBST([GNULIB_GRANTPT])
8912421c 46 GNULIB_MALLOC_POSIX=0; AC_SUBST([GNULIB_MALLOC_POSIX])
dd36ce77 47 GNULIB_MBTOWC=0; AC_SUBST([GNULIB_MBTOWC])
f240aacb 48 GNULIB_MKDTEMP=0; AC_SUBST([GNULIB_MKDTEMP])
8912421c 49 GNULIB_MKOSTEMP=0; AC_SUBST([GNULIB_MKOSTEMP])
f29ded4b 50 GNULIB_MKOSTEMPS=0; AC_SUBST([GNULIB_MKOSTEMPS])
f240aacb 51 GNULIB_MKSTEMP=0; AC_SUBST([GNULIB_MKSTEMP])
f29ded4b 52 GNULIB_MKSTEMPS=0; AC_SUBST([GNULIB_MKSTEMPS])
35428fb6 53 GNULIB_POSIX_OPENPT=0; AC_SUBST([GNULIB_POSIX_OPENPT])
a927b6c1 54 GNULIB_PTSNAME=0; AC_SUBST([GNULIB_PTSNAME])
f240aacb
LC
55 GNULIB_PUTENV=0; AC_SUBST([GNULIB_PUTENV])
56 GNULIB_RANDOM_R=0; AC_SUBST([GNULIB_RANDOM_R])
8912421c
LC
57 GNULIB_REALLOC_POSIX=0; AC_SUBST([GNULIB_REALLOC_POSIX])
58 GNULIB_REALPATH=0; AC_SUBST([GNULIB_REALPATH])
f240aacb
LC
59 GNULIB_RPMATCH=0; AC_SUBST([GNULIB_RPMATCH])
60 GNULIB_SETENV=0; AC_SUBST([GNULIB_SETENV])
61 GNULIB_STRTOD=0; AC_SUBST([GNULIB_STRTOD])
62 GNULIB_STRTOLL=0; AC_SUBST([GNULIB_STRTOLL])
63 GNULIB_STRTOULL=0; AC_SUBST([GNULIB_STRTOULL])
0f00f2c3 64 GNULIB_SYSTEM_POSIX=0; AC_SUBST([GNULIB_SYSTEM_POSIX])
a927b6c1 65 GNULIB_UNLOCKPT=0; AC_SUBST([GNULIB_UNLOCKPT])
f240aacb 66 GNULIB_UNSETENV=0; AC_SUBST([GNULIB_UNSETENV])
dd36ce77 67 GNULIB_WCTOMB=0; AC_SUBST([GNULIB_WCTOMB])
f240aacb 68 dnl Assume proper GNU behavior unless another module says otherwise.
9157d901 69 HAVE__EXIT=1; AC_SUBST([HAVE__EXIT])
f240aacb 70 HAVE_ATOLL=1; AC_SUBST([HAVE_ATOLL])
8912421c
LC
71 HAVE_CANONICALIZE_FILE_NAME=1; AC_SUBST([HAVE_CANONICALIZE_FILE_NAME])
72 HAVE_DECL_GETLOADAVG=1; AC_SUBST([HAVE_DECL_GETLOADAVG])
f240aacb 73 HAVE_GETSUBOPT=1; AC_SUBST([HAVE_GETSUBOPT])
a927b6c1 74 HAVE_GRANTPT=1; AC_SUBST([HAVE_GRANTPT])
f240aacb 75 HAVE_MKDTEMP=1; AC_SUBST([HAVE_MKDTEMP])
8912421c 76 HAVE_MKOSTEMP=1; AC_SUBST([HAVE_MKOSTEMP])
f29ded4b 77 HAVE_MKOSTEMPS=1; AC_SUBST([HAVE_MKOSTEMPS])
a927b6c1 78 HAVE_MKSTEMP=1; AC_SUBST([HAVE_MKSTEMP])
f29ded4b 79 HAVE_MKSTEMPS=1; AC_SUBST([HAVE_MKSTEMPS])
35428fb6 80 HAVE_POSIX_OPENPT=1; AC_SUBST([HAVE_POSIX_OPENPT])
a927b6c1 81 HAVE_PTSNAME=1; AC_SUBST([HAVE_PTSNAME])
49114fd4 82 HAVE_RANDOM_H=1; AC_SUBST([HAVE_RANDOM_H])
f240aacb 83 HAVE_RANDOM_R=1; AC_SUBST([HAVE_RANDOM_R])
8912421c 84 HAVE_REALPATH=1; AC_SUBST([HAVE_REALPATH])
f240aacb
LC
85 HAVE_RPMATCH=1; AC_SUBST([HAVE_RPMATCH])
86 HAVE_SETENV=1; AC_SUBST([HAVE_SETENV])
ab4d62ad 87 HAVE_DECL_SETENV=1; AC_SUBST([HAVE_DECL_SETENV])
f240aacb
LC
88 HAVE_STRTOD=1; AC_SUBST([HAVE_STRTOD])
89 HAVE_STRTOLL=1; AC_SUBST([HAVE_STRTOLL])
90 HAVE_STRTOULL=1; AC_SUBST([HAVE_STRTOULL])
91 HAVE_STRUCT_RANDOM_DATA=1; AC_SUBST([HAVE_STRUCT_RANDOM_DATA])
92 HAVE_SYS_LOADAVG_H=0; AC_SUBST([HAVE_SYS_LOADAVG_H])
a927b6c1 93 HAVE_UNLOCKPT=1; AC_SUBST([HAVE_UNLOCKPT])
ab4d62ad 94 HAVE_DECL_UNSETENV=1; AC_SUBST([HAVE_DECL_UNSETENV])
9157d901 95 REPLACE_CALLOC=0; AC_SUBST([REPLACE_CALLOC])
8912421c 96 REPLACE_CANONICALIZE_FILE_NAME=0; AC_SUBST([REPLACE_CANONICALIZE_FILE_NAME])
9157d901 97 REPLACE_MALLOC=0; AC_SUBST([REPLACE_MALLOC])
dd36ce77 98 REPLACE_MBTOWC=0; AC_SUBST([REPLACE_MBTOWC])
f240aacb
LC
99 REPLACE_MKSTEMP=0; AC_SUBST([REPLACE_MKSTEMP])
100 REPLACE_PUTENV=0; AC_SUBST([REPLACE_PUTENV])
9157d901 101 REPLACE_REALLOC=0; AC_SUBST([REPLACE_REALLOC])
8912421c 102 REPLACE_REALPATH=0; AC_SUBST([REPLACE_REALPATH])
4f02b98d 103 REPLACE_SETENV=0; AC_SUBST([REPLACE_SETENV])
f240aacb 104 REPLACE_STRTOD=0; AC_SUBST([REPLACE_STRTOD])
4f02b98d 105 REPLACE_UNSETENV=0; AC_SUBST([REPLACE_UNSETENV])
dd36ce77 106 REPLACE_WCTOMB=0; AC_SUBST([REPLACE_WCTOMB])
f240aacb 107])