From 69ab328d9f387d029272fa4aee06ea72e7c9878e Mon Sep 17 00:00:00 2001 From: Ben Noordhuis Date: Thu, 27 Dec 2012 13:04:03 +0100 Subject: [PATCH] sunos: fix !defined(PORT_SOURCE_FILE) build --- include/uv-private/uv-sunos.h | 10 +++++++--- src/unix/internal.h | 5 ----- src/unix/sunos.c | 21 ++++++++++----------- 3 files changed, 17 insertions(+), 19 deletions(-) diff --git a/include/uv-private/uv-sunos.h b/include/uv-private/uv-sunos.h index 9d55e23f..04216642 100644 --- a/include/uv-private/uv-sunos.h +++ b/include/uv-private/uv-sunos.h @@ -25,12 +25,16 @@ #include #include -#if defined(PORT_SOURCE_FILE) - -# define UV_PLATFORM_LOOP_FIELDS \ +/* For the sake of convenience and reduced #ifdef-ery in src/unix/sunos.c, + * add the fs_event fields even when this version of SunOS doesn't support + * file watching. + */ +#define UV_PLATFORM_LOOP_FIELDS \ uv__io_t fs_event_watcher; \ int fs_fd; \ +#if defined(PORT_SOURCE_FILE) + # define UV_PLATFORM_FS_EVENT_FIELDS \ file_obj_t fo; \ int fd; \ diff --git a/src/unix/internal.h b/src/unix/internal.h index 786897de..d1768e0a 100644 --- a/src/unix/internal.h +++ b/src/unix/internal.h @@ -31,8 +31,6 @@ # define inline __inline #endif -#undef HAVE_PORTS_FS - #if __linux__ # include "linux/syscalls.h" #endif /* __linux__ */ @@ -40,9 +38,6 @@ #if defined(__sun) # include # include -# ifdef PORT_SOURCE_FILE -# define HAVE_PORTS_FS 1 -# endif # define futimes(fd, tv) futimesat(fd, (void*)0, tv) #endif /* __sun */ diff --git a/src/unix/sunos.c b/src/unix/sunos.c index 48b1fca1..ec00d453 100644 --- a/src/unix/sunos.c +++ b/src/unix/sunos.c @@ -39,15 +39,13 @@ #include #include -#if HAVE_PORTS_FS -# include -# include +#include +#include -# define PORT_FIRED 0x69 -# define PORT_UNUSED 0x0 -# define PORT_LOADED 0x99 -# define PORT_DELETED -1 -#endif +#define PORT_FIRED 0x69 +#define PORT_UNUSED 0x0 +#define PORT_LOADED 0x99 +#define PORT_DELETED -1 #if (!defined(_LP64)) && (_FILE_OFFSET_BITS - 0 == 64) #define PROCFS_FILE_OFFSET_BITS_HACK 1 @@ -272,7 +270,8 @@ void uv_loadavg(double avg[3]) { } -#if HAVE_PORTS_FS +#if defined(PORT_SOURCE_FILE) + static void uv__fs_event_rearm(uv_fs_event_t *handle) { if (handle->fd == -1) return; @@ -386,7 +385,7 @@ void uv__fs_event_close(uv_fs_event_t* handle) { uv__handle_stop(handle); } -#else /* !HAVE_PORTS_FS */ +#else /* !defined(PORT_SOURCE_FILE) */ int uv_fs_event_init(uv_loop_t* loop, uv_fs_event_t* handle, @@ -402,7 +401,7 @@ void uv__fs_event_close(uv_fs_event_t* handle) { UNREACHABLE(); } -#endif /* HAVE_PORTS_FS */ +#endif /* defined(PORT_SOURCE_FILE) */ char** uv_setup_args(int argc, char** argv) {