diff options
Diffstat (limited to 'ace/README')
-rw-r--r-- | ace/README | 804 |
1 files changed, 0 insertions, 804 deletions
diff --git a/ace/README b/ace/README deleted file mode 100644 index e08ed010e38..00000000000 --- a/ace/README +++ /dev/null @@ -1,804 +0,0 @@ -ACE DEFINES ------------------------------------------------------------------------------ - -The following describes the meaning of the C++ compiler macros that -may be set in the DEFFLAGS Makefile macro. When you port ACE to a new -platform and/or C++ compiler, make sure that you check to see which of -these need to be defined. Eventually, most of this information should -be auto-discovered via GNU autoconf or Larry Wall's metaconfig... - -Macro Description ------ ----------- - -ACE_HAS_64BIT_LONGS Platform has 64bit longs and 32bit ints... -ACE_HAS_ALLOCA Compiler/platform supports alloca() -ACE_HAS_ALLOCA_H Compiler/platform has <alloca.h> -ACE_HAS_AUTOMATIC_INIT_FINI Compiler/platform correctly calls init()/fini() for shared libraries -ACE_HAS_BROKEN_BITSHIFT Compiler has integer overflow problem with bit-shift operations. -ACE_HAS_BROKEN_CONVERSIONS Compiler can't handle calls like foo->operator T *() -ACE_HAS_BROKEN_CTIME Compiler/platform uses macro for ctime (e.g., MVS) -ACE_HAS_BROKEN_MSG_H Platform headers don't support <msg.h> prototypes -ACE_HAS_BROKEN_MMAP_H HP/UX does not wrap the mmap(2) header files with extern "C". -ACE_HAS_BROKEN_POSIX_TIME Platform defines struct timespec in <sys/timers.h> -ACE_HAS_BROKEN_RANDR OS/compiler's header files are inconsistent with libC definition of rand_r(). -ACE_HAS_BROKEN_SENDMSG OS/compiler omits the const from the sendmsg() prototype. -ACE_HAS_BROKEN_SETRLIMIT OS/compiler omits the const from the rlimit parameter in the setrlimit() prototype. -ACE_HAS_BROKEN_WRITEV OS/compiler omits the const from the iovec parameter in the writev() prototype. -ACE_HAS_BSTRING Platform has <bstring.h> (which contains bzero() prototype) -ACE_HAS_CANCEL_IO Platform supports the Win32 CancelIO() function (WinNT 4.0 and beyond). -ACE_HAS_CHARPTR_DL OS/platform uses char * for dlopen/dlsym args, rather than const char *. -ACE_HAS_CHARPTR_SOCKOPT OS/platform uses char * for sockopt, rather than const char * -ACE_HAS_COMPLEX_LOCK Platform supports non-standard readers/writer locks... -ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES Prototypes for both signal() and struct sigaction are consistent. -ACE_HAS_CPLUSPLUS_HEADERS Compiler/platform has correctly prototyped header files -ACE_HAS_DLL Build ACE using the frigging PC DLL nonsense... -ACE_HAS_GETRUSAGE Platform supports the getrusage() system call. -ACE_HAS_GNU_CSTRING_H Denotes that GNU has cstring.h as standard which redefines memchr() -ACE_HAS_GREENHILLS_SOCKETS Platform is using GreenHills compiler with its weird socket headers. -ACE_HAS_HI_RES_TIMER Compiler/platform supports SunOS high resolution timers -ACE_HAS_INLINED_OSCALLS Inline all the static class OS methods to remove call overhead -ACE_HAS_IP_MULTICAST Platform supports IP multicast -ACE_HAS_IRIX_GETTIMEOFDAY Denotes that IRIX 5.3 has second argument to gettimeofday() which is variable ... -ACE_HAS_IRIX62_THREADS Platform supports the very odd IRIX 6.2 threads... -ACE_HAS_LIMITED_RUSAGE_T The rusage_t structure has only two fields. -ACE_HAS_LONGLONG_T Compiler/platform supports the "long long" datatype. -ACE_HAS_LONG_MAP_FAILED Platform defines MAP_FAILED as a long constant. -ACE_HAS_MFC Platform supports Microsoft Foundation Classes -ACE_HAS_MSG Platform supports recvmsg and sendmsg -ACE_HAS_MT_SAFE_SOCKETS Sockets may be called in multi-threaded programs -ACE_HAS_NONCONST_GETBY Platform uses non-const char * in calls to gethostbyaddr, gethostbyname, getservbyname -ACE_HAS_OLD_MALLOC Compiler/platform uses old malloc()/free() prototypes (ugh) -ACE_HAS_ONEARG_SIGWAIT sigwait() takes only one argument. -ACE_HAS_ORBIX Platform has Orbix CORBA implementation -ACE_HAS_OSF_TIMOD_H Platform supports the OSF TLI timod STREAMS module -ACE_HAS_POLL Platform contains <poll.h> -ACE_HAS_POSIX_NONBLOCK Platform supports POSIX O_NONBLOCK semantics -ACE_HAS_POSIX_SEM Platform supports POSIX real-time semaphores (e.g., VxWorks and Solaris) -ACE_HAS_POSIX_TIME Platform supports the POSIX timespec_t type -ACE_HAS_PROC_FS Platform supports the /proc file system and defines tid_t in <sys/procfs.h> -ACE_HAS_PRUSAGE_T Platform supports the prusage_t struct -ACE_HAS_PTHREADS Platform supports POSIX Pthreads -ACE_HAS_PTHREAD_CONDATTR_SETKIND_NP Platform has pthread_condattr_setkind_np(). -ACE_HAS_PTHREAD_DSTATE_PTR pthread_attr_setdetachstate() takes pointer to 2nd arg. -ACE_HAS_PTHREAD_EQUAL Platform has pthread_equal(). -ACE_HAS_PTHREAD_GETSPECIFIC_DATAPTR pthread_getspecific() takes a data pointer for 2nd arg. -ACE_HAS_PTHREAD_MUTEXATTR_SETKIND_NP Platform has pthread_mutexattr_setkind_np(). -ACE_HAS_PTHREAD_T Platform has pthread_t defined. -ACE_HAS_PTHREAD_YIELD_VOIDPTR pthread_yield() takes a void pointer arg. -ACE_HAS_RECURSIVE_THR_EXIT_SEMANTICS Platform will recurse infinitely on thread exits from TSS cleanup routines (e.g., AIX). -ACE_HAS_REENTRANT_FUNCTIONS Platform supports reentrant functions (i.e., all the POSIX *_r functions). -ACE_HAS_REGEX Platform supports the POSIX regular expression library -ACE_HAS_RTLD_LAZY_V Explicit dynamic linking permits "lazy" symbol resolution -ACE_HAS_SELECT_H Platform has special header for select(). -ACE_HAS_SEMUN Compiler/platform defines a union semun for SysV shared memory -ACE_HAS_SIGINFO_T Platform supports SVR4 extended signals -ACE_HAS_SIGNAL_OBJECT_AND_WAIT Platform supports the Win32 SignalObjectAndWait() function (WinNT 4.0 and beyond). -ACE_HAS_SIGNAL_SAFE_OS_CALLS Automatically restart OS system calls when EINTR occurs -ACE_HAS_SIGWAIT Platform/compiler has the sigwait(2) prototype -ACE_HAS_SIG_ATOMIC_T Compiler/platform defines the sig_atomic_t typedef -ACE_HAS_SIG_C_FUNC Compiler requires extern "C" functions for signals. -ACE_HAS_SIN_LEN Platform supports new BSD inet_addr len field. -ACE_HAS_SIZET_SOCKET_LEN OS/compiler uses size_t * rather than int * for socket lengths -ACE_HAS_SOCKIO_H Compiler/platform provides the sockio.h file -ACE_HAS_SPARCWORKS_401_SIGNALS Compiler has brain-damaged SPARCwork SunOS 4.x signal prototype... -ACE_HAS_SSIZE_T Compiler supports the ssize_t typedef -ACE_HAS_STHREADS Platform supports Solaris threads -ACE_HAS_STANDARD_CPP_LIBRARY Platform/compiler supports Standard C++ Library -ACE_HAS_STRBUF_T Compiler/platform supports struct strbuf -ACE_HAS_STREAMS Platform supports STREAMS -ACE_HAS_STREAM_PIPES Platform supports STREAM pipes -ACE_HAS_STRERROR Compiler/platform supports strerror () -ACE_HAS_STRICT Use the STRICT compilation mode on Win32. -ACE_HAS_STRUCT_NETDB_DATA Compiler/platform has strange hostent API for socket *_r() calls -ACE_HAS_STRUCT_PROTOENT_DATA Compiler/platform has strange protoent API for socket *_r() calls -ACE_HAS_SUNOS4_GETTIMEOFDAY SunOS 4 style prototype. -ACE_HAS_SUNOS4_SIGNAL_T Compiler has horrible SunOS 4.x signal handlers... -ACE_HAS_SVR4_DYNAMIC_LINKING Compiler/platform supports SVR4 dynamic linking semantics -ACE_HAS_SVR4_GETTIMEOFDAY Compiler/platform supports SVR4 gettimeofday() prototype -ACE_HAS_SVR4_SIGNAL_T Compiler/platform supports SVR4 signal typedef -ACE_HAS_SVR4_TIME Platform supports the SVR4 timestruc_t type -ACE_HAS_SVR4_TLI Compiler/platform supports SVR4 TLI (in particular, T_GETNAME stuff)... -ACE_HAS_SYSCALL_GETRUSAGE HP/UX has an undefined syscall for GETRUSAGE... -ACE_HAS_SYSCALL_H Compiler/platform contains the <sys/syscall.h> file. -ACE_HAS_SYSENT_H Platform provides <sysent.h> header -ACE_HAS_SYSINFO Platform supports system configuration information -ACE_HAS_SYSV_IPC Platform supports System V IPC (most versions of UNIX, but not Win32) -ACE_HAS_SYSV_SPRINTF Platform/compiler support the System V sprintf(). -ACE_HAS_SYS_ERRLIST Platform/compiler supports _sys_errlist symbol -ACE_HAS_SYS_FILIO_H Platform provides <sys/filio.h> header -ACE_HAS_SYS_SIGLIST Compiler/platform supports sys_siglist array -ACE_HAS_TEMPLATE_TYPEDEFS Compiler implements templates that support typedefs inside of classes used as formal arguments to a template class. -ACE_HAS_TERM_IOCTLS Platform has terminal ioctl flags like TCGETS and TCSETS. -ACE_HAS_THREADS Platform supports threads -ACE_HAS_THREAD_SELF Platform has thread_self() rather than pthread_self() (e.g., DCETHREADS and AIX) -ACE_HAS_THREAD_SPECIFIC_STORAGE Compiler/platform has thread-specific storage -ACE_HAS_THR_C_DEST The pthread_keycreate() routine *must* take extern C functions. -ACE_HAS_THR_C_FUNC The pthread_create() routine *must* take extern C functions. -ACE_HAS_TID_T Platform supports the tid_t type (e.g., AIX) -ACE_HAS_TIMEZONE_GETTIMEOFDAY Platform/compiler supports timezone * as second parameter to gettimeofday() -ACE_HAS_TIMOD_H Platform supports TLI timod STREAMS module -ACE_HAS_TIUSER_H Platform supports TLI tiuser header -ACE_HAS_TLI Platform supports TLI -ACE_HAS_TLI_PROTOTYPES Platform provides TLI function prototypes -ACE_HAS_UCONTEXT_T Platform supports ucontext_t (which is used in the extended signal API). -ACE_HAS_UNION_WAIT The wait() system call takes a (union wait *) rather than int * -ACE_HAS_UNIXWARE_SVR4_SIGNAL_T Has inconsistent SVR4 signal stuff, but not the same as the other platforms -ACE_HAS_UNICODE Platform/compiler supports UNICODE -ACE_HAS_USING_KEYWORD Compiler supports the new using keyword for C++ namespaces. -ACE_HAS_VOIDPTR_MMAP Platform requires void * for mmap(). -ACE_HAS_VOIDPTR_SOCKOPT OS/compiler uses void * arg 4 setsockopt() rather than const char * -ACE_HAS_WIN32_TRYLOCK The Win32 platform support TryEnterCriticalSection() (WinNT 4.0 and beyond) -ACE_HAS_WINSOCK2 The Win32 platform supports WinSock 2.0 -ACE_HAS_XLI Platform has the XLI version of TLI -ACE_HAS_XT Platform has Xt and Motif -ACE_HAS_YIELD_VOID_PTR Platform requires pthread_yield() to take a NULL. -ACE_LACKS_CONST_TIMESPEC_PTR Platform forgot const in cond_timewait (e.g., HP/UX). -ACE_LACKS_COND_T Platform lacks condition variables (e.g., Win32 and VxWorks) -ACE_LACKS_CONDATTR_PSHARED Platform has no implementation of pthread_condattr_setpshared(), even though it supports pthreads! -ACE_LACKS_MADVISE Platform lacks madvise() (e.g., Linux) -ACE_LACKS_MALLOC_H Platform lacks malloc.h -ACE_LACKS_MKTEMP ACE has no mktemp() -ACE_LACKS_MMAP The platform doesn't have mmap(2) (e.g., SCO UNIX). -ACE_LACKS_MODE_MASKS Platform/compiler doesn't have open() mode masks. -ACE_LACKS_MPROTECT The platform doesn't have mprotect(2) (e.g., EPLX real time OS from CDC (based on LYNX)) -ACE_LACKS_MSGBUF_T Platform lacks struct msgbuf (e.g., NT and MSV). -ACE_LACKS_MSYNC Platform lacks msync() (e.g., Linux) -ACE_LACKS_PARAM_H Platform lacks <sys/param.h> (e.g., MVS) -ACE_LACKS_POSIX_PROTO Platform lacks POSIX prototypes for certain System V functions like shared memory and message queues. -ACE_LACKS_PTHREAD_THR_SIGSETMASK Platform lacks pthread_thr_sigsetmask (e.g., MVS, HP/UX, and OSF/1 3.2) -ACE_LACKS_RECVMSG Platform lacks recvmsg() (e.g., Linux) -ACE_LACKS_RPC_H Platform lacks the ONC RPC header files. -ACE_LACKS_RWLOCK_T Platform lacks readers/writer locks. -ACE_LACKS_SBRK Platform lacks a working sbrk() (e.g., Win32 and VxWorks) -ACE_LACKS_SEMBUF_T Platform lacks struct sembuf (e.g., Win32 and VxWorks) -ACE_LACKS_SETDETACH Platform lacks pthread_attr_setdetachstate() (e.g., HP/UX 10.x) -ACE_LACKS_SETSCHED Platform lacks pthread_attr_setsched() (e.g. MVS) -ACE_LACKS_KEYDELETE Platform lacks TSS keydelete (e.g., HP/UX) -ACE_LACKS_SENDMSG Platform lacks sendmsg() (e.g., Linux) -ACE_LACKS_SI_ADDR Platform lacks the si_addr field of siginfo_t (e.g., VxWorks and HP/UX 10.x) -ACE_LACKS_SYSV_SHMEM Platform lacks System V shared memory (e.g., Win32 and VxWorks) -ACE_LACKS_SIGINFO_H Platform lacks the siginfo.h include file (e.g., MVS) -ACE_LACKS_SOCKETPAIR Platform lacks the socketpair() call (e.g., SCO UNIX) -ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES Compiler doesn't support static data member templates -ACE_LACKS_STRRECVFD Platform doesn't define struct strrecvfd. -ACE_LACKS_SYSCALL Platform doesn't have syscall() prototype -ACE_LACKS_SYSV_MSQ_PROTOS Platform doesn't have prototypes for Sys V msg()* queues. -ACE_LACKS_T_ERRNO Header files lack t_errno for TLI -ACE_LACKS_THREAD_STACK_SIZE Platform lacks pthread_attr_setstacksize() (e.g., Linux pthreads) -ACE_LACKS_UCONTEXT_H Platform lacks the ucontext.h file -ACE_LACKS_UNIX_DOMAIN_SOCKETS ACE platform has no UNIX domain sockets -ACE_LACKS_UTSNAME_T Platform lacks struct utsname (e.g., Win32 and VxWorks) -ACE_MT_SAFE Compile using multi-thread libraries -ACE_NDEBUG Turns off debugging features -ACE_NEEDS_HUGE_THREAD_STACKSIZE Required by platforms with small default stacks. -ACE_NEEDS_READV Platform doesn't define readv, so use our own -ACE_NEEDS_SYSTIME_H <time.h> doesn't automatically #include /**/ <sys/time.h> -ACE_NEEDS_WRITEV Platform doesn't define writev, so use our own -ACE_NLOGGING Turns off the LM_DEBUG and LM_ERROR logging macros... -ACE_NTRACE Turns off the tracing feature. -ACE_PAGE_SIZE Defines the page size of the system -ACE_REDEFINES_XTI_FUNCTIONS Platform redefines the t_... names (UnixWare) -ACE_SELECT_USES_INT Platform uses int for select() rather than fd_set -ACE_TEMPLATES_REQUIRE_PRAGMA Compiler's template mechanism must use a pragma This is used for AIX's C++ compiler. -ACE_TEMPLATES_REQUIRE_SOURCE Compiler's template mechanim must see source code (i.e., .cpp files). This is used for GNU G++. -ACE_TEMPLATES_REQUIRE_SPECIALIZATION Compiler's template mechanism requires the use of explicit C++ specializations for all used templates. This is also used for GNU G++ if you don't use the "repo" patches. -ACE_USE_POLL Use the poll() event demultiplexor rather than select(). -ACE_WSOCK_VERSION A parameter list indicating the version of WinSock (e.g., "1, 1" is version 1.1). ----------------------------------------- - -The following is a partial list of where some of these macros are used -in the code. This list was originally compiled by Jam Hamidi -(jh1@core01.osi.com). It is now hopelessly out of date. I hope -someone will come along and update it. - -ACE_HAS_ALLOCA: ---------------- - - Used in: - libsrc/IPC_SAP/SOCK_SAP/SOCK_Connect.C - for allocation of iovp - libsrc/IPC_SAP/SPIPE_SAP/SPIPE_Msg.C - for alocation of iovp - - In solaris: - alloca() allocates size bytes of space in the stack frame of - the caller, and returns a pointer to the allocated block. - This temporary space is automatically freed when the caller - returns. Note: if the allocated block is beyond the current - stack limit, the resulting behavior is undefined. - - In HPUX: - no equivalent. - - Notes: - in HPUX it has to do new and delete. Affects performance. - - -ACE_HAS_AUTOMATIC_INIT_FINI: ----------------------------- - - Used in: - libsrc/Service_Configurator/Service_Repository.i - libsrc/Service_Configurator/Parse_Node.i - include/Parse_Node.i - include/Service_Repository.i - - In solaris: - _init() initializes a loadable module. It is called before - any other routine in a loadable module. - _info() returns information about a loadable module. - _fini() should return the return value from mod_remove(9F). - This flag if set, doesn't do anything. If not set, forces - _init() and _fini() to be executed as is: - dlsym ((char *) handle, "_fini"). - - In HPUX: - don't set. - Maybe have to look into shl_load( ), shl_definesym( ), - shl_findsym( ), shl_gethandle( ), shl_getsymbols( ), - shl_unload( ), shl_get( )(3X) - explicit load of shared libraries - Means Service Configurator won't be available. - TBA. - - -ACE_HAS_CPLUSPLUS_HEADERS: --------------------------- - - Used In: - ace/OS.h - - HPUX: - set it. - - Notes: - If this is not defined, libc.h and osfcn.h get included. - Only needed for older compiler/OS platforms that don't - provide standard C++ header files in /usr/include. - -ACE_HAS_HI_RES_TIMER: ---------------------- - - Used In: - libsrc/Misc/High_Res_Timer.h - libsrc/Misc/High_Res_Timer.C - include/High_Res_Timer.h - - In Solaris, - C++ wrapper around gethrtime(), which returns a long long. - gethrtime() returns the current high-resolution real time. - Time is expressed as nanoseconds since some arbitrary time - in the past; it is not correlated in any way to the time of - day, and thus is not subject to resetting, drifting, etc. - - In HPUX - look into: getclock(), reltimer(), getitimer() - maybe even vtimes structure vm_utime, vm_stime ? - - Notes: - TBA - - -ACE_HAS_LONGLONG_T: -------------------- - - Used In: - libsrc/Misc/High_Res_Timer.i - libsrc/Misc/High_Res_Timer.C - include/High_Res_Timer.i - - Solaris: - has long long - - HPUX: - doesn't. - - -ACE_LACKS_T_ERRNO: -------------------- - - Used In: - ace/OS.h - - HPUX: - set it. - - Notes: - if set, adds: - extern int t_errno; - - -ACE_HAS_POSIX_NONBLOCK: ------------------------ - - Used in: - ace/OS.h - - HPUX: - set it. - - Notes: - if defined, sets ACE_NONBLOCK and O_NONBLOCK - O_NONBLOCK is used in libsrc/Misc/misc.C to do a - fcntl (fd, F_SETFL, opt) - ACE_NONBLOCK is used in libsrc/IPC_SAP/FIFO_SAP/FIFO_Recv.C in the - disable member function and options passed to the open function - in libsrc/IPC_SAP/FIFO_SAP/FIFO.C - - -ACE_HAS_PROC_FS: ----------------- - - Used in: - ace/OS.h - libsrc/Misc/Profile_Timer.i - - Notes: - if set, includes <sys/procfs.h> - the PIOCUSAGE define is used in Profile_Timer. - - Solaris: - procfs.h defines things for the prpsinfo structure (basically to - do a "ps" from inside a program). - - HPUX: - don't set: obviously a different mechanism. - Look into /usr/include/sys/proc.h. The structure is proc. The - pointer to the kernel's proc table may be obtained by - extern struct proc *proc, *procNPROC; - extern int nproc; - - -ACE_HAS_PRUSAGE_T: ------------------- - - Used in: - libsrc/Misc/Profile_Timer.h - libsrc/Misc/Profile_Timer.C - - Notes: - If defined, declares the Profile_Timer class that does start(), - stop() and basically gets real_time, user_time, system_time for - an interval. - This stuff is highly non-portable. - - HPUX: - don't set - - -ACE_HAS_RTLD_LAZY_V: --------------------- - - Used in: - ace/OS.h - - Notes: - if not defined, does a: - #defines RTLD_LAZY 1. - This is the mode argument passed to dlopen(path,mode), used in - libsrc/Service_Configurator/Parse_Node.i - - Solaris: - dlopen() is one of a family of routines that give the user - direct access to the dynamic linking facilities. (SEE - SunOS 5.3 Linker and Libraries Manual ). These routines are - made available via the library loaded when the option -ldl - is passed to the link-editor. - - These routines are available to dynamically linked execut- - ables ONLY. - - HPUX: - don't set. - look into: - shl_load( ), shl_definesym( ), shl_findsym( ), shl_gethandle( ), - shl_getsymbols( ), shl_unload( ), shl_get( )(3X) - - explicit load of shared libraries - - -ACE_HAS_SEMUN: --------------- - - Used in: - libsrc/Semaphores/Semaphore_Simple.h - - Notes: - if not defined, defines semun as: - union semun { - int val; /* value for SETVAL */ - struct semid_ds *buf; /* buffer for IPC_STAT & IPC_SET */ - ushort *array; /* array for GETALL & SETALL */ - }; - - HPUX: - don't set. - in /usr/include/sem.h: - /* The fourth argument to semctl() varies depending on the value of - its first argument. If desired, "union semun" can be declared - by the user, but this is not necessary since the individual - member can just be passed as the argument. */ - - -ACE_HAS_SIG_ATOMIC_T: ---------------------- - - Used in: - ace/OS.h - - Notes: - if not defined, does a: - typedef int sig_atomic_t; - This is used in the Reactor and service configurator. - - HPUX: - set it. - in /usr/include/sys/signal.h: - typedef unsigned int sig_atomic_t; - - -ACE_HAS_SSIZE_T: ----------------- - - Used in: - ace/OS.h - - Notes: - if not defined, does a - typedef int ssize_t; - used mostly in IPC_SAP. (don't confuse with size_t). - - HPUX: - set it. - in /usr/include/sys/types.h - - -ACE_HAS_STRBUF_T: ------------------ - - Used in: - include/Str_Buf.h - - Notes: - if not defined, declares the strbuf structure as: - struct strbuf - { - int maxlen; /* no. of bytes in buffer */ - int len; /* no. of bytes returned */ - void *buf; /* pointer to data */ - }; - - Solaris: - defined in /usr/include/sys/stropts.h - Sys V.4 Streams. - uses strbuf as parameter to putmsg, putpmsg: - int putmsg(int fildes, const struct strbuf *ctlptr, - const struct strbuf *dataptr, int flags); - - HPUX: - don't set. - no SYS V.4 streams. - - -ACE_HAS_STREAMS: ----------------- - - Used In: - ace/OS.h - libsrc/IPC_SAP/SOCK_SAP/LSOCK.C - - Notes: - if defined, includes <stropts.h> - - HPUX: - don't set. - no SYS V.4 streams. - - -ACE_HAS_STREAM_PIPES: ---------------------- - - Used in: - libsrc/IPC_SAP/SPIPE_SAP/SPIPE_Msg.h - libsrc/IPC_SAP/SPIPE_SAP/SPIPE_Msg.C - libsrc/IPC_SAP/SPIPE_SAP/SPIPE_Listener.h - libsrc/IPC_SAP/SPIPE_SAP/SPIPE_Listener.C - libsrc/IPC_SAP/SPIPE_SAP/SPIPE.h - libsrc/IPC_SAP/SPIPE_SAP/SPIPE.C - libsrc/IPC_SAP/FIFO_SAP/FIFO_Send_Msg.h - libsrc/IPC_SAP/FIFO_SAP/FIFO_Send_Msg.C - libsrc/IPC_SAP/FIFO_SAP/FIFO_Send_Msg.i - libsrc/IPC_SAP/FIFO_SAP/FIFO_Recv_Msg.h - libsrc/IPC_SAP/FIFO_SAP/FIFO_Recv_Msg.C - libsrc/IPC_SAP/FIFO_SAP/FIFO_Recv_Msg.i - - Notes: - if not set, won't be able to use the SPIPE class (IPC_SAP) with - rendezvous handles. - - HPUX: - don't set. - No sysV.4 streams. - - -ACE_HAS_STRERROR: ------------------ - - Used in: - ace/OS.h - - Notes: - if not defined, does a: - #define strerror(err) sys_errlist[err] - - Solaris: - /usr/include/string.h - - HPUX: - set it. - in /usr/include/sys/errno.h and string.h - extern char *strerror (int); - - -ACE_HAS_SVR4_DYNAMIC_LINKING: ------------------------------ - - Used in: - ace/OS.h - tests/Service_Configurator/CCM_App.C - - Notes: - if defined, includes <dlfcn.h> - with dlopen(), dlsym(), etc.. - - HPUX: - don't set. - has its own: - shl_findsym( ), shl_gethandle( ), shl_getsymbols( ), - shl_unload( ), shl_get( )(3X) - explicit load of shared libraries - - -ACE_HAS_SVR4_GETTIMEOFDAY: --------------------------- - - Used in: - ace/OS.h - libsrc/Reactor/Timer_Queue.i - - Notes: - has to do with gettimeofday (). - - Solaris: - gettimeofday (struct timeval *tp) - - HPUX: - don't set. - it has gettimeofday (struct timeval *tp, struct timezone *tzp); - most calls do a: - #if defined (ACE_HAS_SVR4_GETTIMEOFDAY) - ::gettimeofday (&cur_time); - #else - ::gettimeofday (&cur_time, 0); - #endif /* ACE_HAS_SVR4_GETTIMEOFDAY */ - - -ACE_HAS_POLL: ------------- - Used in: - ace/OS.h - - Notes: - #if defined (ACE_HAS_POLL) - #include /**/ <poll.h> - #endif /* ACE_HAS_POLL */ - -ACE_USE_POLL_IMPLEMENTATION: ------------------- - - Used in: - ace/OS.h - - Notes: - Use the poll() event demultiplexor rather than select(). - - HPUX: - set it. - - -ACE_HAS_SVR4_SIGNAL_T: ----------------------- - - Used in: - ace/OS.h - - Notes: - #if defined (ACE_HAS_SVR4_SIGNAL_T) - typedef void (*SignalHandler)(int); - typedef void (*SignalHandlerV)(void); - #elif defined (ACE_HAS_SIGNALHANDLERV_INT_ARG) - typedef void (*SignalHandler)(int); - typedef void (*SignalHandlerV)(int); - #else - #define SignalHandler SIG_PF - typedef void (*SignalHandlerV)(...); - #endif /* ACE_HAS_SVR4_SIGNAL_T */ - - HPUX: - set it. - - -ACE_HAS_SVR4_TLI: ------------------ - - Used in: - libsrc/IPC_SAP/TLI_SAP/TLI.C - libsrc/IPC_SAP/TLI_SAP/TLI.h - libsrc/IPC_SAP/TLI_SAP/TLI_Stream.C - - Notes: - TLI is the transport layer calls as in: t_bind(), t_open(), t_unbind(), - t_optmgmt(), ... in SunOS and Solaris. - - HPUX: - don't set. - Not supported. - - -ACE_HAS_SYS_FILIO_H: --------------------- - - Used in: - ace/OS.h - - Notes: - if not defined, includes <sys/filio.h>. - didn't find any reference to anything in this file in the ACE code. - - Solaris: - filio.h defines FIOCLEX, FIOASYNC, ... as _IO('f', 1), .. - for FIOLFS,.. solaris has this to say: - /* - * ioctl's for Online: DiskSuite. - * WARNING - the support for these ioctls may be withdrawn - * in the future OS releases. - */ - - HPUX: - <sys/ioctl.h> defines FIOASYNC and some other ones, - <sgtty.h> defines some like FIOCLEX. - some are never defined. - use #ifdef HP-UX to modify sysincludes.h - - -ACE_HAS_SYS_SIGLIST: --------------------- - - Used in: - ace/OS.h - libsrc/Log_Msg/Log_Msg.C - - Notes: - if not defined, does a: - extern const char **_sys_siglist; - - Solaris: - This is an array holding signal descriptions. - - HPUX: - don't set. - Some additional work is required. In libsrc/Log_Msg/Log_Msg.C, - sys_siglist is used regardless of ACE_HAS_SYS_SIGLIST. - have to add #ifdefs to remove them. - - -ACE_HAS_TEMPLATE_TYPEDEFS: --------------------------- - - Used in: - libsrc/ASX/*.[Chi] - - Notes: - cfront-based C++ compilers don't implement templates that support - classes with typedefs of other types as formal arguments. This - typedef uses the C++ preprocessor to work around this problem. - -ACE_HAS_THREADS: ----------------- - - Used in: - libsrc/Service_Configurator/Service_Record.i - libsrc/Service_Configurator/Svc_Conf.y.C - libsrc/Service_Configurator/Thread_Spawn.i - libsrc/Threads/Synch.C - libsrc/Threads/Synch.i - libsrc/Threads/Thr_Manager.i - libsrc/ASX/STREAM.C - libsrc/ASX/Queue.C - libsrc/ASX/Module.C - libsrc/ASX/Stream_Modules.C - libsrc/ASX/Multiplexor.C - libsrc/ASX/Message_List.C - include/Message_List.h - include/Module.h - include/Multiplexor.h - include/Queue.h - include/STREAM.h - include/Stream_Modules.h - include/Service_Record.h - include/Thread_Spawn.h - include/Synch.h - include/Thr_Manager.h - - Notes: - We use Message_List.h even in a non-threaded environment. - our XOMessageList.h does this by #ifdefs around Threaded things. - - HPUX: - not until 10.0. - - -ACE_HAS_THREAD_T: ------------------ - - Used in: - ace/OS.h - - Notes: - #if !defined (ACE_HAS_THREAD_T) - typedef int thread_t; - #endif /* !ACE_HAS_THREAD_T */ - - HPUX: - don't set. - - -ACE_HAS_TIMOD_H: ----------------- - - Used in: - ace/OS.h - - Notes: - if defined, include <sys/timod.h> - - Solaris: - timod is a STREAMS module for use with the Transport Inter- - face (TI) functions of the Network Services library. The - timod module converts a set of ioctl(2) calls into STREAMS - messages that may be consumed by a transport protocol pro- - vider that supports the Transport Interface. This allows a - user to initiate certain TI functions as atomic operations. - - HPUX: - don't set. - - -ACE_HAS_TIUSER_H: ------------------ - - Used in: - ace/OS.h - - Notes: - if set, includes <tiuser.h> - - Solaris: - in conjunction with t_bind, t_accept, etc.. transport layer. - - HPUX: - don't set. - - -ACE_USE_POLL_IMPLEMENTATION: ----------------------------- - - Used in: - libsrc/Reactor/Reactor.i - include/Event_Handler.h - ace/OS.h - include/Reactor.h - - Notes: - in the reactor, use poll instead of select. In general, - good thing to have set. - - Don't set this, it will get set by ACE_HAS_SVR4_POLL - |