summaryrefslogtreecommitdiff
path: root/ports/sysdeps
diff options
context:
space:
mode:
Diffstat (limited to 'ports/sysdeps')
-rw-r--r--ports/sysdeps/hppa/nptl/tls.h2
-rw-r--r--ports/sysdeps/unix/sysv/linux/arm/bits/fcntl.h14
-rw-r--r--ports/sysdeps/unix/sysv/linux/arm/kernel-features.h4
-rw-r--r--ports/sysdeps/unix/sysv/linux/hppa/bits/fcntl.h9
-rw-r--r--ports/sysdeps/unix/sysv/linux/hppa/nptl/sysdep-cancel.h8
-rw-r--r--ports/sysdeps/unix/sysv/linux/mips/bits/fcntl.h14
6 files changed, 30 insertions, 21 deletions
diff --git a/ports/sysdeps/hppa/nptl/tls.h b/ports/sysdeps/hppa/nptl/tls.h
index d2d725e3b..2810d713f 100644
--- a/ports/sysdeps/hppa/nptl/tls.h
+++ b/ports/sysdeps/hppa/nptl/tls.h
@@ -170,6 +170,6 @@ static inline void __set_cr27(struct pthread *cr27)
#define THREAD_GSCOPE_WAIT() \
GL(dl_wait_lookup_done) ()
-#endif /* __ASSEMBLER__ */
+#endif /* !__ASSEMBLER__ */
#endif /* tls.h */
diff --git a/ports/sysdeps/unix/sysv/linux/arm/bits/fcntl.h b/ports/sysdeps/unix/sysv/linux/arm/bits/fcntl.h
index 6fcc5c0c0..bf0321fea 100644
--- a/ports/sysdeps/unix/sysv/linux/arm/bits/fcntl.h
+++ b/ports/sysdeps/unix/sysv/linux/arm/bits/fcntl.h
@@ -221,17 +221,17 @@ extern int sync_file_range (int __fd, __off64_t __from, __off64_t __to,
/* Splice address range into a pipe. */
-extern int vmsplice (int __fdout, const struct iovec *__iov, size_t __count,
- unsigned int __flags);
+extern ssize_t vmsplice (int __fdout, const struct iovec *__iov,
+ size_t __count, unsigned int __flags);
/* Splice two files together. */
-extern int splice (int __fdin, __off64_t *__offin, int __fdout,
- __off64_t *__offout, size_t __len, unsigned int __flags)
- __THROW;
+extern ssize_t splice (int __fdin, __off64_t *__offin, int __fdout,
+ __off64_t *__offout, size_t __len,
+ unsigned int __flags);
/* In-kernel implementation of tee for pipe buffers. */
-extern int tee (int __fdin, int __fdout, size_t __len, unsigned int __flags)
- __THROW;
+extern ssize_t tee (int __fdin, int __fdout, size_t __len,
+ unsigned int __flags);
#endif
diff --git a/ports/sysdeps/unix/sysv/linux/arm/kernel-features.h b/ports/sysdeps/unix/sysv/linux/arm/kernel-features.h
index 0a6ab2180..ea439d5a0 100644
--- a/ports/sysdeps/unix/sysv/linux/arm/kernel-features.h
+++ b/ports/sysdeps/unix/sysv/linux/arm/kernel-features.h
@@ -52,3 +52,7 @@
#endif
#include_next <kernel-features.h>
+
+/* These syscalls are not implemented yet for ARM. */
+#undef __ASSUME_PSELECT
+#undef __ASSUME_PPOLL
diff --git a/ports/sysdeps/unix/sysv/linux/hppa/bits/fcntl.h b/ports/sysdeps/unix/sysv/linux/hppa/bits/fcntl.h
index 328df54a3..1bf6bcba7 100644
--- a/ports/sysdeps/unix/sysv/linux/hppa/bits/fcntl.h
+++ b/ports/sysdeps/unix/sysv/linux/hppa/bits/fcntl.h
@@ -46,10 +46,11 @@
#ifdef __USE_GNU
-# define O_DIRECT 00040000 /* Direct disk access. */
-# define O_DIRECTORY 00010000 /* Must be a directory. */
-# define O_NOFOLLOW 00000200 /* Do not follow links. */
-# define O_NOATIME 04000000 /* Do not set atime. */
+# define O_DIRECT 000040000 /* Direct disk access. */
+# define O_DIRECTORY 000010000 /* Must be a directory. */
+# define O_NOFOLLOW 000000200 /* Do not follow links. */
+# define O_NOATIME 004000000 /* Do not set atime. */
+# define O_CLOEXEC 010000000 /* Set close_on_exec. */
#endif
#ifdef __USE_LARGEFILE64
diff --git a/ports/sysdeps/unix/sysv/linux/hppa/nptl/sysdep-cancel.h b/ports/sysdeps/unix/sysv/linux/hppa/nptl/sysdep-cancel.h
index 375f7324d..6cffa7631 100644
--- a/ports/sysdeps/unix/sysv/linux/hppa/nptl/sysdep-cancel.h
+++ b/ports/sysdeps/unix/sysv/linux/hppa/nptl/sysdep-cancel.h
@@ -173,7 +173,7 @@ L(pre_end): ASM_LINE_SEP \
# define CDISABLE .import __libc_disable_asynccancel,code ASM_LINE_SEP \
bl __libc_disable_asynccancel,%r2 ASM_LINE_SEP
# endif
-# else
+# elif defined IS_IN_librt
# ifdef PIC
# define CENABLE .import __librt_enable_asynccancel,code ASM_LINE_SEP \
bl __librt_enable_asynccancel,%r2 ASM_LINE_SEP
@@ -185,14 +185,18 @@ L(pre_end): ASM_LINE_SEP \
# define CDISABLE .import __librt_disable_asynccancel,code ASM_LINE_SEP \
bl __librt_disable_asynccancel,%r2 ASM_LINE_SEP
# endif
+# else
+# error Unsupported library
# endif
# ifdef IS_IN_libpthread
# define __local_multiple_threads __pthread_multiple_threads
# elif !defined NOT_IN_libc
# define __local_multiple_threads __libc_multiple_threads
-# else
+# elif IS_IN_librt
# define __local_multiple_threads __librt_multiple_threads
+# else
+# error Unsupported library
# endif
# ifndef __ASSEMBLER__
diff --git a/ports/sysdeps/unix/sysv/linux/mips/bits/fcntl.h b/ports/sysdeps/unix/sysv/linux/mips/bits/fcntl.h
index 27af9ede1..f75188626 100644
--- a/ports/sysdeps/unix/sysv/linux/mips/bits/fcntl.h
+++ b/ports/sysdeps/unix/sysv/linux/mips/bits/fcntl.h
@@ -234,17 +234,17 @@ extern int sync_file_range (int __fd, __off64_t __from, __off64_t __to,
/* Splice address range into a pipe. */
-extern int vmsplice (int __fdout, const struct iovec *__iov, size_t __count,
- unsigned int __flags);
+extern ssize_t vmsplice (int __fdout, const struct iovec *__iov,
+ size_t __count, unsigned int __flags);
/* Splice two files together. */
-extern int splice (int __fdin, __off64_t *__offin, int __fdout,
- __off64_t *__offout, size_t __len, unsigned int __flags)
- __THROW;
+extern ssize_t splice (int __fdin, __off64_t *__offin, int __fdout,
+ __off64_t *__offout, size_t __len,
+ unsigned int __flags);
/* In-kernel implementation of tee for pipe buffers. */
-extern int tee (int __fdin, int __fdout, size_t __len, unsigned int __flags)
- __THROW;
+extern ssize_t tee (int __fdin, int __fdout, size_t __len,
+ unsigned int __flags);
#endif