source: svn/trunk/newcon3bcm2_21bu/toolchain/mips-linux-uclibc/include/bits/posix_opt.h

Last change on this file was 2, checked in by jglee, 11 years ago

first commit

  • Property svn:executable set to *
File size: 5.0 KB
Line 
1/* Define POSIX options for Linux.
2   Copyright (C) 1996,1997,1998,1999,2000,2001 Free Software Foundation, Inc.
3   This file is part of the GNU C Library.
4
5   The GNU C Library is free software; you can redistribute it and/or
6   modify it under the terms of the GNU Library General Public License as
7   published by the Free Software Foundation; either version 2 of the
8   License, or (at your option) any later version.
9
10   The GNU C Library is distributed in the hope that it will be useful,
11   but WITHOUT ANY WARRANTY; without even the implied warranty of
12   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13   Library General Public License for more details.
14
15   You should have received a copy of the GNU Library General Public
16   License along with the GNU C Library; see the file COPYING.LIB.  If not,
17   write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
18   Boston, MA 02111-1307, USA.  */
19
20#ifndef _POSIX_OPT_H
21#define _POSIX_OPT_H    1
22
23/* Job control is supported.  */
24#define _POSIX_JOB_CONTROL      1
25
26/* Processes have a saved set-user-ID and a saved set-group-ID.  */
27#define _POSIX_SAVED_IDS        1
28
29/* Priority scheduling is supported.  */
30#define _POSIX_PRIORITY_SCHEDULING      1
31
32/* Synchronizing file data is supported.  */
33#define _POSIX_SYNCHRONIZED_IO  1
34
35/* The fsync function is present.  */
36#define _POSIX_FSYNC    1
37
38/* Mapping of files to memory is supported.  */
39#define _POSIX_MAPPED_FILES     1
40
41/* Locking of all memory is supported.  */
42#ifdef __ARCH_HAS_MMU__
43# define        _POSIX_MEMLOCK  1
44#else
45# undef         _POSIX_MEMLOCK
46#endif
47
48/* Locking of ranges of memory is supported.  */
49#ifdef __ARCH_HAS_MMU__
50# define        _POSIX_MEMLOCK_RANGE    1
51#else
52# define        _POSIX_MEMLOCK_RANGE
53#endif
54
55/* Setting of memory protections is supported.  */
56#ifdef __ARCH_HAS_MMU__
57# define        _POSIX_MEMORY_PROTECTION        1
58#else
59# undef         _POSIX_MEMORY_PROTECTION
60#endif
61
62/* Implementation supports `poll' function.  */
63#define _POSIX_POLL     1
64
65/* Implementation supports `select' and `pselect' functions.  */
66#define _POSIX_SELECT   1
67
68/* Only root can change owner of file.  */
69#define _POSIX_CHOWN_RESTRICTED 1
70
71/* `c_cc' member of 'struct termios' structure can be disabled by
72   using the value _POSIX_VDISABLE.  */
73#define _POSIX_VDISABLE '\0'
74
75/* Filenames are not silently truncated.  */
76#define _POSIX_NO_TRUNC 1
77
78/* X/Open realtime support is available.  */
79#define _XOPEN_REALTIME 1
80
81/* X/Open realtime thread support is available.  */
82#ifdef __UCLIBC_HAS_THREADS__
83# define _XOPEN_REALTIME_THREADS        1
84#else
85# undef _XOPEN_REALTIME_THREADS
86#endif
87
88/* XPG4.2 shared memory is supported.  */
89#define _XOPEN_SHM      1
90
91/* Tell we have POSIX threads.  */
92#ifdef __UCLIBC_HAS_THREADS__
93# define _POSIX_THREADS 1
94#else
95# undef _POSIX_THREADS
96#endif
97
98/* We have the reentrant functions described in POSIX.  */
99#ifdef __UCLIBC_HAS_THREADS__
100# define _POSIX_REENTRANT_FUNCTIONS      1
101# define _POSIX_THREAD_SAFE_FUNCTIONS   1
102#else
103# undef _POSIX_REENTRANT_FUNCTIONS
104# undef _POSIX_THREAD_SAFE_FUNCTIONS
105#endif
106
107/* We provide priority scheduling for threads.  */
108#define _POSIX_THREAD_PRIORITY_SCHEDULING       1
109
110/* We support user-defined stack sizes.  */
111#define _POSIX_THREAD_ATTR_STACKSIZE    1
112
113/* We support user-defined stacks.  */
114#define _POSIX_THREAD_ATTR_STACKADDR    1
115
116/* We support POSIX.1b semaphores, but only the non-shared form for now.  */
117#ifdef __UCLIBC_HAS_THREADS__
118# define _POSIX_SEMAPHORES      1
119#else
120# undef _POSIX_SEMAPHORES
121#endif
122
123/* Real-time signals are supported.  */
124#define _POSIX_REALTIME_SIGNALS 1
125
126/* We support asynchronous I/O.  */
127#define _POSIX_ASYNCHRONOUS_IO  1
128#define _POSIX_ASYNC_IO         1
129/* Alternative name for Unix98.  */
130#define _LFS_ASYNCHRONOUS_IO    1
131
132/* The LFS support in asynchronous I/O is also available.  */
133#ifdef __UCLIBC_HAS_LFS__
134# define _LFS64_ASYNCHRONOUS_IO 1
135#else
136# undef _LFS64_ASYNCHRONOUS_IO
137#endif
138
139/* The rest of the LFS is also available.  */
140#ifdef __UCLIBC_HAS_LFS__
141# define _LFS_LARGEFILE         1
142# define _LFS64_LARGEFILE       1
143# define _LFS64_STDIO           1
144#else
145# undef _LFS_LARGEFILE
146# undef _LFS64_LARGEFILE
147# undef _LFS64_STDIO
148#endif
149
150/* POSIX shared memory objects are implemented.  */
151#define _POSIX_SHARED_MEMORY_OBJECTS    1
152
153/* GNU libc provides regular expression handling.  */
154#ifdef __UCLIBC_HAS_REGEX__
155# define _POSIX_REGEXP  1
156#else
157# undef _POSIX_REGEXP
158#endif
159
160#if defined(__i386__)
161/* CPU-time clocks supported.  */
162#define _POSIX_CPUTIME 200912L
163
164/* We support the clock also in threads.  */
165#define _POSIX_THREAD_CPUTIME  200912L
166#endif
167
168/* Reader/Writer locks are available.  */
169#define _POSIX_READER_WRITER_LOCKS      200912L
170
171/* We have a POSIX shell.  */
172#define _POSIX_SHELL    1
173
174/* We support the Timeouts option.  */
175#define _POSIX_TIMEOUTS 200912L
176
177/* We support spinlocks.  */
178#define _POSIX_SPIN_LOCKS       200912L
179
180/* The `spawn' function family is supported.  */
181#define _POSIX_SPAWN    200912L
182
183/* We have POSIX timers.  */
184#define _POSIX_TIMERS   1
185
186/* The barrier functions are available.  */
187#define _POSIX_BARRIERS 200912L
188
189/* POSIX message queues are not yet supported.  */
190#undef  _POSIX_MESSAGE_PASSING
191
192#endif /* posix_opt.h */
Note: See TracBrowser for help on using the repository browser.