diff options
Diffstat (limited to 'dep/ACE_wrappers/ace/config-irix6.x-common.h')
-rw-r--r-- | dep/ACE_wrappers/ace/config-irix6.x-common.h | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/dep/ACE_wrappers/ace/config-irix6.x-common.h b/dep/ACE_wrappers/ace/config-irix6.x-common.h index 63a1c906c1f..ab5413412c1 100644 --- a/dep/ACE_wrappers/ace/config-irix6.x-common.h +++ b/dep/ACE_wrappers/ace/config-irix6.x-common.h @@ -9,20 +9,27 @@ // get reliable operation with multi-threading and exceptions. // Specifically you should get a reasonable current IRIX, Compiler // and POSIX patch-sets. + // For IRIX 6.[34] it's less critical, but it's still recommended // that you apply the applicable patch-sets (IRIX and Compiler I believe). + // These patches are updated frequently, so you should ask your support // contact or search SGI's web site (http://www.sgi.com) for the latest // version. + // Use this file for IRIX 6.[234] if you have the pthreads patches // installed. + #ifndef ACE_CONFIG_IRIX6X_COMMON_H + #ifndef IRIX6 # define IRIX6 #endif + #if ! defined(ACE_CONFIG_H) #error "This file may only be included by config-irix6.x-sgic++.h, config-irix6.x-kcc.h or config-irix6.x-g++.h" #endif + // The Irix 6.x float.h doesn't allow us to distinguish between a // double and a long double. So, we have to hard-code this. Thanks // to Bob Laferriere <laferrie@gsao.med.ge.com> for figuring it out. @@ -42,93 +49,130 @@ #else # define ACE_SIZEOF_LONG_DOUBLE 8 /* 5.3 System */ #endif + // petern, Next part of it: + // Platform supports getpagesize() call. #define ACE_HAS_GETPAGESIZE + // Platform has no implementation of pthread_condattr_setpshared(), // even though it supports pthreads! (like Irix 6.2) #define ACE_LACKS_CONDATTR_PSHARED #define ACE_LACKS_MUTEXATTR_PSHARED + #define ACE_LACKS_SUSECONDS_T + // Platform/compiler has the sigwait(2) prototype #define ACE_HAS_SIGWAIT #define ACE_HAS_SIGTIMEDWAIT #define ACE_HAS_SIGSUSPEND + // Platform supports System V IPC (most versions of UNIX, but not Win32) #define ACE_HAS_SYSV_IPC + // Platform requires void * for mmap(). #define ACE_HAS_VOIDPTR_MMAP + // Platform supports recvmsg and sendmsg. #define ACE_HAS_MSG + // Compiler/platform contains the <sys/syscall.h> file. #define ACE_HAS_SYS_SYSCALL_H + // Compiler/platform supports alloca() // Although ACE does have alloca() on this compiler/platform combination, it is // disabled by default since it can be dangerous. Uncomment the following line // if you ACE to use it. //#define ACE_HAS_ALLOCA + // Compiler/platform has <alloca.h> #define ACE_HAS_ALLOCA_H + // Irix needs to define bzero() in this odd file <bstring.h> #define ACE_HAS_BSTRING + // Compiler/platform has the getrusage() system call. #define ACE_HAS_GETRUSAGE + // Platform supports POSIX O_NONBLOCK semantics. #define ACE_HAS_POSIX_NONBLOCK + // Compiler/platform has correctly prototyped header files. #define ACE_HAS_CPLUSPLUS_HEADERS + // Platform contains <poll.h>. #define ACE_HAS_POLL + // Platform supports the /proc file system. #define ACE_HAS_PROC_FS + // Compiler/platform defines the sig_atomic_t typedef. #define ACE_HAS_SIG_ATOMIC_T + // Platform supports SVR4 extended signals. #define ACE_HAS_SIGINFO_T #define ACE_HAS_UCONTEXT_T + // Compiler supports the ssize_t typedef. #define ACE_HAS_SSIZE_T + // Platform supports STREAMS. #define ACE_HAS_STREAMS + // Compiler/platform supports strerror (). #define ACE_HAS_STRERROR + // Compiler/platform supports struct strbuf. #define ACE_HAS_STRBUF_T + // Compiler/platform supports SVR4 dynamic linking semantics. #define ACE_HAS_SVR4_DYNAMIC_LINKING + // Platform provides <sys/filio.h> header. #define ACE_HAS_SYS_FILIO_H + // Compiler/platform defines a union semun for SysV shared memory. #define ACE_HAS_SEMUN + // Platform supports IP multicast #define ACE_HAS_IP_MULTICAST #ifdef ACE_LACKS_PERFECT_MULTICAST_FILTERING #undef ACE_LACKS_PERFECT_MULTICAST_FILTERING #endif #define ACE_LACKS_PERFECT_MULTICAST_FILTERING 1 + //************************************************************** // Not so sure how next lines should look like + // Platform supports POSIX timers via timestruc_t. #define ACE_HAS_POSIX_TIME + //************************************************************** + // IRIX 6.4 and below do not support reentrant netdb functions // (getprotobyname_r, getprotobynumber_r, gethostbyaddr_r, // gethostbyname_r, getservbyname_r). #if (ACE_IRIX_VERS <= 64) && !defined (ACE_HAS_NETDB_REENTRANT_FUNCTIONS) #define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS #endif /* ACE_HAS_NETDB_REENTRANT_FUNCTIONS */ + #define ACE_HAS_DIRENT // Unless the thread enabled version is used the readdir_r interface // does not get defined in IRIX 6.2 #define ACE_LACKS_READDIR_R #define ACE_LACKS_RWLOCK_T + #define ACE_HAS_GPERF + #define ACE_HAS_NONCONST_SELECT_TIMEVAL #define ACE_HAS_BROKEN_DGRAM_SENDV + #define ACE_LACKS_PLACEMENT_OPERATOR_DELETE #define ACE_PI_CONTROL_BLOCK_ALIGN_LONGS 2 + // Platform has POSIX terminal interface. #define ACE_HAS_TERMIOS + // IRIX 6.5 supports AIO #define ACE_HAS_AIO_CALLS #define ACE_POSIX_AIOCB_PROACTOR @@ -139,53 +183,76 @@ #define ACE_HAS_SYSENT_H #define ACE_HAS_SYSINFO #define ACE_HAS_SYS_SYSTEMINFO_H + // Platform has support for multi-byte character support compliant // with the XPG4 Worldwide Portability Interface wide-character // classification. #define ACE_HAS_XPG4_MULTIBYTE_CHAR + // We need to setup a very high address or Naming_Test won't run. #define ACE_DEFAULT_BASE_ADDR ((char *) (1024U * 1024 * 1024)) + #define ACE_LACKS_SIGNED_CHAR + // Platform supports reentrant functions (i.e., all the POSIX *_r // functions). #define ACE_HAS_REENTRANT_FUNCTIONS + // Optimize ACE_Handle_Set for select(). #define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT + // Platform does not support reentrant password file accessor functiions. #define ACE_LACKS_PWD_REENTRANT_FUNCTIONS + // uses ctime_r & asctime_r with only two parameters vs. three #define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R + // Prototypes for both signal() and struct sigaction are consistent. #define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES + #define ACE_HAS_UALARM + // Scheduling functions are declared in <sched.h> #define ACE_NEEDS_SCHED_H + // Compile using multi-thread libraries by default #if !defined (ACE_MT_SAFE) #define ACE_MT_SAFE 1 #endif /* ACE_MT_SAFE */ + #if (ACE_MT_SAFE != 0) + // Add threading support + #define ACE_HAS_IRIX62_THREADS + // Needed for the threading stuff? #include /**/ <task.h> #define PTHREAD_MIN_PRIORITY PX_PRIO_MIN #define PTHREAD_MAX_PRIORITY PX_PRIO_MAX + // ACE supports threads. #define ACE_HAS_THREADS + // Platform has no implementation of pthread_condattr_setpshared(), // even though it supports pthreads! (like Irix 6.2) #define ACE_LACKS_CONDATTR_PSHARED #define ACE_LACKS_MUTEXATTR_PSHARED + // IRIX 6.2 supports a variant of POSIX Pthreads, supposedly POSIX 1c #define ACE_HAS_PTHREADS + // Compiler/platform has thread-specific storage #define ACE_HAS_THREAD_SPECIFIC_STORAGE + // The pthread_cond_timedwait call does not reset the timer. #define ACE_LACKS_COND_TIMEDWAIT_RESET 1 + // When threads are enabled READDIR_R is supported on IRIX. #undef ACE_LACKS_READDIR_R + #endif /* (ACE_MT_SAFE == 0) */ + #endif /* ACE_CONFIG_IRIX6X_COMMON_H */ |