OSDN Git Service

posix_opt.h: update to POSIX 2008
authorPeter S. Mazinger <ps.m@gmx.net>
Mon, 14 Mar 2011 11:37:56 +0000 (12:37 +0100)
committerBernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Fri, 15 Jun 2012 12:00:24 +0000 (14:00 +0200)
uClibc_posix_opt.h: adapt accordingly

Signed-off-by: Peter S. Mazinger <ps.m@gmx.net>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
libc/sysdeps/linux/common/bits/posix_opt.h
libc/sysdeps/linux/common/bits/uClibc_posix_opt.h

index 2b37049..2550355 100644 (file)
@@ -1,5 +1,5 @@
 /* Define POSIX options for Linux.
-   Copyright (C) 1996-2004, 2006 Free Software Foundation, Inc.
+   Copyright (C) 1996-2004, 2006, 2008, 2009 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
 #define        _POSIX_SAVED_IDS        1
 
 /* Priority scheduling is supported.  */
-#define        _POSIX_PRIORITY_SCHEDULING      200112L
+#define        _POSIX_PRIORITY_SCHEDULING      200809L
 
 /* Synchronizing file data is supported.  */
-#define        _POSIX_SYNCHRONIZED_IO  200112L
+#define        _POSIX_SYNCHRONIZED_IO  200809L
 
 /* The fsync function is present.  */
-#define        _POSIX_FSYNC    200112L
+#define        _POSIX_FSYNC    200809L
 
 /* Mapping of files to memory is supported.  */
-#define        _POSIX_MAPPED_FILES     200112L
+#define        _POSIX_MAPPED_FILES     200809L
 
 /* Locking of all memory is supported.  */
-#define        _POSIX_MEMLOCK  200112L
+#define        _POSIX_MEMLOCK  200809L
 
 /* Locking of ranges of memory is supported.  */
-#define        _POSIX_MEMLOCK_RANGE    200112L
+#define        _POSIX_MEMLOCK_RANGE    200809L
 
 /* Setting of memory protections is supported.  */
-#define        _POSIX_MEMORY_PROTECTION        200112L
+#define        _POSIX_MEMORY_PROTECTION        200809L
 
-/* Only root can change owner of file.  */
-#define        _POSIX_CHOWN_RESTRICTED 1
+/* Some filesystems allow all users to change file ownership.  */
+#define        _POSIX_CHOWN_RESTRICTED 0
 
 /* `c_cc' member of 'struct termios' structure can be disabled by
    using the value _POSIX_VDISABLE.  */
 #define        _XOPEN_SHM      1
 
 /* Tell we have POSIX threads.  */
-#define _POSIX_THREADS 200112L
+#define _POSIX_THREADS 200809L
 
 /* We have the reentrant functions described in POSIX.  */
 #define _POSIX_REENTRANT_FUNCTIONS      1
-#define _POSIX_THREAD_SAFE_FUNCTIONS   200112L
+#define _POSIX_THREAD_SAFE_FUNCTIONS   200809L
 
 /* We provide priority scheduling for threads.  */
-#define _POSIX_THREAD_PRIORITY_SCHEDULING      200112L
+#define _POSIX_THREAD_PRIORITY_SCHEDULING      200809L
 
 /* We support user-defined stack sizes.  */
-#define _POSIX_THREAD_ATTR_STACKSIZE   200112L
+#define _POSIX_THREAD_ATTR_STACKSIZE   200809L
 
 /* We support user-defined stacks.  */
-#define _POSIX_THREAD_ATTR_STACKADDR   200112L
+#define _POSIX_THREAD_ATTR_STACKADDR   200809L
 
 /* We support priority inheritence.  */
-#define _POSIX_THREAD_PRIO_INHERIT     200112L
+#define _POSIX_THREAD_PRIO_INHERIT     200809L
 
 /* We support priority protection, though only for non-robust
    mutexes.  */
-#define _POSIX_THREAD_PRIO_PROTECT     200112L
+#define _POSIX_THREAD_PRIO_PROTECT     200809L
+
+#ifdef __USE_XOPEN2K8
+/* We support priority inheritence for robust mutexes.  */
+# define _POSIX_THREAD_ROBUST_PRIO_INHERIT     200809L
+
+/* We do not support priority protection for robust mutexes.  */
+# define _POSIX_THREAD_ROBUST_PRIO_PROTECT     -1
+#endif
 
 /* We support POSIX.1b semaphores.  */
-#define _POSIX_SEMAPHORES      200112L
+#define _POSIX_SEMAPHORES      200809L
 
 /* Real-time signals are supported.  */
-#define _POSIX_REALTIME_SIGNALS        200112L
+#define _POSIX_REALTIME_SIGNALS        200809L
 
 /* We support asynchronous I/O.  */
-#define _POSIX_ASYNCHRONOUS_IO 200112L
+#define _POSIX_ASYNCHRONOUS_IO 200809L
 #define _POSIX_ASYNC_IO                1
 /* Alternative name for Unix98.  */
 #define _LFS_ASYNCHRONOUS_IO   1
 /* Support for prioritization is also available.  */
-#define _POSIX_PRIORITIZED_IO  200112L
+#define _POSIX_PRIORITIZED_IO  200809L
 
 /* The LFS support in asynchronous I/O is also available.  */
 #define _LFS64_ASYNCHRONOUS_IO 1
 #define _LFS64_STDIO           1
 
 /* POSIX shared memory objects are implemented.  */
-#define _POSIX_SHARED_MEMORY_OBJECTS   200112L
+#define _POSIX_SHARED_MEMORY_OBJECTS   200809L
 
 /* CPU-time clocks support needs to be checked at runtime.  */
 #define _POSIX_CPUTIME 0
 #define _POSIX_REGEXP  1
 
 /* Reader/Writer locks are available.  */
-#define _POSIX_READER_WRITER_LOCKS     200112L
+#define _POSIX_READER_WRITER_LOCKS     200809L
 
 /* We have a POSIX shell.  */
 #define _POSIX_SHELL   1
 
 /* We support the Timeouts option.  */
-#define _POSIX_TIMEOUTS        200112L
+#define _POSIX_TIMEOUTS        200809L
 
 /* We support spinlocks.  */
-#define _POSIX_SPIN_LOCKS      200112L
+#define _POSIX_SPIN_LOCKS      200809L
 
 /* The `spawn' function family is supported.  */
-#if 0 /* no support in uClibc (yet) */
-#define _POSIX_SPAWN   200112L
-#endif
+#define _POSIX_SPAWN   200809L
 
 /* We have POSIX timers.  */
-#define _POSIX_TIMERS  200112L
+#define _POSIX_TIMERS  200809L
 
 /* The barrier functions are available.  */
-#define _POSIX_BARRIERS        200112L
+#define _POSIX_BARRIERS        200809L
 
 /* POSIX message queues are available.  */
-#define        _POSIX_MESSAGE_PASSING  200112L
+#define        _POSIX_MESSAGE_PASSING  200809L
 
 /* Thread process-shared synchronization is supported.  */
-#define _POSIX_THREAD_PROCESS_SHARED   200112L
+#define _POSIX_THREAD_PROCESS_SHARED   200809L
 
 /* The monotonic clock might be available.  */
 #define _POSIX_MONOTONIC_CLOCK 0
 
 /* The clock selection interfaces are available.  */
-#define _POSIX_CLOCK_SELECTION 200112L
+#define _POSIX_CLOCK_SELECTION 200809L
 
 /* Advisory information interfaces are available.  */
-#define _POSIX_ADVISORY_INFO   200112L
+#define _POSIX_ADVISORY_INFO   200809L
 
 /* IPv6 support is available.  */
-#define _POSIX_IPV6    200112L
+#define _POSIX_IPV6    200809L
 
 /* Raw socket support is available.  */
-#define _POSIX_RAW_SOCKETS     200112L
+#define _POSIX_RAW_SOCKETS     200809L
 
 /* We have at least one terminal.  */
-#define _POSIX2_CHAR_TERM      200112L
+#define _POSIX2_CHAR_TERM      200809L
 
 /* Neither process nor thread sporadic server interfaces is available.  */
 #define _POSIX_SPORADIC_SERVER -1
 /* Typed memory objects are not available.  */
 #define _POSIX_TYPED_MEMORY_OBJECTS    -1
 
-#endif /* posix_opt.h */
+#endif /* bits/posix_opt.h */
index 1ac4521..0ae0da1 100644 (file)
@@ -26,6 +26,8 @@
 # define _POSIX_THREAD_PRIO_INHERIT    -1
 # undef _POSIX_THREAD_PRIO_PROTECT
 # define _POSIX_THREAD_PRIO_PROTECT    -1
+# undef _POSIX_THREAD_ROBUST_PRIO_INHERIT
+# undef _POSIX_THREAD_ROBUST_PRIO_PROTECT
 #endif
 
 /* this has to be adapted to uClibc, not all are thread related */
@@ -76,6 +78,7 @@
 #undef _POSIX_TRACE_INHERIT
 #undef _POSIX_TRACE_LOG
 #undef _POSIX_TYPED_MEMORY_OBJECTS
+#undef _POSIX_SPAWN
 
 #if 0 /* does uClibc support these? */
 # undef _POSIX_ASYNCHRONOUS_IO