view modules/openat @ 17134:af797cb33018

faccessat, etc.: support AT_FDCWD-only use * lib/at-func.c: If GNULIB_SUPPORT_ONLY_AT_FDCWD, then support this function only if its first argument is AT_FDCWD. Emacs wants faccessat for AT_EACCESS but not for any first-arg values other than AT_FDCWD, so it doesn't want all the openat machinery with fchdir etc. * modules/faccessat, modules/fchmodat, modules/fchownat (Files): * modules/fstatat, modules/mkdirat, modules/openat (Files): * modules/unlinkat (Files): Remove lib/openat-priv.h, as at-internal supplies this file. Removing this file here allows us to support programs like Emacs that avoid at-internal.
author Paul Eggert <eggert@cs.ucla.edu>
date Sun, 14 Oct 2012 22:31:28 -0700
parents da3bb2df6a6a
children
line wrap: on
line source

Description:
openat() function: Open a file at a directory.

Files:
lib/openat.c
m4/openat.m4
m4/lstat.m4
m4/mode_t.m4

Depends-on:
fcntl-h
extensions
largefile
openat-h        [test $HAVE_OPENAT = 0 || test $REPLACE_OPENAT = 1]
stdbool         [test $HAVE_OPENAT = 0 || test $REPLACE_OPENAT = 1]
sys_stat        [test $HAVE_OPENAT = 0 || test $REPLACE_OPENAT = 1]
fstat           [test $REPLACE_OPENAT = 1]
at-internal     [test $HAVE_OPENAT = 0]
dosname         [test $HAVE_OPENAT = 0]
errno           [test $HAVE_OPENAT = 0]
fchdir          [test $HAVE_OPENAT = 0]
open            [test $HAVE_OPENAT = 0]
openat-die      [test $HAVE_OPENAT = 0]
save-cwd        [test $HAVE_OPENAT = 0]

configure.ac:
gl_FUNC_OPENAT
if test $HAVE_OPENAT = 0 || test $REPLACE_OPENAT = 1; then
  AC_LIBOBJ([openat])
  gl_PREREQ_OPENAT
fi
gl_MODULE_INDICATOR([openat]) dnl for lib/getcwd.c
gl_FCNTL_MODULE_INDICATOR([openat])

Makefile.am:

Include:
<fcntl.h>

License:
GPL

Maintainer:
Jim Meyering, Eric Blake