mirror of
git://git.sv.gnu.org/coreutils.git
synced 2026-04-19 18:26:32 +02:00
* .x-sc_require_config_h: Add lib/at-func.c. [lib/] * at-func.c: New file, with the logic of all emulated at-functions. * openat-priv.h: Include <errno.h> and define ENOSYS, in support of the EXPECTED_ERRNO macro. * openat.c (fstatat, unlinkat, fchownat): Remove function definitions. Instead, define the appropriate symbols and include "at-func.c". * mkdirat.c (mkdirat): Likewise. * fchmodat.c (fchmodat): Likewise. (ENOSYS): Remove definition. * openat.c: Don't include <errno.h>, now that "openat-priv.h" does it. Don't include "unistd--.h" -- it wasn't ever used. [m4/] * openat.m4 (gl_FUNC_OPENAT): Add at-func.c via AC_LIBSOURCES.
40 lines
1.1 KiB
Plaintext
40 lines
1.1 KiB
Plaintext
#serial 9
|
|
# See if we need to use our replacement for Solaris' openat et al functions.
|
|
|
|
dnl Copyright (C) 2004, 2005, 2006 Free Software Foundation, Inc.
|
|
dnl This file is free software; the Free Software Foundation
|
|
dnl gives unlimited permission to copy and/or distribute it,
|
|
dnl with or without modifications, as long as this notice is preserved.
|
|
|
|
# Written by Jim Meyering.
|
|
|
|
AC_DEFUN([gl_FUNC_OPENAT],
|
|
[
|
|
AC_LIBSOURCES([openat.c, openat.h, openat-priv.h, openat-die.c, at-func.c])
|
|
AC_LIBSOURCES([intprops.h])
|
|
AC_LIBSOURCES([mkdirat.c])
|
|
AC_LIBSOURCES([fchmodat.c])
|
|
|
|
# No system provides these functions; compile them unconditionally.
|
|
AC_LIBOBJ([mkdirat])
|
|
AC_LIBOBJ([fchmodat])
|
|
|
|
AC_LIBOBJ([openat-die])
|
|
AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS])
|
|
AC_CHECK_FUNCS_ONCE([lchmod])
|
|
AC_CHECK_FUNCS_ONCE([fdopendir])
|
|
AC_REPLACE_FUNCS(openat)
|
|
case $ac_cv_func_openat in
|
|
yes) ;;
|
|
*)
|
|
AC_DEFINE([__OPENAT_PREFIX], [[rpl_]],
|
|
[Define to rpl_ if the openat replacement function should be used.])
|
|
gl_PREREQ_OPENAT;;
|
|
esac
|
|
])
|
|
|
|
AC_DEFUN([gl_PREREQ_OPENAT],
|
|
[
|
|
AC_REQUIRE([gl_SAVE_CWD])
|
|
])
|