diff options
-rw-r--r-- | CMakeLists.txt | 6 | ||||
-rw-r--r-- | Utilities/cmlibuv/CMakeLists.txt | 4 | ||||
-rw-r--r-- | Utilities/cmlibuv/src/unix/fs.c | 12 | ||||
-rw-r--r-- | Utilities/cmlibuv/src/unix/sunos.c | 4 |
4 files changed, 19 insertions, 7 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index e613224..472c6ab 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -509,12 +509,6 @@ int main(void) { return 0; } elseif(CMAKE_SYSTEM_NAME STREQUAL "HP-UX") # Disable until it can be ported. set(CMAKE_USE_LIBUV 0) - elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "sparc") - # Disable until it can be ported. - set(CMAKE_USE_LIBUV 0) - elseif(CMAKE_SYSTEM STREQUAL "SunOS-5.10") - # Disable until it can be ported. - set(CMAKE_USE_LIBUV 0) endif() endif() if(CMAKE_USE_LIBUV) diff --git a/Utilities/cmlibuv/CMakeLists.txt b/Utilities/cmlibuv/CMakeLists.txt index a8e25ba..6632a1e 100644 --- a/Utilities/cmlibuv/CMakeLists.txt +++ b/Utilities/cmlibuv/CMakeLists.txt @@ -212,6 +212,7 @@ if(CMAKE_SYSTEM_NAME STREQUAL "SunOS") nsl sendfile socket + rt ) list(APPEND uv_headers include/uv-sunos.h @@ -223,6 +224,9 @@ if(CMAKE_SYSTEM_NAME STREQUAL "SunOS") list(APPEND uv_defines _XOPEN_SOURCE=500 ) + if(CMAKE_C_STANDARD) + set(CMAKE_C_STANDARD 90) + endif() else() list(APPEND uv_defines _XOPEN_SOURCE=600 diff --git a/Utilities/cmlibuv/src/unix/fs.c b/Utilities/cmlibuv/src/unix/fs.c index f9513ea..8a4ba7a 100644 --- a/Utilities/cmlibuv/src/unix/fs.c +++ b/Utilities/cmlibuv/src/unix/fs.c @@ -244,9 +244,19 @@ skip: #endif } +#if defined(__sun) && _XOPEN_SOURCE < 600 +static char* uv__mkdtemp(char *template) +{ + if (!mktemp(template) || mkdir(template, 0700)) + return NULL; + return template; +} +#else +#define uv__mkdtemp mkdtemp +#endif static ssize_t uv__fs_mkdtemp(uv_fs_t* req) { - return mkdtemp((char*) req->path) ? 0 : -1; + return uv__mkdtemp((char*) req->path) ? 0 : -1; } diff --git a/Utilities/cmlibuv/src/unix/sunos.c b/Utilities/cmlibuv/src/unix/sunos.c index a43f7f1..14c58af 100644 --- a/Utilities/cmlibuv/src/unix/sunos.c +++ b/Utilities/cmlibuv/src/unix/sunos.c @@ -28,6 +28,10 @@ #include <assert.h> #include <errno.h> +#if !defined(SUNOS_NO_IFADDRS) && _XOPEN_SOURCE < 600 +#define SUNOS_NO_IFADDRS +#endif + #ifndef SUNOS_NO_IFADDRS # include <ifaddrs.h> #endif |