summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2012-07-03 13:34:21 -0700
committerJeremy Allison <jra@samba.org>2012-07-04 02:37:59 +0200
commit6449022d3e05726879f9e268464ae89ce119103e (patch)
tree33c5f7e809de7c73d91febe32bf6eea60e3abb13
parent90881da68509ad673c1e921831ef4f36cabb9ea8 (diff)
downloadsamba-6449022d3e05726879f9e268464ae89ce119103e.tar.gz
samba-6449022d3e05726879f9e268464ae89ce119103e.tar.bz2
samba-6449022d3e05726879f9e268464ae89ce119103e.zip
Add waf/configure tests for openat.
Autobuild-User(master): Jeremy Allison <jra@samba.org> Autobuild-Date(master): Wed Jul 4 02:37:59 CEST 2012 on sn-devel-104
-rw-r--r--source3/configure.in18
-rwxr-xr-xsource3/wscript5
2 files changed, 23 insertions, 0 deletions
diff --git a/source3/configure.in b/source3/configure.in
index abb4de6673..150f1896da 100644
--- a/source3/configure.in
+++ b/source3/configure.in
@@ -5792,6 +5792,24 @@ if test x"$samba_cv_HAVE_POSIX_FADVISE" = x"yes"; then
fi
############################################
+# See if we have the openat syscall.
+
+AC_CACHE_CHECK([for openat],
+ samba_cv_HAVE_OPENAT,[
+ AC_TRY_LINK([
+#if defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+#include <fcntl.h>],
+ [int fd = openat(AT_FDCWD, ".", O_RDONLY);],
+ samba_cv_HAVE_OPENAT=yes,
+ samba_cv_HAVE_OPENAT=no)])
+
+if test x"$samba_cv_HAVE_OPENAT" = x"yes"; then
+ AC_DEFINE(HAVE_OPENAT,1, [Whether openat is available])
+fi
+
+############################################
# See if we have the Linux splice syscall.
case "$host_os" in
diff --git a/source3/wscript b/source3/wscript
index 5fcf86ea18..12529e5e69 100755
--- a/source3/wscript
+++ b/source3/wscript
@@ -353,6 +353,11 @@ return acl_get_perm_np(permset_d, perm);
headers='unistd.h fcntl.h')
conf.CHECK_DECLS('readahead', headers='fcntl.h', always=True)
+ conf.CHECK_CODE('int fd = openat(AT_FDCWD, ".", O_RDONLY);',
+ 'HAVE_OPENAT',
+ msg='Checking for openat',
+ headers='fcntl.h')
+
if Options.options.with_aio_support:
conf.CHECK_FUNCS_IN('aio_read', 'aio')
conf.CHECK_FUNCS_IN('aio_read', 'rt')