summaryrefslogtreecommitdiff
path: root/m4/readlinkat.m4
diff options
context:
space:
mode:
authorPaul Eggert <eggert@cs.ucla.edu>2014-10-18 23:33:40 -0700
committerPaul Eggert <eggert@cs.ucla.edu>2014-10-18 23:33:40 -0700
commit821339c944eea52105777c5f52bdc3cf477b475c (patch)
tree373d674f6993de76acad4ac09eaf3fc457815bf1 /m4/readlinkat.m4
parent265331858f3cd63f3ab593461ca4f2931780ba5e (diff)
downloademacs-821339c944eea52105777c5f52bdc3cf477b475c.tar.gz
Merge from gnulib.
This incorporates: 2014-10-18 readlinkat: port to AIX 7.1 2014-10-07 fcntl: fix error reporting by dupfd * lib/fcntl.c, lib/readlinkat.c, lib/unistd.in.h, m4/readlinkat.m4: * m4/unistd_h.m4: Update from gnulib. * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
Diffstat (limited to 'm4/readlinkat.m4')
-rw-r--r--m4/readlinkat.m415
1 files changed, 14 insertions, 1 deletions
diff --git a/m4/readlinkat.m4 b/m4/readlinkat.m4
index 65c0689c114..f9ed9436af6 100644
--- a/m4/readlinkat.m4
+++ b/m4/readlinkat.m4
@@ -1,4 +1,4 @@
-# serial 3
+# serial 4
# See if we need to provide readlinkat replacement.
dnl Copyright (C) 2009-2014 Free Software Foundation, Inc.
@@ -15,5 +15,18 @@ AC_DEFUN([gl_FUNC_READLINKAT],
AC_CHECK_FUNCS_ONCE([readlinkat])
if test $ac_cv_func_readlinkat = no; then
HAVE_READLINKAT=0
+ else
+ AC_CACHE_CHECK([whether readlinkat signature is correct],
+ [gl_cv_decl_readlinkat_works],
+ [AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[#include <unistd.h>
+ /* Check whether original declaration has correct type. */
+ ssize_t readlinkat (int, char const *, char *, size_t);]])],
+ [gl_cv_decl_readlinkat_works=yes],
+ [gl_cv_decl_readlinkat_works=no])])
+ if test "$gl_cv_decl_readlink_works" != yes; then
+ REPLACE_READLINKAT=1
+ fi
fi
])