1- dnl openbsd in it's neverending brokenness requires stdint.h for intptr_t,
1+ dnl openbsd in its neverending brokenness requires stdint.h for intptr_t,
22dnl but that header isn't very portable...
33AC_CHECK_HEADERS ( [ stdint.h sys/syscall.h sys/prctl.h] )
44
@@ -142,108 +142,16 @@ int main (void)
142142] ) ] ,ac_cv_prctl_set_name=yes ,ac_cv_prctl_set_name=no ) ] )
143143test $ac_cv_prctl_set_name = yes && AC_DEFINE ( HAVE_PRCTL_SET_NAME , 1 , prctl ( PR_SET_NAME ) is available )
144144
145- dnl #############################################################################
146- dnl # these checks exist for the benefit of IO::AIO
147-
148- AC_CACHE_CHECK ( for set/getrlimit , ac_cv_rlimits , [ AC_LINK_IFELSE ( [ AC_LANG_SOURCE ( [ [
149- #include <sys/time.h>
150- #include <sys/resource.h>
151- int res;
152- int main (void)
153- {
154- struct rlimit srl;
155- srl.rlim_cur = srl.rlim_max = RLIM_INFINITY;
156- res = getrlimit (RLIMIT_NOFILE, &srl);
157- res = setrlimit (RLIMIT_NOFILE, &srl);
158- return 0;
159- }
160- ] ] ) ] ,ac_cv_rlimits=yes ,ac_cv_rlimits=no ) ] )
161- test $ac_cv_rlimits = yes && AC_DEFINE ( HAVE_RLIMITS , 1 , setrlimit/getrlimit is available )
162-
163- dnl at least uclibc defines _POSIX_ADVISORY_INFO without *any* of the required
164- dnl functionality actually being present. ugh.
165- AC_CACHE_CHECK ( for posix_madvise , ac_cv_posix_madvise , [ AC_LINK_IFELSE ( [ AC_LANG_SOURCE ( [
166- #include <sys/mman.h>
167- int main (void)
168- {
169- int res = posix_madvise ((void *)0, (size_t)0, POSIX_MADV_NORMAL);
170- int a = POSIX_MADV_SEQUENTIAL;
171- int b = POSIX_MADV_RANDOM;
172- int c = POSIX_MADV_WILLNEED;
173- int d = POSIX_MADV_DONTNEED;
174- return 0;
175- }
176- ] ) ] ,ac_cv_posix_madvise=yes ,ac_cv_posix_madvise=no ) ] )
177- test $ac_cv_posix_madvise = yes && AC_DEFINE ( HAVE_POSIX_MADVISE , 1 , posix_madvise ( 2 ) is available )
178-
179- AC_CACHE_CHECK ( for posix_fadvise , ac_cv_posix_fadvise , [ AC_LINK_IFELSE ( [ AC_LANG_SOURCE ( [
180- #define _XOPEN_SOURCE 600
181- #include <fcntl.h>
182- int main (void)
183- {
184- int res = posix_fadvise ((int)0, (off_t)0, (off_t)0, POSIX_FADV_NORMAL);
185- int a = POSIX_FADV_SEQUENTIAL;
186- int b = POSIX_FADV_NOREUSE;
187- int c = POSIX_FADV_RANDOM;
188- int d = POSIX_FADV_WILLNEED;
189- int e = POSIX_FADV_DONTNEED;
190- return 0;
191- }
192- ] ) ] ,ac_cv_posix_fadvise=yes ,ac_cv_posix_fadvise=no ) ] )
193- test $ac_cv_posix_fadvise = yes && AC_DEFINE ( HAVE_POSIX_FADVISE , 1 , posix_fadvise ( 2 ) is available )
194-
195- dnl lots of linux specifics
196- AC_CHECK_HEADERS ( [ linux/fs.h linux/fiemap.h] )
197-
198- AC_CACHE_CHECK ( [ for splice, vmsplice and tee] , ac_cv_linux_splice , [ AC_LINK_IFELSE ( [ AC_LANG_SOURCE ( [
199- #include <fcntl.h>
200- int main (void)
201- {
202- ssize_t res;
203- res = splice ((int)0, (loff_t)0, (int)0, (loff_t *)0, (size_t)0, SPLICE_F_MOVE | SPLICE_F_NONBLOCK | SPLICE_F_MORE);
204- res = tee ((int)0, (int)0, (size_t)0, SPLICE_F_NONBLOCK);
205- res = vmsplice ((int)0, (struct iovec *)0, 0, SPLICE_F_NONBLOCK | SPLICE_F_GIFT);
206- return 0;
207- }
208- ] ) ] ,ac_cv_linux_splice=yes ,ac_cv_linux_splice=no ) ] )
209- test $ac_cv_linux_splice = yes && AC_DEFINE ( HAVE_LINUX_SPLICE , 1 , splice/vmsplice/tee ( 2 ) are available )
210-
211- AC_CACHE_CHECK ( for pipe2 , ac_cv_pipe2 , [ AC_LINK_IFELSE ( [ AC_LANG_SOURCE ( [ [
212- #include <fcntl.h>
145+ AC_CACHE_CHECK ( for posix_close , ac_cv_posix_close , [ AC_LINK_IFELSE ( [ AC_LANG_SOURCE ( [ [
213146#include <unistd.h>
214147int res;
215148int main (void)
216149{
217- res = pipe2 (0, 0);
218- return 0;
219- }
220- ] ] ) ] ,ac_cv_pipe2=yes ,ac_cv_pipe2=no ) ] )
221- test $ac_cv_pipe2 = yes && AC_DEFINE ( HAVE_PIPE2 , 1 , pipe2 ( 2 ) is available )
222-
223- AC_CACHE_CHECK ( for eventfd , ac_cv_eventfd , [ AC_LINK_IFELSE ( [ AC_LANG_SOURCE ( [ [
224- #include <sys/eventfd.h>
225- int res;
226- int main (void)
227- {
228- res = eventfd (1, EFD_CLOEXEC | EFD_NONBLOCK);
229- return 0;
230- }
231- ] ] ) ] ,ac_cv_eventfd=yes ,ac_cv_eventfd=no ) ] )
232- test $ac_cv_eventfd = yes && AC_DEFINE ( HAVE_EVENTFD , 1 , eventfd ( 2 ) is available )
233-
234- AC_CACHE_CHECK ( for timerfd , ac_cv_timerfd , [ AC_LINK_IFELSE ( [ AC_LANG_SOURCE ( [ [
235- #include <sys/timerfd.h>
236- int res;
237- int main (void)
238- {
239- struct itimerspec its;
240- res = timerfd_create (CLOCK_REALTIME, TFD_CLOEXEC | TFD_NONBLOCK);
241- res = timerfd_settime (res, TFD_TIMER_ABSTIME /*| TFD_TIMER_CANCEL_ON_SET*/, &its, 0);
242- res = timerfd_gettime (res, &its);
150+ res = posix_close (0, 0); /* we do not need any flags */
243151 return 0;
244152}
245- ] ] ) ] ,ac_cv_timerfd =yes ,ac_cv_timerfd =no) ] )
246- test $ac_cv_timerfd = yes && AC_DEFINE ( HAVE_TIMERFD , 1 , timerfd_* ( 2 ) are available )
153+ ] ] ) ] ,ac_cv_posix_close =yes ,ac_cv_posix_close =no) ] )
154+ test $ac_cv_posix_close = yes && AC_DEFINE ( HAVE_POSIX_CLOSE , 1 , posix_close ( 2 ) is available )
247155
248156AC_CACHE_CHECK ( for renameat2 , ac_cv_renameat2 , [ AC_LINK_IFELSE ( [ AC_LANG_SOURCE ( [ [
249157#include <unistd.h>
@@ -258,28 +166,3 @@ int main (void)
258166] ] ) ] ,ac_cv_renameat2=yes ,ac_cv_renameat2=no ) ] )
259167test $ac_cv_renameat2 = yes && AC_DEFINE ( HAVE_RENAMEAT2 , 1 , renameat2 ( 2 ) is available )
260168
261- AC_CACHE_CHECK ( for copy_file_range , ac_cv_copy_file_range , [ AC_LINK_IFELSE ( [ AC_LANG_SOURCE ( [ [
262- #include <unistd.h>
263- #include <sys/syscall.h>
264- /*#include <linux/copy.h>*/
265- int res;
266- int main (void)
267- {
268- /*res = syscall (SYS_copy_file_range, 0, 0, 0, 0, 0, COPY_FR_REFLINK | COPY_FR_DEDUP | COPY_FR_COPY);*/
269- res = syscall (SYS_copy_file_range, 0, 0, 0, 0, 0, 0);
270- return 0;
271- }
272- ] ] ) ] ,ac_cv_copy_file_range=yes ,ac_cv_copy_file_range=no ) ] )
273- test $ac_cv_copy_file_range = yes && AC_DEFINE ( HAVE_COPY_FILE_RANGE , 1 , copy_file_range ( 2 ) is available )
274-
275- AC_CACHE_CHECK ( for posix_close , ac_cv_posix_close , [ AC_LINK_IFELSE ( [ AC_LANG_SOURCE ( [ [
276- #include <unistd.h>
277- int res;
278- int main (void)
279- {
280- res = posix_close (0, 0); /* we do not need any flags */
281- return 0;
282- }
283- ] ] ) ] ,ac_cv_posix_close=yes ,ac_cv_posix_close=no ) ] )
284- test $ac_cv_posix_close = yes && AC_DEFINE ( HAVE_POSIX_CLOSE , 1 , posix_close ( 2 ) is available )
285-
0 commit comments