1# serial 46 2# See if we need to use our replacement for Solaris' openat et al functions. 3 4dnl Copyright (C) 2004-2020 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 Jim Meyering. 10 11AC_DEFUN([gl_FUNC_OPENAT], 12[ 13 AC_REQUIRE([gl_FCNTL_H_DEFAULTS]) 14 AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS]) 15 AC_CHECK_FUNCS_ONCE([openat]) 16 AC_REQUIRE([gl_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK]) 17 AC_REQUIRE([gl_PREPROC_O_CLOEXEC]) 18 case $ac_cv_func_openat+$gl_cv_func_lstat_dereferences_slashed_symlink+$gl_cv_macro_O_CLOEXEC in 19 yes+*yes+yes) 20 ;; 21 yes+*) 22 # Solaris 10 lacks O_CLOEXEC. 23 # Solaris 9 has *at functions, but uniformly mishandles trailing 24 # slash in all of them. 25 REPLACE_OPENAT=1 26 ;; 27 *) 28 HAVE_OPENAT=0 29 ;; 30 esac 31]) 32 33# Prerequisites of lib/openat.c. 34AC_DEFUN([gl_PREREQ_OPENAT], 35[ 36 AC_REQUIRE([gl_PROMOTED_TYPE_MODE_T]) 37 : 38]) 39