1# serial 10
2# See if we need to provide faccessat replacement.
3
4dnl Copyright (C) 2009-2021 Free Software Foundation, Inc.
5dnl This file is free software; the Free Software Foundation
6dnl gives unlimited permission to copy and/or distribute it,
7dnl with or without modifications, as long as this notice is preserved.
8
9# Written by Eric Blake.
10
11AC_DEFUN([gl_FUNC_FACCESSAT],
12[
13  AC_REQUIRE([gl_UNISTD_H_DEFAULTS])
14  AC_REQUIRE([gl_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK])
15
16  dnl Persuade glibc <unistd.h> to declare faccessat().
17  AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS])
18
19  AC_CHECK_FUNCS_ONCE([faccessat])
20  if test $ac_cv_func_faccessat = no; then
21    HAVE_FACCESSAT=0
22  else
23    case $gl_cv_func_lstat_dereferences_slashed_symlink in
24      *yes) ;;
25      *)    REPLACE_FACCESSAT=1 ;;
26    esac
27  fi
28])
29
30# Prerequisites of lib/faccessat.c.
31AC_DEFUN([gl_PREREQ_FACCESSAT],
32[
33  AC_CHECK_FUNCS([access])
34])
35