1
# unistd_h.m4 serial 46
2
dnl Copyright (C) 2006-2010 Free Software Foundation, Inc.
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.
7
dnl Written by Simon Josefsson, Bruno Haible.
9
AC_DEFUN([gl_UNISTD_H],
11
dnl Use AC_REQUIRE here, so that the default behavior below is expanded
12
dnl once only, before all statements that occur in other macros.
13
AC_REQUIRE([gl_UNISTD_H_DEFAULTS])
14
AC_REQUIRE([AC_C_INLINE])
16
gl_CHECK_NEXT_HEADERS([unistd.h])
18
AC_CHECK_HEADERS_ONCE([unistd.h])
19
if test $ac_cv_header_unistd_h = yes; then
24
AC_SUBST([HAVE_UNISTD_H])
26
dnl Check for declarations of anything we want to poison if the
27
dnl corresponding gnulib module is not in use.
28
gl_WARN_ON_USE_PREPARE([[#include <unistd.h>
29
/* Some systems declare various items in the wrong headers. */
34
# if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__
38
]], [chown dup2 dup3 environ euidaccess faccessat fchdir fchownat
39
fsync ftruncate getcwd getdomainname getdtablesize getgroups
40
gethostname getlogin getlogin_r getpagesize getusershell setusershell
41
endusershell lchown link linkat lseek pipe2 pread readlink readlinkat
42
rmdir sleep symlink symlinkat ttyname_r unlink unlinkat usleep])
45
AC_DEFUN([gl_UNISTD_MODULE_INDICATOR],
47
dnl Use AC_REQUIRE here, so that the default settings are expanded once only.
48
AC_REQUIRE([gl_UNISTD_H_DEFAULTS])
49
gl_MODULE_INDICATOR_SET_VARIABLE([$1])
50
dnl Define it also as a C macro, for the benefit of the unit tests.
51
gl_MODULE_INDICATOR_FOR_TESTS([$1])
54
AC_DEFUN([gl_UNISTD_H_DEFAULTS],
56
GNULIB_CHOWN=0; AC_SUBST([GNULIB_CHOWN])
57
GNULIB_CLOSE=0; AC_SUBST([GNULIB_CLOSE])
58
GNULIB_DUP2=0; AC_SUBST([GNULIB_DUP2])
59
GNULIB_DUP3=0; AC_SUBST([GNULIB_DUP3])
60
GNULIB_ENVIRON=0; AC_SUBST([GNULIB_ENVIRON])
61
GNULIB_EUIDACCESS=0; AC_SUBST([GNULIB_EUIDACCESS])
62
GNULIB_FACCESSAT=0; AC_SUBST([GNULIB_FACCESSAT])
63
GNULIB_FCHDIR=0; AC_SUBST([GNULIB_FCHDIR])
64
GNULIB_FCHOWNAT=0; AC_SUBST([GNULIB_FCHOWNAT])
65
GNULIB_FSYNC=0; AC_SUBST([GNULIB_FSYNC])
66
GNULIB_FTRUNCATE=0; AC_SUBST([GNULIB_FTRUNCATE])
67
GNULIB_GETCWD=0; AC_SUBST([GNULIB_GETCWD])
68
GNULIB_GETDOMAINNAME=0; AC_SUBST([GNULIB_GETDOMAINNAME])
69
GNULIB_GETDTABLESIZE=0; AC_SUBST([GNULIB_GETDTABLESIZE])
70
GNULIB_GETGROUPS=0; AC_SUBST([GNULIB_GETGROUPS])
71
GNULIB_GETHOSTNAME=0; AC_SUBST([GNULIB_GETHOSTNAME])
72
GNULIB_GETLOGIN=0; AC_SUBST([GNULIB_GETLOGIN])
73
GNULIB_GETLOGIN_R=0; AC_SUBST([GNULIB_GETLOGIN_R])
74
GNULIB_GETPAGESIZE=0; AC_SUBST([GNULIB_GETPAGESIZE])
75
GNULIB_GETUSERSHELL=0; AC_SUBST([GNULIB_GETUSERSHELL])
76
GNULIB_LCHOWN=0; AC_SUBST([GNULIB_LCHOWN])
77
GNULIB_LINK=0; AC_SUBST([GNULIB_LINK])
78
GNULIB_LINKAT=0; AC_SUBST([GNULIB_LINKAT])
79
GNULIB_LSEEK=0; AC_SUBST([GNULIB_LSEEK])
80
GNULIB_PIPE2=0; AC_SUBST([GNULIB_PIPE2])
81
GNULIB_PREAD=0; AC_SUBST([GNULIB_PREAD])
82
GNULIB_READLINK=0; AC_SUBST([GNULIB_READLINK])
83
GNULIB_READLINKAT=0; AC_SUBST([GNULIB_READLINKAT])
84
GNULIB_RMDIR=0; AC_SUBST([GNULIB_RMDIR])
85
GNULIB_SLEEP=0; AC_SUBST([GNULIB_SLEEP])
86
GNULIB_SYMLINK=0; AC_SUBST([GNULIB_SYMLINK])
87
GNULIB_SYMLINKAT=0; AC_SUBST([GNULIB_SYMLINKAT])
88
GNULIB_TTYNAME_R=0; AC_SUBST([GNULIB_TTYNAME_R])
89
GNULIB_UNISTD_H_GETOPT=0; AC_SUBST([GNULIB_UNISTD_H_GETOPT])
90
GNULIB_UNISTD_H_SIGPIPE=0; AC_SUBST([GNULIB_UNISTD_H_SIGPIPE])
91
GNULIB_UNLINK=0; AC_SUBST([GNULIB_UNLINK])
92
GNULIB_UNLINKAT=0; AC_SUBST([GNULIB_UNLINKAT])
93
GNULIB_USLEEP=0; AC_SUBST([GNULIB_USLEEP])
94
GNULIB_WRITE=0; AC_SUBST([GNULIB_WRITE])
95
dnl Assume proper GNU behavior unless another module says otherwise.
96
HAVE_CHOWN=1; AC_SUBST([HAVE_CHOWN])
97
HAVE_DUP2=1; AC_SUBST([HAVE_DUP2])
98
HAVE_DUP3=1; AC_SUBST([HAVE_DUP3])
99
HAVE_EUIDACCESS=1; AC_SUBST([HAVE_EUIDACCESS])
100
HAVE_FACCESSAT=1; AC_SUBST([HAVE_FACCESSAT])
101
HAVE_FCHDIR=1; AC_SUBST([HAVE_FCHDIR])
102
HAVE_FCHOWNAT=1; AC_SUBST([HAVE_FCHOWNAT])
103
HAVE_FSYNC=1; AC_SUBST([HAVE_FSYNC])
104
HAVE_FTRUNCATE=1; AC_SUBST([HAVE_FTRUNCATE])
105
HAVE_GETDOMAINNAME=1; AC_SUBST([HAVE_GETDOMAINNAME])
106
HAVE_GETDTABLESIZE=1; AC_SUBST([HAVE_GETDTABLESIZE])
107
HAVE_GETGROUPS=1; AC_SUBST([HAVE_GETGROUPS])
108
HAVE_GETHOSTNAME=1; AC_SUBST([HAVE_GETHOSTNAME])
109
HAVE_GETLOGIN=1; AC_SUBST([HAVE_GETLOGIN])
110
HAVE_GETPAGESIZE=1; AC_SUBST([HAVE_GETPAGESIZE])
111
HAVE_LCHOWN=1; AC_SUBST([HAVE_LCHOWN])
112
HAVE_LINK=1; AC_SUBST([HAVE_LINK])
113
HAVE_LINKAT=1; AC_SUBST([HAVE_LINKAT])
114
HAVE_PIPE2=1; AC_SUBST([HAVE_PIPE2])
115
HAVE_PREAD=1; AC_SUBST([HAVE_PREAD])
116
HAVE_READLINK=1; AC_SUBST([HAVE_READLINK])
117
HAVE_READLINKAT=1; AC_SUBST([HAVE_READLINKAT])
118
HAVE_SLEEP=1; AC_SUBST([HAVE_SLEEP])
119
HAVE_SYMLINK=1; AC_SUBST([HAVE_SYMLINK])
120
HAVE_SYMLINKAT=1; AC_SUBST([HAVE_SYMLINKAT])
121
HAVE_TTYNAME_R=1; AC_SUBST([HAVE_TTYNAME_R])
122
HAVE_UNLINKAT=1; AC_SUBST([HAVE_UNLINKAT])
123
HAVE_USLEEP=1; AC_SUBST([HAVE_USLEEP])
124
HAVE_DECL_ENVIRON=1; AC_SUBST([HAVE_DECL_ENVIRON])
125
HAVE_DECL_GETLOGIN_R=1; AC_SUBST([HAVE_DECL_GETLOGIN_R])
126
HAVE_DECL_GETPAGESIZE=1; AC_SUBST([HAVE_DECL_GETPAGESIZE])
127
HAVE_DECL_GETUSERSHELL=1; AC_SUBST([HAVE_DECL_GETUSERSHELL])
128
HAVE_OS_H=0; AC_SUBST([HAVE_OS_H])
129
HAVE_SYS_PARAM_H=0; AC_SUBST([HAVE_SYS_PARAM_H])
130
REPLACE_CHOWN=0; AC_SUBST([REPLACE_CHOWN])
131
REPLACE_CLOSE=0; AC_SUBST([REPLACE_CLOSE])
132
REPLACE_DUP=0; AC_SUBST([REPLACE_DUP])
133
REPLACE_DUP2=0; AC_SUBST([REPLACE_DUP2])
134
REPLACE_FCHOWNAT=0; AC_SUBST([REPLACE_FCHOWNAT])
135
REPLACE_GETCWD=0; AC_SUBST([REPLACE_GETCWD])
136
REPLACE_GETGROUPS=0; AC_SUBST([REPLACE_GETGROUPS])
137
REPLACE_GETPAGESIZE=0; AC_SUBST([REPLACE_GETPAGESIZE])
138
REPLACE_LCHOWN=0; AC_SUBST([REPLACE_LCHOWN])
139
REPLACE_LINK=0; AC_SUBST([REPLACE_LINK])
140
REPLACE_LINKAT=0; AC_SUBST([REPLACE_LINKAT])
141
REPLACE_LSEEK=0; AC_SUBST([REPLACE_LSEEK])
142
REPLACE_PREAD=0; AC_SUBST([REPLACE_PREAD])
143
REPLACE_READLINK=0; AC_SUBST([REPLACE_READLINK])
144
REPLACE_RMDIR=0; AC_SUBST([REPLACE_RMDIR])
145
REPLACE_SLEEP=0; AC_SUBST([REPLACE_SLEEP])
146
REPLACE_SYMLINK=0; AC_SUBST([REPLACE_SYMLINK])
147
REPLACE_TTYNAME_R=0; AC_SUBST([REPLACE_TTYNAME_R])
148
REPLACE_UNLINK=0; AC_SUBST([REPLACE_UNLINK])
149
REPLACE_UNLINKAT=0; AC_SUBST([REPLACE_UNLINKAT])
150
REPLACE_USLEEP=0; AC_SUBST([REPLACE_USLEEP])
151
REPLACE_WRITE=0; AC_SUBST([REPLACE_WRITE])
152
UNISTD_H_HAVE_WINSOCK2_H=0; AC_SUBST([UNISTD_H_HAVE_WINSOCK2_H])
153
UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS=0;
154
AC_SUBST([UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS])