summaryrefslogtreecommitdiffstats
path: root/include/uv/unix.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/uv/unix.h')
-rw-r--r--include/uv/unix.h22
1 files changed, 19 insertions, 3 deletions
diff --git a/include/uv/unix.h b/include/uv/unix.h
index 6c93ee9..3a13163 100644
--- a/include/uv/unix.h
+++ b/include/uv/unix.h
@@ -49,6 +49,8 @@
# include "uv/linux.h"
#elif defined (__MVS__)
# include "uv/os390.h"
+#elif defined(__PASE__) /* __PASE__ and _AIX are both defined on IBM i */
+# include "uv/posix.h" /* IBM i needs uv/posix.h, not uv/aix.h */
#elif defined(_AIX)
# include "uv/aix.h"
#elif defined(__sun)
@@ -61,8 +63,7 @@
defined(__OpenBSD__) || \
defined(__NetBSD__)
# include "uv/bsd.h"
-#elif defined(__PASE__) || \
- defined(__CYGWIN__) || \
+#elif defined(__CYGWIN__) || \
defined(__MSYS__) || \
defined(__GNU__)
# include "uv/posix.h"
@@ -404,11 +405,25 @@ typedef struct {
#else
# define UV_FS_O_CREAT 0
#endif
-#if defined(O_DIRECT)
+
+#if defined(__linux__) && defined(__arm__)
+# define UV_FS_O_DIRECT 0x10000
+#elif defined(__linux__) && defined(__m68k__)
+# define UV_FS_O_DIRECT 0x10000
+#elif defined(__linux__) && defined(__mips__)
+# define UV_FS_O_DIRECT 0x08000
+#elif defined(__linux__) && defined(__powerpc__)
+# define UV_FS_O_DIRECT 0x20000
+#elif defined(__linux__) && defined(__s390x__)
+# define UV_FS_O_DIRECT 0x04000
+#elif defined(__linux__) && defined(__x86_64__)
+# define UV_FS_O_DIRECT 0x04000
+#elif defined(O_DIRECT)
# define UV_FS_O_DIRECT O_DIRECT
#else
# define UV_FS_O_DIRECT 0
#endif
+
#if defined(O_DIRECTORY)
# define UV_FS_O_DIRECTORY O_DIRECTORY
#else
@@ -481,6 +496,7 @@ typedef struct {
#endif
/* fs open() flags supported on other platforms: */
+#define UV_FS_O_FILEMAP 0
#define UV_FS_O_RANDOM 0
#define UV_FS_O_SHORT_LIVED 0
#define UV_FS_O_SEQUENTIAL 0