In configure.in, the following line: AC_CHECK_FUNC(inotify_init) should be replaced by AC_CHECK_FUNCS(inotify_init) which then actually defines the symbol HAVE_INOTIFY_INIT which is being used in smbd/notify_inotify.c Furthermore, I guess that *snip* #include <linux/inotify.h> #include <asm/unistd.h> *snip* in smbd/notify_inotify.c should be moved in the "#ifndef HAVE_INOTIFY_INIT" conditional to avoid incompatible redefinition (the inotify_* functions are defined non-static in glibc-2.7). Using <linux/inotify.h> with kernel-2.6.24 headers leads to such errors (in combination with a newer libcap-2.x): In file included from smbd/notify_inotify.c:33: /usr/include/linux/inotify.h:19: error: expected specifier-qualifier-list before ‘__s32’ smbd/notify_inotify.c: In function ‘filter_match’: smbd/notify_inotify.c:102: error: ‘struct inotify_event’ has no member named ‘mask’ [...]
... and add a line #undef HAVE_INOTIFY_INIT to include/config.h of course :)
Created attachment 3142 [details] 3.0.28-inotify_include.patch The patch which does all the mentioned things :-)
Pushed to 3.0 and 3.2, thanks. Volker