rely on sys/inotify.h for inotify
authorAdrian Bunk <bunk@stusta.de>
Mon, 9 Apr 2012 18:16:12 +0000 (21:16 +0300)
committerJeremy Allison <jra@samba.org>
Fri, 13 Apr 2012 19:15:00 +0000 (21:15 +0200)
sys/inotify.h was added to glibc 2.4 in 2006.

Signed-off-by: Jeremy Allison <jra@samba.org>
Autobuild-User: Jeremy Allison <jra@samba.org>
Autobuild-Date: Fri Apr 13 21:15:00 CEST 2012 on sn-devel-104

source3/configure.in
source3/smbd/notify_inotify.c
source3/wscript
source4/ntvfs/sysdep/inotify.c
source4/ntvfs/sysdep/wscript_configure

index 45b5474ff7f53b4b2cc21c1e6672336a33fe9e49..35bbe2873ccc9da02b5e73955047e1b20466bb3c 100644 (file)
@@ -2565,19 +2565,10 @@ if test x"$samba_cv_HAVE_KERNEL_CHANGE_NOTIFY" = x"yes"; then
     AC_DEFINE(HAVE_KERNEL_CHANGE_NOTIFY,1,[Whether kernel notifies changes])
 fi
 
-AC_CACHE_CHECK([for inotify support],samba_cv_HAVE_INOTIFY,[
-AC_CHECK_HEADERS(linux/inotify.h asm/unistd.h sys/inotify.h)
-AC_CHECK_FUNCS(inotify_init)
-AC_HAVE_DECL(__NR_inotify_init, [#include <asm/unistd.h>])
-],
-samba_cv_HAVE_INOTIFY=yes,
-samba_cv_HAVE_INOTIFY=no,
-samba_cv_HAVE_INOTIFY=cross)
+AC_CHECK_HEADER(sys/inotify.h)
 
-if test x"$ac_cv_func_inotify_init" = x"yes"; then
-    if test  x"$ac_cv_header_sys_inotify_h" = x"yes" -o x"$ac_cv_header_linux_inotify_h" = x"yes"; then
-        AC_DEFINE(HAVE_INOTIFY,1,[Whether kernel or sys has inotify support])
-    fi
+if test x"ac_cv_header_sys_inotify_h" = x"yes"; then
+    AC_DEFINE(HAVE_INOTIFY,1,[For inotify support])
 fi
 
 #################################################
index 20f709831a72aeb14059ea8bf273160724fe80ac..7f463a156fcf53a7e7fe245fd05399935016ca72 100644 (file)
 
 #ifdef HAVE_INOTIFY
 
-#if HAVE_SYS_INOTIFY_H
 #include <sys/inotify.h>
-#else
 
-#ifdef HAVE_ASM_TYPES_H
-#include <asm/types.h>
-#endif
-
-#ifndef HAVE_INOTIFY_INIT
-
-#include <linux/inotify.h>
-#include <asm/unistd.h>
-
-
-/*
-  glibc doesn't define these functions yet (as of March 2006)
-*/
-static int inotify_init(void)
-{
-       return syscall(__NR_inotify_init);
-}
-
-static int inotify_add_watch(int fd, const char *path, __u32 mask)
-{
-       return syscall(__NR_inotify_add_watch, fd, path, mask);
-}
-
-static int inotify_rm_watch(int fd, int wd)
-{
-       return syscall(__NR_inotify_rm_watch, fd, wd);
-}
-#else
-
-#include <sys/inotify.h>
-
-#endif
-#endif
-
-/* older glibc headers don't have these defines either */
+/* glibc < 2.5 headers don't have these defines */
 #ifndef IN_ONLYDIR
 #define IN_ONLYDIR 0x01000000
 #endif
index e0a4ea742da51330b9f7aa2e7cd22843e037b382..ef415d08fdf20c02787444ba42bbb5874ec631f5 100755 (executable)
@@ -115,11 +115,9 @@ long ret = splice(0,0,1,0,400,0);
         conf.CHECK_DECLS('splice', reverse=True, headers='fcntl.h')
 
     # Check for inotify support
-    conf.CHECK_HEADERS('linux/inotify.h asm/unistd.h sys/inotify.h')
-    conf.CHECK_FUNCS('inotify_init')
-    if "HAVE_INOTIFY_INIT" in conf.env:
-        if "HAVE_LINUX_INOTIFY_H" in conf.env or "HAVE_SYS_INOTIFY_H" in conf.env:
-            conf.DEFINE('HAVE_INOTIFY', 1)
+    conf.CHECK_HEADERS('sys/inotify.h')
+    if "HAVE_SYS_INOTIFY_H" in conf.env:
+        conf.DEFINE('HAVE_INOTIFY', 1)
 
     # Check for kernel change notify support
     conf.CHECK_CODE('''
@@ -255,7 +253,7 @@ getcwd _getcwd __getcwd getdents __getdents getdirentries
 getgrent getgrnam getgrouplist getgrset getmntent getpagesize
 getproplist get_proplist_entry getpwanam getpwent_r getrlimit gettext
 glob grantpt hstrerror initgroups innetgr
-inotify_init listea listxattr
+listea listxattr
 llseek _llseek __llseek _lseek __lseek
 _lstat __lstat lutimes
 __lxstat memalign mknod mlock mlockall munlock munlockall
@@ -1044,8 +1042,6 @@ ssize_t err = posix_fadvise(0,0,0x80000,POSIX_FADV_WILLNEED);
                         'SYSCONF%s' % v,
                         msg='Checking whether sysconf(%s) is available' % v)
 
-    conf.CHECK_DECLS('__NR_inotify_init', reverse=True, headers='asm/unistd.h')
-
     conf.CHECK_CODE('''
 #include <sys/syscall.h>
 #include <unistd.h>
index 28ea32e8a0004977e1dde0af3d6b47d8f6913af1..d30bee2c530abbc2132f9b4f8b94fc34e721db9d 100644 (file)
 #include "libcli/raw/smb.h"
 #include "param/param.h"
 
-#if HAVE_SYS_INOTIFY_H
 #include <sys/inotify.h>
-#else
-/* for older glibc varients - we can remove this eventually */
-#include <linux/inotify.h>
-#include <asm/unistd.h>
 
-#ifndef HAVE_INOTIFY_INIT
-/*
-  glibc doesn't define these functions yet (as of March 2006)
-*/
-static int inotify_init(void)
-{
-       return syscall(__NR_inotify_init);
-}
-
-static int inotify_add_watch(int fd, const char *path, __u32 mask)
-{
-       return syscall(__NR_inotify_add_watch, fd, path, mask);
-}
-
-static int inotify_rm_watch(int fd, int wd)
-{
-       return syscall(__NR_inotify_rm_watch, fd, wd);
-}
-#endif
-#endif
-
-
-/* older glibc headers don't have these defines either */
+/* glibc < 2.5 headers don't have these defines */
 #ifndef IN_ONLYDIR
 #define IN_ONLYDIR 0x01000000
 #endif
index f1e09ddd3d1fbc7726d716d345d10fe3d83a0d7d..aa63000499ecbde3a1e3384fcc3517657bb3d7fc 100644 (file)
@@ -1,16 +1,9 @@
 #!/usr/bin/env python
 
-conf.CHECK_HEADERS('linux/inotify.h asm/unistd.h sys/inotify.h', add_headers=False)
+conf.CHECK_HEADERS('sys/inotify.h', add_headers=False)
 
-conf.CHECK_FUNCS('inotify_init')
-
-conf.CHECK_VARIABLE('__NR_inotify_init')
 conf.CHECK_DECLS('F_SETLEASE', headers='linux/fcntl.h', reverse=True)
 conf.CHECK_DECLS('SA_SIGINFO', headers='signal.h', reverse=True)
 
-conf.CHECK_DECLS('__NR_inotify_init', reverse=True, headers='asm/unistd.h')
-
-if (conf.CONFIG_SET('HAVE___NR_INOTIFY_INIT') and
-    (conf.CONFIG_SET('HAVE_LINUX_INOTIFY_H') or
-     conf.CONFIG_SET('HAVE_SYS_INOTIFY_H'))):
+if (conf.CONFIG_SET('HAVE_SYS_INOTIFY_H')):
     conf.DEFINE('HAVE_LINUX_INOTIFY', 1)