[7297] Fixed profession spells sorting in trainer spell list at client.
[getmangos.git] / dep / ACE_wrappers / ace / config-tandem-nsk-mips-v2.h
blob20d555321a8d8be34bb5ff0f482c792675dcf62f
1 // -*- C++ -*-
2 //
3 // $Id: config-tandem-nsk-mips-v2.h 81935 2008-06-12 22:01:53Z jtc $
5 #ifndef ACE_CONFIG_NSK_H
6 #define ACE_CONFIG_NSK_H
8 #include /**/ "ace/pre.h"
10 // The following configuration file contains defines for Tandem NSK
11 // platform, MIPS processor, version 2 C++ compiler.
14 //=========================================================================
15 // Tandem NSK specific parts
16 //=========================================================================
19 // Disable pthread renaming of symbols such as "open" and "close"
20 #define _CMA_NOWRAPPERS_ 1
22 // Get Handle_Set.cpp to generate correct bit operations for NSK platform
23 #define ACE_TANDEM_NSK_BIT_ORDER
25 // Use facilities provided by T1248 version of pthreads.
26 // (If not defined, will use old version of pthreads.)
27 #define ACE_TANDEM_T1248_PTHREADS
29 // Use all available T1248 thread aware wrapper functions for providing
30 // non-blocking I/O.
31 // [@note this causes a significant performance degradation]
32 //#define ACE_TANDEM_T1248_PTHREADS_ALL_IO_WRAPPERS
35 // Need this include here because some symbols defined by pthreads
36 // (e.g. timespec_t) are needed before spthread.h is normally included
37 // by ACE
38 #ifdef ACE_TANDEM_T1248_PTHREADS
39 #include <spthread.h>
40 #else
41 #include "pthread.h"
42 #include "dce/cma_dispatch_coop.h"
43 #endif
45 // The following #defines are hacks to get around things
46 // that seem to be missing or different in Tandem land
47 #define NSIG 32 // missing from Signal.h
48 // note: on nsk TNS/R there is room in
49 // sigset_t for 128 signals but those
50 // above 31 are not valid.
51 typedef long fd_mask; // should be in select.h but no such file
52 #define NBBY 8 // must be consistent with value in sys/types.h
53 #define NFDBITS (sizeof (fd_mask) * NBBY) /* bits per mask */
54 #define MAXNAMLEN 248 // missing from dirent.h
55 #define ERRMAX 4218 // from errno.h
57 // Following seems to be missing from G06.20 version of standard
58 // pthreads includes (it appeared in older version of standard pthreads)
59 // (SCHED_FIFO (aka cma_c_sched_fifo) used in Dynamic_Priority_Test)
60 #ifdef ACE_TANDEM_T1248_PTHREADS
61 typedef enum CMA_T_SCHED_POLICY {
62 cma_c_sched_fifo = 0,
63 cma_c_sched_rr = 1,
64 cma_c_sched_throughput = 2,
65 cma_c_sched_background = 3,
66 cma_c_sched_ada_low = 4
67 } cma_t_sched_policy;
68 #endif
70 // T1248 doesn't define these constants. They're defined in spt/cma.h
71 // (formerly dce/cma.h), but this header is not included or provided
72 // by T1248 G07-AAL.
73 #define cma_c_prio_fifo_min 16
74 #define cma_c_prio_fifo_mid 24
75 #define cma_c_prio_fifo_max 31
76 #define cma_c_prio_rr_min 16
77 #define cma_c_prio_rr_mid 24
78 #define cma_c_prio_rr_max 31
79 #define cma_c_prio_through_min 8
80 #define cma_c_prio_through_mid 12
81 #define cma_c_prio_through_max 15
82 #define cma_c_prio_back_min 1
83 #define cma_c_prio_back_mid 4
84 #define cma_c_prio_back_max 7
86 // Enable NSK Pluggable Protocols
87 #define TAO_HAS_NSKPW 1
88 #define TAO_HAS_NSKFS 1
90 //=========================================================================
91 // Platform specific parts
92 //=========================================================================
94 // Platform lacks getpwnam_r() methods (e.g., SGI 6.2).
95 #define ACE_LACKS_PWD_REENTRANT_FUNCTIONS
97 // Platform/compiler lacks {get,set}rlimit() function
98 #define ACE_LACKS_RLIMIT
100 // The platform doesn't have mmap(2)
101 #define ACE_LACKS_MMAP
103 // Platform lacks streambuf "linebuffered ()". [C++ iostream]
104 #define ACE_LACKS_LINEBUFFERED_STREAMBUF
106 // Platform supports recvmsg and sendmsg
107 #define ACE_HAS_MSG
109 // Platform defines ACE_HAS_MSG, but lacks msg_accrights{,len}.
110 #define ACE_LACKS_MSG_ACCRIGHTS
112 // Platform supports sigsuspend()
113 #define ACE_HAS_SIGSUSPEND
115 // Platform/compiler has the sigwait(2) prototype
116 #define ACE_HAS_SIGWAIT
118 // Compiler/platform defines the sig_atomic_t typedef
119 #define ACE_HAS_SIG_ATOMIC_T
121 // OS/compiler uses size_t * rather than int * for socket lengths
122 #define ACE_HAS_SIZET_SOCKET_LEN
124 // OS/compiler uses void * arg 4 setsockopt() rather than const char *
125 #define ACE_HAS_VOIDPTR_SOCKOPT
127 // The platform doesn't have mprotect(2)
128 #define ACE_LACKS_MPROTECT
130 // Platform lacks msync()
131 #define ACE_LACKS_MSYNC
133 // Platform does not support reentrant netdb functions (getprotobyname_r,
134 // getprotobynumber_r, gethostbyaddr_r, gethostbyname_r, getservbyname_r).
135 #define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS Platform does not support
137 // Platform lacks madvise()
138 #define ACE_LACKS_MADVISE
140 // Platform lacks pri_t
141 #define ACE_LACKS_PRI_T
143 // Platform lacks a working sbrk()
144 #define ACE_LACKS_SBRK
146 // Platform doesn't have syscall() prototype
147 #define ACE_LACKS_SYSCALL
149 // Platform lacks the inet_aton() function.
150 #define ACE_LACKS_INET_ATON
152 // Compiler/platform has Dirent iterator functions
153 #define ACE_HAS_DIRENT
155 // Platform uses ACE_HAS_DIRENT but does not have readdir_r()
156 #define ACE_LACKS_READDIR_R
158 // Platform supports getpagesize() call (otherwise,
159 // ACE_PAGE_SIZE must be defined)
160 #define ACE_HAS_GETPAGESIZE
162 // Platform supports IP multicast
163 #define ACE_HAS_IP_MULTICAST
165 // Platform's select() uses non-const timeval*
166 #define ACE_HAS_NONCONST_SELECT_TIMEVAL
168 // Platform supports POSIX O_NONBLOCK semantics
169 #define ACE_HAS_POSIX_NONBLOCK
171 // Platform lacks named POSIX semaphores
172 #define ACE_LACKS_NAMED_POSIX_SEM
174 // Platform has support for multi-byte character support compliant
175 // with the XPG4 Worldwide Portability Interface wide-character
176 // classification.
177 #define ACE_HAS_XPG4_MULTIBYTE_CHAR
179 // No wcsstr function available for this compiler
180 #define ACE_LACKS_WCSSTR
182 // No wctype.h available for this compiler
183 #define ACE_LACKS_WCTYPE_H
185 // Platform supports the POSIX regular expression library.
186 // [Note Tandem NSK platform does have regular expresson support but it
187 // does not follow the assumptions made by ACE. To use it would need
188 // to make some ACE modifications.]
189 //#define ACE_HAS_REGEX
191 // Compiler/platform supports strerror ()
192 #define ACE_HAS_STRERROR
194 // Platform doesn't have truncate()
195 #define ACE_LACKS_TRUNCATE
197 // Platform lacks readers/writer locks.
198 #define ACE_LACKS_RWLOCK_T
200 // Compiler's 'new' throws exception on failure (ANSI C++ behavior).
201 #define ACE_NEW_THROWS_EXCEPTIONS
203 // Optimize ACE_Handle_Set::count_bits for select() operations (common
204 // case)
205 #define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
207 // Platform lacks setreuid()
208 #define ACE_LACKS_SETREUID
210 // Platform lacks setregid()
211 #define ACE_LACKS_SETREGID
213 // Compile using multi-thread libraries
214 #define ACE_MT_SAFE 1
218 // Platform supports System V IPC
219 #define ACE_HAS_SYSV_IPC
221 // Platform lacks the socketpair() call
222 // [Needed due to failure of Pipe_Test. even though nsk platform
223 // has socketpair(), Pipe.cpp tries to set socket buf size but this
224 // is not allowed for AF_UNIX protocol on nsk.]
225 #define ACE_LACKS_SOCKET_BUFSIZ
227 // Platform lacks the socketpair() call
228 #define ACE_LACKS_SOCKETPAIR
230 // Platform limits the maximum socket message size.
231 #define ACE_HAS_SOCK_BUF_SIZE_MAX
233 // hrtime_t is a basic type that doesn't require ACE_U64_TO_U32 conversion
234 #define ACE_HRTIME_T_IS_BASIC_TYPE
236 // printf format specifiers for 64 bit integers
237 # define ACE_UINT64_FORMAT_SPECIFIER ACE_TEXT ("%Ld")
238 # define ACE_INT64_FORMAT_SPECIFIER ACE_TEXT ("%Ld")
240 //=========================================================================
241 // Threads specific parts
242 //=========================================================================
244 // Platform supports threads
245 #define ACE_HAS_THREADS
247 // Platform supports POSIX Pthreads, of one form or another. This
248 // macro says the platform has a pthreads variety - should also define
249 // one of the below to say which one. Also may need some
250 // ACE_HAS_... thing for extensions.
251 #define ACE_HAS_PTHREADS
253 // Standard pthreads supports only SCHED_FIFO
254 #define ACE_HAS_ONLY_SCHED_FIFO
256 // Compiler/platform has thread-specific storage
257 #define ACE_HAS_THREAD_SPECIFIC_STORAGE
259 // Platform has no implementation of pthread_condattr_setpshared(),
260 // even though it supports pthreads!
261 #define ACE_LACKS_CONDATTR_PSHARED
263 // pthread_cond_timedwait does *not* reset the time argument when the
264 // lock is acquired.
265 #define ACE_LACKS_COND_TIMEDWAIT_RESET
267 // Platform lacks pthread_attr_setsched()
268 #define ACE_LACKS_SETSCHED
270 // Platform has pthread_mutexattr_setkind_np().
271 #define ACE_HAS_PTHREAD_MUTEXATTR_SETKIND_NP
273 // Platform lacks pthread_mutexattr_setpshared().
274 #define ACE_LACKS_MUTEXATTR_PSHARED
276 // Platform lacks pthread_attr_setscope()
277 #define ACE_LACKS_THREAD_PROCESS_SCOPING
279 // Platform lacks pthread_attr_setstackaddr
280 #define ACE_LACKS_PTHREAD_ATTR_SETSTACKADDR
282 // Defining ACE_HAS_UCONTEXT_T since G06.21 version of spthreads has
283 // a definition for it.
284 #ifdef ACE_TANDEM_T1248_PTHREADS
285 #define ACE_HAS_UCONTEXT_T
286 #endif
288 //=========================================================================
289 // Include file characteristics
290 //=========================================================================
292 // Compiler/platform contains the <sys/syscall.h> file.
293 #define ACE_HAS_SYS_SYSCALL_H
295 // Platform lacks malloc.h
296 #define ACE_LACKS_MALLOC_H
298 // Platform lacks the siginfo.h include file
299 #define ACE_LACKS_SIGINFO_H
301 // Platform doesn't define struct strrecvfd.
302 #define ACE_LACKS_STRRECVFD
304 // Platform lacks the ucontext.h file
305 #define ACE_LACKS_UCONTEXT_H
307 // Prototypes for both signal() and struct sigaction are consistent.
308 #define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
310 // Platform supports the POSIX struct timespec type
311 #define ACE_HAS_POSIX_TIME
313 // Platform/compiler supports timezone * as second parameter to gettimeofday()
314 #define ACE_HAS_TIMEZONE_GETTIMEOFDAY
316 // Platform has <strings.h> (which contains bzero() prototype)
317 #define ACE_HAS_STRINGS 1
320 // OS/compiler omits the const from the iovec parameter in the
321 // writev() prototype.
322 #define ACE_HAS_NONCONST_WRITEV
324 // Platform lacks <stdint.h>
325 #define ACE_LACKS_STDINT_H
327 // Platform lacks <inttypes.h>
328 #define ACE_LACKS_INTTYPES_H
330 // Platform lacks <sys/select.h>
331 #define ACE_LACKS_SYS_SELECT_H
333 // Platform lacks <dlfcn.h>
334 #define ACE_LACKS_DLFCN_H
336 // Platform lacks <semaphore.h>
337 #define ACE_LACKS_SEMAPHORE_H
339 // Platform lacks <poll.h>
340 #define ACE_LACKS_POLL_H
342 //=========================================================================
343 // Compiler specific parts
344 //=========================================================================
346 // Compiler supports C++ exception handling
347 #define ACE_HAS_EXCEPTIONS
349 // Compiler/platform has correctly prototyped header files
350 #define ACE_HAS_CPLUSPLUS_HEADERS
352 // Compiler/platform does not support the unsigned long long datatype.
353 #define ACE_LACKS_LONGLONG_T
355 // Compiler supports the ssize_t typedef
356 #define ACE_HAS_SSIZE_T
358 // Platform/compiler supports Standard C++ Library
359 #define ACE_HAS_STANDARD_CPP_LIBRARY 0
361 // Compiler's template mechanism must see source code (i.e.,
362 // .cpp files).
363 #define ACE_TEMPLATES_REQUIRE_SOURCE
365 // Compiler implements templates that support typedefs inside
366 // of classes used as formal arguments to a template class.
367 #define ACE_HAS_TEMPLATE_TYPEDEFS
369 // Platform has its standard c++ library in the namespace std.
370 #define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
372 // Compiler doesn't support static data member templates
373 #define ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES
375 // Platform lacks "signed char" type (broken!)
376 // Following will not be needed if use standard c library (G06.20 and later)
377 #define ACE_LACKS_SIGNED_CHAR
379 //=========================================================================
380 // Build options
381 //=========================================================================
383 // Disable the inclusion of RCS ids in the generated code.
384 #define ACE_USE_RCSID 0
386 // For debugging problems in os calls (but this doesn't work too well
387 // since output is not interleaved properly with output from ACE_TRACE
388 //# define ACE_OS_TRACE(X) ::printf(X)
390 // Uncomment the following if timed message blocks are needed (e.g.
391 // for Dynamic_Priority_Test. Otherwise leave this disabled because
392 // enabling it adds overhead to message blocks and timed message blocks
393 // are "rarely used."
394 //#define ACE_HAS_TIMED_MESSAGE_BLOCKS
396 // Uncomment the following if tokens library is needed.
397 //#define ACE_HAS_TOKENS_LIBRARY
399 #include /**/ "ace/post.h"
401 #endif /* ACE_CONFIG_NSK_H */