Linux does not have the revoke(2) syscall, so libkqueue does not define NOTE_REVOKE and will probably never support it. The following patch allows libdispatch to conditionally support NOTE_REVOKE. - Mark Index: configure.ac =================================================================== --- configure.ac (revision 162) +++ configure.ac (working copy) @@ -185,7 +185,7 @@ # AC_CHECK_DECLS([CLOCK_UPTIME, CLOCK_MONOTONIC, CLOCK_REALTIME], [], [], [[#include <time.h>]]) -AC_CHECK_DECLS([EVFILT_LIO, EVFILT_SESSION, NOTE_NONE, NOTE_REAP, NOTE_SIGNAL], [], [], +AC_CHECK_DECLS([EVFILT_LIO, EVFILT_SESSION, NOTE_NONE, NOTE_REAP, NOTE_REVOKE, NOTE_SIGNAL], [], [], [[#include <sys/event.h>]]) AC_CHECK_DECLS([FD_COPY], [], [], [[#include <sys/select.h>]]) AC_CHECK_DECLS([SIGEMT], [], [], [[#include <signal.h>]]) Index: src/source_kevent.c =================================================================== --- src/source_kevent.c (revision 162) +++ src/source_kevent.c (working copy) @@ -693,7 +693,10 @@ const struct dispatch_source_type_s _dispatch_source_type_vnode = { .opaque = (void *)&_dispatch_source_type_vnode_ke, .mask = NOTE_DELETE|NOTE_WRITE|NOTE_EXTEND|NOTE_ATTRIB|NOTE_LINK| - NOTE_RENAME|NOTE_REVOKE + NOTE_RENAME +#if HAVE_DECL_NOTE_REVOKE + |NOTE_REVOKE +#endif #if HAVE_DECL_NOTE_NONE |NOTE_NONE #endif
On 16 Nov 2009, at 00:57, Mark Heily wrote:
Linux does not have the revoke(2) syscall, so libkqueue does not define NOTE_REVOKE and will probably never support it. The following patch allows libdispatch to conditionally support NOTE_REVOKE.
Merged as r165, thanks! Robert
participants (2)
-
Mark Heily
-
Robert N. M. Watson