diff --git a/include/uv-private/uv-unix.h b/include/uv-private/uv-unix.h index fed6d48f..0137c0c3 100644 --- a/include/uv-private/uv-unix.h +++ b/include/uv-private/uv-unix.h @@ -222,7 +222,7 @@ typedef void* uv_lib_t; ev_io read_watcher; \ uv_fs_event_cb cb; -#elif (defined(__MAC_OS_X_VERSION_MIN_REQUIRED) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 1060) \ +#elif defined(__APPLE__) \ || defined(__FreeBSD__) \ || defined(__OpenBSD__) \ || defined(__NetBSD__) diff --git a/src/unix/ev/ev_kqueue.c b/src/unix/ev/ev_kqueue.c index f03cb808..871e771b 100644 --- a/src/unix/ev/ev_kqueue.c +++ b/src/unix/ev/ev_kqueue.c @@ -43,6 +43,30 @@ #include #include +/* These are the same on OS X and the BSDs. */ +#ifndef NOTE_DELETE +# define NOTE_DELETE 0x01 +#endif +#ifndef NOTE_WRITE +# define NOTE_WRITE 0x02 +#endif +#ifndef NOTE_EXTEND +# define NOTE_EXTEND 0x04 +#endif +#ifndef NOTE_ATTRIB +# define NOTE_ATTRIB 0x08 +#endif +#ifndef NOTE_LINK +# define NOTE_LINK 0x10 +#endif +#ifndef NOTE_RENAME +# define NOTE_RENAME 0x20 +#endif +#ifndef NOTE_REVOKE +# define NOTE_REVOKE 0x40 +#endif + + extern void uv__kqueue_hack (EV_P_ int fflags, ev_io *w); diff --git a/src/unix/internal.h b/src/unix/internal.h index 01fd7f32..379b9962 100644 --- a/src/unix/internal.h +++ b/src/unix/internal.h @@ -57,7 +57,7 @@ #endif /* FIXME exact copy of the #ifdef guard in uv-unix.h */ -#if (defined(__MAC_OS_X_VERSION_MIN_REQUIRED) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 1060) \ +#if defined(__APPLE__) \ || defined(__FreeBSD__) \ || defined(__OpenBSD__) \ || defined(__NetBSD__) diff --git a/src/unix/kqueue.c b/src/unix/kqueue.c index 1b1a1b68..1af2fbe3 100644 --- a/src/unix/kqueue.c +++ b/src/unix/kqueue.c @@ -26,8 +26,6 @@ #include #include -#if HAVE_KQUEUE - #include #include #include @@ -127,28 +125,3 @@ void uv__fs_event_close(uv_fs_event_t* handle) { close(handle->fd); handle->fd = -1; } - -#else /* !HAVE_KQUEUE */ - -int uv_fs_event_init(uv_loop_t* loop, - uv_fs_event_t* handle, - const char* filename, - uv_fs_event_cb cb, - int flags) { - loop->counters.fs_event_init++; - uv__set_sys_error(loop, ENOSYS); - return -1; -} - - -void uv__fs_event_close(uv_fs_event_t* handle) { - UNREACHABLE(); -} - - -/* Called by libev, don't touch. */ -void uv__kqueue_hack(EV_P_ int fflags, ev_io *w) { - UNREACHABLE(); -} - -#endif /* HAVE_KQUEUE */