VirtualBox

source: kBuild/vendor/grep/2.12/m4/fchdir.m4@ 3627

Last change on this file since 3627 was 2595, checked in by bird, 13 years ago

gnu grep version 2.12 (grep-2.12.tar.xz, md5sum=8d2f0346d08b13c18afb81f0e8aa1e2f)

File size: 1.7 KB
Line 
1# fchdir.m4 serial 20
2dnl Copyright (C) 2006-2012 Free Software Foundation, Inc.
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_FUNC_FCHDIR],
8[
9 AC_REQUIRE([gl_UNISTD_H_DEFAULTS])
10 AC_REQUIRE([gl_DIRENT_H_DEFAULTS])
11
12 AC_CHECK_DECLS_ONCE([fchdir])
13 if test $ac_cv_have_decl_fchdir = no; then
14 HAVE_DECL_FCHDIR=0
15 fi
16
17 AC_REQUIRE([gl_TEST_FCHDIR])
18 if test $HAVE_FCHDIR = 0; then
19 AC_LIBOBJ([fchdir])
20 gl_PREREQ_FCHDIR
21 AC_DEFINE([REPLACE_FCHDIR], [1],
22 [Define to 1 if gnulib's fchdir() replacement is used.])
23 dnl We must also replace anything that can manipulate a directory fd,
24 dnl to keep our bookkeeping up-to-date. We don't have to replace
25 dnl fstatat, since no platform has fstatat but lacks fchdir.
26 AC_CACHE_CHECK([whether open can visit directories],
27 [gl_cv_func_open_directory_works],
28 [AC_RUN_IFELSE([AC_LANG_PROGRAM([[#include <fcntl.h>
29]], [return open(".", O_RDONLY) < 0;])],
30 [gl_cv_func_open_directory_works=yes],
31 [gl_cv_func_open_directory_works=no],
32 [gl_cv_func_open_directory_works="guessing no"])])
33 if test "$gl_cv_func_open_directory_works" != yes; then
34 AC_DEFINE([REPLACE_OPEN_DIRECTORY], [1], [Define to 1 if open() should
35work around the inability to open a directory.])
36 fi
37 fi
38])
39
40# Determine whether to use the overrides in lib/fchdir.c.
41AC_DEFUN([gl_TEST_FCHDIR],
42[
43 AC_REQUIRE([gl_UNISTD_H_DEFAULTS])
44 AC_CHECK_FUNCS_ONCE([fchdir])
45 if test $ac_cv_func_fchdir = no; then
46 HAVE_FCHDIR=0
47 fi
48])
49
50# Prerequisites of lib/fchdir.c.
51AC_DEFUN([gl_PREREQ_FCHDIR], [:])
Note: See TracBrowser for help on using the repository browser.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette