1: # unistd_h.m4 serial 74
2: dnl Copyright (C) 2006-2019 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.
6:
7: dnl Written by Simon Josefsson, Bruno Haible.
8:
9: AC_DEFUN([gl_UNISTD_H],
10: [
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:
15: gl_CHECK_NEXT_HEADERS([unistd.h])
16: if test $ac_cv_header_unistd_h = yes; then
17: HAVE_UNISTD_H=1
18: else
19: HAVE_UNISTD_H=0
20: fi
21: AC_SUBST([HAVE_UNISTD_H])
22:
23: dnl Ensure the type pid_t gets defined.
24: AC_REQUIRE([AC_TYPE_PID_T])
25:
26: dnl Determine WINDOWS_64_BIT_OFF_T.
27: AC_REQUIRE([gl_TYPE_OFF_T])
28:
29: dnl Check for declarations of anything we want to poison if the
30: dnl corresponding gnulib module is not in use.
31: gl_WARN_ON_USE_PREPARE([[
32: #if HAVE_UNISTD_H
33: # include <unistd.h>
34: #endif
35: /* Some systems declare various items in the wrong headers. */
36: #if !(defined __GLIBC__ && !defined __UCLIBC__)
37: # include <fcntl.h>
38: # include <stdio.h>
39: # include <stdlib.h>
40: # if defined _WIN32 && ! defined __CYGWIN__
41: # include <io.h>
42: # endif
43: #endif
44: ]], [chdir chown dup dup2 dup3 environ euidaccess faccessat fchdir fchownat
45: fdatasync fsync ftruncate getcwd getdomainname getdtablesize getgroups
46: gethostname getlogin getlogin_r getpagesize getpass
47: getusershell setusershell endusershell
48: group_member isatty lchown link linkat lseek pipe pipe2 pread pwrite
49: readlink readlinkat rmdir sethostname sleep symlink symlinkat
50: truncate ttyname_r unlink unlinkat usleep])
51: ])
52:
53: AC_DEFUN([gl_UNISTD_MODULE_INDICATOR],
54: [
55: dnl Use AC_REQUIRE here, so that the default settings are expanded once only.
56: AC_REQUIRE([gl_UNISTD_H_DEFAULTS])
57: gl_MODULE_INDICATOR_SET_VARIABLE([$1])
58: dnl Define it also as a C macro, for the benefit of the unit tests.
59: gl_MODULE_INDICATOR_FOR_TESTS([$1])
60: ])
61:
62: AC_DEFUN([gl_UNISTD_H_DEFAULTS],
63: [
64: GNULIB_CHDIR=0; AC_SUBST([GNULIB_CHDIR])
65: GNULIB_CHOWN=0; AC_SUBST([GNULIB_CHOWN])
66: GNULIB_CLOSE=0; AC_SUBST([GNULIB_CLOSE])
67: GNULIB_DUP=0; AC_SUBST([GNULIB_DUP])
68: GNULIB_DUP2=0; AC_SUBST([GNULIB_DUP2])
69: GNULIB_DUP3=0; AC_SUBST([GNULIB_DUP3])
70: GNULIB_ENVIRON=0; AC_SUBST([GNULIB_ENVIRON])
71: GNULIB_EUIDACCESS=0; AC_SUBST([GNULIB_EUIDACCESS])
72: GNULIB_FACCESSAT=0; AC_SUBST([GNULIB_FACCESSAT])
73: GNULIB_FCHDIR=0; AC_SUBST([GNULIB_FCHDIR])
74: GNULIB_FCHOWNAT=0; AC_SUBST([GNULIB_FCHOWNAT])
75: GNULIB_FDATASYNC=0; AC_SUBST([GNULIB_FDATASYNC])
76: GNULIB_FSYNC=0; AC_SUBST([GNULIB_FSYNC])
77: GNULIB_FTRUNCATE=0; AC_SUBST([GNULIB_FTRUNCATE])
78: GNULIB_GETCWD=0; AC_SUBST([GNULIB_GETCWD])
79: GNULIB_GETDOMAINNAME=0; AC_SUBST([GNULIB_GETDOMAINNAME])
80: GNULIB_GETDTABLESIZE=0; AC_SUBST([GNULIB_GETDTABLESIZE])
81: GNULIB_GETGROUPS=0; AC_SUBST([GNULIB_GETGROUPS])
82: GNULIB_GETHOSTNAME=0; AC_SUBST([GNULIB_GETHOSTNAME])
83: GNULIB_GETLOGIN=0; AC_SUBST([GNULIB_GETLOGIN])
84: GNULIB_GETLOGIN_R=0; AC_SUBST([GNULIB_GETLOGIN_R])
85: GNULIB_GETPAGESIZE=0; AC_SUBST([GNULIB_GETPAGESIZE])
86: GNULIB_GETPASS=0; AC_SUBST([GNULIB_GETPASS])
87: GNULIB_GETUSERSHELL=0; AC_SUBST([GNULIB_GETUSERSHELL])
88: GNULIB_GROUP_MEMBER=0; AC_SUBST([GNULIB_GROUP_MEMBER])
89: GNULIB_ISATTY=0; AC_SUBST([GNULIB_ISATTY])
90: GNULIB_LCHOWN=0; AC_SUBST([GNULIB_LCHOWN])
91: GNULIB_LINK=0; AC_SUBST([GNULIB_LINK])
92: GNULIB_LINKAT=0; AC_SUBST([GNULIB_LINKAT])
93: GNULIB_LSEEK=0; AC_SUBST([GNULIB_LSEEK])
94: GNULIB_PIPE=0; AC_SUBST([GNULIB_PIPE])
95: GNULIB_PIPE2=0; AC_SUBST([GNULIB_PIPE2])
96: GNULIB_PREAD=0; AC_SUBST([GNULIB_PREAD])
97: GNULIB_PWRITE=0; AC_SUBST([GNULIB_PWRITE])
98: GNULIB_READ=0; AC_SUBST([GNULIB_READ])
99: GNULIB_READLINK=0; AC_SUBST([GNULIB_READLINK])
100: GNULIB_READLINKAT=0; AC_SUBST([GNULIB_READLINKAT])
101: GNULIB_RMDIR=0; AC_SUBST([GNULIB_RMDIR])
102: GNULIB_SETHOSTNAME=0; AC_SUBST([GNULIB_SETHOSTNAME])
103: GNULIB_SLEEP=0; AC_SUBST([GNULIB_SLEEP])
104: GNULIB_SYMLINK=0; AC_SUBST([GNULIB_SYMLINK])
105: GNULIB_SYMLINKAT=0; AC_SUBST([GNULIB_SYMLINKAT])
106: GNULIB_TRUNCATE=0; AC_SUBST([GNULIB_TRUNCATE])
107: GNULIB_TTYNAME_R=0; AC_SUBST([GNULIB_TTYNAME_R])
108: GNULIB_UNISTD_H_NONBLOCKING=0; AC_SUBST([GNULIB_UNISTD_H_NONBLOCKING])
109: GNULIB_UNISTD_H_SIGPIPE=0; AC_SUBST([GNULIB_UNISTD_H_SIGPIPE])
110: GNULIB_UNLINK=0; AC_SUBST([GNULIB_UNLINK])
111: GNULIB_UNLINKAT=0; AC_SUBST([GNULIB_UNLINKAT])
112: GNULIB_USLEEP=0; AC_SUBST([GNULIB_USLEEP])
113: GNULIB_WRITE=0; AC_SUBST([GNULIB_WRITE])
114: dnl Assume proper GNU behavior unless another module says otherwise.
115: HAVE_CHOWN=1; AC_SUBST([HAVE_CHOWN])
116: HAVE_DUP2=1; AC_SUBST([HAVE_DUP2])
117: HAVE_DUP3=1; AC_SUBST([HAVE_DUP3])
118: HAVE_EUIDACCESS=1; AC_SUBST([HAVE_EUIDACCESS])
119: HAVE_FACCESSAT=1; AC_SUBST([HAVE_FACCESSAT])
120: HAVE_FCHDIR=1; AC_SUBST([HAVE_FCHDIR])
121: HAVE_FCHOWNAT=1; AC_SUBST([HAVE_FCHOWNAT])
122: HAVE_FDATASYNC=1; AC_SUBST([HAVE_FDATASYNC])
123: HAVE_FSYNC=1; AC_SUBST([HAVE_FSYNC])
124: HAVE_FTRUNCATE=1; AC_SUBST([HAVE_FTRUNCATE])
125: HAVE_GETDTABLESIZE=1; AC_SUBST([HAVE_GETDTABLESIZE])
126: HAVE_GETGROUPS=1; AC_SUBST([HAVE_GETGROUPS])
127: HAVE_GETHOSTNAME=1; AC_SUBST([HAVE_GETHOSTNAME])
128: HAVE_GETLOGIN=1; AC_SUBST([HAVE_GETLOGIN])
129: HAVE_GETPAGESIZE=1; AC_SUBST([HAVE_GETPAGESIZE])
130: HAVE_GETPASS=1; AC_SUBST([HAVE_GETPASS])
131: HAVE_GROUP_MEMBER=1; AC_SUBST([HAVE_GROUP_MEMBER])
132: HAVE_LCHOWN=1; AC_SUBST([HAVE_LCHOWN])
133: HAVE_LINK=1; AC_SUBST([HAVE_LINK])
134: HAVE_LINKAT=1; AC_SUBST([HAVE_LINKAT])
135: HAVE_PIPE=1; AC_SUBST([HAVE_PIPE])
136: HAVE_PIPE2=1; AC_SUBST([HAVE_PIPE2])
137: HAVE_PREAD=1; AC_SUBST([HAVE_PREAD])
138: HAVE_PWRITE=1; AC_SUBST([HAVE_PWRITE])
139: HAVE_READLINK=1; AC_SUBST([HAVE_READLINK])
140: HAVE_READLINKAT=1; AC_SUBST([HAVE_READLINKAT])
141: HAVE_SETHOSTNAME=1; AC_SUBST([HAVE_SETHOSTNAME])
142: HAVE_SLEEP=1; AC_SUBST([HAVE_SLEEP])
143: HAVE_SYMLINK=1; AC_SUBST([HAVE_SYMLINK])
144: HAVE_SYMLINKAT=1; AC_SUBST([HAVE_SYMLINKAT])
145: HAVE_UNLINKAT=1; AC_SUBST([HAVE_UNLINKAT])
146: HAVE_USLEEP=1; AC_SUBST([HAVE_USLEEP])
147: HAVE_DECL_ENVIRON=1; AC_SUBST([HAVE_DECL_ENVIRON])
148: HAVE_DECL_FCHDIR=1; AC_SUBST([HAVE_DECL_FCHDIR])
149: HAVE_DECL_FDATASYNC=1; AC_SUBST([HAVE_DECL_FDATASYNC])
150: HAVE_DECL_GETDOMAINNAME=1; AC_SUBST([HAVE_DECL_GETDOMAINNAME])
151: HAVE_DECL_GETLOGIN=1; AC_SUBST([HAVE_DECL_GETLOGIN])
152: HAVE_DECL_GETLOGIN_R=1; AC_SUBST([HAVE_DECL_GETLOGIN_R])
153: HAVE_DECL_GETPAGESIZE=1; AC_SUBST([HAVE_DECL_GETPAGESIZE])
154: HAVE_DECL_GETUSERSHELL=1; AC_SUBST([HAVE_DECL_GETUSERSHELL])
155: HAVE_DECL_SETHOSTNAME=1; AC_SUBST([HAVE_DECL_SETHOSTNAME])
156: HAVE_DECL_TRUNCATE=1; AC_SUBST([HAVE_DECL_TRUNCATE])
157: HAVE_DECL_TTYNAME_R=1; AC_SUBST([HAVE_DECL_TTYNAME_R])
158: HAVE_OS_H=0; AC_SUBST([HAVE_OS_H])
159: HAVE_SYS_PARAM_H=0; AC_SUBST([HAVE_SYS_PARAM_H])
160: REPLACE_CHOWN=0; AC_SUBST([REPLACE_CHOWN])
161: REPLACE_CLOSE=0; AC_SUBST([REPLACE_CLOSE])
162: REPLACE_DUP=0; AC_SUBST([REPLACE_DUP])
163: REPLACE_DUP2=0; AC_SUBST([REPLACE_DUP2])
164: REPLACE_FACCESSAT=0; AC_SUBST([REPLACE_FACCESSAT])
165: REPLACE_FCHOWNAT=0; AC_SUBST([REPLACE_FCHOWNAT])
166: REPLACE_FTRUNCATE=0; AC_SUBST([REPLACE_FTRUNCATE])
167: REPLACE_GETCWD=0; AC_SUBST([REPLACE_GETCWD])
168: REPLACE_GETDOMAINNAME=0; AC_SUBST([REPLACE_GETDOMAINNAME])
169: REPLACE_GETDTABLESIZE=0; AC_SUBST([REPLACE_GETDTABLESIZE])
170: REPLACE_GETLOGIN_R=0; AC_SUBST([REPLACE_GETLOGIN_R])
171: REPLACE_GETGROUPS=0; AC_SUBST([REPLACE_GETGROUPS])
172: REPLACE_GETPAGESIZE=0; AC_SUBST([REPLACE_GETPAGESIZE])
173: REPLACE_GETPASS=0; AC_SUBST([REPLACE_GETPASS])
174: REPLACE_ISATTY=0; AC_SUBST([REPLACE_ISATTY])
175: REPLACE_LCHOWN=0; AC_SUBST([REPLACE_LCHOWN])
176: REPLACE_LINK=0; AC_SUBST([REPLACE_LINK])
177: REPLACE_LINKAT=0; AC_SUBST([REPLACE_LINKAT])
178: REPLACE_LSEEK=0; AC_SUBST([REPLACE_LSEEK])
179: REPLACE_PREAD=0; AC_SUBST([REPLACE_PREAD])
180: REPLACE_PWRITE=0; AC_SUBST([REPLACE_PWRITE])
181: REPLACE_READ=0; AC_SUBST([REPLACE_READ])
182: REPLACE_READLINK=0; AC_SUBST([REPLACE_READLINK])
183: REPLACE_READLINKAT=0; AC_SUBST([REPLACE_READLINKAT])
184: REPLACE_RMDIR=0; AC_SUBST([REPLACE_RMDIR])
185: REPLACE_SLEEP=0; AC_SUBST([REPLACE_SLEEP])
186: REPLACE_SYMLINK=0; AC_SUBST([REPLACE_SYMLINK])
187: REPLACE_SYMLINKAT=0; AC_SUBST([REPLACE_SYMLINKAT])
188: REPLACE_TRUNCATE=0; AC_SUBST([REPLACE_TRUNCATE])
189: REPLACE_TTYNAME_R=0; AC_SUBST([REPLACE_TTYNAME_R])
190: REPLACE_UNLINK=0; AC_SUBST([REPLACE_UNLINK])
191: REPLACE_UNLINKAT=0; AC_SUBST([REPLACE_UNLINKAT])
192: REPLACE_USLEEP=0; AC_SUBST([REPLACE_USLEEP])
193: REPLACE_WRITE=0; AC_SUBST([REPLACE_WRITE])
194: UNISTD_H_HAVE_WINSOCK2_H=0; AC_SUBST([UNISTD_H_HAVE_WINSOCK2_H])
195: UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS=0;
196: AC_SUBST([UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS])
197: ])
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>