summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog-98b19
-rw-r--r--ace/Message_Queue.cpp4
-rw-r--r--ace/OS.cpp8
-rw-r--r--ace/OS.h26
-rw-r--r--ace/OS.i44
-rw-r--r--ace/README1130
-rw-r--r--ace/config-chorus.h4
-rw-r--r--ace/config-dgux-4.11-epc.h2
-rw-r--r--ace/config-dgux-4.x-ghs.h4
-rw-r--r--ace/config-freebsd-pthread.h2
-rw-r--r--ace/config-freebsd.h2
-rw-r--r--ace/config-irix5.3-g++.h2
-rw-r--r--ace/config-irix5.3-sgic++.h4
-rw-r--r--ace/config-irix6.x-g++.h2
-rw-r--r--ace/config-irix6.x-sgic++-nothreads.h4
-rw-r--r--ace/config-irix6.x-sgic++.h2
-rw-r--r--ace/config-linux-common.h2
-rw-r--r--ace/config-mvs.h2
-rw-r--r--ace/config-netbsd.h2
-rw-r--r--ace/config-psos-diab.h6
-rw-r--r--ace/config-psos-tm.h6
-rw-r--r--ace/config-psosim-g++.h2
-rw-r--r--ace/config-sco-4.2-nothread.h4
-rw-r--r--ace/config-sco-5.0.0-mit-pthread.h2
-rw-r--r--ace/config-sco-5.0.0.h2
-rw-r--r--ace/config-sunos4-g++.h2
-rw-r--r--ace/config-sunos4-sun4.1.4.h2
-rw-r--r--ace/config-sunos4-sun4.x.h2
-rw-r--r--ace/config-tandem.h6
-rw-r--r--ace/config-unixware-2.1.2-g++.h2
-rw-r--r--ace/config-vxworks5.x.h2
-rw-r--r--ace/config-win32-common.h4
32 files changed, 941 insertions, 366 deletions
diff --git a/ChangeLog-98b b/ChangeLog-98b
index 01dd8ab4bf7..6b2b2ba9e92 100644
--- a/ChangeLog-98b
+++ b/ChangeLog-98b
@@ -1,3 +1,22 @@
+Sat Sep 12 16:30:39 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
+
+ * ace/README: Reformatted this file and also changed
+ ACE_REQUIRES_FUNC_DEFINITIONS
+ ACE_NEEDS_READV
+ ACE_NEEDS_SCHED_H
+ ACE_NEEDS_SYSTIME_H
+ ACE_NEEDS_WRITEV
+
+ to
+
+ ACE_NEEDS_FUNC_DEFINITIONS
+ ACE_LACKS_READV
+ ACE_LACKS_SCHED_H
+ ACE_LACKS_SYSTIME_H
+ ACE_LACKS_WRITEV
+
+ respectively.
+
Sat Sep 12 13:13:39 EDT 1998 James CE Johnson <jcej@lads.com>
docs/tutorials/003/Makefile
diff --git a/ace/Message_Queue.cpp b/ace/Message_Queue.cpp
index e33b7b139fb..51156850dd0 100644
--- a/ace/Message_Queue.cpp
+++ b/ace/Message_Queue.cpp
@@ -250,7 +250,7 @@ ACE_Message_Queue_Vx::wait_not_empty_cond (ACE_Guard<ACE_Null_Mutex> &mon,
return 0;
}
-#if ! defined (ACE_REQUIRES_FUNC_DEFINITIONS)
+#if ! defined (ACE_NEEDS_FUNC_DEFINITIONS)
int
ACE_Message_Queue_Vx::peek_dequeue_head (ACE_Message_Block *&,
ACE_Time_Value *tv)
@@ -258,7 +258,7 @@ ACE_Message_Queue_Vx::peek_dequeue_head (ACE_Message_Block *&,
ACE_UNUSED_ARG (tv);
ACE_NOTSUP_RETURN (-1);
}
-#endif /* ! ACE_REQUIRES_FUNC_DEFINITIONS */
+#endif /* ! ACE_NEEDS_FUNC_DEFINITIONS */
#endif /* VXWORKS */
diff --git a/ace/OS.cpp b/ace/OS.cpp
index cfd601b27a3..3708d0df684 100644
--- a/ace/OS.cpp
+++ b/ace/OS.cpp
@@ -3454,7 +3454,7 @@ ACE_OS::fork_exec (ASYS_TCHAR *argv[])
# endif /* ACE_WIN32 */
}
-# if defined (ACE_NEEDS_WRITEV)
+# if defined (ACE_LACKS_WRITEV)
// "Fake" writev for operating systems without it. Note that this is
// thread-safe.
@@ -3496,9 +3496,9 @@ writev (ACE_HANDLE handle, ACE_WRITEV_TYPE iov[], int n)
# endif /* !defined (ACE_HAS_ALLOCA) */
return result;
}
-# endif /* ACE_NEEDS_WRITEV */
+# endif /* ACE_LACKS_WRITEV */
-# if defined (ACE_NEEDS_READV)
+# if defined (ACE_LACKS_READV)
// "Fake" readv for operating systems without it. Note that this is
// thread-safe.
@@ -3552,7 +3552,7 @@ readv (ACE_HANDLE handle,
# endif /* !defined (ACE_HAS_ALLOCA) */
return length;
}
-# endif /* ACE_NEEDS_READV */
+# endif /* ACE_LACKS_READV */
# if defined (ACE_NEEDS_FTRUNCATE)
extern "C" int
diff --git a/ace/OS.h b/ace/OS.h
index bddb8fff323..44b16fa8f88 100644
--- a/ace/OS.h
+++ b/ace/OS.h
@@ -506,12 +506,12 @@ private:
# define ACE_NOTREACHED(a) a
# endif /* defined (__sgi) || defined (ghs) || defined (DEC_CXX) || defined(__BORLANDC__) */
-# if defined (ACE_REQUIRES_FUNC_DEFINITIONS)
+# if defined (ACE_NEEDS_FUNC_DEFINITIONS)
// It just evaporated ;-) Not pleasant.
# define ACE_UNIMPLEMENTED_FUNC(f)
# else
# define ACE_UNIMPLEMENTED_FUNC(f) f;
-# endif /* ACE_REQUIRES_FUNC_DEFINITIONS */
+# endif /* ACE_NEEDS_FUNC_DEFINITIONS */
// Easy way to designate that a class is used as a pseudo-namespace.
// Insures that g++ "friendship" anamolies are properly handled.
@@ -1044,7 +1044,7 @@ extern "C" pthread_t pthread_self (void);
# endif /* __Lynx__ */
# endif /* ACE_HAS_WINCE */
-# if defined (ACE_NEEDS_SYSTIME_H)
+# if defined (ACE_LACKS_SYSTIME_H)
// Some platforms may need to include this, but I suspect that most
// will get it from <time.h>
# if defined (VXWORKS)
@@ -1052,7 +1052,7 @@ extern "C" pthread_t pthread_self (void);
# else
# include /**/ <sys/time.h>
# endif /* VXWORKS */
-# endif /* ACE_NEEDS_SYSTIME_H */
+# endif /* ACE_LACKS_SYSTIME_H */
# if !defined (ACE_HAS_POSIX_TIME) && !defined (ACE_PSOS)
// Definition per POSIX.
@@ -2455,9 +2455,9 @@ protected:
# endif /* ACE_PSOS_SNARFS_HEADER_INFO */
-# if defined (ACE_NEEDS_SCHED_H)
+# if defined (ACE_LACKS_SCHED_H)
# include /**/ <sched.h>
-# endif /* ACE_NEEDS_SCHED_H */
+# endif /* ACE_LACKS_SCHED_H */
# if defined (ACE_HAS_WINCE)
# define islower iswlower
@@ -4417,6 +4417,9 @@ public:
size_t size,
size_t nelems,
FILE *fp);
+ static int fseek (FILE *fp,
+ long offset,
+ int ptrname);
static int fstat (ACE_HANDLE,
struct stat *);
static int ftruncate (ACE_HANDLE,
@@ -4427,7 +4430,16 @@ public:
FILE *fp);
static void rewind (FILE *fp);
- static int fseek (FILE *fp, long offset, int ptrname);
+ // = Wrappers for searching and sorting.
+ static void *bsearch (const void *key,
+ const void *base,
+ size_t nel,
+ size_t size,
+ int (*compar)(const void *, const void *));
+ static void qsort (void *base,
+ size_t nel,
+ size_t width,
+ int (*compar) (const void *, const void *));
// = A set of wrappers for file locks.
static int flock_init (ACE_OS::ace_flock_t *lock,
diff --git a/ace/OS.i b/ace/OS.i
index d1cd67458e2..fbc9d662f89 100644
--- a/ace/OS.i
+++ b/ace/OS.i
@@ -49,13 +49,13 @@ typedef char *ACE_SOCKOPT_TYPE1;
typedef const char *ACE_SOCKOPT_TYPE1;
#endif /* ACE_HAS_VOIDPTR_SOCKOPT */
-#if defined (ACE_NEEDS_WRITEV)
+#if defined (ACE_LACKS_WRITEV)
extern "C" ACE_Export int writev (ACE_HANDLE handle, ACE_WRITEV_TYPE *iov, int iovcnt);
-#endif /* ACE_NEEDS_WRITEV */
+#endif /* ACE_LACKS_WRITEV */
-#if defined (ACE_NEEDS_READV)
+#if defined (ACE_LACKS_READV)
extern "C" ACE_Export ssize_t readv (ACE_HANDLE handle, ACE_READV_TYPE *iov, int iovcnt);
-#endif /* ACE_NEEDS_READV */
+#endif /* ACE_LACKS_READV */
#if defined (ACE_NEEDS_FTRUNCATE)
extern "C" ACE_Export int ftruncate (ACE_HANDLE handle, long len);
@@ -10403,3 +10403,39 @@ ACE_OS::rewinddir (DIR *d)
ACE_UNUSED_ARG (d);
#endif /* ACE_HAS_DIRENT */
}
+
+ACE_INLINE void *
+ACE_OS::bsearch (const void *key,
+ const void *base,
+ size_t nel,
+ size_t size,
+ int (*compar)(const void *, const void *))
+{
+#if !defined (ACE_LACKS_BSEARCH)
+ return ::bsearch (key, base, nel, size, compar);
+#else
+ ACE_UNUSED_ARG (key);
+ ACE_UNUSED_ARG (base);
+ ACE_UNUSED_ARG (nel);
+ ACE_UNUSED_ARG (size);
+ ACE_UNUSED_ARG (compar);
+ ACE_NOTSUP_RETURN (-1);
+#endif /* ACE_LACKS_BSEARCH */
+}
+
+ACE_INLINE void
+ACE_OS::qsort (void *base,
+ size_t nel,
+ size_t width,
+ int (*compar) (const void *, const void *))
+{
+#if !defined (ACE_LACKS_QSORT)
+ return ::qsort (base, nel, width, compr);
+#else
+ ACE_UNUSED_ARG (base);
+ ACE_UNUSED_ARG (nel);
+ ACE_UNUSED_ARG (width);
+ ACE_UNUSED_ARG (compar);
+ ACE_NOTSUP_RETURN (-1);
+#endif /* ACE_LACKS_QSORT */
+}
diff --git a/ace/README b/ace/README
index 25c5003e954..b828b7b888a 100644
--- a/ace/README
+++ b/ace/README
@@ -10,355 +10,863 @@ in this directory to see what's already been defined. If you need to
add new macros, please send them to me and I'll add them to this file.
Eventually, most of this information should be auto-discovered via GNU
-autoconf or Larry Wall's metaconfig...
+autoconf, which Ossama Othman is working on at
+http://www.cs.wustl.edu/~othman/aceconf/.
Macro Description
----- -----------
+ACE_CAST_CONST Used to work around broken
+ SunCC ANSI casts that require
+ an extra const.
ACE_DEFINES_DEFAULT_WIN32_SECURITY_ATTRIBUTES
- Win32 only. Users want to use a predefined security attributes defined in ACE_OS::default_win32_security_attributes as the default security object.
-ACE_DISABLE_DEBUG_DLL_CHECK Define this if you don't want debug version ACE search for debug version DLLs first before looking for the DLL names specified.
-ACE_CAST_CONST Used to work around broken SunCC ANSI casts that require an extra const.
+ Win32 only. Users want to use
+ a predefined security
+ attributes defined in
+ ACE_OS::default_win32_security_attributes
+ as the default security
+ object.
+ACE_DISABLE_DEBUG_DLL_CHECK Define this if you don't want
+ debug version ACE search for
+ debug version DLLs first
+ before looking for the DLL
+ names specified.
ACE_DOESNT_INSTANTIATE_NONSTATIC_OBJECT_MANAGER
- Application will allocate its own object manager. This implicitly defines ACE_HAS_NONSTATIC_OBJECT_MANAGER. Usually used with MFC applications.
-ACE_HAS_ANSI_CASTS Platform supports new C++ style casts (dynamic_cast, static_cast, reinterpret_cast and const_cast)
-ACE_DEFAULT_THREAD_KEYS Number of TSS keys, with ACE_HAS_TSS_EMULATION _only_. Defaults to 64.
-ACE_THREADS_DONT_INHERIT_LOG_MSG Specify this if you don't want threads to inherit parent thread's ACE_Log_Msg properties.
-ACE_HAS_GNUG_PRE_2_8 Compiling with g++ prior to version 2.8.0.
-ACE_HAS_ONE_DEFINITION_RULE Compiler enforces C++ One Definition Rule
+ Application will allocate its
+ own object manager. This
+ implicitly defines
+ ACE_HAS_NONSTATIC_OBJECT_MANAGER.
+ Usually used with MFC
+ applications.
+ACE_MAIN Renames "main (int, char
+ *[])", for platforms such as
+ g++/VxWorks that don't allow
+ main. Requires the use of
+ ACE_HAS_NONSTATIC_OBJECT_MANAGER.
+ACE_MT_SAFE Compile using multi-thread libraries
+ACE_NDEBUG Turns off debugging features
+ACE_NEW_THROWS_EXCEPTIONS Compiler's 'new' throws exception on
+ failure (ANSI C++ behavior).
+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 (not used on Win32 or
+ with ACE_HAS_GETPAGESIZE).
+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_TLI_TCP_DEVICE Device the platform uses for TCP on
+ TLI. Only needed if not /dev/tcp.
+ACE_USE_POLL The OS platform supports the
+ poll() event demultiplexor
+ACE_USES_ASM_SYMBOL_IN_DLSYM Platform uses assembly symbols
+ instead of C symbols in
+ dlsym()
+ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB Platform has its standard c++
+ library in the namespace std.
+ACE_WSOCK_VERSION A parameter list indicating
+ the version of WinSock (e.g.,
+ "1, 1" is version 1.1).
+
+ACE_HAS_ANSI_CASTS Platform supports new C++
+ style casts (dynamic_cast,
+ static_cast, reinterpret_cast
+ and const_cast)
+ACE_DEFAULT_THREAD_KEYS Number of TSS keys, with
+ ACE_HAS_TSS_EMULATION _only_.
+ Defaults to 64.
+ACE_THREADS_DONT_INHERIT_LOG_MSG Specify this if you don't want
+ threads to inherit parent
+ thread's ACE_Log_Msg
+ properties.
+ACE_HAS_GNUG_PRE_2_8 Compiling with g++ prior to
+ version 2.8.0.
+ACE_HAS_ONE_DEFINITION_RULE Compiler enforces C++ One
+ Definition Rule
ACE_HAS_PRIOCNTL OS has priocntl (2).
-ACE_HAS_RECV_TIMEDWAIT Platform has the MIT pthreads APIs for
-ACE_HAS_RECVFROM_TIMEDWAIT timed send/recv operations
+ACE_HAS_RECV_TIMEDWAIT Platform has the MIT pthreads
+ APIs for
+ACE_HAS_RECVFROM_TIMEDWAIT timed send/recv operations
ACE_HAS_RECVMSG_TIMEDWAIT
-ACE_HAS_RLIMIT_RESOURCE_ENUM Platform has enum instead of int for first argument to ::{get,set}rlimit (). The value of this macro is the enum definition, e.g., enum __rlimit_resource, for Linux glibc 2.0.
-ACE_HAS_RUSAGE_WHO_ENUM Platform has enum instead of int for first argument to ::getrusage (). The value of this macro is the enum definition, e.g., enum __rusage_who, for Linux glibc 2.0.
+ACE_HAS_RLIMIT_RESOURCE_ENUM Platform has enum instead of
+ int for first argument to
+ ::{get,set}rlimit (). The
+ value of this macro is the
+ enum definition, e.g., enum
+ __rlimit_resource, for Linux
+ glibc 2.0.
+ACE_HAS_RUSAGE_WHO_ENUM Platform has enum instead of
+ int for first argument to
+ ::getrusage (). The value of
+ this macro is the enum
+ definition, e.g., enum
+ __rusage_who, for Linux glibc
+ 2.0.
ACE_HAS_SEND_TIMEDWAIT
ACE_HAS_SENDTO_TIMEDWAIT
ACE_HAS_SENDMSG_TIMEDWAIT
-ACE_HAS_STDARG_THR_DEST Platform has void (*)(...) prototype for pthread_key_create() destructor (e.g., LynxOS).
-ACE_HAS_STL_MAP_CONFLICT Used when users want to compile ACE with STL and STL map class conflicts with <net/if.h> map struct.
-ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS Platform/compiler supports Win32 structural exceptions
+ACE_HAS_STDARG_THR_DEST Platform has void (*)(...)
+ prototype for
+ pthread_key_create()
+ destructor (e.g., LynxOS).
+ACE_HAS_STL_MAP_CONFLICT Used when users want to
+ compile ACE with STL and STL
+ map class conflicts with
+ <net/if.h> map struct.
+ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS Platform/compiler supports
+ Win32 structural exceptions
ACE_HAS_READ_TIMEDWAIT
ACE_HAS_READV_TIMEDWAIT
ACE_HAS_WRITE_TIMEDWAIT
ACE_HAS_WRITEV_TIMEDWAIT
-ACE_HAS_4_4BSD_SENDMSG_RECVMSG Platform has BSD 4.4 sendmsg()/recvmsg() APIs.
-ACE_HAS_P_READ_WRITE Platform has pread() and pwrite() support
-ACE_HAS_64BIT_LONGS Platform has 64bit longs and 32bit ints. NOTE: this macro is deprecated. Instead, use ACE_SIZEOF_LONG == 8.
-ACE_HAS_AIX_BROKEN_SOCKET_HEADER Platform, such as AIX4, needs to wrap #include of sys/socket.h with #undef/#define of __cplusplus.
-ACE_HAS_AIX_HI_RES_TIMER Platform has AIX4 ::read_real_time ()
-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_BIG_FD_SET Compiler/platform has typedef u_long fdmask (e.g., Linux and SCO).
-ACE_HAS_BROKEN_NAMESPACES Compiler/platform doesn't support namespaces (or the support is not fully implemented.)
-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_ENUMS Compiler can't handle large enums (e.g., HP/UX C++)
-ACE_HAS_BROKEN_HPUX_TEMPLATES Earlier versions of HP/UX C++ are damned...
-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_NESTED_TEMPLATES MSVC has trouble with defining STL containers for nested structs and classes
-ACE_HAS_BROKEN_NON_BLOCKING_CONNECTS Platform has a bug with non-blocking connects (e.g., WinNT 4.0)
-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_READV() OS/Compiler's header files are not consistent with readv() definition.
-ACE_HAS_BROKEN_SAP_ANY Compiler can't handle the static ACE_Addr::sap_any construct.
-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_TIMESPEC_MEMBERS platform define struct timespec members as ts_sec and ts_nsec instead of tv_sec and tv_nsec. This is highly non-portable. Currently only FreeBSD 2.1.x uses it.
-ACE_HAS_BROKEN_WRITEV OS/compiler omits the const from the iovec parameter in the writev() prototype.
-ACE_HAS_BROKEN_XTI_MACROS OS header files have some problems with XTI (HP/UX 11).
-ACE_HAS_BSTRING Platform has <bstring.h> (which contains bzero() prototype)
-ACE_HAS_BYTESEX_H Platform has <bytesex.h>.
-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_CHARPTR_SPRINTF sprintf() returns char * rather than int (e.g., SunOS 4.x)
-ACE_HAS_CLOCK_GETTIME Platform supports POSIX 1.b clock_gettime ()
-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_DIRENT Compiler/platform has Dirent iterator functions
-ACE_HAS_DLFCN_H_BROKEN_EXTERN_C For platforms, e.g., RedHat 4.2/Linux 2.0.30/Alpha, that don't declare dl* functions as extern "C" in dlfcn.h.
-ACE_HAS_DLL Build ACE using the frigging PC DLL nonsense...
-ACE_HAS_EXCEPTIONS Compiler supports C++ exception handling
-ACE_HAS_GETPAGESIZE Platform supports getpagesize() call (otherwise, ACE_PAGE_SIZE must be defined, except on Win32)
-ACE_HAS_GETRUSAGE Platform supports the getrusage() system call.
-ACE_HAS_GETRUSAGE_PROTO Platform has a getrusage () prototype in sys/resource.h that differs from the one in ace/OS.i.
-ACE_HAS_GNUC_BROKEN_TEMPLATE_INLINE_FUNCTIONS GNUC 2.7.3 mistakenly takes the template definition as the place where an inline function of an argument class is first used.
-ACE_HAS_GNU_CSTRING_H Denotes that GNU has cstring.h as standard which redefines memchr()
-ACE_HAS_GPERF The GPERF utility is compiled for this platform
-ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT Optimize ACE_Handle_Set::count_bits for select() operations (common case)
-ACE_HAS_HI_RES_TIMER Compiler/platform supports SunOS high resolution timers
-ACE_HAS_IDTYPE_T Compiler/platform supports idtype_t.
-ACE_HAS_INLINED_OSCALLS Inline all the static class OS methods to remove call overhead
+ACE_HAS_4_4BSD_SENDMSG_RECVMSG Platform has BSD 4.4
+ sendmsg()/recvmsg() APIs.
+ACE_HAS_P_READ_WRITE Platform has pread() and
+ pwrite() support
+ACE_HAS_64BIT_LONGS Platform has 64bit longs and
+ 32bit ints. NOTE: this macro
+ is deprecated. Instead, use
+ ACE_SIZEOF_LONG == 8.
+ACE_HAS_AIX_BROKEN_SOCKET_HEADER Platform, such as AIX4, needs
+ to wrap #include of
+ sys/socket.h with
+ #undef/#define of
+ __cplusplus.
+ACE_HAS_AIX_HI_RES_TIMER Platform has AIX4
+ ::read_real_time ()
+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_BIG_FD_SET Compiler/platform has typedef
+ u_long fdmask (e.g., Linux and
+ SCO).
+ACE_HAS_BROKEN_NAMESPACES Compiler/platform doesn't
+ support namespaces (or the
+ support is not fully
+ implemented.)
+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_ENUMS Compiler can't handle large
+ enums (e.g., HP/UX C++)
+ACE_HAS_BROKEN_HPUX_TEMPLATES Earlier versions of HP/UX C++
+ are damned...
+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_NESTED_TEMPLATES MSVC has trouble with defining
+ STL containers for nested
+ structs and classes
+ACE_HAS_BROKEN_NON_BLOCKING_CONNECTS Platform has a bug with
+ non-blocking connects (e.g.,
+ WinNT 4.0)
+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_READV() OS/Compiler's header files are
+ not consistent with readv()
+ definition.
+ACE_HAS_BROKEN_SAP_ANY Compiler can't handle the
+ static ACE_Addr::sap_any
+ construct.
+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_TIMESPEC_MEMBERS platform define struct
+ timespec members as ts_sec and
+ ts_nsec instead of tv_sec and
+ tv_nsec. This is highly
+ non-portable. Currently only
+ FreeBSD 2.1.x uses it.
+ACE_HAS_BROKEN_WRITEV OS/compiler omits the const
+ from the iovec parameter in
+ the writev() prototype.
+ACE_HAS_BROKEN_XTI_MACROS OS header files have some
+ problems with XTI (HP/UX 11).
+ACE_HAS_BSTRING Platform has <bstring.h>
+ (which contains bzero()
+ prototype)
+ACE_HAS_BYTESEX_H Platform has <bytesex.h>.
+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_CHARPTR_SPRINTF sprintf() returns char *
+ rather than int (e.g., SunOS
+ 4.x)
+ACE_HAS_CLOCK_GETTIME Platform supports POSIX 1.b
+ clock_gettime ()
+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_DIRENT Compiler/platform has Dirent
+ iterator functions
+ACE_HAS_DLFCN_H_BROKEN_EXTERN_C For platforms, e.g., RedHat
+ 4.2/Linux 2.0.30/Alpha, that
+ don't declare dl* functions as
+ extern "C" in dlfcn.h.
+ACE_HAS_DLL Build ACE using the frigging
+ PC DLL nonsense...
+ACE_HAS_EXCEPTIONS Compiler supports C++
+ exception handling
+ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION Compiler's template
+ instantiation mechanism
+ supports 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_HAS_GETPAGESIZE Platform supports
+ getpagesize() call (otherwise,
+ ACE_PAGE_SIZE must be defined,
+ except on Win32)
+ACE_HAS_GETRUSAGE Platform supports the
+ getrusage() system call.
+ACE_HAS_GETRUSAGE_PROTO Platform has a getrusage ()
+ prototype in sys/resource.h
+ that differs from the one in
+ ace/OS.i.
+ACE_HAS_GNUC_BROKEN_TEMPLATE_INLINE_FUNCTIONS GNUC 2.7.3 mistakenly
+ takes the template definition
+ as the place where an inline
+ function of an argument class
+ is first used.
+ACE_HAS_GNU_CSTRING_H Denotes that GNU has cstring.h
+ as standard which redefines
+ memchr()
+ACE_HAS_GPERF The GPERF utility is compiled
+ for this platform
+ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT Optimize
+ ACE_Handle_Set::count_bits for
+ select() operations (common
+ case)
+ACE_HAS_HI_RES_TIMER Compiler/platform supports
+ SunOS high resolution timers
+ACE_HAS_IDTYPE_T Compiler/platform supports
+ idtype_t.
+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_IRIX62_THREADS Platform supports the very odd IRIX 6.2 threads...
-ACE_HAS_NONSTATIC_OBJECT_MANAGER Causes the ACE_Object_Manager instance to be created in main (int, char *[]), instead of as a static (global) instance.
-ACE_HAS_THR_KEYDELETE Platform supports thr_keydelete (e.g,. UNIXWARE)
-ACE_HAS_THR_MINSTACK Platform calls thr_minstack() rather than thr_min_stack() (e.g., Tandem).
-ACE_HAS_LIMITED_RUSAGE_T The rusage_t structure has only two fields.
-ACE_HAS_LONG_MAP_FAILED Platform defines MAP_FAILED as a long constant.
-ACE_HAS_MALLOC_STATS Enabled malloc statistics collection.
-ACE_HAS_MINIMUM_IOSTREAMH_INCLUSION Avoid #including ace/streams.h in OS.h. Users must include ace/streams.h, <iostream>, or <iostream.h> explicitly in their code. Some platforms, such as g++/VxWorks, have trouble compiling templates and iostreams header because of static variables in the stream headers. This flag will also avoid extra compilation and runtime overheads on some platforms.
-ACE_HAS_MFC Platform supports Microsoft Foundation Classes
-ACE_HAS_MSG Platform supports recvmsg and sendmsg
-ACE_HAS_MT_SAFE_MKTIME Platform supports MT safe mktime() call (do any of them?)
-ACE_HAS_NONCONST_GETBY Platform uses non-const char * in calls to gethostbyaddr, gethostbyname, getservbyname
-ACE_HAS_NONCONST_MSGSND Platform has a non-const parameter to msgsend() (e.g., SCO).
-ACE_HAS_NONCONST_SELECT_TIMEVAL Platform's select() uses non-const timeval* (only found on Linux right now)
-ACE_HAS_OLD_MALLOC Compiler/platform uses old malloc()/free() prototypes (ugh)
-ACE_HAS_ONLY_TWO_PARAMS_FOR_ASCTIME_R_AND_CTIME_R Uses ctime_r & asctime_r with only two parameters vs. three.
-ACE_HAS_ONLY_SCHED_OTHER Platform, e.g., Solaris 2.5, only supports SCHED_OTHER POSIX scheduling policy.
-ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R Uses ctime_r & asctime_r with only two parameters vs. three.
-ACE_HAS_OPTIMIZED_MESSAGE_QUEUE Use the semaphore implementation of ACE_Message_Queue rather than the emulated condition variable (NT and VxWorks).
-ACE_HAS_ORBIX Platform has Orbix CORBA implementation
-ACE_HAS_OSF_TIMOD_H Platform supports the OSF TLI timod STREAMS module
-ACE_HAS_PENTIUM Platform is an Intel Pentium microprocessor.
-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 struct timespec type
-ACE_HAS_PROC_FS Platform supports the /proc file system and defines tid_t in <sys/procfs.h>
-ACE_HAS_POWERPC Platform is a PowerPC microprocessor.
-ACE_HAS_PRUSAGE_T Platform supports the prusage_t struct
-ACE_HAS_PTHREADS Platform supports POSIX Pthreads, of
- one form or another. This macro says
- the platform has a pthreads variety -
- should also define one of the below
- to say which one. Also may need
- some ACE_HAS_... thing for extensions.
+ACE_HAS_IRIX62_THREADS Platform supports the very odd
+ IRIX 6.2 threads...
+ACE_HAS_NONSTATIC_OBJECT_MANAGER Causes the ACE_Object_Manager
+ instance to be created in main
+ (int, char *[]), instead of as
+ a static (global) instance.
+ACE_HAS_THR_KEYDELETE Platform supports
+ thr_keydelete (e.g,. UNIXWARE)
+ACE_HAS_THR_MINSTACK Platform calls thr_minstack()
+ rather than thr_min_stack()
+ (e.g., Tandem).
+ACE_HAS_LIMITED_RUSAGE_T The rusage_t structure has
+ only two fields.
+ACE_HAS_LONG_MAP_FAILED Platform defines MAP_FAILED as
+ a long constant.
+ACE_HAS_MALLOC_STATS Enabled malloc statistics
+ collection.
+ACE_HAS_MINIMUM_IOSTREAMH_INCLUSION Avoid #including ace/streams.h
+ in OS.h. Users must include
+ ace/streams.h, <iostream>, or
+ <iostream.h> explicitly in
+ their code. Some platforms,
+ such as g++/VxWorks, have
+ trouble compiling templates
+ and iostreams header because
+ of static variables in the
+ stream headers. This flag
+ will also avoid extra
+ compilation and runtime
+ overheads on some platforms.
+ACE_HAS_MFC Platform supports Microsoft
+ Foundation Classes
+ACE_HAS_MSG Platform supports recvmsg and
+ sendmsg
+ACE_HAS_MT_SAFE_MKTIME Platform supports MT safe
+ mktime() call (do any of
+ them?)
+ACE_HAS_NONCONST_GETBY Platform uses non-const char *
+ in calls to gethostbyaddr,
+ gethostbyname, getservbyname
+ACE_HAS_NONCONST_MSGSND Platform has a non-const
+ parameter to msgsend() (e.g.,
+ SCO).
+ACE_HAS_NONCONST_SELECT_TIMEVAL Platform's select() uses
+ non-const timeval* (only found
+ on Linux right now)
+ACE_HAS_OLD_MALLOC Compiler/platform uses old
+ malloc()/free() prototypes
+ (ugh)
+ACE_HAS_ONLY_TWO_PARAMS_FOR_ASCTIME_R_AND_CTIME_R Uses ctime_r &
+ asctime_r with only two
+ parameters vs. three.
+ACE_HAS_ONLY_SCHED_OTHER Platform, e.g., Solaris 2.5,
+ only supports SCHED_OTHER
+ POSIX scheduling policy.
+ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R Uses ctime_r & asctime_r with
+ only two parameters
+ vs. three.
+ACE_HAS_OPTIMIZED_MESSAGE_QUEUE Use the semaphore
+ implementation of
+ ACE_Message_Queue rather than
+ the emulated condition
+ variable (NT and VxWorks).
+ACE_HAS_ORBIX Platform has Orbix CORBA
+ implementation
+ACE_HAS_OSF_TIMOD_H Platform supports the OSF TLI
+ timod STREAMS module
+ACE_HAS_PENTIUM Platform is an Intel Pentium
+ microprocessor.
+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
+ struct timespec type
+ACE_HAS_PROC_FS Platform supports the /proc
+ file system and defines tid_t
+ in <sys/procfs.h>
+ACE_HAS_POWERPC Platform is a PowerPC
+ microprocessor.
+ACE_HAS_PRUSAGE_T Platform supports the
+ prusage_t struct
+ACE_HAS_PTHREADS Platform supports POSIX
+ Pthreads, of one form or
+ another. This macro says the
+ platform has a pthreads
+ variety - should also define
+ one of the below to say which
+ one. Also may need some
+ ACE_HAS_... thing for
+ extensions.
ACE_HAS_PTHREADS_DRAFT4 Platform's 'Pthreads' is .4a draft 4
ACE_HAS_PTHREADS_DRAFT6 Platform's 'Pthreads' is .4a draft 6
ACE_HAS_PTHREADS_DRAFT7 Platform's 'Pthreads' is .1c draft 7
ACE_HAS_PTHREADS_STD Platform supports POSIX.1c-1995 threads
- (This is the final standard Pthreads).
+ (This is the final standard
+ 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_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_SIGMASK Platform has pthread_sigmask() defined.
-ACE_HAS_PTHREAD_T Platform has pthread_t defined.
-ACE_HAS_PTHREAD_YIELD_VOIDPTR pthread_yield() takes a void pointer arg.
-ACE_LACKS_COND_TIMEDWAIT_RESET pthread_cond_timedwait does *not*
- reset the time argument when the
- lock is acquired.
-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_WCHAR_TYPEDEFS_CHAR Compiler typedefs wchar with char.
-ACE_HAS_XPG4_MULTIBYTE_CHAR Platform has support for multi-byte
- character support compliant with the
- XPG4 Worldwide Portability
+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_SIGMASK Platform has pthread_sigmask()
+ defined.
+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_WCHAR_TYPEDEFS_CHAR Compiler typedefs wchar with
+ char.
+ACE_HAS_XPG4_MULTIBYTE_CHAR Platform has support for
+ multi-byte character support
+ compliant with the XPG4
+ Worldwide Portability
Interface wide-character
classification.
-ACE_LACKS_FCNTL Platform lacks POSIX-style fcntl ().
-ACE_LACKS_FIFO Platform lacks UNIX FIFOs (e.g., Win32)
-ACE_LACKS_GETS Platform lacks ::gets (), or it's desired to ensure that it doesn't get used. Linux egcs g++ warns against using it.
-ACE_LACKS_INLINE_FUNCTIONS Platform can't handle "inline" keyword correctly.
-ACE_LACKS_NETDB_REENTRANT_FUNCTIONS Platform does not support reentrant netdb functions (getprotobyname_r, getprotobynumber_r, gethostbyaddr_r, gethostbyname_r, getservbyname_r).
-ACE_HAS_REGEX Platform supports the POSIX regular expression library
+ACE_HAS_REGEX Platform supports the POSIX
+ regular expression library
ACE_HAS_SELECT_H Platform has special header for select().
-ACE_USE_SELECT_REACTOR_FOR_REACTOR_IMPL For Win32: Use Select_Reactor as default implementation of Reactor instead of WFMO_Reactor.
-ACE_HAS_SEMUN Compiler/platform defines a union semun for SysV shared memory
-ACE_HAS_SET_T_ERRNO Platform has a function to set t_errno (e.g., Tandem).
-ACE_HAS_SIGINFO_T Platform supports SVR4 extended signals
-ACE_HAS_SIGISMEMBER_BUG Platform has bug with sigismember() (HP/UX 11).
-ACE_HAS_SIG_MACROS Platform/compiler has macros for sig{empty,fill,add,del}set (e.g., SCO and FreeBSD)
-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_SOCKADDR_MSG_NAME Platform requires (struct sockaddr *) for msg_name field of struct msghdr.
-ACE_HAS_SOCKIO_H Compiler/platform provides the sockio.h file
-ACE_HAS_SOCKLEN_T Platform provides socklen_t type, such as Linux with glibc2.
-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_STRDUP_EMULATION Platform/compiler lacks strdup() (e.g., VxWorks, Chorus, WinCE)
-ACE_HAS_STREAMS Platform supports STREAMS
+ACE_USE_SELECT_REACTOR_FOR_REACTOR_IMPL For Win32: Use Select_Reactor
+ as default implementation of
+ Reactor instead of
+ WFMO_Reactor.
+ACE_HAS_SEMUN Compiler/platform defines a
+ union semun for SysV shared
+ memory
+ACE_HAS_SET_T_ERRNO Platform has a function to set
+ t_errno (e.g., Tandem).
+ACE_HAS_SIGINFO_T Platform supports SVR4
+ extended signals
+ACE_HAS_SIGISMEMBER_BUG Platform has bug with
+ sigismember() (HP/UX 11).
+ACE_HAS_SIG_MACROS Platform/compiler has macros
+ for sig{empty,fill,add,del}set
+ (e.g., SCO and FreeBSD)
+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_SOCKADDR_MSG_NAME Platform requires (struct
+ sockaddr *) for msg_name field
+ of struct msghdr.
+ACE_HAS_SOCKIO_H Compiler/platform provides the
+ sockio.h file
+ACE_HAS_SOCKLEN_T Platform provides socklen_t
+ type, such as Linux with
+ glibc2.
+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_STRDUP_EMULATION Platform/compiler lacks
+ strdup() (e.g., VxWorks,
+ Chorus, WinCE)
+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_STRING_CLASS Platform/Compiler supports a String class (e.g., GNU or 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. NOTE: This macro is obsolete, ACE only uses timespec_t.
-ACE_LACKS_TIMESPEC_T Platform does not define timepec_t as a typedef for struct timespec.
-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_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_SPECIALIZATION Compiler implements template specialization
-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_STRING_CLASS Platform/Compiler supports a
+ String class (e.g., GNU or
+ 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. NOTE: This
+ macro is obsolete, ACE only
+ uses timespec_t.
+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_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_INSTANTIATION_PRAGMA Compiler's template
+ instantiation mechanism
+ supports the use of "#pragma
+ instantiate". Edison Design
+ Group compilers, e.g., SGI C++
+ and Green Hills 1.8.8 and
+ later, support this.
+ACE_HAS_TEMPLATE_SPECIALIZATION Compiler implements template
+ specialization
+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_SAFE_ACCEPT Platform allows multiple threads to call accept() on the same port (e.g., WinNT).
-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. Also see
- ACE_TLI_TCP_DEVICE.
-ACE_HAS_TLI_PROTOTYPES Platform provides TLI function prototypes
-ACE_HAS_TSS_EMULATION ACE provides TSS emulation. See also ACE_DEFAULT_THREAD_KEYS.
+ACE_HAS_THREAD_SAFE_ACCEPT Platform allows multiple
+ threads to call accept() on
+ the same port (e.g., WinNT).
+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. Also
+ see ACE_TLI_TCP_DEVICE.
+ACE_HAS_TLI_PROTOTYPES Platform provides TLI function
+ prototypes
+ACE_HAS_TSS_EMULATION ACE provides TSS emulation.
+ See also
+ ACE_DEFAULT_THREAD_KEYS.
ACE_HAS_UALARM Platform supports ualarm()
-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_MOSTLY_UNICODE_APIS Most APIs in platform/compiler supports UNICODE. (No char version available.)
-ACE_HAS_USING_KEYWORD Compiler supports the new using keyword for C++ namespaces.
-ACE_HAS_VERBOSE_NOTSUP Prints out console message in ACE_NOTSUP. Useful for tracking down origin of ACE_NOTSUP.
-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_XTI Platform has XTI (X/Open-standardized
- superset of TLI). Implies ACE_HAS_TLI
- but uses a different header file.
+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_MOSTLY_UNICODE_APIS Most APIs in platform/compiler
+ supports UNICODE. (No char
+ version available.)
+ACE_HAS_USING_KEYWORD Compiler supports the new
+ using keyword for C++
+ namespaces.
+ACE_HAS_VERBOSE_NOTSUP Prints out console message in
+ ACE_NOTSUP. Useful for
+ tracking down origin of
+ ACE_NOTSUP.
+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_XTI Platform has XTI
+ (X/Open-standardized superset
+ of TLI). Implies ACE_HAS_TLI
+ but uses a different header
+ file.
ACE_HAS_YIELD_VOID_PTR Platform requires pthread_yield() to take a NULL.
-ACE_LACKS_ACCESS Platform lacks access() (e.g., VxWorks and Chorus)
-ACE_LACKS_ACE_IOSTREAM Platform can not build ace/IOStream{,_T}.cpp. This does not necessarily mean that the platform does not support iostreams.
-ACE_LACKS_CONST_STRBUF_PTR Platform uses struct strbuf * rather than const struct strbuf * (e.g., HP/UX 10.x)
-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_ACCESS Platform lacks access() (e.g.,
+ VxWorks and Chorus)
+ACE_LACKS_ACE_IOSTREAM Platform can not build
+ ace/IOStream{,_T}.cpp. This
+ does not necessarily mean that
+ the platform does not support
+ iostreams.
+ACE_LACKS_BSEARCH Compiler/platform lacks the
+ standard C library bsearch()
+ function
+ACE_LACKS_COND_TIMEDWAIT_RESET pthread_cond_timedwait does
+ *not* reset the time argument
+ when the lock is acquired.
+ACE_LACKS_CONST_STRBUF_PTR Platform uses struct strbuf *
+ rather than const struct
+ strbuf * (e.g., HP/UX 10.x)
+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_DIFFTIME Platform lacks difftime() implementation
-ACE_LACKS_RTTI Compiler does not support dynamic_cast. Usually used with ACE_HAS_ANSI_CASTS.
-ACE_LACKS_EXEC Platform lacks the exec() family of system calls (e.g., Win32, VxWorks, Chorus)
-ACE_LACKS_FILELOCKS Platform lacks file locking mechanism
-ACE_LACKS_FLOATING_POINT Platform does not support floating point operations (e.g., certain Chorus hardware platforms)
-ACE_LACKS_FORK Platform lacks the fork() system call (e.g., Win32, VxWorks, Chorus)
-ACE_LACKS_GETOPT_PROTO Platform lacks the getopt() prototype (e.g., LynxOS)
-ACE_LACKS_GETPGID Platform lacks getpgid() call (e.g., Win32, Chorus, and FreeBSD).
-ACE_LACKS_GETSERVBYNAME Platforms lacks getservbyname() (e.g., VxWorks and Chorus).
-ACE_LACKS_IOSTREAM_FX iostream header does not declare ipfx (), opfx (), etc.
-ACE_LACKS_LINEBUFFERED_STREAMBUF Platform lacks streambuf "linebuffered ()".
-ACE_LACKS_LONGLONG_T Compiler/platform does no supports the unsigned long long datatype.
-ACE_LACKS_MADVISE Platform lacks madvise() (e.g., Linux)
-ACE_LACKS_MALLOC_H Platform lacks malloc.h
-ACE_LACKS_MEMORY_H Platform lacks memory.h (e.g., VxWorks and Chorus)
-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_MUTEXATTR_PSHARED Platform lacks pthread_mutexattr_setpshared().
-ACE_LACKS_NETDB_REENTRANT_FUNCTIONS Platform does not support reentrant netdb functions
- (getprotobyname_r, getprotobynumber_r, gethostbyaddr_r,
- gethostbyname_r, getservbyname_r).
-ACE_LACKS_RPC_H Platform lacks the ONC RPC header files.
-ACE_LACKS_PARAM_H Platform lacks <sys/param.h> (e.g., MVS)
-ACE_LACKS_NAMED_POSIX_SEM Platform lacks named POSIX semaphores (e.g., Chorus)
-ACE_LACKS_RLIMIT Platform/compiler lacks {get,set}rlimit() function (e.g., VxWorks, Chorus, and SCO UNIX)
-ACE_LACKS_RLIMIT_PROTOTYPE Platform/compiler lacks {get,set}rlimit() prototypes (e.g., Tandem)
-ACE_LACKS_POSIX_PROTOTYPES Platform lacks POSIX prototypes for certain System V functions like shared memory and message queues.
-ACE_LACKS_SOME_POSIX_PROTOTYPES Platform lacks POSIX prototypes for certain System V functions like shared memory and message queues.
-ACE_LACKS_PRI_T Platform lacks pri_t (e.g., Tandem NonStop UNIX).
-ACE_LACKS_PTHREAD_CANCEL Platform lacks pthread_cancel().
-ACE_LACKS_PTHREAD_THR_SIGSETMASK Platform lacks pthread_thr_sigsetmask (e.g., MVS, HP/UX, and OSF/1 3.2)
-ACE_LACKS_PWD_REENTRANT_FUNCTIONS Platform lacks getpwnam_r() methods (e.g., SGI 6.2).
-ACE_LACKS_READDIR_R Platform uses ACE_HAS_DIRENT but does not have readdir_r ().
-ACE_LACKS_RECVMSG Platform lacks recvmsg() (e.g., Linux)
-ACE_LACKS_RWLOCK_T Platform lacks readers/writer locks.
-ACE_LACKS_SBRK Platform lacks a working sbrk() (e.g., Win32 and VxWorks)
-ACE_LACKS_SEEKDIR Platform uses ACE_HAS_DIRENT but does not have seekdir ().
-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_SIGACTION Platform lacks struct sigaction (e.g., Win32 and Chorus)
-ACE_LACKS_SIGNED_CHAR Platform lacks "signed char" type (broken!)
-ACE_LACKS_SIGSET Platform lacks signal sets (e.g., Chorus and Win32)
-ACE_LACKS_STREAM_MODULES Compiler can't grok inclusion of ACE_Stream_Modules (i.e., HP/UX 10.x with aCC).
-ACE_LACKS_STRRCHR Platform/compiler lacks strrchr () function.
-ACE_LACKS_STL_DEFAULT_TEMPLATE_PARAMETER STL doesn't have default parameters (e.g., MSVC 4.2)
-ACE_LACKS_SYS_NERR Platforms/compiler lacks the sys_nerr variable (e.g., VxWorks and MVS).
-ACE_LACKS_SYSV_MSG_H Platform lacks sys/msg.h (e.g., Chorus and VxWorks)
-ACE_LACKS_KEYDELETE Platform lacks TSS keydelete (e.g., HP/UX)
-ACE_LACKS_KEY_T Platform lacks key_t (e.g., Chorus, VxWorks, Win32)
-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_SOCKET_BUFSIZ Platform doesn't support SO_SNDBUF/SO_RCVBUF
-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_STRCASECMP Compiler/platform lacks strcasecmp() (e.g., DG/UX, UNIXWARE, VXWORKS)
-ACE_LACKS_STRRECVFD Platform doesn't define struct strrecvfd.
-ACE_LACKS_SYSCALL Platform doesn't have syscall() prototype
-ACE_LACKS_T_ERRNO Header files lack t_errno for TLI
-ACE_LACKS_TCP_H Platform doesn't have netinet/tcp.h
-ACE_LACKS_TELLDIR Platform uses ACE_HAS_DIRENT but does not have telldir ().
-ACE_LACKS_THREAD_STACK_SIZE Platform lacks pthread_attr_setstacksize() (e.g., Linux pthreads)
-ACE_LACKS_TIMEDWAIT_PROTOTYPES MIT pthreads platform lacks the timedwait prototypes
-ACE_LACKS_U_LONGLONG_T Platform does not have u_longlong_t typedef, and "sun" is defined.
-ACE_LACKS_UALARM_PROTOTYPE Platform/compiler lacks the ualarm() prototype (e.g., Solaris)
-ACE_LACKS_UCONTEXT_H Platform lacks the ucontext.h file
-ACE_LACKS_UNISTD_H Platform lacks the unistd.h file (e.g., VxWorks and Win32)
-ACE_LACKS_UNIX_DOMAIN_SOCKETS ACE platform has no UNIX domain sockets
-ACE_LACKS_UNIX_SIGNALS Platform lacks full signal support (e.g., Win32 and Chorus).
-ACE_LACKS_UTSNAME_T Platform lacks struct utsname (e.g., Win32 and VxWorks)
-ACE_LACKS_WILDCARD_BIND The bind() call will not select the port if it's 0.
-ACE_MAIN Renames "main (int, char *[])", for platforms such as g++/VxWorks that don't allow main. Requires the use of ACE_HAS_NONSTATIC_OBJECT_MANAGER.
-ACE_MT_SAFE Compile using multi-thread libraries
-ACE_NDEBUG Turns off debugging features
+ACE_LACKS_FCNTL Platform lacks POSIX-style fcntl ().
+ACE_LACKS_FIFO Platform lacks UNIX FIFOs
+ (e.g., Win32)
+ACE_LACKS_GETS Platform lacks ::gets (), or
+ it's desired to ensure that it
+ doesn't get used. Linux egcs
+ g++ warns against using it.
+ACE_LACKS_INLINE_FUNCTIONS Platform can't handle "inline"
+ keyword correctly.
+ACE_LACKS_NETDB_REENTRANT_FUNCTIONS Platform does not support
+ reentrant netdb functions
+ (getprotobyname_r,
+ getprotobynumber_r,
+ gethostbyaddr_r,
+ gethostbyname_r,
+ getservbyname_r).
+ACE_LACKS_EXEC Platform lacks the exec()
+ family of system calls (e.g.,
+ Win32, VxWorks, Chorus)
+ACE_LACKS_FILELOCKS Platform lacks file locking
+ mechanism
+ACE_LACKS_FLOATING_POINT Platform does not support
+ floating point operations
+ (e.g., certain Chorus hardware
+ platforms)
+ACE_LACKS_FORK Platform lacks the fork()
+ system call (e.g., Win32,
+ VxWorks, Chorus)
+ACE_LACKS_GETOPT_PROTO Platform lacks the getopt()
+ prototype (e.g., LynxOS)
+ACE_LACKS_GETPGID Platform lacks getpgid() call
+ (e.g., Win32, Chorus, and
+ FreeBSD).
+ACE_LACKS_GETSERVBYNAME Platforms lacks
+ getservbyname() (e.g., VxWorks
+ and Chorus).
+ACE_LACKS_IOSTREAM_FX iostream header does not
+ declare ipfx (), opfx (),
+ etc.
+ACE_LACKS_KEYDELETE Platform lacks TSS keydelete
+ (e.g., HP/UX)
+ACE_LACKS_KEY_T Platform lacks key_t (e.g.,
+ Chorus, VxWorks, Win32)
+ACE_LACKS_LINEBUFFERED_STREAMBUF Platform lacks streambuf
+ "linebuffered ()".
+ACE_LACKS_LONGLONG_T Compiler/platform does no
+ supports the unsigned long
+ long datatype.
+ACE_LACKS_MADVISE Platform lacks madvise()
+ (e.g., Linux)
+ACE_LACKS_MALLOC_H Platform lacks malloc.h
+ACE_LACKS_MEMORY_H Platform lacks memory.h (e.g.,
+ VxWorks and Chorus)
+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_MUTEXATTR_PSHARED Platform lacks
+ pthread_mutexattr_setpshared().
+ACE_LACKS_NAMED_POSIX_SEM Platform lacks named POSIX
+ semaphores (e.g., Chorus)
+ACE_LACKS_NETDB_REENTRANT_FUNCTIONS Platform does not support
+ reentrant netdb functions
+ (getprotobyname_r,
+ getprotobynumber_r,
+ gethostbyaddr_r,
+ gethostbyname_r,
+ getservbyname_r).
+ACE_LACKS_PARAM_H Platform lacks <sys/param.h>
+ (e.g., MVS)
+ACE_LACKS_POSIX_PROTOTYPES Platform lacks POSIX
+ prototypes for certain System
+ V functions like shared memory
+ and message queues.
+ACE_LACKS_PRI_T Platform lacks pri_t (e.g.,
+ Tandem NonStop UNIX).
+ACE_LACKS_PTHREAD_CANCEL Platform lacks
+ pthread_cancel().
+ACE_LACKS_PTHREAD_THR_SIGSETMASK Platform lacks
+ pthread_thr_sigsetmask (e.g.,
+ MVS, HP/UX, and OSF/1 3.2)
+ACE_LACKS_PWD_REENTRANT_FUNCTIONS Platform lacks getpwnam_r()
+ methods (e.g., SGI 6.2).
+ACE_LACKS_QSORT Compiler/platform lacks the
+ standard C library qsort()
+ function
+ACE_LACKS_READV Platform doesn't define readv,
+ so use our own
+ACE_LACKS_RLIMIT Platform/compiler lacks
+ {get,set}rlimit() function
+ (e.g., VxWorks, Chorus, and
+ SCO UNIX)
+ACE_LACKS_RLIMIT_PROTOTYPE Platform/compiler lacks
+ {get,set}rlimit() prototypes
+ (e.g., Tandem)
+ACE_LACKS_RPC_H Platform lacks the ONC RPC
+ header files.
+ACE_LACKS_RTTI Compiler does not support
+ dynamic_cast. Usually used
+ with ACE_HAS_ANSI_CASTS.
+ACE_LACKS_READDIR_R Platform uses ACE_HAS_DIRENT
+ but does not have readdir_r
+ ().
+ACE_LACKS_RECVMSG Platform lacks recvmsg()
+ (e.g., Linux)
+ACE_LACKS_RWLOCK_T Platform lacks readers/writer
+ locks.
+ACE_LACKS_SBRK Platform lacks a working
+ sbrk() (e.g., Win32 and
+ VxWorks)
+ACE_LACKS_SCHED_H Platform needs to #include
+ <sched.h>
+ to get thread scheduling
+ defs.
+ACE_LACKS_SEEKDIR Platform uses ACE_HAS_DIRENT
+ but does not have seekdir ().
+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_SIGACTION Platform lacks struct
+ sigaction (e.g., Win32 and
+ Chorus)
+ACE_LACKS_SIGNED_CHAR Platform lacks "signed char"
+ type (broken!)
+ACE_LACKS_SIGSET Platform lacks signal sets
+ (e.g., Chorus and Win32)
+ACE_LACKS_SOME_POSIX_PROTOTYPES Platform lacks POSIX
+ prototypes for certain System
+ V functions like shared memory
+ and message queues.
+ACE_LACKS_STREAM_MODULES Compiler can't grok inclusion
+ of ACE_Stream_Modules (i.e.,
+ HP/UX 10.x with aCC).
+ACE_LACKS_STRRCHR Platform/compiler lacks
+ strrchr () function.
+ACE_LACKS_STL_DEFAULT_TEMPLATE_PARAMETER STL doesn't
+ have default parameters (e.g.,
+ MSVC 4.2)
+ACE_LACKS_SYS_NERR Platforms/compiler lacks the
+ sys_nerr variable (e.g.,
+ VxWorks and MVS).
+ACE_LACKS_SYSTIME_H <time.h> doesn't automatically
+ #include /**/ <sys/time.h>
+ACE_LACKS_SYSV_MSG_H Platform lacks sys/msg.h
+ (e.g., Chorus and VxWorks)
+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_SOCKET_BUFSIZ Platform doesn't support
+ SO_SNDBUF/SO_RCVBUF
+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_STRCASECMP Compiler/platform lacks
+ strcasecmp() (e.g., DG/UX,
+ UNIXWARE, VXWORKS)
+ACE_LACKS_STRRECVFD Platform doesn't define struct
+ strrecvfd.
+ACE_LACKS_SYSCALL Platform doesn't have
+ syscall() prototype
+ACE_LACKS_T_ERRNO Header files lack t_errno for
+ TLI
+ACE_LACKS_TCP_H Platform doesn't have
+ netinet/tcp.h
+ACE_LACKS_TELLDIR Platform uses ACE_HAS_DIRENT
+ but does not have telldir ().
+ACE_LACKS_THREAD_STACK_SIZE Platform lacks
+ pthread_attr_setstacksize()
+ (e.g., Linux pthreads)
+ACE_LACKS_TIMEDWAIT_PROTOTYPES MIT pthreads platform lacks
+ the timedwait prototypes
+ACE_LACKS_TIMESPEC_T Platform does not define
+ timepec_t as a typedef for
+ struct timespec.
+ACE_LACKS_U_LONGLONG_T Platform does not have
+ u_longlong_t typedef, and
+ "sun" is defined.
+ACE_LACKS_UALARM_PROTOTYPE Platform/compiler lacks the
+ ualarm() prototype (e.g.,
+ Solaris)
+ACE_LACKS_UCONTEXT_H Platform lacks the ucontext.h
+ file
+ACE_LACKS_UNISTD_H Platform lacks the unistd.h
+ file (e.g., VxWorks and Win32)
+ACE_LACKS_UNIX_DOMAIN_SOCKETS ACE platform has no UNIX
+ domain sockets
+ACE_LACKS_UNIX_SIGNALS Platform lacks full signal
+ support (e.g., Win32 and
+ Chorus).
+ACE_LACKS_UTSNAME_T Platform lacks struct utsname
+ (e.g., Win32 and VxWorks)
+ACE_LACKS_WILDCARD_BIND The bind() call will not
+ select the port if it's 0.
+
+ACE_LACKS_WRITEV Platform doesn't define
+ writev, so use our own
+
ACE_NEEDS_DEV_IO_CONVERSION Necessary with some compilers
- to pass ACE_TTY_IO as parameter to DEV_Connector.
+ to pass ACE_TTY_IO as
+ parameter to DEV_Connector.
+ACE_NEEDS_FUNC_DEFINITIONS Compiler requires a definition
+ for a "hidden" function, e.g.,
+ a private, unimplemented copy
+ constructor or assignment
+ operator. The SGI C++
+ compiler needs this, in
+ template classes, with
+ ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA.
ACE_NEEDS_HUGE_THREAD_STACKSIZE Required by platforms with small default stacks.
-ACE_NEEDS_LWP_PRIO_SET OS has LWPs, and when the priority of a bound thread is set, then the LWP priority must be set also.
-ACE_NEEDS_READV Platform doesn't define readv, so use our own
-ACE_NEEDS_SCHED_H Platform needs to #include <sched.h>
- to get thread scheduling defs.
-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_NEW_THROWS_EXCEPTIONS Compiler's 'new' throws exception on
- failure (ANSI C++ behavior).
-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 (not used on Win32 or with ACE_HAS_GETPAGESIZE).
-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_HAS_EXPLICIT_TEMPLATE_INSTANTIATION Compiler's template instantiation mechanism supports 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_HAS_TEMPLATE_INSTANTIATION_PRAGMA Compiler's template instantiation mechanism supports the use of "#pragma instantiate". Edison Design Group compilers, e.g., SGI C++ and Green Hills 1.8.8 and later, support this.
-ACE_REQUIRES_FUNC_DEFINITIONS Compiler requires a definition for a "hidden" function, e.g., a private, unimplemented copy constructor or assignment operator. The SGI C++ compiler needs this, in template classes, with ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA.
-ACE_TLI_TCP_DEVICE Device the platform uses for TCP on
- TLI. Only needed if not /dev/tcp.
-ACE_USE_POLL The OS platform supports the poll() event demultiplexor
-ACE_USES_ASM_SYMBOL_IN_DLSYM Platform uses assembly symbols instead of C symbols in dlsym()
-ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB Platform has its standard c++ library in the namespace std.
-ACE_WSOCK_VERSION A parameter list indicating the version of WinSock (e.g., "1, 1" is version 1.1).
+ACE_NEEDS_LWP_PRIO_SET OS has LWPs, and when the
+ priority of a bound thread is
+ set, then the LWP priority
+ must be set also.
----------------------------------------
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.
+(jh1@core01.osi.com). It is now hopelessly out of date. Hopefully,
+someone will come along and update it....
ACE_HAS_ALLOCA:
---------------
diff --git a/ace/config-chorus.h b/ace/config-chorus.h
index 64308372975..ef303ee99f1 100644
--- a/ace/config-chorus.h
+++ b/ace/config-chorus.h
@@ -38,8 +38,8 @@
// OS-specific configuration
-# define ACE_NEEDS_WRITEV
-# define ACE_NEEDS_READV
+# define ACE_LACKS_WRITEV
+# define ACE_LACKS_READV
# define ACE_HAS_BROKEN_READV
// Optimize ACE_Handle_Set for select().
diff --git a/ace/config-dgux-4.11-epc.h b/ace/config-dgux-4.11-epc.h
index c208d1e1af6..7ef820940d5 100644
--- a/ace/config-dgux-4.11-epc.h
+++ b/ace/config-dgux-4.11-epc.h
@@ -170,7 +170,7 @@
#define _DGUX_SOURCE
// #define ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION
#define ACE_HAS_UCONTEXT_T
-#define ACE_NEEDS_SYSTIME_H
+#define ACE_LACKS_SYSTIME_H
#define ACE_HAS_NONCONST_GETBY
#define ACE_LACKS_MADVISE
diff --git a/ace/config-dgux-4.x-ghs.h b/ace/config-dgux-4.x-ghs.h
index 2e1fb09adfe..7545af8b807 100644
--- a/ace/config-dgux-4.x-ghs.h
+++ b/ace/config-dgux-4.x-ghs.h
@@ -153,7 +153,7 @@
#define ACE_NEEDS_HUGE_THREAD_STACKSIZE 65536
// Need to #include <sched.h>
-#define ACE_NEEDS_SCHED_H
+#define ACE_LACKS_SCHED_H
// Compiler/platform has thread-specific storage
//
@@ -199,7 +199,7 @@
#define ACE_TEMPLATES_REQUIRE_SOURCE
#define ACE_HAS_UCONTEXT_T
-#define ACE_NEEDS_SYSTIME_H
+#define ACE_LACKS_SYSTIME_H
#define ACE_HAS_NONCONST_GETBY
#define ACE_LACKS_MADVISE
diff --git a/ace/config-freebsd-pthread.h b/ace/config-freebsd-pthread.h
index fc89e3f0514..8a8f57da110 100644
--- a/ace/config-freebsd-pthread.h
+++ b/ace/config-freebsd-pthread.h
@@ -57,7 +57,7 @@ char * cuserid (char *s);
// Platform defines struct timespec but not timespec_t
#define ACE_LACKS_TIMESPEC_T
-#define ACE_NEEDS_SYSTIME_H
+#define ACE_LACKS_SYSTIME_H
#define ACE_LACKS_STRRECVFD
diff --git a/ace/config-freebsd.h b/ace/config-freebsd.h
index 788f7c7a0b3..a61424e57b8 100644
--- a/ace/config-freebsd.h
+++ b/ace/config-freebsd.h
@@ -83,7 +83,7 @@ ange */
// Platform defines struct timespec but not timespec_t
#define ACE_LACKS_TIMESPEC_T
-#define ACE_NEEDS_SYSTIME_H
+#define ACE_LACKS_SYSTIME_H
#define ACE_LACKS_STRRECVFD
diff --git a/ace/config-irix5.3-g++.h b/ace/config-irix5.3-g++.h
index e76bb3f98b1..3311fa16e0a 100644
--- a/ace/config-irix5.3-g++.h
+++ b/ace/config-irix5.3-g++.h
@@ -11,7 +11,7 @@
#define ACE_SIZEOF_LONG_DOUBLE 8
-#define ACE_NEEDS_SYSTIME_H
+#define ACE_LACKS_SYSTIME_H
// Platform supports getpagesize() call.
#define ACE_HAS_GETPAGESIZE
#define ACE_HAS_STRING_CLASS
diff --git a/ace/config-irix5.3-sgic++.h b/ace/config-irix5.3-sgic++.h
index 7fb90cced6f..9a4df6a9389 100644
--- a/ace/config-irix5.3-sgic++.h
+++ b/ace/config-irix5.3-sgic++.h
@@ -15,14 +15,14 @@
#define ACE_SIZEOF_LONG_DOUBLE 8
-#define ACE_NEEDS_SYSTIME_H
+#define ACE_LACKS_SYSTIME_H
// Optimize ACE_Handle_Set for select().
#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
// Platform supports getpagesize() call.
#define ACE_HAS_GETPAGESIZE
-#define ACE_NEEDS_SYSTIME_H
+#define ACE_LACKS_SYSTIME_H
#define ACE_HAS_SIGWAIT
// Platform supports System V IPC (most versions of UNIX, but not Win32)
diff --git a/ace/config-irix6.x-g++.h b/ace/config-irix6.x-g++.h
index ea75222ede5..dd9abd3b933 100644
--- a/ace/config-irix6.x-g++.h
+++ b/ace/config-irix6.x-g++.h
@@ -102,7 +102,7 @@
// Platform supports POSIX timers via timestruc_t.
#define ACE_HAS_POSIX_TIME
#define ACE_HAS_SVR4_TIME
-#define ACE_NEEDS_SYSTIME_H
+#define ACE_LACKS_SYSTIME_H
// Compiler/platform has correctly prototyped header files.
#define ACE_HAS_CPLUSPLUS_HEADERS
diff --git a/ace/config-irix6.x-sgic++-nothreads.h b/ace/config-irix6.x-sgic++-nothreads.h
index cf9f2d43c39..83e03d782fa 100644
--- a/ace/config-irix6.x-sgic++-nothreads.h
+++ b/ace/config-irix6.x-sgic++-nothreads.h
@@ -123,7 +123,7 @@
// Platform supports POSIX timers via timestruc_t.
#define ACE_HAS_POSIX_TIME
// #define ACE_HAS_SVR4_TIME
-#define ACE_NEEDS_SYSTIME_H
+#define ACE_LACKS_SYSTIME_H
// Compiler/platform has correctly prototyped header files.
#define ACE_HAS_CPLUSPLUS_HEADERS
@@ -185,7 +185,7 @@
#define ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA
#endif /* _COMPILER_VERSION >= 720 */
#define ACE_TEMPLATES_REQUIRE_SOURCE
-#define ACE_REQUIRES_FUNC_DEFINITIONS
+#define ACE_NEEDS_FUNC_DEFINITIONS
// Platform supports exceptions. Under 6.2 this requires an extra flag
// for the compiler, don't worry is already there in
diff --git a/ace/config-irix6.x-sgic++.h b/ace/config-irix6.x-sgic++.h
index bfc33d7bf32..3d19df33f3a 100644
--- a/ace/config-irix6.x-sgic++.h
+++ b/ace/config-irix6.x-sgic++.h
@@ -49,7 +49,7 @@
#define ACE_LACKS_COND_TIMEDWAIT_RESET 1
// Scheduling functions are declared in <sched.h>
-#define ACE_NEEDS_SCHED_H
+#define ACE_LACKS_SCHED_H
// Compile using multi-thread libraries
#if !defined (ACE_MT_SAFE)
diff --git a/ace/config-linux-common.h b/ace/config-linux-common.h
index 8caa528e2f8..df3f29f2358 100644
--- a/ace/config-linux-common.h
+++ b/ace/config-linux-common.h
@@ -44,7 +44,7 @@
# define ACE_HAS_VOIDPTR_SOCKOPT
# define ACE_LACKS_GETPGID
# define ACE_LACKS_RPC_H
-# define ACE_NEEDS_SYSTIME_H
+# define ACE_LACKS_SYSTIME_H
// The strtok_r declaration is protected in string.h.
extern "C" char *strtok_r __P ((char *__s, __const char *__delim,
char **__save_ptr));
diff --git a/ace/config-mvs.h b/ace/config-mvs.h
index 67e31f51dab..aba619c14ff 100644
--- a/ace/config-mvs.h
+++ b/ace/config-mvs.h
@@ -99,7 +99,7 @@
# define ACE_MT_SAFE 1
#endif
#define ACE_NEEDS_DEV_IO_CONVERSION
-#define ACE_NEEDS_SYSTIME_H
+#define ACE_LACKS_SYSTIME_H
#define ACE_TEMPLATES_REQUIRE_SOURCE
#define ACE_HAS_TEMPLATE_SPECIALIZATION
diff --git a/ace/config-netbsd.h b/ace/config-netbsd.h
index e53403ea0d7..cf2944dcbc1 100644
--- a/ace/config-netbsd.h
+++ b/ace/config-netbsd.h
@@ -81,7 +81,7 @@ ange */
// Platform defines struct timespec but not timespec_t
#define ACE_LACKS_TIMESPEC_T
-#define ACE_NEEDS_SYSTIME_H
+#define ACE_LACKS_SYSTIME_H
#define ACE_LACKS_STRRECVFD
diff --git a/ace/config-psos-diab.h b/ace/config-psos-diab.h
index dd82e210204..502c47b416f 100644
--- a/ace/config-psos-diab.h
+++ b/ace/config-psos-diab.h
@@ -71,9 +71,9 @@
#define ACE_LACKS_FORK
-#define ACE_NEEDS_WRITEV
+#define ACE_LACKS_WRITEV
-#define ACE_NEEDS_READV
+#define ACE_LACKS_READV
// rename the main entry point
// #define ACE_MAIN extern "C" void root
@@ -184,7 +184,7 @@
#define ACE_LACKS_UNIX_SIGNALS
// #define ACE_MALLOC_ALIGN 8
-// #define ACE_NEEDS_SYSTIME_H
+// #define ACE_LACKS_SYSTIME_H
#define ACE_PAGE_SIZE 4096
diff --git a/ace/config-psos-tm.h b/ace/config-psos-tm.h
index 26e2efd7a76..787a7d7c7e1 100644
--- a/ace/config-psos-tm.h
+++ b/ace/config-psos-tm.h
@@ -60,9 +60,9 @@
#define ACE_LACKS_FORK
-#define ACE_NEEDS_WRITEV
+#define ACE_LACKS_WRITEV
-#define ACE_NEEDS_READV
+#define ACE_LACKS_READV
// rename the main entry point
// #define ACE_MAIN extern "C" void root
@@ -172,7 +172,7 @@
#define ACE_LACKS_UNIX_SIGNALS
// #define ACE_MALLOC_ALIGN 8
-// #define ACE_NEEDS_SYSTIME_H
+// #define ACE_LACKS_SYSTIME_H
#define ACE_PAGE_SIZE 4096
diff --git a/ace/config-psosim-g++.h b/ace/config-psosim-g++.h
index 2e29e22a647..bbb72cbebfa 100644
--- a/ace/config-psosim-g++.h
+++ b/ace/config-psosim-g++.h
@@ -213,7 +213,7 @@
#define ACE_LACKS_UTSNAME_T
// #define ACE_MALLOC_ALIGN 8
-// #define ACE_NEEDS_SYSTIME_H
+// #define ACE_LACKS_SYSTIME_H
#define ACE_PAGE_SIZE 4096
diff --git a/ace/config-sco-4.2-nothread.h b/ace/config-sco-4.2-nothread.h
index 26113affccf..467164c0040 100644
--- a/ace/config-sco-4.2-nothread.h
+++ b/ace/config-sco-4.2-nothread.h
@@ -40,8 +40,8 @@
#define ACE_HAS_SEMUN
#define ACE_LACKS_MSYNC
#define ACE_LACKS_MADVISE
-#define ACE_NEEDS_WRITEV
-#define ACE_NEEDS_READV
+#define ACE_LACKS_WRITEV
+#define ACE_LACKS_READV
#define ACE_NEEDS_FTRUNCATE
#define ACE_LACKS_RLIMIT
#define ACE_LACKS_RECVMSG
diff --git a/ace/config-sco-5.0.0-mit-pthread.h b/ace/config-sco-5.0.0-mit-pthread.h
index 80e462b3a0e..3e7952a567c 100644
--- a/ace/config-sco-5.0.0-mit-pthread.h
+++ b/ace/config-sco-5.0.0-mit-pthread.h
@@ -126,7 +126,7 @@
#define ACE_HAS_SIGINFO_T
#define ACE_HAS_UCONTEXT_T
-#define ACE_NEEDS_SYSTIME_H
+#define ACE_LACKS_SYSTIME_H
#define ACE_HAS_INLINED_OSCALLS
#define ACE_HAS_STRBUF_T
diff --git a/ace/config-sco-5.0.0.h b/ace/config-sco-5.0.0.h
index 45e2497d506..e4dd14ebb7b 100644
--- a/ace/config-sco-5.0.0.h
+++ b/ace/config-sco-5.0.0.h
@@ -99,7 +99,7 @@
#define ACE_HAS_SIGINFO_T
#define ACE_HAS_UCONTEXT_T
-#define ACE_NEEDS_SYSTIME_H
+#define ACE_LACKS_SYSTIME_H
#define ACE_LACKS_STRCASECMP
// #define ACE_HAS_POSIX_TIME
diff --git a/ace/config-sunos4-g++.h b/ace/config-sunos4-g++.h
index 5385cb03d0c..6a8fc87d27f 100644
--- a/ace/config-sunos4-g++.h
+++ b/ace/config-sunos4-g++.h
@@ -19,7 +19,7 @@
#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
#define ACE_HAS_STRING_CLASS
-#define ACE_NEEDS_SYSTIME_H
+#define ACE_LACKS_SYSTIME_H
#define ACE_LACKS_GETPGID
#define ACE_HAS_CHARPTR_SPRINTF
diff --git a/ace/config-sunos4-sun4.1.4.h b/ace/config-sunos4-sun4.1.4.h
index 4b9d855ed4b..844f7a91024 100644
--- a/ace/config-sunos4-sun4.1.4.h
+++ b/ace/config-sunos4-sun4.1.4.h
@@ -12,7 +12,7 @@
#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
#define ACE_HAS_CHARPTR_SPRINTF
-#define ACE_NEEDS_SYSTIME_H
+#define ACE_LACKS_SYSTIME_H
#define ACE_HAS_UNION_WAIT
// Special addition to handle sunOS 4.1 which is unable to
diff --git a/ace/config-sunos4-sun4.x.h b/ace/config-sunos4-sun4.x.h
index dc0e18c8ab9..7386292128a 100644
--- a/ace/config-sunos4-sun4.x.h
+++ b/ace/config-sunos4-sun4.x.h
@@ -7,7 +7,7 @@
#if !defined (ACE_CONFIG_H)
#define ACE_CONFIG_H
-#define ACE_NEEDS_SYSTIME_H
+#define ACE_LACKS_SYSTIME_H
#define ACE_LACKS_GETPGID
#define ACE_HAS_CHARPTR_SPRINTF
diff --git a/ace/config-tandem.h b/ace/config-tandem.h
index e2d4dc40707..a0371462318 100644
--- a/ace/config-tandem.h
+++ b/ace/config-tandem.h
@@ -269,7 +269,7 @@
//Compiler/platform lacks strcasecmp() (e.g., DG/UX, UNIXWARE, VXWORKS)
#define ACE_LACKS_STRCASECMP
//<time.h> doesn't automatically #include /**/ <sys/time.h>
-#define ACE_NEEDS_SYSTIME_H
+#define ACE_LACKS_SYSTIME_H
//ACE_HAS_AIX_BROKEN_SOCKET_HEADER Platform, such as AIX4, needs to wrap
// #include of sys/socket.h with #undef/#define of __cplusplus.
@@ -441,9 +441,9 @@
//ACE_LACKS_UTSNAME_T Platform lacks struct utsname
// (e.g., Win32 and VxWorks)
//ACE_NDEBUG Turns off debugging features
-//ACE_NEEDS_READV Platform doesn't define readv, so
+//ACE_LACKS_READV Platform doesn't define readv, so
// use our own
-//ACE_NEEDS_WRITEV Platform doesn't define writev, so
+//ACE_LACKS_WRITEV Platform doesn't define writev, so
//use our own
//ACE_NLOGGING Turns off the LM_DEBUG and LM_ERROR
//logging macros...
diff --git a/ace/config-unixware-2.1.2-g++.h b/ace/config-unixware-2.1.2-g++.h
index 50dd6f8193b..c18223c649e 100644
--- a/ace/config-unixware-2.1.2-g++.h
+++ b/ace/config-unixware-2.1.2-g++.h
@@ -20,7 +20,7 @@
// Optimize ACE_Handle_Set for select().
#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
-#define ACE_NEEDS_SYSTIME_H
+#define ACE_LACKS_SYSTIME_H
// ualarm is only in BSD compatibility lib, but no header is provided
// #define ACE_HAS_UALARM
#define ACE_HAS_SIZET_SOCKET_LEN
diff --git a/ace/config-vxworks5.x.h b/ace/config-vxworks5.x.h
index 2e1f2524c1d..e6474b2494d 100644
--- a/ace/config-vxworks5.x.h
+++ b/ace/config-vxworks5.x.h
@@ -128,7 +128,7 @@
#if !defined (ACE_MT_SAFE)
# define ACE_MT_SAFE 1
#endif
-#define ACE_NEEDS_SYSTIME_H
+#define ACE_LACKS_SYSTIME_H
#define ACE_PAGE_SIZE 4096
#define ACE_THR_PRI_FIFO_DEF 101
diff --git a/ace/config-win32-common.h b/ace/config-win32-common.h
index 1f99f86312c..4c376d9ab57 100644
--- a/ace/config-win32-common.h
+++ b/ace/config-win32-common.h
@@ -127,8 +127,8 @@ typedef unsigned __int64 ACE_UINT64;
#define ACE_LACKS_UNIX_DOMAIN_SOCKETS
// Windows NT needs readv() and writev()
-#define ACE_NEEDS_WRITEV
-#define ACE_NEEDS_READV
+#define ACE_LACKS_WRITEV
+#define ACE_LACKS_READV
#define ACE_LACKS_COND_T
#define ACE_LACKS_RWLOCK_T