diff options
author | Steve Huston <shuston@riverace.com> | 1998-02-11 16:09:09 +0000 |
---|---|---|
committer | Steve Huston <shuston@riverace.com> | 1998-02-11 16:09:09 +0000 |
commit | 29441fb7faaa6d09d8758053ff5287060364f68b (patch) | |
tree | 20dfa6d0938c0caacc8ad482edd99e59f138b2d4 /ace/config-dgux-4.x-ghs.h | |
parent | d40af50793af4ed2ea2051610877cb91ca85821e (diff) | |
download | ATCD-29441fb7faaa6d09d8758053ff5287060364f68b.tar.gz |
New config file for DG/UX 4.x using Green Hills Multi C++ compiler and
draft 10 pthreads.
Diffstat (limited to 'ace/config-dgux-4.x-ghs.h')
-rw-r--r-- | ace/config-dgux-4.x-ghs.h | 228 |
1 files changed, 228 insertions, 0 deletions
diff --git a/ace/config-dgux-4.x-ghs.h b/ace/config-dgux-4.x-ghs.h new file mode 100644 index 00000000000..77ab15b8719 --- /dev/null +++ b/ace/config-dgux-4.x-ghs.h @@ -0,0 +1,228 @@ +/* -*- C++ -*- */ +// $Id$ + +// The following configuration file is designed to work for DG/UX +// 4.x platforms using the Green Hills Multi C++ compiler. + +#if !defined (ACE_CONFIG_H) +#define ACE_CONFIG_H + +// Static objects do not get initialized correctly, so this is needed. +#define ACE_HAS_NONSTATIC_OBJECT_MANAGER + +// Platform requires (struct sockaddr *) for msg_name field of struct +// msghdr. +#define ACE_HAS_SOCKADDR_MSG_NAME + +// Platform lacks strcasecmp(). +#define ACE_LACKS_STRCASECMP + +// Platform supports System V IPC (most versions of UNIX, but not Win32) +#define ACE_HAS_SYSV_IPC + +#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES + +// Platform supports system configuration information. +#define ACE_HAS_SYSINFO + +// Platform supports the POSIX regular expression library. +#define ACE_HAS_REGEX + +// Platform supports recvmsg and sendmsg. +#define ACE_HAS_MSG + +// Platform supports reentrant functions (i.e., all the POSIX *_r functions). +//#define ACE_HAS_REENTRANT_FUNCTIONS + +// Platform has terminal ioctl flags like TCGETS and TCSETS. +#define ACE_HAS_TERM_IOCTLS + +// Compiler/platform correctly calls init()/fini() for shared libraries. +#define ACE_HAS_AUTOMATIC_INIT_FINI + +// Platform supports POSIX O_NONBLOCK semantics. +#define ACE_HAS_POSIX_NONBLOCK + +// Compiler/platform has correctly prototyped header files. +#define ACE_HAS_CPLUSPLUS_HEADERS + +// Compiler/platform supports SunOS high resolution timers. +// #define ACE_HAS_HI_RES_TIMER + +// Platform supports IP multicast +#define ACE_HAS_IP_MULTICAST + +// Compiler/platform does not support the "long long" datatype. +#define ACE_LACKS_LONGLONG_T +#if defined (__LL_Is_32) +#define ACE_SIZEOF_LONG_LONG 4 +#elif defined (__LL_Is_64) +#define ACE_SIZEOF_LONG_LONG 8 +#endif +// Green Hills doesn't give a preprocessor symbol for long double +#define ACE_SIZEOF_LONG_DOUBLE 8 + +// Sockets may be called in multi-threaded programs. +#define ACE_HAS_MT_SAFE_SOCKETS + +// Platform contains <poll.h>. +#define ACE_HAS_POLL + +// Platform supports POSIX timers via timestruc_t. +#define ACE_HAS_POSIX_TIME +#define ACE_HAS_SVR4_TIME + +// Platform supports the /proc file system. +#define ACE_HAS_PROC_FS + +// Platform supports the prusage_t struct. +// #define ACE_HAS_PRUSAGE_T +#define ACE_HAS_GETRUSAGE + +// Compiler/platform defines the sig_atomic_t typedef. +#define ACE_HAS_SIG_ATOMIC_T + +// Platform supports SVR4 extended signals. +#define ACE_HAS_SIGINFO_T + +// Compiler/platform provides the sockio.h file. +#define ACE_HAS_SOCKIO_H + +// Compiler supports the ssize_t typedef. +#define ACE_HAS_SSIZE_T + +// Platform supports STREAMS. +#define ACE_HAS_STREAMS + +// Platform supports STREAM pipes. +#define ACE_HAS_STREAM_PIPES + +// 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 +// ... but redefines the entrypoint names with a leading underscore +#define dlopen _dlopen +#define dlclose _dlclose +#define dlerror _dlerror +#define dlsym _dlsym +// ... and uses 'char *' rather than 'const char *' +#define ACE_HAS_CHARPTR_DL + +// DG/UX uses the same gettimeofday() prototype as OSF/1. +#define ACE_HAS_OSF1_GETTIMEOFDAY + +// Compiler/platform supports SVR4 signal typedef. +#define ACE_HAS_SVR4_SIGNAL_T + +// Compiler/platform supports SVR4 ACE_TLI (in particular, T_GETNAME stuff)... +#define ACE_HAS_SVR4_TLI + +// Compiler/platform supports sys_siglist array. +// On DG/UX this is only done if the /usr/include/sys/_int_dg_features.h +// file determines it should be turned on. It will take some work to +// figure out the magic options to turn it on reliably, so it'll have to +// be delayed for now. +//#define _TARGETTING_DGUXELF 1 +//#define _IX86_DG 1 +//#define _DGUX_TARGET 1 +//#define ACE_HAS_SYS_SIGLIST + +/* Turn off the following four defines if you want to disable threading. */ +// Compile using multi-thread libraries. +#if !defined (ACE_MT_SAFE) +#define ACE_MT_SAFE 1 +#endif + +// Platform supports threads. +#define ACE_HAS_THREADS +#define ACE_HAS_PTHREADS +// DG/UX claims to implement draft 10 of the pthreads standard. They also +// claim that draft 10 is the final standard. To get the behavior, some +// further macros need to be defined which are specific to DG/UX. +// _POSIX4A_DRAFT10_SOURCE turns on the draft 10 variant of threads. +// _POSIX4A_DRAFT_SOURCE turns on sched_yield(). +#define _POSIX4A_DRAFT10_SOURCE +#define ACE_HAS_PTHREADS_1003_DOT_1C +#define _POSIX4_DRAFT_SOURCE +// Well, here are some from the standard they don't have... +#define ACE_LACKS_KEYDELETE +#define ACE_LACKS_PTHREAD_THR_SIGSETMASK +#define ACE_HAS_SIGWAIT +#define ACE_LACKS_CONDATTR_PSHARED +#define ACE_LACKS_THREAD_PROCESS_SCOPING +// The default thread stacksize on DG/UX 4.x is 4096. This needs to be bumped +// up to do anything real in ACE. +#define ACE_NEEDS_HUGE_THREAD_STACKSIZE 65536 + +// Need to #include <sched.h> +#define ACE_NEEDS_SCHED_H + +// Compiler/platform has thread-specific storage +// +#define ACE_HAS_THREAD_SPECIFIC_STORAGE + +// Platform supports ACE_TLI timod STREAMS module. +#define ACE_HAS_TIMOD_H + +// Platform supports ACE_TLI tiuser header. +#define ACE_HAS_TIUSER_H + +// Platform provides ACE_TLI function prototypes. +#define ACE_HAS_TLI_PROTOTYPES + +// Platform supports ACE_TLI. +#define ACE_HAS_TLI + +// Platform doesn't have read-write locks natively. +#define ACE_LACKS_RWLOCK_T + +// Platform doesn't have timespec_t data type. +#define ACE_LACKS_TIMESPEC_T + +// Platform doesn't correctly support signed char +#define ACE_LACKS_SIGNED_CHAR + +// Platform doesn't have streambuf linebuffered() +#define ACE_LACKS_ACE_IOSTREAM +#define ACE_LACKS_LINEBUFFERED_STREAMBUF + +// Use the poll() event demultiplexor rather than select(). +//#define ACE_USE_POLL + +// Turns off the tracing feature. +#if !defined (ACE_NTRACE) +#define ACE_NTRACE 1 +#endif /* ACE_NTRACE */ + +// Defines the page size of the system. +#define ACE_PAGE_SIZE 4096 + +#define ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA +#define ACE_TEMPLATES_REQUIRE_SOURCE + +#define ACE_HAS_UCONTEXT_T +#define ACE_NEEDS_SYSTIME_H +#define ACE_HAS_NONCONST_GETBY +#define ACE_LACKS_MADVISE + +#if !defined (IP_ADD_MEMBERSHIP) +#define IP_ADD_MEMBERSHIP 0x13 +#endif + +#if !defined (IP_DROP_MEMBERSHIP) +#define IP_DROP_MEMBERSHIP 0x14 +#endif + +// Header files lack t_errno for ACE_TLI. +#define ACE_LACKS_T_ERRNO + +// Optimize ACE_Handle_Set for select(). +#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT + +#define ACE_DGUX +#endif /* ACE_CONFIG_H */ |