summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorstorri <storri@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2002-01-10 21:10:23 +0000
committerstorri <storri@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2002-01-10 21:10:23 +0000
commit836f18f93bea2593d3bf0a37382f60bc6198c8ba (patch)
treea278ebb2e6ef8d8249725fec0e1d6c712d28257d
parent7605866887e97214586695ff8f82514e1ed25ec6 (diff)
downloadATCD-836f18f93bea2593d3bf0a37382f60bc6198c8ba.tar.gz
Bringing back in config* files that were accidentally removed
-rw-r--r--ace/config-WinCE.h236
-rw-r--r--ace/config-aix-4.1.x.h8
-rw-r--r--ace/config-aix-4.2.x.h8
-rw-r--r--ace/config-aix-4.3.x.h8
-rw-r--r--ace/config-aix-4.x.h291
-rw-r--r--ace/config-aix5.1.h5
-rw-r--r--ace/config-all.h640
-rw-r--r--ace/config-chorus.h159
-rw-r--r--ace/config-cray.h242
-rw-r--r--ace/config-cxx-common.h88
-rw-r--r--ace/config-cygwin32-common.h141
-rw-r--r--ace/config-cygwin32.h16
-rw-r--r--ace/config-dgux-4.11-epc.h195
-rw-r--r--ace/config-dgux-4.x-ghs.h214
-rw-r--r--ace/config-doxygen.h74
-rw-r--r--ace/config-freebsd-pthread.h218
-rw-r--r--ace/config-freebsd.h197
-rw-r--r--ace/config-fsu-pthread.h59
-rw-r--r--ace/config-g++-common.h117
-rw-r--r--ace/config-ghs-common.h44
-rw-r--r--ace/config-hpux-10.x-g++.h28
-rw-r--r--ace/config-hpux-10.x-hpc++.h136
-rw-r--r--ace/config-hpux-10.x.h252
-rw-r--r--ace/config-hpux-11.00.h420
-rw-r--r--ace/config-hpux11.h250
-rw-r--r--ace/config-irix5.2.h69
-rw-r--r--ace/config-irix5.3-g++.h120
-rw-r--r--ace/config-irix5.3-sgic++.h123
-rw-r--r--ace/config-irix6.5.x-sgic++.h18
-rw-r--r--ace/config-irix6.x-common.h169
-rw-r--r--ace/config-irix6.x-g++.h54
-rw-r--r--ace/config-irix6.x-kcc.h68
-rw-r--r--ace/config-irix6.x-sgic++-nothreads.h95
-rw-r--r--ace/config-irix6.x-sgic++.h59
-rw-r--r--ace/config-kcc-common.h76
-rw-r--r--ace/config-linux-common.h279
-rw-r--r--ace/config-linux.h70
-rw-r--r--ace/config-lynxos.h183
-rw-r--r--ace/config-m88k.h227
-rw-r--r--ace/config-macosx.h173
-rw-r--r--ace/config-minimal.h39
-rw-r--r--ace/config-mit-pthread.h53
-rw-r--r--ace/config-mklinux.h20
-rw-r--r--ace/config-mvs.h122
-rw-r--r--ace/config-netbsd.h179
-rw-r--r--ace/config-osf1-3.2.h188
-rw-r--r--ace/config-osf1-4.0.h183
-rw-r--r--ace/config-pharlap.h60
-rw-r--r--ace/config-psos-diab-mips.h246
-rw-r--r--ace/config-psos-diab-ppc.h281
-rw-r--r--ace/config-psos-diab.h237
-rw-r--r--ace/config-psos-tm.h210
-rw-r--r--ace/config-psosim-g++.h246
-rw-r--r--ace/config-qnx-neutrino.h148
-rw-r--r--ace/config-qnx-rtp.h195
-rw-r--r--ace/config-rtems.h164
-rw-r--r--ace/config-sco-4.2-nothread.h116
-rw-r--r--ace/config-sco-5.0.0-fsu-pthread.h15
-rw-r--r--ace/config-sco-5.0.0-mit-pthread.h178
-rw-r--r--ace/config-sco-5.0.0-nothread.h14
-rw-r--r--ace/config-sco-5.0.0.h110
-rw-r--r--ace/config-sunos4-g++.h105
-rw-r--r--ace/config-sunos4-lucid3.2.h95
-rw-r--r--ace/config-sunos4-sun3.x.h87
-rw-r--r--ace/config-sunos4-sun4.1.4.h99
-rw-r--r--ace/config-sunos4-sun4.x.h106
-rw-r--r--ace/config-sunos5.4-centerline-2.x.h162
-rw-r--r--ace/config-sunos5.4-g++.h181
-rw-r--r--ace/config-sunos5.4-sunc++-4.x.h194
-rw-r--r--ace/config-sunos5.5.h378
-rw-r--r--ace/config-sunos5.6.h128
-rw-r--r--ace/config-sunos5.7.h79
-rw-r--r--ace/config-sunos5.8.h25
-rw-r--r--ace/config-tandem.h445
-rw-r--r--ace/config-tru64.h23
-rw-r--r--ace/config-unixware-2.01-g++.h113
-rw-r--r--ace/config-unixware-2.1.2-g++.h102
-rw-r--r--ace/config-unixware-7.1.0.h447
-rw-r--r--ace/config-unixware-7.1.0.udk.h529
-rw-r--r--ace/config-visualage.h20
-rw-r--r--ace/config-vxworks5.x.h217
-rw-r--r--ace/config-win32-borland.h111
-rw-r--r--ace/config-win32-common.h498
-rw-r--r--ace/config-win32-ghs.h110
-rw-r--r--ace/config-win32-mingw.h64
-rw-r--r--ace/config-win32-msvc-5.h197
-rw-r--r--ace/config-win32-msvc-6.h194
-rw-r--r--ace/config-win32-msvc-7.h119
-rw-r--r--ace/config-win32-msvc.h43
-rw-r--r--ace/config-win32-visualage.h101
-rw-r--r--ace/config-win32.h58
91 files changed, 13863 insertions, 0 deletions
diff --git a/ace/config-WinCE.h b/ace/config-WinCE.h
new file mode 100644
index 00000000000..ca0281675a9
--- /dev/null
+++ b/ace/config-WinCE.h
@@ -0,0 +1,236 @@
+// $Id$
+
+#ifndef ACE_CONFIG_WINCE_H
+#define ACE_CONFIG_WINCE_H
+#include "ace/pre.h"
+
+#ifndef ACE_CONFIG_WIN32_H
+#error Use config-win32.h in config.h instead of this header
+#endif /* ACE_CONFIG_WIN32_H */
+
+#if !defined (UNDER_CE)
+#error Define UNDER_CE to version (i.e. 300 = 3.0)
+#endif /* UNDER_CE */
+
+#if !defined (ACE_HAS_WINCE)
+#define ACE_HAS_WINCE 1
+#endif
+
+// Only DLL version is supported on CE.
+#if defined (ACE_HAS_DLL)
+# undef ACE_HAS_DLL
+#endif /* ACE_HAS_DLL */
+#define ACE_HAS_DLL 1
+
+// Need to define LD search path explicitly on CE because
+// CE doesn't have environment variables and we can't get
+// the information using getenv.
+#define ACE_DEFAULT_LD_SEARCH_PATH ACE_LIB_TEXT (".\\;\\windows")
+
+#define ACE_LACKS_SYS_TYPES_H
+
+
+// CE is not NT.
+#if defined (ACE_HAS_WINNT4)
+# undef ACE_HAS_WINNT4
+#endif /* ACE_HAS_WINNT4 */
+#define ACE_HAS_WINNT4 0
+
+#define ACE_LACKS_ACE_TOKEN
+#define ACE_LACKS_ACE_OTHER
+#define ACE_LACKS_MSG_WFMO
+
+#define ACE_HAS_WCHAR
+
+#if !defined (ACE_USES_WCHAR)
+#define ACE_USES_WCHAR
+#endif /* ACE_USES_WCHAR */
+
+#define ACE_USES_WINCE_SEMA_SIMULATION
+
+#define ACE_LACKS_IOSTREAM_TOTALLY
+
+#if defined (ACE_HAS_STRICT)
+# undef ACE_HAS_STRICT
+#endif /* ACE_HAS_STRICT */
+#define ACE_HAS_STRICT 1
+
+#define ACE_HAS_NONSTATIC_OBJECT_MANAGER 1
+
+// FILE stuff isn't always defined in CE
+#ifndef _FILE_DEFINED
+typedef void FILE;
+#define _FILE_DEFINED
+#endif /* _FILE_DEFINED */
+
+// This was defined in previous versions of CE, but not 2.11
+#define EXCEPTION_ACCESS_VIOLATION STATUS_ACCESS_VIOLATION
+
+// We need to rename program entry name "main" with ace_ce_main here
+// so that we can call it from CE's bridge class.
+#define ACE_MAIN ace_ce_main
+#define ACE_MAIN_OBJECT_MANAGER
+
+// SH3 cross-compiler can't handle inline functions correctly
+// (along with other bugs.)
+#if defined (SH3)
+#define ACE_LACKS_INLINE_FUNCTIONS
+#endif /* SH3 && _DEBUG */
+
+#ifndef ACE_DEFAULT_SERVER_HOST
+# define ACE_DEFAULT_SERVER_HOST L"localhost"
+#endif /* ACE_DEFAULT_SERVER_HOST */
+
+// @@ Need to remap every function that uses any of these flags to
+// Win32 API. These are for ANSI styled function and are not
+// available on WinCE.
+
+#define _O_RDONLY 0x0000 /* open for reading only */
+#define _O_WRONLY 0x0001 /* open for writing only */
+#define _O_RDWR 0x0002 /* open for reading and writing */
+#define _O_APPEND 0x0008 /* writes done at eof */
+
+#define _O_CREAT 0x0100 /* create and open file */
+#define _O_TRUNC 0x0200 /* open and truncate */
+#define _O_EXCL 0x0400 /* open only if file doesn't already exist */
+
+/* O_TEXT files have <cr><lf> sequences translated to <lf> on read()'s,
+** and <lf> sequences translated to <cr><lf> on write()'s
+*/
+
+#define _O_TEXT 0x4000 /* file mode is text (translated) */
+#define _O_BINARY 0x8000 /* file mode is binary (untranslated) */
+
+/* macro to translate the C 2.0 name used to force binary mode for files */
+
+//#define _O_RAW _O_BINARY
+
+/* Open handle inherit bit */
+
+//#define _O_NOINHERIT 0x0080 /* child process doesn't inherit file */
+
+/* Temporary file bit - file is deleted when last handle is closed */
+
+#define _O_TEMPORARY 0x0040 /* temporary file bit */
+
+/* temporary access hint */
+
+//#define _O_SHORT_LIVED 0x1000 /* temporary storage file, try not to flush */
+
+/* sequential/random access hints */
+
+//#define _O_SEQUENTIAL 0x0020 /* file access is primarily sequential */
+//#define _O_RANDOM 0x0010 /* file access is primarily random */
+
+
+// Non-ANSI names
+#define O_RDONLY _O_RDONLY
+#define O_WRONLY _O_WRONLY
+#define O_RDWR _O_RDWR
+#define O_APPEND _O_APPEND
+#define O_CREAT _O_CREAT
+#define O_TRUNC _O_TRUNC
+#define O_EXCL _O_EXCL
+#define O_TEXT _O_TEXT
+#define O_BINARY _O_BINARY
+//#define O_RAW _O_BINARY
+#define O_TEMPORARY _O_TEMPORARY
+//#define O_NOINHERIT _O_NOINHERIT
+//#define O_SEQUENTIAL _O_SEQUENTIAL
+//#define O_RANDOM _O_RANDOM
+
+
+// @@ NSIG value. This is definitely not correct.
+#define NSIG 23
+
+
+// @@ For some reason, WinCE forgot to define this.
+// Need to find out what it is. (Used in MapViewOfFile ().)
+#define FILE_MAP_COPY 0
+
+
+#define ACE_LACKS_STRCASECMP // WinCE doesn't support _stricmp
+#define ACE_LACKS_GETSERVBYNAME
+#define ACE_LACKS_ACCESS
+#define ACE_LACKS_FILELOCKS
+#define ACE_LACKS_EXEC
+#define ACE_LACKS_MKTEMP
+#define ACE_LACKS_STRRCHR
+#define ACE_LACKS_BSEARCH
+#define ACE_LACKS_SOCKET_BUFSIZ
+#define ACE_LACKS_ISATTY
+#define ACE_LACKS_STRERROR
+
+#define ERRMAX 256 /* Needed for following define */
+#define ACE_LACKS_SYS_NERR /* Needed for sys_nerr in Log_Msg.cpp */
+
+
+#define ACE_LACKS_CUSERID
+#define ACE_LACKS_CHDIR
+#define ACE_LACKS_ENV
+#define ACE_LACKS_HOSTNAME
+
+#if defined (_WIN32_WCE_EMULATION)
+// @@ For some reason, qsort isn't defined correctly (_stdcall vs _cdecl)
+// under emulation. So for right now, exclude it.
+#define ACE_LACKS_QSORT
+#endif /* _WIN32_WCE_EMULATION && UNDER_CE == 300 */
+
+// @@ Followings are used to keep existing programs happy.
+
+#define ostream FILE
+#if !defined (BUFSIZ)
+# define BUFSIZ 1024
+#endif /* BUFSIZ */
+
+typedef void (__cdecl * __sighandler_t)(int); // keep Signal compilation happy
+typedef long off_t;
+
+#if defined (UNDER_CE) && (UNDER_CE > 200)
+#define EMFILE WSAEMFILE
+#define EINTR WSAEINTR
+#define EACCES ERROR_ACCESS_DENIED
+#define ENOSPC ERROR_HANDLE_DISK_FULL
+#define EEXIST ERROR_FILE_EXISTS
+#define EPIPE ERROR_BROKEN_PIPE
+#define EFAULT WSAEFAULT
+#define ENOENT WSAEINVAL
+#define EINVAL WSAEINVAL
+#define ERANGE WSAEINVAL
+#define EAGAIN WSAEWOULDBLOCK
+#define ENOMEM ERROR_OUTOFMEMORY
+#define ENODEV ERROR_BAD_DEVICE
+#define ACE_LACKS_MALLOC_H // We do have malloc.h, but don't use it.
+#endif /* UNDER_CE && UNDER_CE > 201 */
+
+#if (UNDER_CE < 300)
+#define ACE_LACKS_STRPBRK
+#define ACE_LACKS_STRSPN
+#define ACE_LACKS_STRTOD
+#define ACE_LACKS_STRTOL
+#define ACE_LACKS_STRTOUL
+#endif /* UNDER_CE < 300 */
+
+#if defined (UNDER_CE) && (UNDER_CE >= 211)
+#define ACE_HAS_WINCE_BROKEN_ERRNO
+#define _MAX_FNAME 255
+#endif /* UNDER_CE && UNDER_CE >= 211 */
+
+#define ACE_HAS_STRDUP_EMULATION
+#define ACE_HAS_WINSOCK2 0
+
+// CE doesn't have <sys/types.h> instead <types.h>
+#define ACE_HAS_FLAT_TYPES_H
+
+// @@ This needs to be defined and initialized as a static. (Singleton?)
+#define ACE_DEFAULT_LOG_STREAM 0
+
+// If you don't use MFC, this doesn't get defined
+#if !defined (ACE_HAS_MFC)
+inline void *operator new (unsigned int, void *p) { return p; }
+#endif /* ACE_HAS_MFC */
+
+#define ACE_ENDTHREADEX(STATUS) ExitThread ((DWORD) STATUS)
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_WINCE_H */
diff --git a/ace/config-aix-4.1.x.h b/ace/config-aix-4.1.x.h
new file mode 100644
index 00000000000..a739c1ae49a
--- /dev/null
+++ b/ace/config-aix-4.1.x.h
@@ -0,0 +1,8 @@
+/* -*- C++ -*- */
+// $Id$
+
+#ifndef ACE_AIX_VERS
+# define ACE_AIX_VERS 401
+#endif
+
+#include "ace/config-aix-4.x.h"
diff --git a/ace/config-aix-4.2.x.h b/ace/config-aix-4.2.x.h
new file mode 100644
index 00000000000..b44c851a437
--- /dev/null
+++ b/ace/config-aix-4.2.x.h
@@ -0,0 +1,8 @@
+/* -*- C++ -*- */
+// $Id$
+
+#ifndef ACE_AIX_VERS
+# define ACE_AIX_VERS 402
+#endif
+
+#include "ace/config-aix-4.x.h"
diff --git a/ace/config-aix-4.3.x.h b/ace/config-aix-4.3.x.h
new file mode 100644
index 00000000000..d6b2824ec35
--- /dev/null
+++ b/ace/config-aix-4.3.x.h
@@ -0,0 +1,8 @@
+/* -*- C++ -*- */
+// $Id$
+
+#ifndef ACE_AIX_VERS
+# define ACE_AIX_VERS 403
+#endif
+
+#include "ace/config-aix-4.x.h"
diff --git a/ace/config-aix-4.x.h b/ace/config-aix-4.x.h
new file mode 100644
index 00000000000..a649923ac05
--- /dev/null
+++ b/ace/config-aix-4.x.h
@@ -0,0 +1,291 @@
+/* -*- C++ -*- */
+// $Id$
+
+// The following configuration file is designed to work for OS
+// platforms running AIX 4.x using the IBM C++ compiler (xlC),
+// Visual Age C++ or g++/egcs.
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+#if defined (__xlC__) || defined (__IBMCPP__)
+ // AIX xlC, IBM C/C++, and Visual Age C++ compilers
+ //********************************************************************
+ //
+
+ // Compiler supports the ssize_t typedef.
+# define ACE_HAS_SSIZE_T
+
+// When using the preprocessor, Ignore info msg; invalid #pragma
+# if defined (__IBMCPP__) && (__IBMCPP__ < 400) // IBM C++ 3.6
+# define ACE_CC_PREPROCESSOR_ARGS "-E -qflag=w:w"
+# endif /* (__IBMCPP__) && (__IBMCPP__ < 400) */
+
+ // Keep an eye on this as the compiler and standards converge...
+# define ACE_LACKS_LINEBUFFERED_STREAMBUF
+# define ACE_LACKS_PRAGMA_ONCE
+
+ // C Set++ 3.1, IBM C/C++ 3.6, and Visual Age C++ 5 batch (__xlC__)
+# if defined (__xlC__)
+# if (__xlC__ < 0x0500)
+# define ACE_LACKS_PLACEMENT_OPERATOR_DELETE
+# endif /* __xlC__ < 0x0500 */
+# define ACE_TEMPLATES_REQUIRE_PRAGMA
+ // If compiling without thread support, turn off ACE's thread capability.
+# if !defined (_THREAD_SAFE)
+# define ACE_HAS_THREADS 0
+# endif /* _THREAD_SAFE */
+# endif
+
+ // These are for Visual Age C++ only
+# if defined (__IBMCPP__) && (__IBMCPP__ >= 400)
+# define ACE_TEMPLATES_REQUIRE_SOURCE
+# define ACE_HAS_STD_TEMPLATE_SPECIALIZATION
+# define ACE_HAS_TYPENAME_KEYWORD
+# undef WIFEXITED
+# undef WEXITSTATUS
+# if (__IBMCPP__ >= 500) /* Visual Age C++ 5 */
+# define ACE_HAS_STANDARD_CPP_LIBRARY 1
+# define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
+# endif /* __IBMCPP__ >= 500 */
+# endif /* __IBMCPP__ */
+
+#elif defined (__GNUG__)
+ // config-g++-common.h undef's ACE_HAS_STRING_CLASS with -frepo, so
+ // this must appear before its #include.
+# define ACE_HAS_STRING_CLASS
+
+# include "ace/config-g++-common.h"
+ // Denotes that GNU has cstring.h as standard, to redefine memchr().
+# define ACE_HAS_GNU_CSTRING_H
+# define ACE_HAS_SSIZE_T
+
+# if !defined (ACE_MT_SAFE) || ACE_MT_SAFE != 0
+ // ACE_MT_SAFE is #defined below, for all compilers.
+# if !defined (_REENTRANT)
+# define _REENTRANT
+# endif /* _REENTRANT */
+# endif /* !ACE_MT_SAFE */
+
+#else /* ! __xlC__ && ! __GNUG__ */
+# error unsupported compiler in ace/config-aix-4.x.h
+#endif /* ! __xlC__ && ! __GNUG__ */
+
+
+// Compiling for AIX.
+#ifndef AIX
+# define AIX
+#endif /* AIX */
+
+// AIX shared libs look strangely like archive libs until you look inside
+// them.
+#if defined (ACE_DLL_SUFFIX)
+# undef ACE_DLL_SUFFIX
+#endif
+#define ACE_DLL_SUFFIX ".a"
+
+// Use BSD 4.4 socket definitions for pre-AIX 4.2. The _BSD setting also
+// controls the data type used for waitpid(), wait(), and wait3().
+#if (ACE_AIX_VERS < 402)
+# define _BSD 44
+# define ACE_HAS_UNION_WAIT
+#endif /* ACE_AIX_VERS < 402 */
+
+// This environment requires this thing, pre-AIX 4.3
+#if (ACE_AIX_VERS < 403)
+# define _BSD_INCLUDES
+#endif /* ACE_AIX_VERS < 403 */
+
+#define ACE_DEFAULT_BASE_ADDR ((char *) 0x80000000)
+
+#define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R
+
+// ACE_HAS_AIX_BROKEN_SOCKET_HEADER may be required if your OS patches are
+// not up to date. On up-to-date 4.2+ systems, it should not be required.
+// 4.2+ has 4.4 BSD sendmsg/recvmsg
+#if (ACE_AIX_VERS < 402)
+# define ACE_HAS_AIX_BROKEN_SOCKET_HEADER
+#else
+# if (ACE_AIX_VERS == 402)
+# define ACE_HAS_SIZET_SOCKET_LEN
+# else
+# define ACE_HAS_SOCKLEN_T
+# endif
+# define ACE_HAS_4_4BSD_SENDMSG_RECVMSG
+#endif /* ACE_AIX_VERS < 402 */
+
+#define ACE_HAS_AIX_HI_RES_TIMER
+#define ACE_HAS_ALLOCA
+
+// Compiler/platform has correctly prototyped header files.
+#define ACE_HAS_CPLUSPLUS_HEADERS
+#if (ACE_AIX_VERS < 403)
+# define ACE_HAS_CHARPTR_DL
+#endif /* ACE_AIX_VERS < 403 */
+
+// Prototypes for both signal() and struct sigaction are consistent.
+#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
+
+// OS has readdir and friends.
+#define ACE_HAS_DIRENT
+
+// OS supports the getrusage() system call
+#define ACE_HAS_GETRUSAGE
+
+#define ACE_HAS_GPERF
+
+#define ACE_HAS_H_ERRNO
+
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+#define ACE_HAS_NONCONST_SELECT_TIMEVAL
+#define ACE_HAS_IP_MULTICAST
+#define ACE_HAS_MSG
+#if (ACE_AIX_VERS < 402)
+# define ACE_LACKS_MSG_ACCRIGHTS
+# define ACE_LACKS_RLIMIT
+#endif
+
+// Compiler/platform supports poll().
+#define ACE_HAS_POLL
+
+// Platform supports POSIX O_NONBLOCK semantics.
+#define ACE_HAS_POSIX_NONBLOCK
+
+#define ACE_HAS_POSIX_TIME
+// ... but needs to include another header for it on 4.2+
+#if (ACE_AIX_VERS >= 402)
+# define ACE_HAS_BROKEN_POSIX_TIME
+#endif /* ACE_AIX_VERS > 402 */
+// ... and needs another typedef
+#define ACE_LACKS_TIMESPEC_T
+#define ACE_HAS_SELECT_H
+
+#define ACE_HAS_REENTRANT_FUNCTIONS
+
+// Compiler/platform defines the sig_atomic_t typedef
+#define ACE_HAS_SIG_ATOMIC_T
+#if (ACE_AIX_VERS >= 402)
+# define ACE_HAS_SIGINFO_T
+# define ACE_LACKS_SIGINFO_H
+#endif /* ACE_AIX_VERS >= 402 */
+#if (ACE_AIX_VERS >= 403)
+# define ACE_HAS_SIGTIMEDWAIT
+// it may exist in earlier revs, but I'm not sure and I don't have a
+// system to validate
+# define ACE_HAS_P_READ_WRITE
+#endif /* ACE_AIX_VERS >= 403 */
+
+#define ACE_HAS_SIGWAIT
+#if (ACE_AIX_VERS >= 403)
+# define ACE_HAS_SIGTIMEDWAIT
+#endif /* ACE_AIX_VERS >= 403 */
+#define ACE_HAS_SIN_LEN
+#define ACE_HAS_STRBUF_T
+
+// Compiler supports stropts.h
+#define ACE_HAS_STREAMS
+// #define ACE_HAS_STREAM_PIPES
+
+// Compiler/platform supports strerror ().
+#define ACE_HAS_STRERROR
+
+// AIX bzero()
+#define ACE_HAS_STRINGS
+
+#define ACE_HAS_STRUCT_NETDB_DATA
+
+// Dynamic linking is in good shape on newer OS/patch levels. If you have
+// trouble with the dynamic linking parts of ACE, and can't patch your OS
+// up to latest levels, comment this out.
+#define ACE_HAS_SVR4_DYNAMIC_LINKING
+// This is tightly related to dynamic linking...
+#define ACE_HAS_AUTOMATIC_INIT_FINI
+
+#define ACE_HAS_SVR4_GETTIMEOFDAY
+
+#define ACE_HAS_SYSV_IPC
+#define ACE_HAS_TIMOD_H
+#define ACE_HAS_TIUSER_H
+#define ACE_HAS_TLI
+#define ACE_HAS_BROKEN_T_ERROR
+#define ACE_HAS_TLI_PROTOTYPES
+#define ACE_TLI_TCP_DEVICE "/dev/xti/tcp"
+
+#define ACE_HAS_UALARM
+
+#if (ACE_AIX_VERS >= 402)
+# define ACE_HAS_UCONTEXT_T
+#endif /* ACE_AIX_VERS >= 402 */
+
+#define ACE_HAS_UTIME
+
+// Platform has XPG4 wide character type and functions
+#define ACE_HAS_XPG4_MULTIBYTE_CHAR
+
+#define ACE_LACKS_TCP_H
+
+// AIX uses LIBPATH to search for libraries
+#define ACE_LD_SEARCH_PATH "LIBPATH"
+
+#define ACE_NEEDS_DEV_IO_CONVERSION
+
+// Defines the page size of the system.
+#define ACE_PAGE_SIZE 4096
+
+//**************************************************************
+//
+// Threads related definitions.
+//
+// The threads on AIX are generally POSIX P1003.1c (ACE_HAS_PTHREADS).
+// However, there is also a kernel thread ID (tid_t) that is used in
+// ACE_Log_Msg (printing the thread ID). The tid_t is not the same as
+// pthread_t, and can't derive one from the other - thread_self() gets
+// the tid_t (kernel thread ID) if called from a thread.
+// Thanks very much to Chris Lahey for straightening this out.
+
+// Unless threads are specifically turned off, build with them enabled.
+#if !defined (ACE_HAS_THREADS)
+# define ACE_HAS_THREADS 1
+#endif
+
+#if (ACE_HAS_THREADS != 0)
+# if !defined (ACE_MT_SAFE)
+# define ACE_MT_SAFE 1
+# endif
+
+# define ACE_HAS_PTHREADS
+// 4.3 and up has 1003.1c standard; 4.2 has draft 7
+# if (ACE_AIX_VERS >= 403)
+# define ACE_HAS_PTHREADS_STD
+# define ACE_HAS_PTHREADS_UNIX98_EXT
+# else
+# define ACE_HAS_PTHREADS_DRAFT7
+# define ACE_LACKS_RWLOCK_T
+# define ACE_LACKS_THREAD_STACK_ADDR
+// If ACE doesn't compile due to the lack of these methods, please
+// send email to ace-users@cs.wustl.edu reporting this.
+// #define ACE_LACKS_CONDATTR_PSHARED
+// #define ACE_LACKS_MUTEXATTR_PSHARED
+# define ACE_LACKS_SETSCHED
+# endif /* ACE_AIX_VERS >= 403 */
+
+# define ACE_HAS_RECURSIVE_THR_EXIT_SEMANTICS
+# define ACE_HAS_SIGTHREADMASK
+# define ACE_HAS_THREAD_SPECIFIC_STORAGE
+
+# define ACE_LACKS_THREAD_PROCESS_SCOPING
+#else
+# undef ACE_HAS_THREADS
+#endif /* ACE_HAS_THREADS != 0 */
+
+#define ACE_MALLOC_ALIGN 8
+
+// By default, tracing code is not compiled. To compile it in, cause
+// ACE_NTRACE to not be defined, and rebuild ACE.
+#if !defined (ACE_NTRACE)
+#define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-aix5.1.h b/ace/config-aix5.1.h
new file mode 100644
index 00000000000..3d1d53828cd
--- /dev/null
+++ b/ace/config-aix5.1.h
@@ -0,0 +1,5 @@
+// $Id$
+//
+// Config file for AIX 5.1
+
+#include "ace/config-aix-4.x.h"
diff --git a/ace/config-all.h b/ace/config-all.h
new file mode 100644
index 00000000000..4c3ea8750bc
--- /dev/null
+++ b/ace/config-all.h
@@ -0,0 +1,640 @@
+// -*- C++ -*-
+
+//=============================================================================
+/**
+ * @file config-all.h
+ *
+ * $Id$
+ *
+ * @author (Originally in OS.h)Doug Schmidt <schmidt@cs.wustl.edu>
+ * @author Jesper S. M|ller<stophph@diku.dk>
+ * @author and a cast of thousands...
+ */
+//=============================================================================
+
+#ifndef ACE_CONFIG_ALL_H
+#define ACE_CONFIG_ALL_H
+#include "ace/pre.h"
+
+#include "ace/config.h"
+
+#if !defined (ACE_LACKS_PRAGMA_ONCE)
+# pragma once
+#endif /* ACE_LACKS_PRAGMA_ONCE */
+
+// ============================================================================
+// RCSID Macros
+// ============================================================================
+
+// By default, DO include RCS Id strings in object code.
+#if ! defined (ACE_USE_RCSID)
+# define ACE_USE_RCSID 1
+#endif /* #if ! defined (ACE_USE_RCSID) */
+
+#if (defined (ACE_USE_RCSID) && (ACE_USE_RCSID != 0))
+# if ! defined (ACE_RCSID)
+
+ // This hack has the following purposes:
+ // 1. To define the RCS id string variable as a static char*, so
+ // that there won't be any duplicate extern symbols at link
+ // time.
+ // 2. To have a RCS id string variable with a unique name for each
+ // file.
+ // 3. To avoid warnings of the type "variable declared and never
+ // used".
+
+# define ACE_RCSID(path, file, id) \
+ inline const char* get_rcsid_ ## path ## _ ## file (const char*) \
+ { \
+ return id ; \
+ } \
+ static const char* rcsid_ ## path ## _ ## file = \
+ get_rcsid_ ## path ## _ ## file ( rcsid_ ## path ## _ ## file ) ;
+
+# endif /* #if ! defined (ACE_RCSID) */
+#else
+
+ // RCS id strings are not wanted.
+# if defined (ACE_RCSID)
+# undef ACE_RCSID
+# endif /* #if defined (ACE_RCSID) */
+# define ACE_RCSID(path, file, id) /* noop */
+#endif /* #if (defined (ACE_USE_RCSID) && (ACE_USE_RCSID != 0)) */
+
+// ============================================================================
+// INLINE macros
+//
+// These macros handle all the inlining of code via the .i or .inl files
+// ============================================================================
+
+#if defined (ACE_LACKS_INLINE_FUNCTIONS) && !defined (ACE_NO_INLINE)
+# define ACE_NO_INLINE
+#endif /* defined (ACE_LACKS_INLINE_FUNCTIONS) && !defined (ACE_NO_INLINE) */
+
+// ACE inlining has been explicitly disabled. Implement
+// internally within ACE by undefining __ACE_INLINE__.
+#if defined (ACE_NO_INLINE)
+# undef __ACE_INLINE__
+#endif /* ! ACE_NO_INLINE */
+
+#if defined (__ACE_INLINE__)
+# define ACE_INLINE inline
+# if !defined (ACE_HAS_INLINED_OSCALLS)
+# define ACE_HAS_INLINED_OSCALLS
+# endif /* !ACE_HAS_INLINED_OSCALLS */
+#else
+# define ACE_INLINE
+#endif /* __ACE_INLINE__ */
+
+# if defined (ACE_HAS_GNUC_BROKEN_TEMPLATE_INLINE_FUNCTIONS)
+# define ACE_INLINE_FOR_GNUC ACE_INLINE
+# else
+# define ACE_INLINE_FOR_GNUC
+# endif /* ACE_HAS_GNUC_BROKEN_TEMPLATE_INLINE_FUNCTIONS */
+
+// Some ACE classes always use inline functions to maintain high
+// performance, but some platforms have buggy inline function support.
+// In this case, we don't use inline with them.
+# if defined (ACE_LACKS_INLINE_FUNCTIONS)
+# if defined (ASYS_INLINE)
+# undef ASYS_INLINE
+# endif /* ASYS_INLINE */
+# define ASYS_INLINE
+# if defined (ACE_HAS_INLINED_OSCALLS)
+# undef ACE_HAS_INLINED_OSCALLS
+# endif /* ACE_HAS_INLINED_OSCALLS */
+# else
+# define ASYS_INLINE inline
+# endif /* ACE_LACKS_INLINE_FUNCTIONS */
+
+// ============================================================================
+// EXPLICIT macro
+// ============================================================================
+
+# if defined (ACE_HAS_EXPLICIT_KEYWORD)
+# define ACE_EXPLICIT explicit
+# else /* ! ACE_HAS_EXPLICIT_KEYWORD */
+# define ACE_EXPLICIT
+# endif /* ! ACE_HAS_EXPLICIT_KEYWORD */
+
+// ============================================================================
+// MUTABLE macro
+// ============================================================================
+
+# if defined (ACE_HAS_MUTABLE_KEYWORD)
+# define ACE_MUTABLE mutable
+# define ACE_CONST_WHEN_MUTABLE const // Addition #1
+# else /* ! ACE_HAS_MUTABLE_KEYWORD */
+# define ACE_MUTABLE
+# define ACE_CONST_WHEN_MUTABLE // Addition #2
+# endif /* ! ACE_HAS_MUTABLE_KEYWORD */
+
+// ============================================================================
+// EXPORT macros
+//
+// Since Win32 DLL's do not export all symbols by default, they must be
+// explicitly exported (which is done by *_Export macros).
+// ============================================================================
+
+// Win32 should have already defined the macros in config-win32-common.h
+#if !defined (ACE_HAS_CUSTOM_EXPORT_MACROS)
+# define ACE_Proper_Export_Flag
+# define ACE_Proper_Import_Flag
+# define ACE_EXPORT_SINGLETON_DECLARATION(T)
+# define ACE_IMPORT_SINGLETON_DECLARATION(T)
+# define ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# define ACE_IMPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+#endif /* ACE_HAS_CUSTOM_EXPORT_MACROS */
+
+#include "ace/ACE_export.h"
+#include "ace/svc_export.h"
+
+// This is a whim of mine -- that instead of annotating a class with
+// ACE_Export in its declaration, we make the declaration near the TOP
+// of the file with ACE_DECLARE_EXPORT.
+// TS = type specifier (e.g., class, struct, int, etc.)
+// ID = identifier
+// So, how do you use it? Most of the time, just use ...
+// ACE_DECLARE_EXPORT(class, someobject);
+// If there are global functions to be exported, then use ...
+// ACE_DECLARE_EXPORT(void, globalfunction) (int, ...);
+// Someday, when template libraries are supported, we made need ...
+// ACE_DECLARE_EXPORT(template class, sometemplate) <class TYPE, class LOCK>;
+# define ACE_DECLARE_EXPORT(TS,ID) TS ACE_Export ID
+
+// ============================================================================
+// Cast macros
+//
+// These macros are used to choose between the old cast style and the new
+// *_cast<> operators
+// ============================================================================
+
+# if defined (ACE_HAS_ANSI_CASTS)
+
+# define ACE_sap_any_cast(TYPE) reinterpret_cast<TYPE> (const_cast<ACE_Addr &> (ACE_Addr::sap_any))
+
+# define ACE_static_cast(TYPE, EXPR) static_cast<TYPE> (EXPR)
+# define ACE_static_cast_1_ptr(TYPE, T1, EXPR) static_cast<TYPE<T1> *> (EXPR)
+# define ACE_static_cast_2_ptr(TYPE, T1, T2, EXPR) static_cast<TYPE<T1, T2> *> (EXPR)
+# define ACE_static_cast_3_ptr(TYPE, T1, T2, T3, EXPR) static_cast<TYPE<T1, T2, T3> *> (EXPR)
+# define ACE_static_cast_4_ptr(TYPE, T1, T2, T3, T4, EXPR) static_cast<TYPE<T1, T2, T3, T4> *> (EXPR)
+# define ACE_static_cast_5_ptr(TYPE, T1, T2, T3, T4, T5, EXPR) static_cast<TYPE<T1, T2, T3, T4, T5> *> (EXPR)
+# define ACE_static_cast_1_ref(TYPE, T1, EXPR) static_cast<TYPE<T1> &> (EXPR)
+# define ACE_static_cast_2_ref(TYPE, T1, T2, EXPR) static_cast<TYPE<T1, T2> &> (EXPR)
+# define ACE_static_cast_3_ref(TYPE, T1, T2, T3, EXPR) static_cast<TYPE<T1, T2, T3> &> (EXPR)
+# define ACE_static_cast_4_ref(TYPE, T1, T2, T3, T4, EXPR) static_cast<TYPE<T1, T2, T3, T4> &> (EXPR)
+# define ACE_static_cast_5_ref(TYPE, T1, T2, T3, T4, T5, EXPR) static_cast<TYPE<T1, T2, T3, T4, T5> &> (EXPR)
+
+# define ACE_const_cast(TYPE, EXPR) const_cast<TYPE> (EXPR)
+# define ACE_const_cast_1_ptr(TYPE, T1, EXPR) const_cast<TYPE<T1> *> (EXPR)
+# define ACE_const_cast_2_ptr(TYPE, T1, T2, EXPR) const_cast<TYPE<T1, T2> *> (EXPR)
+# define ACE_const_cast_3_ptr(TYPE, T1, T2, T3, EXPR) const_cast<TYPE<T1, T2, T3> *> (EXPR)
+# define ACE_const_cast_4_ptr(TYPE, T1, T2, T3, T4, EXPR) const_cast<TYPE<T1, T2, T3, T4> *> (EXPR)
+# define ACE_const_cast_5_ptr(TYPE, T1, T2, T3, T4, T5, EXPR) const_cast<TYPE<T1, T2, T3, T4, T5> *> (EXPR)
+# define ACE_const_cast_1_ref(TYPE, T1, EXPR) const_cast<TYPE<T1> &> (EXPR)
+# define ACE_const_cast_2_ref(TYPE, T1, T2, EXPR) const_cast<TYPE<T1, T2> &> (EXPR)
+# define ACE_const_cast_3_ref(TYPE, T1, T2, T3, EXPR) const_cast<TYPE<T1, T2, T3> &> (EXPR)
+# define ACE_const_cast_4_ref(TYPE, T1, T2, T3, T4, EXPR) const_cast<TYPE<T1, T2, T3, T4> &> (EXPR)
+# define ACE_const_cast_5_ref(TYPE, T1, T2, T3, T4, T5, EXPR) const_cast<TYPE<T1, T2, T3, T4, T5> &> (EXPR)
+
+# define ACE_reinterpret_cast(TYPE, EXPR) reinterpret_cast<TYPE> (EXPR)
+# define ACE_reinterpret_cast_1_ptr(TYPE, T1, EXPR) reinterpret_cast<TYPE<T1> *> (EXPR)
+# define ACE_reinterpret_cast_2_ptr(TYPE, T1, T2, EXPR) reinterpret_cast<TYPE<T1, T2> *> (EXPR)
+# define ACE_reinterpret_cast_3_ptr(TYPE, T1, T2, T3, EXPR) reinterpret_cast<TYPE<T1, T2, T3> *> (EXPR)
+# define ACE_reinterpret_cast_4_ptr(TYPE, T1, T2, T3, T4, EXPR) reinterpret_cast<TYPE<T1, T2, T3, T4> *> (EXPR)
+# define ACE_reinterpret_cast_5_ptr(TYPE, T1, T2, T3, T4, T5, EXPR) reinterpret_cast<TYPE<T1, T2, T3, T4, T5> *> (EXPR)
+# define ACE_reinterpret_cast_1_ref(TYPE, T1, EXPR) reinterpret_cast<TYPE<T1> &> (EXPR)
+# define ACE_reinterpret_cast_2_ref(TYPE, T1, T2, EXPR) reinterpret_cast<TYPE<T1, T2> &> (EXPR)
+# define ACE_reinterpret_cast_3_ref(TYPE, T1, T2, T3, EXPR) reinterpret_cast<TYPE<T1, T2, T3> &> (EXPR)
+# define ACE_reinterpret_cast_4_ref(TYPE, T1, T2, T3, T4, EXPR) reinterpret_cast<TYPE<T1, T2, T3, T4> &> (EXPR)
+# define ACE_reinterpret_cast_5_ref(TYPE, T1, T2, T3, T4, T5, EXPR) reinterpret_cast<TYPE<T1, T2, T3, T4, T5> &> (EXPR)
+
+# if defined (ACE_LACKS_RTTI)
+# define ACE_dynamic_cast(TYPE, EXPR) static_cast<TYPE> (EXPR)
+# define ACE_dynamic_cast_1_ptr(TYPE, T1, EXPR) static_cast<TYPE<T1> *> (EXPR)
+# define ACE_dynamic_cast_2_ptr(TYPE, T1, T2, EXPR) static_cast<TYPE<T1, T2> *> (EXPR)
+# define ACE_dynamic_cast_3_ptr(TYPE, T1, T2, T3, EXPR) static_cast<TYPE<T1, T2, T3> *> (EXPR)
+# define ACE_dynamic_cast_4_ptr(TYPE, T1, T2, T3, T4, EXPR) static_cast<TYPE<T1, T2, T3, T4> *> (EXPR)
+# define ACE_dynamic_cast_5_ptr(TYPE, T1, T2, T3, T4, T5, EXPR) static_cast<TYPE<T1, T2, T3, T4, T5> *> (EXPR)
+# define ACE_dynamic_cast_1_ref(TYPE, T1, EXPR) static_cast<TYPE<T1> &> (EXPR)
+# define ACE_dynamic_cast_2_ref(TYPE, T1, T2, EXPR) static_cast<TYPE<T1, T2> &> (EXPR)
+# define ACE_dynamic_cast_3_ref(TYPE, T1, T2, T3, EXPR) static_cast<TYPE<T1, T2, T3> &> (EXPR)
+# define ACE_dynamic_cast_4_ref(TYPE, T1, T2, T3, T4, EXPR) static_cast<TYPE<T1, T2, T3, T4> &> (EXPR)
+# define ACE_dynamic_cast_5_ref(TYPE, T1, T2, T3, T4, T5, EXPR) static_cast<TYPE<T1, T2, T3, T4, T5> &> (EXPR)
+# else /* ! ACE_LACKS_RTTI */
+# define ACE_dynamic_cast(TYPE, EXPR) dynamic_cast<TYPE> (EXPR)
+# define ACE_dynamic_cast_1_ptr(TYPE, T1, EXPR) dynamic_cast<TYPE<T1> *> (EXPR)
+# define ACE_dynamic_cast_2_ptr(TYPE, T1, T2, EXPR) dynamic_cast<TYPE<T1, T2> *> (EXPR)
+# define ACE_dynamic_cast_3_ptr(TYPE, T1, T2, T3, EXPR) dynamic_cast<TYPE<T1, T2, T3> *> (EXPR)
+# define ACE_dynamic_cast_4_ptr(TYPE, T1, T2, T3, T4, EXPR) dynamic_cast<TYPE<T1, T2, T3, T4> *> (EXPR)
+# define ACE_dynamic_cast_5_ptr(TYPE, T1, T2, T3, T4, T5, EXPR) dynamic_cast<TYPE<T1, T2, T3, T4, T5> *> (EXPR)
+# define ACE_dynamic_cast_1_ref(TYPE, T1, EXPR) dynamic_cast<TYPE<T1> &> (EXPR)
+# define ACE_dynamic_cast_2_ref(TYPE, T1, T2, EXPR) dynamic_cast<TYPE<T1, T2> &> (EXPR)
+# define ACE_dynamic_cast_3_ref(TYPE, T1, T2, T3, EXPR) dynamic_cast<TYPE<T1, T2, T3> &> (EXPR)
+# define ACE_dynamic_cast_4_ref(TYPE, T1, T2, T3, T4, EXPR) dynamic_cast<TYPE<T1, T2, T3, T4> &> (EXPR)
+# define ACE_dynamic_cast_5_ref(TYPE, T1, T2, T3, T4, T5, EXPR) dynamic_cast<TYPE<T1, T2, T3, T4, T5> &> (EXPR)
+# endif /* ! ACE_LACKS_RTTI */
+
+# else
+
+# define ACE_sap_any_cast(TYPE) ((TYPE) (ACE_Addr::sap_any))
+
+# define ACE_static_cast(TYPE, EXPR) ((TYPE) (EXPR))
+# define ACE_static_cast_1_ptr(TYPE, T1, EXPR) ((TYPE<T1> *) (EXPR))
+# define ACE_static_cast_2_ptr(TYPE, T1, T2, EXPR) ((TYPE<T1, T2> *) (EXPR))
+# define ACE_static_cast_3_ptr(TYPE, T1, T2, T3, EXPR) ((TYPE<T1, T2, T3> *) (EXPR))
+# define ACE_static_cast_4_ptr(TYPE, T1, T2, T3, T4, EXPR) ((TYPE<T1, T2, T3, T4> *) (EXPR))
+# define ACE_static_cast_5_ptr(TYPE, T1, T2, T3, T4, T5, EXPR) ((TYPE<T1, T2, T3, T4, T5> *) (EXPR))
+# define ACE_static_cast_1_ref(TYPE, T1, EXPR) ((TYPE<T1> &) (EXPR))
+# define ACE_static_cast_2_ref(TYPE, T1, T2, EXPR) ((TYPE<T1, T2> &) (EXPR))
+# define ACE_static_cast_3_ref(TYPE, T1, T2, T3, EXPR) ((TYPE<T1, T2, T3> &) (EXPR))
+# define ACE_static_cast_4_ref(TYPE, T1, T2, T3, T4, EXPR) ((TYPE<T1, T2, T3, T4> &) (EXPR))
+# define ACE_static_cast_5_ref(TYPE, T1, T2, T3, T4, T5, EXPR) ((TYPE<T1, T2, T3, T4, T5> &) (EXPR))
+
+# define ACE_const_cast(TYPE, EXPR) ((TYPE) (EXPR))
+# define ACE_const_cast_1_ptr(TYPE, T1, EXPR) ((TYPE<T1> *) (EXPR))
+# define ACE_const_cast_2_ptr(TYPE, T1, T2, EXPR) ((TYPE<T1, T2> *) (EXPR))
+# define ACE_const_cast_3_ptr(TYPE, T1, T2, T3, EXPR) ((TYPE<T1, T2, T3> *) (EXPR))
+# define ACE_const_cast_4_ptr(TYPE, T1, T2, T3, T4, EXPR) ((TYPE<T1, T2, T3, T4> *) (EXPR))
+# define ACE_const_cast_5_ptr(TYPE, T1, T2, T3, T4, T5, EXPR) ((TYPE<T1, T2, T3, T4, T5> *) (EXPR))
+# define ACE_const_cast_1_ref(TYPE, T1, EXPR) ((TYPE<T1> &) (EXPR))
+# define ACE_const_cast_2_ref(TYPE, T1, T2, EXPR) ((TYPE<T1, T2> &) (EXPR))
+# define ACE_const_cast_3_ref(TYPE, T1, T2, T3, EXPR) ((TYPE<T1, T2, T3> &) (EXPR))
+# define ACE_const_cast_4_ref(TYPE, T1, T2, T3, T4, EXPR) ((TYPE<T1, T2, T3, T4> &) (EXPR))
+# define ACE_const_cast_5_ref(TYPE, T1, T2, T3, T4, T5, EXPR) ((TYPE<T1, T2, T3, T4, T5> &) (EXPR))
+
+# define ACE_reinterpret_cast(TYPE, EXPR) ((TYPE) (EXPR))
+# define ACE_reinterpret_cast_1_ptr(TYPE, T1, EXPR) ((TYPE<T1> *) (EXPR))
+# define ACE_reinterpret_cast_2_ptr(TYPE, T1, T2, EXPR) ((TYPE<T1, T2> *) (EXPR))
+# define ACE_reinterpret_cast_3_ptr(TYPE, T1, T2, T3, EXPR) ((TYPE<T1, T2, T3> *) (EXPR))
+# define ACE_reinterpret_cast_4_ptr(TYPE, T1, T2, T3, T4, EXPR) ((TYPE<T1, T2, T3, T4> *) (EXPR))
+# define ACE_reinterpret_cast_5_ptr(TYPE, T1, T2, T3, T4, T5, EXPR) ((TYPE<T1, T2, T3, T4, T5> *) (EXPR))
+# define ACE_reinterpret_cast_1_ref(TYPE, T1, EXPR) ((TYPE<T1> &) (EXPR))
+# define ACE_reinterpret_cast_2_ref(TYPE, T1, T2, EXPR) ((TYPE<T1, T2> &) (EXPR))
+# define ACE_reinterpret_cast_3_ref(TYPE, T1, T2, T3, EXPR) ((TYPE<T1, T2, T3> &) (EXPR))
+# define ACE_reinterpret_cast_4_ref(TYPE, T1, T2, T3, T4, EXPR) ((TYPE<T1, T2, T3, T4> &) (EXPR))
+# define ACE_reinterpret_cast_5_ref(TYPE, T1, T2, T3, T4, T5, EXPR) ((TYPE<T1, T2, T3, T4, T5> &) (EXPR))
+
+# define ACE_dynamic_cast(TYPE, EXPR) ((TYPE) (EXPR))
+# define ACE_dynamic_cast_1_ptr(TYPE, T1, EXPR) ((TYPE<T1> *) (EXPR))
+# define ACE_dynamic_cast_2_ptr(TYPE, T1, T2, EXPR) ((TYPE<T1, T2> *) (EXPR))
+# define ACE_dynamic_cast_3_ptr(TYPE, T1, T2, T3, EXPR) ((TYPE<T1, T2, T3> *) (EXPR))
+# define ACE_dynamic_cast_4_ptr(TYPE, T1, T2, T3, T4, EXPR) ((TYPE<T1, T2, T3, T4> *) (EXPR))
+# define ACE_dynamic_cast_5_ptr(TYPE, T1, T2, T3, T4, T5, EXPR) ((TYPE<T1, T2, T3, T4, T5> *) (EXPR))
+# define ACE_dynamic_cast_1_ref(TYPE, T1, EXPR) ((TYPE<T1> &) (EXPR))
+# define ACE_dynamic_cast_2_ref(TYPE, T1, T2, EXPR) ((TYPE<T1, T2> &) (EXPR))
+# define ACE_dynamic_cast_3_ref(TYPE, T1, T2, T3, EXPR) ((TYPE<T1, T2, T3> &) (EXPR))
+# define ACE_dynamic_cast_4_ref(TYPE, T1, T2, T3, T4, EXPR) ((TYPE<T1, T2, T3, T4> &) (EXPR))
+# define ACE_dynamic_cast_5_ref(TYPE, T1, T2, T3, T4, T5, EXPR) ((TYPE<T1, T2, T3, T4, T5> &) (EXPR))
+# endif /* ACE_HAS_ANSI_CASTS */
+
+# if !defined (ACE_CAST_CONST)
+ // Sun CC 4.2, for example, requires const in reinterpret casts of
+ // data members in const member functions. But, other compilers
+ // complain about the useless const. This keeps everyone happy.
+# if defined (__SUNPRO_CC)
+# define ACE_CAST_CONST const
+# else /* ! __SUNPRO_CC */
+# define ACE_CAST_CONST
+# endif /* ! __SUNPRO_CC */
+# endif /* ! ACE_CAST_CONST */
+
+// ============================================================================
+// UNICODE macros (to be added later)
+// ============================================================================
+
+// Get the unicode (i.e. ACE_TCHAR) defines
+# include "ace/ace_wchar.h"
+
+
+// ============================================================================
+// Compiler Silencing macros
+//
+// Some compilers complain about parameters that are not used. This macro
+// should keep them quiet.
+// ============================================================================
+
+#if defined (ghs) || defined (__GNUC__) || defined (__hpux) || defined (__sgi) || defined (__DECCXX) || defined (__KCC) || defined (__rational__) || defined (__USLC__) || defined (ACE_RM544)
+// Some compilers complain about "statement with no effect" with (a).
+// This eliminates the warnings, and no code is generated for the null
+// conditional statement. NOTE: that may only be true if -O is enabled,
+// such as with GreenHills (ghs) 1.8.8.
+# define ACE_UNUSED_ARG(a) do {/* null */} while (&a == 0)
+#else /* ghs || __GNUC__ || ..... */
+# define ACE_UNUSED_ARG(a) (a)
+#endif /* ghs || __GNUC__ || ..... */
+
+#if defined (__sgi) || defined (ghs) || defined (__DECCXX) || defined(__BORLANDC__) || defined (__KCC) || defined (ACE_RM544) || defined (__USLC__)
+# define ACE_NOTREACHED(a)
+#else /* __sgi || ghs || ..... */
+# define ACE_NOTREACHED(a) a
+#endif /* __sgi || ghs || ..... */
+
+// ============================================================================
+// errno stuff
+// ============================================================================
+
+#include "ace/OS_Errno.h"
+
+// ============================================================================
+// ACE_NEW macros
+//
+// A useful abstraction for expressions involving operator new since
+// we can change memory allocation error handling policies (e.g.,
+// depending on whether ANSI/ISO exception handling semantics are
+// being used).
+// ============================================================================
+
+#if defined (ACE_NEW_THROWS_EXCEPTIONS)
+
+// Since new() throws exceptions, we need a way to avoid passing
+// exceptions past the call to new because ACE counts on having a 0
+// return value for a failed allocation. Some compilers offer the
+// new (nothrow) version, which does exactly what we want. Others
+// do not. For those that do not, this sets up what exception is thrown,
+// and then below we'll do a try/catch around the new to catch it and
+// return a 0 pointer instead.
+
+# if defined (__HP_aCC)
+ // I know this works for HP aC++... if <stdexcept> is used, it
+ // introduces other stuff that breaks things, like <memory>, which
+ // screws up auto_ptr.
+# include /**/ <new>
+ // _HP_aCC was first defined at aC++ 03.13 on HP-UX 11. Prior to that
+ // (03.10 and before) a failed new threw bad_alloc. After that (03.13
+ // and above) the exception thrown is dependent on the below settings.
+# if (HPUX_VERS >= 1100)
+# if (((__HP_aCC < 32500 && !defined (RWSTD_NO_NAMESPACE)) || \
+ (__HP_aCC >= 32500 && defined (_HP_NAMESPACE_STD))) \
+ || defined (ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB))
+# define ACE_bad_alloc std::bad_alloc
+# else
+# define ACE_bad_alloc bad_alloc
+# endif /* __HP_aCC */
+# elif ((__HP_aCC < 12500 && !defined (RWSTD_NO_NAMESPACE)) || \
+ (__HP_aCC >= 12500 && defined (_NAMESPACE_STD)))
+# define ACE_bad_alloc std::bad_alloc
+# else
+# define ACE_bad_alloc bad_alloc
+# endif /* HPUX_VERS < 1100 */
+# define ACE_throw_bad_alloc throw ACE_bad_alloc ()
+# elif defined (__SUNPRO_CC)
+# if (__SUNPRO_CC < 0x500) || ((__SUNPRO_CC == 0x500 && __SUNPRO_CC_COMPAT == 4))
+# include /**/ <exception.h>
+ // Note: we catch ::xalloc rather than just xalloc because of
+ // a name clash with unsafe_ios::xalloc()
+# define ACE_bad_alloc ::xalloc
+# define ACE_throw_bad_alloc throw ACE_bad_alloc ("no more memory")
+# else
+# include /**/ <new>
+# define ACE_bad_alloc std::bad_alloc
+# define ACE_throw_bad_alloc throw ACE_bad_alloc ()
+# endif /* __SUNPRO_CC < 0x500 */
+# elif defined (__BORLANDC__)
+# include /**/ <new>
+# define ACE_bad_alloc std::bad_alloc
+# define ACE_throw_bad_alloc throw ACE_bad_alloc ()
+# else
+# include /**/ <new>
+# define ACE_bad_alloc bad_alloc
+# define ACE_throw_bad_alloc throw ACE_bad_alloc ()
+# endif /* __HP_aCC */
+
+# if defined (ACE_HAS_NEW_NOTHROW)
+# define ACE_NEW_RETURN(POINTER,CONSTRUCTOR,RET_VAL) \
+ do { POINTER = new(nothrow) CONSTRUCTOR; \
+ if (POINTER == 0) { errno = ENOMEM; return RET_VAL; } \
+ } while (0)
+# define ACE_NEW(POINTER,CONSTRUCTOR) \
+ do { POINTER = new(nothrow) CONSTRUCTOR; \
+ if (POINTER == 0) { errno = ENOMEM; return; } \
+ } while (0)
+
+# else
+
+# define ACE_NEW_RETURN(POINTER,CONSTRUCTOR,RET_VAL) \
+ do { try { POINTER = new CONSTRUCTOR; } \
+ catch (ACE_bad_alloc) { errno = ENOMEM; return RET_VAL; } \
+ } while (0)
+
+# define ACE_NEW(POINTER,CONSTRUCTOR) \
+ do { try { POINTER = new CONSTRUCTOR; } \
+ catch (ACE_bad_alloc) { errno = ENOMEM; return; } \
+ } while (0)
+# endif /* ACE_HAS_NEW_NOTHROW */
+
+#else /* ACE_NEW_THROWS_EXCEPTIONS */
+
+# define ACE_NEW_RETURN(POINTER,CONSTRUCTOR,RET_VAL) \
+ do { POINTER = new CONSTRUCTOR; \
+ if (POINTER == 0) { errno = ENOMEM; return RET_VAL; } \
+ } while (0)
+# define ACE_NEW(POINTER,CONSTRUCTOR) \
+ do { POINTER = new CONSTRUCTOR; \
+ if (POINTER == 0) { errno = ENOMEM; return; } \
+ } while (0)
+
+# define ACE_throw_bad_alloc \
+ void* gcc_will_complain_if_literal_0_is_returned = 0; \
+ return gcc_will_complain_if_literal_0_is_returned
+
+#endif /* ACE_NEW_THROWS_EXCEPTIONS */
+
+// ============================================================================
+// ACE_ALLOC_HOOK* macros
+//
+// Macros to declare and define class-specific allocation operators.
+// ============================================================================
+
+# if defined (ACE_HAS_ALLOC_HOOKS)
+# define ACE_ALLOC_HOOK_DECLARE \
+ void *operator new (size_t bytes); \
+ void operator delete (void *ptr);
+
+ // Note that these are just place holders for now. Some day they
+ // may be be replaced by <ACE_Malloc>.
+# define ACE_ALLOC_HOOK_DEFINE(CLASS) \
+ void *CLASS::operator new (size_t bytes) { return ::new char[bytes]; } \
+ void CLASS::operator delete (void *ptr) { delete [] ((char *) ptr); }
+# else
+# define ACE_ALLOC_HOOK_DECLARE struct __Ace {} /* Just need a dummy... */
+# define ACE_ALLOC_HOOK_DEFINE(CLASS)
+# endif /* ACE_HAS_ALLOC_HOOKS */
+
+// ============================================================================
+// ACE_OSCALL_* macros
+//
+// The following two macros ensure that system calls are properly
+// restarted (if necessary) when interrupts occur.
+// ============================================================================
+
+#if defined (ACE_HAS_SIGNAL_SAFE_OS_CALLS)
+# define ACE_OSCALL(OP,TYPE,FAILVALUE,RESULT) \
+ do \
+ RESULT = (TYPE) OP; \
+ while (RESULT == FAILVALUE && errno == EINTR)
+# define ACE_OSCALL_RETURN(OP,TYPE,FAILVALUE) \
+ do { \
+ TYPE ace_result_; \
+ do \
+ ace_result_ = (TYPE) OP; \
+ while (ace_result_ == FAILVALUE && errno == EINTR); \
+ return ace_result_; \
+ } while (0)
+# elif defined (ACE_WIN32)
+# define ACE_OSCALL_RETURN(X,TYPE,FAILVALUE) \
+ do \
+ return (TYPE) X; \
+ while (0)
+# define ACE_OSCALL(X,TYPE,FAILVALUE,RESULT) \
+ do \
+ RESULT = (TYPE) X; \
+ while (0)
+# if defined (__BORLANDC__) && (__BORLANDC__ <= 0x550)
+# define ACE_WIN32CALL_RETURN(X,TYPE,FAILVALUE) \
+ do { \
+ TYPE ace_result_; \
+ TYPE ace_local_result_ = (TYPE) X; \
+ ace_result_ = ace_local_result_; \
+ if (ace_result_ == FAILVALUE) \
+ ACE_OS::set_errno_to_last_error (); \
+ return ace_result_; \
+ } while (0)
+# else
+# define ACE_WIN32CALL_RETURN(X,TYPE,FAILVALUE) \
+ do { \
+ TYPE ace_result_; \
+ ace_result_ = (TYPE) X; \
+ if (ace_result_ == FAILVALUE) \
+ ACE_OS::set_errno_to_last_error (); \
+ return ace_result_; \
+ } while (0)
+# endif /* defined (__BORLANDC__) && (__BORLANDC__ <= 0x550) */
+# define ACE_WIN32CALL(X,TYPE,FAILVALUE,RESULT) \
+ do { \
+ RESULT = (TYPE) X; \
+ if (RESULT == FAILVALUE) \
+ ACE_OS::set_errno_to_last_error (); \
+ } while (0)
+#else /* ACE_HAS_SIGNAL_SAFE_OS_CALLS */
+# define ACE_OSCALL_RETURN(OP,TYPE,FAILVALUE) do { TYPE ace_result_ = FAILVALUE; ace_result_ = ace_result_; return OP; } while (0)
+# define ACE_OSCALL(OP,TYPE,FAILVALUE,RESULT) do { RESULT = (TYPE) OP; } while (0)
+#endif /* ACE_HAS_SIGNAL_SAFE_OS_CALLS */
+
+// ============================================================================
+// at_exit declarations
+// ============================================================================
+
+// Marker for cleanup, used by ACE_Exit_Info.
+extern int ace_exit_hook_marker;
+
+// For use by <ACE_OS::exit>.
+extern "C"
+{
+ typedef void (*ACE_EXIT_HOOK) (void);
+}
+
+// ============================================================================
+// log_msg declarations
+// ============================================================================
+
+# if defined (ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS)
+typedef int (*ACE_SEH_EXCEPT_HANDLER)(void *);
+// Prototype of win32 structured exception handler functions.
+// They are used to get the exception handling expression or
+// as exception handlers.
+# endif /* ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS */
+
+class ACE_OS_Thread_Descriptor;
+class ACE_OS_Log_Msg_Attributes;
+typedef void (*ACE_INIT_LOG_MSG_HOOK) (ACE_OS_Log_Msg_Attributes &attr
+# if defined (ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS)
+ , ACE_SEH_EXCEPT_HANDLER selector
+ , ACE_SEH_EXCEPT_HANDLER handler
+# endif /* ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS */
+ );
+typedef void (*ACE_INHERIT_LOG_MSG_HOOK) (ACE_OS_Thread_Descriptor*,
+ ACE_OS_Log_Msg_Attributes &);
+
+typedef void (*ACE_CLOSE_LOG_MSG_HOOK) (void);
+
+typedef void (*ACE_SYNC_LOG_MSG_HOOK) (const ACE_TCHAR *prog_name);
+
+typedef ACE_OS_Thread_Descriptor *(*ACE_THR_DESC_LOG_MSG_HOOK) (void);
+
+// ============================================================================
+// Fundamental types
+// ============================================================================
+
+#if defined (ACE_WIN32)
+
+typedef HANDLE ACE_HANDLE;
+typedef SOCKET ACE_SOCKET;
+# define ACE_INVALID_HANDLE INVALID_HANDLE_VALUE
+
+#else /* ! ACE_WIN32 */
+
+typedef int ACE_HANDLE;
+typedef ACE_HANDLE ACE_SOCKET;
+# define ACE_INVALID_HANDLE -1
+
+#endif /* ACE_WIN32 */
+
+typedef void *(*ACE_THR_FUNC)(void *);
+
+# if defined (VXWORKS)
+# if defined (ghs)
+ // GreenHills 1.8.8 needs the stdarg.h #include before the #include of
+ // vxWorks.h.
+ // Also, be sure that these #includes come _after_ the key_t typedef, and
+ // before the #include of time.h.
+# include /**/ <stdarg.h>
+# endif /* ghs */
+
+# include /**/ <vxWorks.h>
+# endif /* VXWORKS */
+
+extern "C"
+{
+# if defined (VXWORKS)
+typedef FUNCPTR ACE_THR_C_FUNC; // where typedef int (*FUNCPTR) (...)
+# elif defined (ACE_PSOS)
+// needed to handle task entry point type inconsistencies in pSOS+
+typedef void (*PSOS_TASK_ENTRY_POINT)();
+typedef void (*ACE_THR_C_FUNC)(void *);
+# else
+typedef void *(*ACE_THR_C_FUNC)(void *);
+# endif /* VXWORKS */
+}
+
+// ============================================================================
+// PACE macros
+// ============================================================================
+#if defined (ACE_HAS_PACE) && !defined (ACE_WIN32)
+# define ACE_HAS_POSIX_SEM
+#endif /* ACE_HAS_PACE */
+
+// ============================================================================
+// Miscellaneous macros
+// ============================================================================
+
+// This is used to indicate that a platform doesn't support a
+// particular feature.
+#if defined ACE_HAS_VERBOSE_NOTSUP
+ // Print a console message with the file and line number of the
+ // unsupported function.
+# if defined (ACE_HAS_STANDARD_CPP_LIBRARY) && (ACE_HAS_STANDARD_CPP_LIBRARY != 0)
+# include /**/ <cstdio>
+# else
+# include /**/ <stdarg.h> // LynxOS requires this before stdio.h
+# include /**/ <stdio.h>
+# endif
+# define ACE_NOTSUP_RETURN(FAILVALUE) do { errno = ENOTSUP; fprintf (stderr, ACE_LIB_TEXT ("ACE_NOTSUP: %s, line %d\n"), __FILE__, __LINE__); return FAILVALUE; } while (0)
+# define ACE_NOTSUP do { errno = ENOTSUP; fprintf (stderr, ACE_LIB_TEXT ("ACE_NOTSUP: %s, line %d\n"), __FILE__, __LINE__); return; } while (0)
+#else /* ! ACE_HAS_VERBOSE_NOTSUP */
+# define ACE_NOTSUP_RETURN(FAILVALUE) do { errno = ENOTSUP ; return FAILVALUE; } while (0)
+# define ACE_NOTSUP do { errno = ENOTSUP; return; } while (0)
+#endif /* ! ACE_HAS_VERBOSE_NOTSUP */
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_ALL_H */
diff --git a/ace/config-chorus.h b/ace/config-chorus.h
new file mode 100644
index 00000000000..827777a8a0f
--- /dev/null
+++ b/ace/config-chorus.h
@@ -0,0 +1,159 @@
+/* -*- C++ -*- */
+// $Id$
+
+// The following configuration file is designed to work for Chorus
+// platforms using one of these compilers:
+// * GNU g++
+// * GreenHills
+// It uses the Chorus POSIX threads interface.
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+// Define CHORUS to the correct version number
+#ifdef CHORUS_4
+# define CHORUS 4.0
+#else
+# define CHORUS 3.1b
+#endif
+
+#if defined (linux)
+ // This shouldn't be necessary.
+# undef linux
+#endif /* linux */
+
+// Compiler-specific configuration.
+
+#if defined (__GNUG__)
+# include "ace/config-g++-common.h"
+# undef ACE_HAS_ANSI_CASTS
+# define ACE_LACKS_CHAR_STAR_RIGHT_SHIFTS
+#elif defined (ghs)
+# define ACE_CONFIG_INCLUDE_GHS_COMMON
+# include "ace/config-ghs-common.h"
+
+# define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
+# define ACE_HAS_TANDEM_SIGNALS
+# define ACE_HAS_TEMPLATE_SPECIALIZATION
+# define ACE_LACKS_ACE_IOSTREAM /* MVME lacks signed and unsigned char */
+# define ACE_LACKS_FLOATING_POINT
+#else /* ! __GNUG__ && ! ghs */
+# error unsupported compiler for ACE on Chorus
+#endif /* ! __GNUG__ && ! ghs */
+
+// OS-specific configuration
+
+// Chorus cannot grow shared memory, so this is the default size for a
+// local name space
+#define ACE_CHORUS_LOCAL_NAME_SPACE_T_SIZE 128000
+// Used in OS.i to map an actor id into a KnCap.
+#define ACE_CHORUS_MAX_ACTORS 64
+
+// This is not needed when compiling for PPC. It is necessary
+// for certain methods in ACE.cpp.
+#if defined(sparc) && !defined(__unix)
+# define __unix
+#endif
+
+#if defined(CHORUS_4)
+# define ACE_CHORUS_DEFAULT_MIN_STACK_SIZE 0x8000
+# define ACE_HAS_4_4BSD_SENDMSG_RECVMSG
+# define ACE_HAS_TIMEZONE_GETTIMEOFDAY
+#else
+# define ACE_CHORUS_DEFAULT_MIN_STACK_SIZE 0x2000
+# define ACE_LACKS_KEY_T
+# define ACE_LACKS_ACCESS
+# define ACE_LACKS_FSYNC
+# define ACE_LACKS_GETSERVBYNAME
+# define ACE_LACKS_MKFIFO
+# define ACE_LACKS_READLINK
+# define ACE_LACKS_TRUNCATE
+# define ACE_LACKS_LONGLONG_T
+#endif
+
+#define ACE_HAS_BROKEN_READV
+#define ACE_HAS_CLOCK_GETTIME
+#define ACE_HAS_CPLUSPLUS_HEADERS
+#define ACE_HAS_DIRENT
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+#define ACE_HAS_IP_MULTICAST
+#define ACE_HAS_LONG_MAP_FAILED
+#define ACE_HAS_MSG
+#define ACE_HAS_NONCONST_SELECT_TIMEVAL
+#define ACE_HAS_POSIX_SEM
+#define ACE_HAS_POSIX_TIME
+#define ACE_HAS_SIGWAIT
+#define ACE_HAS_SSIZE_T
+#define ACE_HAS_STRDUP_EMULATION
+#define ACE_HAS_STRERROR
+#define ACE_HAS_TSS_EMULATION
+#define ACE_LACKS_CONDATTR_PSHARED
+#define ACE_LACKS_FORK
+#define ACE_LACKS_GETHOSTENT
+#define ACE_LACKS_GETPGID
+#define ACE_LACKS_SETPGID
+#define ACE_LACKS_SETREGID
+#define ACE_LACKS_SETREUID
+#define ACE_LACKS_MADVISE
+#define ACE_LACKS_MALLOC_H
+#define ACE_LACKS_MEMORY_H
+#define ACE_LACKS_MPROTECT
+#define ACE_LACKS_MSYNC
+#define ACE_LACKS_NAMED_POSIX_SEM
+#define ACE_LACKS_PARAM_H
+#define ACE_LACKS_READDIR_R
+#define ACE_LACKS_READV
+#define ACE_LACKS_RLIMIT
+#define ACE_LACKS_RWLOCK_T
+#define ACE_LACKS_SBRK
+#define ACE_LACKS_SEMBUF_T
+#define ACE_LACKS_SIGSET
+#define ACE_LACKS_STRRECVFD
+#define ACE_LACKS_SYSV_MSG_H
+#define ACE_LACKS_SYSV_SHMEM
+#define ACE_LACKS_UNIX_SIGNALS
+#define ACE_LACKS_UTSNAME_T
+#define ACE_LACKS_WRITEV
+#define ACE_PAGE_SIZE 4096
+
+// Chorus has syslog, but doesn't have setlogmask()
+#define ACE_LACKS_SETLOGMASK
+
+// Yes, we do have threads.
+#define ACE_HAS_THREADS
+#define ACE_HAS_THREAD_SPECIFIC_STORAGE
+#if !defined (ACE_MT_SAFE)
+# define ACE_MT_SAFE 1
+#endif
+// And they're even POSIX pthreads
+#define ACE_HAS_PTHREADS
+#define ACE_HAS_PTHREADS_STD
+#define ACE_LACKS_PTHREAD_CANCEL
+#define ACE_LACKS_PTHREAD_CLEANUP
+#define ACE_LACKS_PTHREAD_SIGMASK
+#define ACE_LACKS_PTHREAD_THR_SIGSETMASK
+// Chorus 4.0 supports POSIX Threads 1003.1b/1003.1c
+#if !defined(CHORUS_4)
+# define ACE_HAS_PTHREAD_PROCESS_ENUM
+#endif
+
+
+#if !defined (__ACE_INLINE__)
+# define __ACE_INLINE__
+#endif /* ! __ACE_INLINE__ */
+
+#if !defined (ACE_NTRACE)
+# define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+
+// By default, don't include RCS Id strings in object code.
+#if !defined (ACE_USE_RCSID)
+# define ACE_USE_RCSID 0
+#endif /* #if !defined (ACE_USE_RCSID) */
+
+// Needed to wait for "processes" to exit.
+#include <am/await.h>
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-cray.h b/ace/config-cray.h
new file mode 100644
index 00000000000..20d66fa333b
--- /dev/null
+++ b/ace/config-cray.h
@@ -0,0 +1,242 @@
+/* -*- C++ -*- */
+// $Id$
+
+#ifndef ACE_CONFIG_CRAY_H
+#define ACE_CONFIG_CRAY_H
+#include "ace/pre.h"
+
+/*
+ The following predefined macros are used within ACE ifdefs.
+ These are defined when using the Cray compilers. _CRAYMPP
+ is defined, for example, if you are running on a Cray T3E
+ massively parallel machine. Moreover, in the case of the T3E,
+ _CRAYT3E will be defined. This is used to determine the
+ ACE_SIZEOF defines for primitive types.
+
+ _UNICOS is defined as either the major version of UNICOS being run,
+ e.g. 9 or 10 on the vector machines (e.g. C90, T90, J90, YMP, ...)
+ or the major+minor+level UNICOS/mk version, e.g. 2.0.3 => 203,
+ being run on an MPP machine.
+
+ Summary:
+
+ _CRAYMPP (defined only if running on MPP machine, e.g. T3E, UNICOS/mk)
+ _CRAYT3E (defined specifically if compiling on a Cray T3E)
+ _UNICOS (defined if running UNICOS or UNICOS/mk)
+
+ Tested on UNICOS 10.0.0.5, UNICOS/mk 2.0.4.57
+ Compiles on UNICOS 9.0.2.8, but some tests deadlock
+
+ Contributed by Doug Anderson <dla@home.com>
+*/
+
+#if defined (_UNICOS) && !defined (MAXPATHLEN)
+#define MAXPATHLEN 1023
+#endif /* _UNICOS */
+
+// Turns off the tracing feature.
+#if !defined (ACE_NTRACE)
+#define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+
+#define ACE_DEFAULT_CLOSE_ALL_HANDLES 0
+
+// Defines the page size of the system.
+#define ACE_PAGE_SIZE 4096
+
+#define ACE_HAS_CPLUSPLUS_HEADERS
+
+// using cray's autoinstantiation gives C++ prelinker: error: instantiation loop
+#define ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION
+
+#define ACE_HAS_TEMPLATE_SPECIALIZATION
+
+#define ACE_HAS_ANSI_CASTS
+
+#define ACE_HAS_USING_KEYWORD
+
+#define ACE_HAS_SSIZE_T
+
+#define ACE_HAS_SYSV_IPC
+
+#define ACE_MT_SAFE 1
+
+#define ACE_HAS_THREADS
+
+#define ACE_HAS_PTHREADS
+
+// UNICOS 10 and UNICOS/mk implement a small subset of POSIX Threads,
+// but the prototypes follow the POSIX.1c-1995 definitions. Earlier
+// UNICOS versions sport Draft 7 threads.
+
+#if _UNICOS > 9
+# define ACE_HAS_PTHREADS_STD
+#else
+# define ACE_HAS_PTHREADS_DRAFT7
+# define ACE_LACKS_THREAD_STACK_SIZE
+# define ACE_LACKS_THREAD_STACK_ADDR
+ // UNICOS 9 doesn't have this, nor sched.h
+# define SCHED_OTHER 0
+# define SCHED_FIFO 1
+# define SCHED_RR 2
+#endif
+
+#define ACE_HAS_THREAD_SPECIFIC_STORAGE
+
+#define ACE_HAS_PTHREAD_MUTEXATTR_SETKIND_NP
+
+#define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R
+
+#define ACE_HAS_POSIX_TIME
+
+#define ACE_HAS_TIMEZONE_GETTIMEOFDAY
+
+#define ACE_HAS_POSIX_NONBLOCK
+
+#define ACE_HAS_TERM_IOCTLS
+
+#define ACE_HAS_DIRENT
+
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+
+#define ACE_HAS_IP_MULTICAST
+
+#define ACE_HAS_SIN_LEN
+
+#define ACE_HAS_NONCONST_SELECT_TIMEVAL
+
+#define ACE_HAS_NONCONST_READLINK
+
+#define ACE_HAS_CHARPTR_SOCKOPT
+
+#define ACE_HAS_NONCONST_GETBY
+
+// has man pages, but links with missing symbols and I can't find lib yet
+/* #define ACE_HAS_REGEX */
+
+#define ACE_HAS_SIG_MACROS
+
+#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
+
+#if _UNICOS > 9
+# define ACE_HAS_SIGWAIT
+#endif
+
+#define ACE_HAS_SIG_ATOMIC_T
+
+#define ACE_HAS_SIGISMEMBER_BUG
+
+#define ACE_HAS_MSG
+
+#define ACE_HAS_STRERROR
+
+#define ACE_HAS_GPERF
+
+// Special modifications that apply to UNICOS/mk
+#if defined(_CRAYMPP)
+
+# define ACE_HAS_SIGINFO_T
+# define ACE_HAS_UCONTEXT_T
+
+#endif
+
+// The Cray T90 supposedly supports SYSV SHMEM, but I was unable to get it
+// working. Of course, all other Cray PVP and MPP systems do NOT support it,
+// so it's probably good to just define like this for consistency
+#define ACE_LACKS_SYSV_SHMEM
+#define ACE_LACKS_MMAP
+#define ACE_LACKS_CONST_TIMESPEC_PTR
+#define ACE_LACKS_SYSCALL
+#define ACE_LACKS_STRRECVFD
+#define ACE_LACKS_MADVISE
+#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS
+#define ACE_LACKS_LINEBUFFERED_STREAMBUF
+#define ACE_LACKS_PTHREAD_CLEANUP
+#define ACE_LACKS_CONDATTR_PSHARED
+#define ACE_LACKS_THREAD_PROCESS_SCOPING
+
+#if !defined(_CRAYMPP)
+
+#define ACE_LACKS_PTHREAD_CANCEL
+#define ACE_LACKS_PTHREAD_KILL
+
+#endif
+
+#define ACE_LACKS_MUTEXATTR_PSHARED
+#define ACE_LACKS_RWLOCK_T
+#define ACE_LACKS_PRI_T
+#define ACE_LACKS_GETPGID
+#define ACE_LACKS_SETPGID
+#define ACE_LACKS_SETREGID
+#define ACE_LACKS_SETREUID
+#define ACE_LACKS_MPROTECT
+#define ACE_LACKS_MSYNC
+#define ACE_LACKS_READV
+#define ACE_LACKS_RLIMIT
+
+// we probably want to fake not having this, since Cray memory mgmt is different
+#define ACE_LACKS_SBRK
+
+#define ACE_LACKS_SETSCHED
+
+#define ACE_LACKS_SIGINFO_H
+
+#define ACE_LACKS_TIMESPEC_T
+
+#define ACE_LACKS_WRITEV
+
+// Cray vector machines are "word" oriented, and modern ones are hard 64-bit.
+// "char" is somewhat of a special case. Most problems arise when code thinks
+// it can address 32-bit quantities and the like. MPP crays are typically
+// byte oriented, e.g. T3E uses Alpha processors, so we don't need as much
+// special treatment.
+
+#ifndef _CRAYMPP
+
+# define ACE_SIZEOF_CHAR 1
+# define ACE_SIZEOF_SHORT 8
+# define ACE_SIZEOF_INT 8
+# define ACE_SIZEOF_LONG 8
+# define ACE_SIZEOF_LONG_LONG 8
+# define ACE_SIZEOF_FLOAT 8
+# define ACE_SIZEOF_DOUBLE 8
+# define ACE_SIZEOF_LONG_DOUBLE 16
+# define ACE_SIZEOF_VOID_P 8
+
+#elif defined(_CRAYT3E)
+
+# define ACE_SIZEOF_CHAR 1
+# define ACE_SIZEOF_SHORT 4
+# define ACE_SIZEOF_INT 8
+# define ACE_SIZEOF_LONG 8
+# define ACE_SIZEOF_LONG_LONG 8
+# define ACE_SIZEOF_FLOAT 4
+# define ACE_SIZEOF_DOUBLE 8
+# define ACE_SIZEOF_LONG_DOUBLE 8
+# define ACE_SIZEOF_VOID_P 8
+
+#endif
+
+// Ones to check out at some point
+
+/* #define ACE_HAS_SYS_SIGLIST */
+
+// C++ Compiler stuff to verify
+/* #define ACE_NEW_THROWS_EXCEPTIONS */
+/* #define ACE_HAS_TEMPLATE_TYPEDEFS */
+
+// thread issues to check out
+/* #define ACE_LACKS_TIMEDWAIT_PROTOTYPES */
+
+// Cray does seem to support it, in -lnsl and has tiuser.h header
+/* #define ACE_HAS_TLI */
+/* #define ACE_HAS_TIUSER_H */
+/* #define ACE_HAS_TLI_PROTOTYPES */
+/* #define ACE_LACKS_T_ERRNO */
+
+/* #define ACE_LACKS_NAMED_POSIX_SEM */
+
+/* #define ACE_HAS_SYS_ERRLIST */
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_CRAY_H */
diff --git a/ace/config-cxx-common.h b/ace/config-cxx-common.h
new file mode 100644
index 00000000000..88aa69a3f15
--- /dev/null
+++ b/ace/config-cxx-common.h
@@ -0,0 +1,88 @@
+// $Id$
+
+#ifndef ACE_CXX_COMMON_H
+#define ACE_CXX_COMMON_H
+#include "ace/pre.h"
+
+#if !defined (ACE_CONFIG_INCLUDE_CXX_COMMON)
+# error ace/config-cxx-common.h: ACE configuration error! Do not #include this file directly!
+#endif
+
+#if defined (__DECCXX)
+# if !defined (linux)
+# define ACE_HAS_STRING_CLASS
+# if (__DECCXX_VER >= 60090010)
+# define ACE_HAS_STDCPP_STL_INCLUDES
+# endif /* __DECCXX_VER < 60090010 */
+# endif /* ! linux */
+
+# define DEC_CXX
+# define ACE_HAS_WORKING_EXPLICIT_TEMPLATE_DESTRUCTOR
+# define ACE_LACKS_LINEBUFFERED_STREAMBUF
+# define ACE_LACKS_SIGNED_CHAR
+# define ACE_HAS_CPLUSPLUS_HEADERS
+# if (__DECCXX_VER >= 60090010)
+ // DEC CXX 6.0 supports exceptions, etc., by default. Exceptions
+ // are enabled by platform_osf1_4.x.GNU/wrapper_macros.GNU.
+# if defined (ACE_HAS_EXCEPTIONS)
+# define ACE_NEW_THROWS_EXCEPTIONS
+# endif /* ACE_HAS_EXCEPTIONS */
+# define ACE_HAS_ANSI_CASTS
+# if !defined (__RTTI)
+# define ACE_LACKS_RTTI
+# endif
+# define ACE_HAS_STANDARD_CPP_LIBRARY 1
+# define ACE_HAS_TEMPLATE_SPECIALIZATION
+# define ACE_HAS_TEMPLATE_TYPEDEFS
+# define ACE_HAS_TYPENAME_KEYWORD
+# define ACE_HAS_USING_KEYWORD
+
+# define ACE_ENDLESS_LOOP \
+ unsigned int ace_endless_loop____ = 0; if (ace_endless_loop____) break;
+
+# if defined (__USE_STD_IOSTREAM)
+# define ACE_LACKS_CHAR_RIGHT_SHIFTS
+# define ACE_LACKS_IOSTREAM_FX
+# define ACE_LACKS_UNBUFFERED_STREAMBUF
+# define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
+# else /* ! __USE_STD_IOSTREAM */
+# define ACE_USES_OLD_IOSTREAMS
+# endif /* ! __USE_STD_IOSTREAM */
+
+// 9: nested comment not allowed. (/usr/include/pdsc.h!) (nestcomment)
+// 177: variable was declared but never referenced (declbutnotref)
+// 193: zero used for undefined preprocessing identifier (undpreid)
+// 236: controlling expression is constant (boolexprconst)
+// 401: base_class_with_nonvirtual_dtor (basclsnondto)
+// 1016: expected type is incompatible with declared type of int (incint)
+// 1136: conversion to smaller size integer could lose data (intconlosbit)
+
+# pragma message disable basclsnondto
+# pragma message disable boolexprconst
+# pragma message disable undpreid
+
+# if (__DECCXX_VER >= 60190029)
+ // 6.1-029 and later support msg 1136. Disable it because it
+ // causes warnings from ACE and/or TAO.
+# pragma message disable intconlosbit
+# endif /* __DECCXX_VER >= 60190029 */
+
+# if (__DECCXX_VER == 60190027)
+ // Seems that this version of cxx doesn't have reset
+# define ACE_AUTO_PTR_LACKS_RESET
+# endif /* __DECCXX_VER == 60190027 */
+
+# if defined (DIGITAL_UNIX) && DIGITAL_UNIX >= 0x40D
+ // variable "PTHREAD_THIS_CATCH_NP" was declared but never referenced
+# pragma message disable declbutnotref
+# endif /* DIGITAL_UNIX >= 4.0f */
+
+# else /* __DECCXX_VER < 60090010 */
+# define ACE_LACKS_PRAGMA_ONCE
+# endif /* __DECCXX_VER < 60090010 */
+#else /* ! __DECCXX */
+# error ace/config-cxx-common.h can only be used with Compaq CXX!
+#endif /* ! __DECCXX */
+
+#include "ace/post.h"
+#endif /* ACE_CXX_COMMON_H */
diff --git a/ace/config-cygwin32-common.h b/ace/config-cygwin32-common.h
new file mode 100644
index 00000000000..8381b7b2ecf
--- /dev/null
+++ b/ace/config-cygwin32-common.h
@@ -0,0 +1,141 @@
+/* -*- C++ -*- */
+// $Id$
+
+// This configuration file is designed to be included by another,
+// specific configuration file. It provides config information common
+// to all CygWin platforms. It automatically determines the CPU
+// architecture, compiler (g++ or egcs), and libc (libc5/glibc/newlib),
+// and configures based on those.
+
+#ifndef ACE_CYGWIN32_COMMON_H
+#define ACE_CYGWIN32_COMMON_H
+#include "ace/pre.h"
+
+#define CYGWIN32
+
+// We trust this file will get included before <sys/types.h>
+#if !defined(FD_SETSIZE)
+# define FD_SETSIZE 1024
+#endif
+
+#define ACE_LACKS_UNIX_DOMAIN_SOCKETS
+#define ACE_LACKS_SYSV_MSG_H
+#define ACE_HAS_SIG_MACROS
+#define ACE_LACKS_SYSTIME_H
+#define ACE_LACKS_TELLDIR
+#define ACE_LACKS_SYSV_SHMEM
+
+#define ACE_LACKS_MMAP
+#define ACE_LACKS_MPROTECT
+
+#define ACE_LACKS_SEMBUF_T
+#define ACE_LACKS_NAMED_POSIX_SEM
+#define ACE_LACKS_SENDMSG
+#define ACE_LACKS_RECVMSG
+#define ACE_LACKS_READDIR_R
+#define ACE_LACKS_RLIMIT
+#define ACE_LACKS_SOCKETPAIR
+#define ACE_LACKS_SEEKDIR
+#define ACE_LACKS_TEMPNAM
+#define ACE_LACKS_MKTEMP
+// #define ACE_HAS_BROKEN_SAP_ANY
+
+#if ! defined (__ACE_INLINE__)
+# define __ACE_INLINE__
+#endif /* ! __ACE_INLINE__ */
+
+// Needed to differentiate between libc 5 and libc 6 (aka glibc).
+// It's there on all libc 5 systems I checked.
+#include /**/ <features.h>
+
+
+// First the machine specific part
+// #define ACE_HAS_CYGWIN32_SOCKET_H
+
+// Then the compiler specific parts
+
+// config-g++-common.h undef's ACE_HAS_STRING_CLASS with -frepo, so
+// this must appear before its #include.
+#define ACE_HAS_STRING_CLASS
+
+#if defined (__GNUG__)
+# include "ace/config-g++-common.h"
+#else
+# error unsupported compiler in ace/config-cygwin32-common.h
+#endif /* __GNUG__ */
+
+
+// Completely common part :-)
+
+// Platform/compiler has the sigwait(2) prototype
+#define ACE_HAS_SIGWAIT
+#define ACE_HAS_POSIX_TIME
+#define ACE_LACKS_TIMESPEC_T
+#define ACE_HAS_MSG
+#define ACE_DEFAULT_BASE_ADDR ((char *) 0x80000000)
+#define ACE_LACKS_SETREUID
+#define ACE_LACKS_SETREGID
+#define ACE_LACKS_GETHOSTENT
+#define ACE_HAS_NONCONST_SELECT_TIMEVAL
+#define ACE_LACKS_GETPGID_PROTOTYPE
+
+// Compiler/platform supports alloca().
+#define ACE_HAS_ALLOCA
+
+// Compiler/platform has the getrusage() system call.
+#define ACE_HAS_GETRUSAGE
+#define ACE_HAS_GETRUSAGE_PROTO
+
+#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
+
+// Optimize ACE_Handle_Set for select().
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+
+#if !defined(ACE_HAS_IP_MULTICAST)
+# define ACE_HAS_IP_MULTICAST
+#endif /* #if ! defined(ACE_HAS_IP_MULTICAST) */
+
+#define ACE_HAS_BIG_FD_SET
+
+#define ACE_HAS_TERM_IOCTLS
+
+#define ACE_DEFAULT_MAX_SOCKET_BUFSIZ 65535
+
+#define ACE_DEFAULT_SELECT_REACTOR_SIZE 256
+
+#define ACE_HAS_GETPAGESIZE 1
+
+// Platform lacks POSIX prototypes for certain System V functions
+// like shared memory and message queues.
+#define ACE_LACKS_SOME_POSIX_PROTOTYPES
+
+
+#define ACE_LACKS_STRRECVFD
+
+#define ACE_LACKS_MSYNC
+#define ACE_LACKS_MADVISE
+
+#define ACE_HAS_SUNOS4_GETTIMEOFDAY
+
+// Compiler/platform supports strerror ().
+#define ACE_HAS_STRERROR
+
+// Compiler supports the ssize_t typedef.
+#define ACE_HAS_SSIZE_T
+
+// Compiler/platform defines the sig_atomic_t typedef.
+#define ACE_HAS_SIG_ATOMIC_T
+
+#define ACE_HAS_GPERF
+
+#define ACE_HAS_DIRENT
+
+// Turns off the tracing feature.
+#if !defined (ACE_NTRACE)
+# define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+
+#define ACE_LACKS_MKFIFO
+
+#include "ace/post.h"
+#endif /* ACE_CYGWIN32_COMMON_H */
diff --git a/ace/config-cygwin32.h b/ace/config-cygwin32.h
new file mode 100644
index 00000000000..ec433dc1e17
--- /dev/null
+++ b/ace/config-cygwin32.h
@@ -0,0 +1,16 @@
+/* -*- C++ -*- */
+// $Id$
+
+// The following configuration file is designed to work for CygWin
+// platforms using GNU C++.
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+#include "ace/config-cygwin32-common.h"
+
+#define ACE_HAS_AUTOMATIC_INIT_FINI
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-dgux-4.11-epc.h b/ace/config-dgux-4.11-epc.h
new file mode 100644
index 00000000000..b19d56cf7f1
--- /dev/null
+++ b/ace/config-dgux-4.11-epc.h
@@ -0,0 +1,195 @@
+/* -*- C++ -*- */
+// $Id$
+
+// The following configuration file is designed to work for DG/UX
+// 4.11 platforms using the EPC compiler.
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+#define ACE_DGUX
+
+// Platform requires (struct sockaddr *) for msg_name field of struct
+// msghdr.
+#define ACE_HAS_SOCKADDR_MSG_NAME
+
+// Platform lacks strcasecmp().
+#define ACE_LACKS_STRCASECMP
+
+// Platform supports System V IPC (most versions of UNIX, but not Win32)
+#define ACE_HAS_SYSV_IPC
+
+#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
+
+// Platform supports system configuration information.
+#define ACE_HAS_SYSINFO
+
+// Platform supports the POSIX regular expression library.
+#define ACE_HAS_REGEX
+
+// Platform supports recvmsg and sendmsg.
+#define ACE_HAS_MSG
+
+// Compiler/platform contains the <sys/syscall.h> file.
+// #define ACE_HAS_SYSCALL_H
+
+// Platform supports reentrant functions (i.e., all the POSIX *_r functions).
+#define ACE_HAS_REENTRANT_FUNCTIONS
+
+// Platform has terminal ioctl flags like TCGETS and TCSETS.
+#define ACE_HAS_TERM_IOCTLS
+
+// Compiler/platform correctly calls init()/fini() for shared libraries.
+#define ACE_HAS_AUTOMATIC_INIT_FINI
+
+// Platform supports POSIX O_NONBLOCK semantics.
+#define ACE_HAS_POSIX_NONBLOCK
+
+// Compiler/platform has correctly prototyped header files.
+#define ACE_HAS_CPLUSPLUS_HEADERS
+
+// Compiler/platform supports SunOS high resolution timers.
+// #define ACE_HAS_HI_RES_TIMER
+
+// Platform supports IP multicast
+#define ACE_HAS_IP_MULTICAST
+
+// Compiler/platform supports alloca()
+// #define ACE_HAS_ALLOCA
+
+// Compiler/platform has <alloca.h>
+// #define ACE_HAS_ALLOCA_H
+
+// Platform contains <poll.h>.
+#define ACE_HAS_POLL
+
+// Platform supports POSIX timers via timestruc_t.
+#define ACE_HAS_POSIX_TIME
+
+// Platform supports the /proc file system.
+#define ACE_HAS_PROC_FS
+
+// Platform supports the prusage_t struct.
+// #define ACE_HAS_PRUSAGE_T
+#define ACE_HAS_GETRUSAGE
+
+// Compiler/platform defines the sig_atomic_t typedef.
+#define ACE_HAS_SIG_ATOMIC_T
+
+// Platform supports SVR4 extended signals.
+#define ACE_HAS_SIGINFO_T
+
+// Compiler/platform provides the sockio.h file.
+#define ACE_HAS_SOCKIO_H
+
+// Compiler supports the ssize_t typedef.
+#define ACE_HAS_SSIZE_T
+
+// Platform supports STREAMS.
+#define ACE_HAS_STREAMS
+
+// Platform supports STREAM pipes.
+#define ACE_HAS_STREAM_PIPES
+
+// Compiler/platform supports strerror ().
+#define ACE_HAS_STRERROR
+
+// Compiler/platform supports struct strbuf.
+#define ACE_HAS_STRBUF_T
+
+// Compiler/platform supports SVR4 dynamic linking semantics.
+// #define ACE_HAS_SVR4_DYNAMIC_LINKING
+
+// Compiler/platform supports SVR4 gettimeofday() prototype.
+// #define ACE_HAS_SVR4_GETTIMEOFDAY
+
+// DG/UX uses the same gettimeofday() prototype as OSF/1.
+#define ACE_HAS_OSF1_GETTIMEOFDAY
+
+// Compiler/platform supports SVR4 signal typedef.
+#define ACE_HAS_SVR4_SIGNAL_T
+
+// Compiler/platform supports SVR4 ACE_TLI (in particular, T_GETNAME stuff)...
+#define ACE_HAS_SVR4_TLI
+
+// Platform provides <sys/filio.h> header.
+// #define ACE_HAS_SYS_FILIO_H
+
+// Compiler/platform supports sys_siglist array.
+#define ACE_HAS_SYS_SIGLIST
+
+/* Turn off the following four defines if you want to disable threading. */
+// Compile using multi-thread libraries.
+#if !defined (ACE_MT_SAFE)
+# define ACE_MT_SAFE 0
+#endif
+
+// Platform supports threads.
+// #define ACE_HAS_THREADS
+
+// Platform supports POSIX pthreads *and* Solaris threads!
+// #define ACE_HAS_STHREADS
+// #define ACE_HAS_PTHREADS
+#define ACE_HAS_SIGWAIT
+// If ACE doesn't compile due to the lack of these methods, please
+// send email to schmidt@cs.wustl.edu reporting this.
+// #define ACE_LACKS_CONDATTR_PSHARED
+// #define ACE_LACKS_MUTEXATTR_PSHARED
+
+// Compiler/platform has thread-specific storage
+//
+#define ACE_HAS_THREAD_SPECIFIC_STORAGE
+
+// Reactor detects deadlock
+// #define ACE_REACTOR_HAS_DEADLOCK_DETECTION
+
+// Platform supports ACE_TLI timod STREAMS module.
+#define ACE_HAS_TIMOD_H
+
+// Platform supports ACE_TLI tiuser header.
+#define ACE_HAS_TIUSER_H
+
+// Platform provides ACE_TLI function prototypes.
+#define ACE_HAS_TLI_PROTOTYPES
+
+// Platform supports ACE_TLI.
+#define ACE_HAS_TLI
+
+// Use the poll() event demultiplexor rather than select().
+//#define ACE_USE_POLL
+
+// Turns off the tracing feature.
+#if !defined (ACE_NTRACE)
+# define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+
+// Defines the page size of the system.
+#define ACE_PAGE_SIZE 4096
+
+// #define _USING_POSIX4A_DRAFT6
+#define _POSIX_SOURCE
+#define _DGUX_SOURCE
+// #define ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION
+#define ACE_HAS_UCONTEXT_T
+#define ACE_LACKS_SYSTIME_H
+#define ACE_HAS_NONCONST_GETBY
+#define ACE_LACKS_MADVISE
+
+#if !defined (IP_ADD_MEMBERSHIP)
+# define IP_ADD_MEMBERSHIP 0x13
+#endif
+
+#if !defined (IP_DROP_MEMBERSHIP)
+# define IP_DROP_MEMBERSHIP 0x14
+#endif
+
+// Header files lack t_errno for ACE_TLI.
+#define ACE_LACKS_T_ERRNO
+
+// Optimize ACE_Handle_Set for select().
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+#define ACE_HAS_IDTYPE_T
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-dgux-4.x-ghs.h b/ace/config-dgux-4.x-ghs.h
new file mode 100644
index 00000000000..b53126b59ed
--- /dev/null
+++ b/ace/config-dgux-4.x-ghs.h
@@ -0,0 +1,214 @@
+/* -*- C++ -*- */
+// $Id$
+
+// The following configuration file is designed to work for DG/UX
+// 4.x platforms using the Green Hills Multi C++ compiler.
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+#define ACE_DGUX
+
+# define ACE_CONFIG_INCLUDE_GHS_COMMON
+# include "ace/config-ghs-common.h"
+
+// Static objects do not get initialized correctly, so this is needed.
+#define ACE_HAS_NONSTATIC_OBJECT_MANAGER
+
+// Platform requires (struct sockaddr *) for msg_name field of struct
+// msghdr.
+#define ACE_HAS_SOCKADDR_MSG_NAME
+
+// Platform lacks strcasecmp().
+#define ACE_LACKS_STRCASECMP
+
+// Platform supports System V IPC (most versions of UNIX, but not Win32)
+#define ACE_HAS_SYSV_IPC
+
+#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
+
+// Platform supports system configuration information.
+#define ACE_HAS_SYSINFO
+
+// Platform supports the POSIX regular expression library.
+#define ACE_HAS_REGEX
+
+// Platform supports recvmsg and sendmsg.
+#define ACE_HAS_MSG
+
+// Platform supports reentrant functions (i.e., all the POSIX *_r functions).
+//#define ACE_HAS_REENTRANT_FUNCTIONS
+
+// Platform has terminal ioctl flags like TCGETS and TCSETS.
+#define ACE_HAS_TERM_IOCTLS
+
+// Compiler/platform correctly calls init()/fini() for shared libraries.
+#define ACE_HAS_AUTOMATIC_INIT_FINI
+
+// Platform supports POSIX O_NONBLOCK semantics.
+#define ACE_HAS_POSIX_NONBLOCK
+
+// Compiler/platform has correctly prototyped header files.
+#define ACE_HAS_CPLUSPLUS_HEADERS
+
+// Compiler/platform supports SunOS high resolution timers.
+// #define ACE_HAS_HI_RES_TIMER
+
+// Platform supports IP multicast
+#define ACE_HAS_IP_MULTICAST
+
+// Green Hills doesn't give a preprocessor symbol for long double
+#define ACE_SIZEOF_LONG_DOUBLE 8
+
+// Platform contains <poll.h>.
+#define ACE_HAS_POLL
+
+// Platform supports POSIX timers via timestruc_t.
+#define ACE_HAS_POSIX_TIME
+
+// Platform supports the /proc file system.
+#define ACE_HAS_PROC_FS
+
+// Platform supports the prusage_t struct.
+// #define ACE_HAS_PRUSAGE_T
+#define ACE_HAS_GETRUSAGE
+
+// Compiler/platform defines the sig_atomic_t typedef.
+#define ACE_HAS_SIG_ATOMIC_T
+
+// Platform supports SVR4 extended signals.
+#define ACE_HAS_SIGINFO_T
+
+// Compiler/platform provides the sockio.h file.
+#define ACE_HAS_SOCKIO_H
+
+// Compiler supports the ssize_t typedef.
+#define ACE_HAS_SSIZE_T
+
+// Platform supports STREAMS.
+#define ACE_HAS_STREAMS
+
+// Platform supports STREAM pipes.
+#define ACE_HAS_STREAM_PIPES
+
+// Compiler/platform supports strerror ().
+#define ACE_HAS_STRERROR
+
+// Compiler/platform supports struct strbuf.
+#define ACE_HAS_STRBUF_T
+
+// Compiler/platform supports SVR4 dynamic linking semantics.
+#define ACE_HAS_SVR4_DYNAMIC_LINKING
+// ... but redefines the entrypoint names with a leading underscore
+#define dlopen _dlopen
+#define dlclose _dlclose
+#define dlerror _dlerror
+#define dlsym _dlsym
+// ... and uses 'char *' rather than 'const char *'
+#define ACE_HAS_CHARPTR_DL
+
+// DG/UX uses the same gettimeofday() prototype as OSF/1.
+#define ACE_HAS_OSF1_GETTIMEOFDAY
+
+// Compiler/platform supports SVR4 signal typedef.
+#define ACE_HAS_SVR4_SIGNAL_T
+
+// Compiler/platform supports SVR4 ACE_TLI (in particular, T_GETNAME stuff)...
+#define ACE_HAS_SVR4_TLI
+
+// Compiler/platform supports sys_siglist array.
+// On DG/UX this is only done if the /usr/include/sys/_int_dg_features.h
+// file determines it should be turned on. It will take some work to
+// figure out the magic options to turn it on reliably, so it'll have to
+// be delayed for now.
+//#define _TARGETTING_DGUXELF 1
+//#define _IX86_DG 1
+//#define _DGUX_TARGET 1
+//#define ACE_HAS_SYS_SIGLIST
+
+/* Turn off the following four defines if you want to disable threading. */
+// Compile using multi-thread libraries.
+#if !defined (ACE_MT_SAFE)
+# define ACE_MT_SAFE 1
+#endif
+
+// Platform supports threads.
+#define ACE_HAS_THREADS
+#define ACE_HAS_PTHREADS
+// DG/UX claims to implement draft 10 of the pthreads standard (which became
+// (with editorial change only) the final standard. To get the behavior, some
+// further macros need to be defined which are specific to DG/UX.
+// _POSIX4A_DRAFT10_SOURCE turns on the draft 10 variant of threads.
+// _POSIX4A_DRAFT_SOURCE turns on sched_yield().
+#define _POSIX4A_DRAFT10_SOURCE
+#define ACE_HAS_PTHREADS_STD
+#define _POSIX4_DRAFT_SOURCE
+// Well, here are some from the standard they don't have...
+#define ACE_LACKS_PTHREAD_THR_SIGSETMASK
+#define ACE_HAS_SIGWAIT
+#define ACE_LACKS_CONDATTR_PSHARED
+#define ACE_LACKS_THREAD_PROCESS_SCOPING
+// The default thread stacksize on DG/UX 4.x is 4096. This needs to be bumped
+// up to do anything real in ACE.
+#define ACE_NEEDS_HUGE_THREAD_STACKSIZE 65536
+
+// Need to #include <sched.h>
+#define ACE_NEEDS_SCHED_H
+
+// Compiler/platform has thread-specific storage
+//
+#define ACE_HAS_THREAD_SPECIFIC_STORAGE
+
+// Platform supports ACE_TLI timod STREAMS module.
+#define ACE_HAS_TIMOD_H
+
+// Platform supports ACE_TLI tiuser header.
+#define ACE_HAS_TIUSER_H
+
+// Platform provides ACE_TLI function prototypes.
+#define ACE_HAS_TLI_PROTOTYPES
+
+// Platform supports ACE_TLI.
+#define ACE_HAS_TLI
+
+// Platform doesn't have read-write locks natively.
+#define ACE_LACKS_RWLOCK_T
+
+// Platform doesn't have timespec_t data type.
+#define ACE_LACKS_TIMESPEC_T
+
+// Use the poll() event demultiplexor rather than select().
+//#define ACE_USE_POLL
+
+// Turns off the tracing feature.
+#if !defined (ACE_NTRACE)
+#define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+
+// Defines the page size of the system.
+#define ACE_PAGE_SIZE 4096
+
+#define ACE_TEMPLATES_REQUIRE_SOURCE
+
+#define ACE_HAS_UCONTEXT_T
+#define ACE_LACKS_SYSTIME_H
+#define ACE_HAS_NONCONST_GETBY
+#define ACE_LACKS_MADVISE
+
+#if !defined (IP_ADD_MEMBERSHIP)
+#define IP_ADD_MEMBERSHIP 0x13
+#endif
+
+#if !defined (IP_DROP_MEMBERSHIP)
+# define IP_DROP_MEMBERSHIP 0x14
+#endif
+
+// Header files lack t_errno for ACE_TLI.
+#define ACE_LACKS_T_ERRNO
+
+// Optimize ACE_Handle_Set for select().
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-doxygen.h b/ace/config-doxygen.h
new file mode 100644
index 00000000000..a372e684a56
--- /dev/null
+++ b/ace/config-doxygen.h
@@ -0,0 +1,74 @@
+/**
+ * This is a configuration file to define all the macros that Doxygen
+ * needs
+ *
+ * @file config-doxygen.h
+ *
+ * $Id$
+ *
+ * @author Carlos O'Ryan <coryan@uci.edu>
+ * @author Darrell Brunsch <brunsch@uci.edu>
+ *
+ */
+#ifndef ACE_CONFIG_DOXYGEN_H
+#define ACE_CONFIG_DOXYGEN_H
+
+/// Make the wchar_t interfaces available.
+#define ACE_HAS_WCHAR
+
+/// Make all the emulation versions of string operations visible
+// #define ACE_LACKS_WCSTOK
+#define ACE_LACKS_ITOW
+#define ACE_LACKS_STRCASECMP
+#define ACE_LACKS_STRCSPN
+#define ACE_LACKS_STRCHR
+#define ACE_LACKS_STRRCHR
+#define ACE_LACKS_WCSCAT
+#define ACE_LACKS_WCSCHR
+#define ACE_LACKS_WCSCMP
+#define ACE_LACKS_WCSCPY
+#define ACE_LACKS_WCSICMP
+#define ACE_LACKS_WCSLEN
+#define ACE_LACKS_WCSNCAT
+#define ACE_LACKS_WCSNCMP
+#define ACE_LACKS_WCSNCPY
+#define ACE_LACKS_WCSNICMP
+#define ACE_LACKS_WCSPBRK
+#define ACE_LACKS_WCSRCHR
+#define ACE_LACKS_WCSCSPN
+#define ACE_LACKS_WCSSPN
+#define ACE_LACKS_WCSSTR
+
+/// Support for threads enables several important classes
+#define ACE_HAS_THREADS
+
+/// Support for Win32 enables the WFMO_Reactor and several Async I/O
+/// classes
+#define ACE_WIN32
+
+/// Enable support for POSIX Asynchronous I/O calls
+#define ACE_HAS_AIO_CALLS
+
+/// Enable support for TLI interfaces
+#define ACE_HAS_TLI
+
+/// Enable support for the SSL wrappers
+#define ACE_HAS_SSL 1
+
+/// Several GUI Reactors that are only enabled in some platforms.
+#define ACE_HAS_XT
+#define ACE_HAS_FL
+#define ACE_HAS_QT
+#define ACE_HAS_TK
+#define ACE_HAS_GTK
+
+/// Enable exceptions
+#define ACE_HAS_EXCEPTIONS
+
+/// TAO features that should be documented too
+#define TAO_HAS_RT_CORBA 1
+#define TAO_HAS_MINIMUM_CORBA 0
+#define TAO_HAS_AMI 1
+#define TAO_HAS_INTERCEPTORS 1
+
+#endif /* ACE_CONFIG_DOXYGEN_H */
diff --git a/ace/config-freebsd-pthread.h b/ace/config-freebsd-pthread.h
new file mode 100644
index 00000000000..75919a148c5
--- /dev/null
+++ b/ace/config-freebsd-pthread.h
@@ -0,0 +1,218 @@
+/* -*- C++ -*- */
+// $Id$
+
+// The following configuration file is designed to work for FreeBSD
+// platforms with GNU C++ and the POSIX (pthread) threads package.
+
+// Notice that the threaded version of ACE is only supported for -current.
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+#include <osreldate.h>
+// Make sure we source in the OS version.
+
+#if ! defined (__ACE_INLINE__)
+#define __ACE_INLINE__
+#endif /* ! __ACE_INLINE__ */
+
+#if (__FreeBSD_version < 220000)
+#error Threads are not supported.
+#endif /* __FreeBSD_version < 220000 */
+
+#define ACE_SIZEOF_LONG_DOUBLE 12
+
+#if defined (__GNUG__)
+# include "ace/config-g++-common.h"
+#endif /* __GNUG__ */
+
+#if defined (ACE_HAS_PENTIUM)
+# undef ACE_HAS_PENTIUM
+#endif /* ACE_HAS_PENTIUM */
+
+// Platform specific directives
+// gcc defines __FreeBSD__ automatically for us.
+#if !defined (_THREAD_SAFE)
+#define _THREAD_SAFE
+#endif /* _THREAD_SAFE */
+
+#define ACE_HAS_GPERF
+
+#if (__FreeBSD_version < 420000)
+#define ACE_LACKS_GETPGID
+#define ACE_LACKS_SETPGID
+#define ACE_LACKS_SETREGID
+#define ACE_LACKS_SETREUID
+#endif /* __FreeBSD_version < 420000 */
+
+#define ACE_HAS_ALT_CUSERID
+#define ACE_HAS_RECURSIVE_THR_EXIT_SEMANTICS
+#define ACE_LACKS_RWLOCK_T
+#define ACE_LACKS_READDIR_R
+#define ACE_HAS_SIG_MACROS
+// Optimize ACE_Handle_Set for select().
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+#define ACE_HAS_NONCONST_SELECT_TIMEVAL
+#define ACE_HAS_CHARPTR_DL
+//#define ACE_USES_ASM_SYMBOL_IN_DLSYM
+#define ACE_LACKS_SIGSET
+#define ACE_NEEDS_SCHED_H
+
+// Use of <malloc.h> is deprecated.
+#define ACE_LACKS_MALLOC_H
+
+// sched.h still not fully support on FreeBSD ?
+// this is taken from /usr/src/lib/libc_r/uthread/pthread-private.h
+enum schedparam_policy {
+ SCHED_RR,
+ SCHED_IO,
+ SCHED_FIFO,
+ SCHED_OTHER
+};
+
+// This won't be necessary after it is fixed in the system include headers.
+extern "C" { char * cuserid (char *s); }
+
+// Platform supports POSIX timers via struct timespec.
+#define ACE_HAS_POSIX_TIME
+#define ACE_HAS_UALARM
+
+// Platform defines struct timespec but not timespec_t
+#define ACE_LACKS_TIMESPEC_T
+
+#define ACE_LACKS_SYSTIME_H
+
+#define ACE_LACKS_STRRECVFD
+
+#define ACE_HAS_SIN_LEN
+
+// Platform supports System V IPC (most versions of UNIX, but not Win32)
+#define ACE_HAS_SYSV_IPC
+
+// Compiler/platform contains the <sys/syscall.h> file.
+#define ACE_HAS_SYSCALL_H
+
+#if (__FreeBSD_version >= 300000)
+#define ACE_HAS_SIGINFO_T
+#endif /* __FreeBSD_version >= 300000 */
+
+#if (__FreeBSD_version >= 320000)
+#define ACE_HAS_REENTRANT_FUNCTIONS
+#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS
+#define ACE_LACKS_PWD_REENTRANT_FUNCTIONS
+#define ACE_LACKS_RAND_REENTRANT_FUNCTIONS
+#define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R
+#endif /* __FreeBSD_version >= 320000 */
+
+#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
+#define ACE_LACKS_SIGINFO_H
+#define ACE_LACKS_UCONTEXT_H
+#define ACE_LACKS_SI_ADDR
+
+// Compiler/platform supports SVR4 signal typedef
+#define ACE_HAS_SVR4_SIGNAL_T
+
+// Compiler/platform supports alloca().
+#define ACE_HAS_ALLOCA
+
+// Compiler/platform supports SVR4 dynamic linking semantics..
+#define ACE_HAS_SVR4_DYNAMIC_LINKING
+
+// Compiler/platform correctly calls init()/fini() for shared libraries.
+#define ACE_HAS_AUTOMATIC_INIT_FINI
+
+// Explicit dynamic linking permits "lazy" symbol resolution
+#define ACE_HAS_RTLD_LAZY_V
+
+// platform supports POSIX O_NONBLOCK semantics
+#define ACE_HAS_POSIX_NONBLOCK
+
+// platform supports IP multicast
+#define ACE_HAS_IP_MULTICAST
+
+// Compiler/platform has <alloca.h>
+//#define ACE_HAS_ALLOCA_H
+
+// Compiler/platform has the getrusage() system call.
+#define ACE_HAS_GETRUSAGE
+
+// Compiler/platform defines the sig_atomic_t typedef.
+#define ACE_HAS_SIG_ATOMIC_T
+
+// Compiler/platform supports sys_siglist array.
+// *** This refers to (_sys_siglist) instead of (sys_siglist)
+// #define ACE_HAS_SYS_SIGLIST
+
+// Compiler/platform defines a union semun for SysV shared memory.
+#define ACE_HAS_SEMUN
+
+// Compiler supports the ssize_t typedef.
+#define ACE_HAS_SSIZE_T
+
+// Compiler/platform supports strerror ().
+#define ACE_HAS_STRERROR
+
+// Compiler/platform provides the sockio.h file.
+#define ACE_HAS_SOCKIO_H
+
+// Defines the page size of the system.
+#define ACE_PAGE_SIZE 4096
+
+// Platform provides <sys/filio.h> header.
+#define ACE_HAS_SYS_FILIO_H
+
+// Compiler/platform supports SVR4 gettimeofday() prototype
+#define ACE_HAS_SUNOS4_GETTIMEOFDAY
+// #define ACE_HAS_TIMEZONE_GETTIMEOFDAY
+
+// Turns off the tracing feature.
+#if !defined (ACE_NTRACE)
+#define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+
+#define ACE_HAS_MSG
+#define ACE_HAS_4_4BSD_SENDMSG_RECVMSG
+#define ACE_HAS_NONCONST_MSGSND
+
+// Thread specific settings
+// Yes, we do have threads.
+#define ACE_HAS_THREADS
+// And they're even POSIX pthreads
+#if !defined (ACE_MT_SAFE)
+# define ACE_MT_SAFE 1
+#endif /* ! ACE_MT_SAFE */
+#define ACE_HAS_PTHREADS
+#define ACE_LACKS_SETSCHED
+#define ACE_LACKS_PTHREAD_CANCEL
+#define ACE_LACKS_THREAD_PROCESS_SCOPING
+#define ACE_LACKS_PTHREAD_THR_SIGSETMASK
+#define ACE_LACKS_CONDATTR_PSHARED
+#define ACE_LACKS_MUTEXATTR_PSHARED
+#define ACE_HAS_THREAD_SPECIFIC_STORAGE
+#define ACE_HAS_DIRENT
+
+#define ACE_HAS_SIGWAIT
+
+#define ACE_HAS_TERM_IOCTLS
+#define ACE_USES_NEW_TERMIOS_STRUCT
+#define ACE_USES_HIGH_BAUD_RATES
+#define TCGETS TIOCGETA
+#define TCSETS TIOCSETA
+
+#if (__FreeBSD_version > 400000)
+#undef ACE_LACKS_SETSCHED
+#undef ACE_LACKS_SIGSET
+#define ACE_HAS_UCONTEXT_T
+#define ACE_HAS_SOCKLEN_T
+#endif
+
+#if (__FreeBSD_version > 440000)
+# define _P1003_1B_VISIBLE
+# define ACE_HAS_AIO_CALLS
+# define SIGRTMIN 32
+# define SIGRTMAX (_SIG_MAXSIG - 1)
+#endif
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-freebsd.h b/ace/config-freebsd.h
new file mode 100644
index 00000000000..401282de935
--- /dev/null
+++ b/ace/config-freebsd.h
@@ -0,0 +1,197 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ***** This configuration file is still under testing. *****
+
+// The following configuration file is designed to work for FreeBSD
+// platforms using GNU C++ but without the POSIX (pthread) threads package
+
+#ifndef ACE_CONFIG_FREEBSD_H
+#define ACE_CONFIG_FREEBSD_H
+#include "ace/pre.h"
+
+#include <osreldate.h>
+// Make sure we source in the OS version.
+
+#if ! defined (__ACE_INLINE__)
+#define __ACE_INLINE__
+#endif /* ! __ACE_INLINE__ */
+
+#if (__FreeBSD_version < 220000) && defined (_THREAD_SAFE)
+#error Threads are not supported.
+#endif /* __FreeBSD_version < 220000 */
+
+#define ACE_SIZEOF_LONG_DOUBLE 12
+
+#if defined (__GNUG__)
+# include "ace/config-g++-common.h"
+#endif /* __GNUG__ */
+
+#define ACE_HAS_GPERF
+
+// Platform specific directives
+#define ACE_LACKS_GETPGID
+#define ACE_LACKS_SETPGID
+#define ACE_LACKS_SETREGID
+#define ACE_LACKS_SETREUID
+#define ACE_LACKS_RWLOCK_T
+#define ACE_LACKS_READDIR_R
+#define ACE_HAS_SIG_MACROS
+#define ACE_HAS_CHARPTR_DL
+#define ACE_HAS_DIRENT
+#define ACE_USES_ASM_SYMBOL_IN_DLSYM
+#define ACE_LACKS_SIGSET
+#define ACE_LACKS_SIGINFO_H
+#define ACE_LACKS_UCONTEXT_H
+#define ACE_LACKS_SI_ADDR
+
+#if (__FreeBSD__ > 2)
+#define ACE_HAS_SIGINFO_T
+#endif /* __FreeBSD__ > 2 */
+
+// Use of <malloc.h> is deprecated.
+#define ACE_LACKS_MALLOC_H
+
+// This is for 2.1.x only. By default, gcc defines __FreeBSD__ automatically
+#if (__FreeBSD_version < 220000)
+
+#define ACE_HAS_CPLUSPLUS_HEADERS
+
+// This is to fix the nested struct if_data definition on FreeBSD 2.1.x
+#include <sys/types.h>
+#include <sys/time.h>
+struct if_data {
+/* generic interface information */
+ u_char ifi_type; /* ethernet, tokenring, etc */
+ u_char ifi_physical; /* e.g., AUI, Thinnet, 10base-T, etc */
+ u_char ifi_addrlen; /* media address length */
+ u_char ifi_hdrlen; /* media header length */
+ u_long ifi_mtu; /* maximum transmission unit */
+ u_long ifi_metric; /* routing metric (external only) */
+ u_long ifi_baudrate; /* linespeed */
+/* volatile statistics */
+ u_long ifi_ipackets; /* packets received on interface */
+ u_long ifi_ierrors; /* input errors on interface */
+ u_long ifi_opackets; /* packets sent on interface */
+ u_long ifi_oerrors; /* output errors on interface */
+ u_long ifi_collisions; /* collisions on csma interfaces */
+ u_long ifi_ibytes; /* total number of octets received */
+ u_long ifi_obytes; /* total number of octets sent */
+ u_long ifi_imcasts; /* packets received via multicast */
+ u_long ifi_omcasts; /* packets sent via multicast */
+ u_long ifi_iqdrops; /* dropped on input, this interface */
+ u_long ifi_noproto; /* destined for unsupported protocol */
+ struct timeval ifi_lastchange;/* time of last administrative ch
+ange */
+} ;
+
+// this is a hack, but since this only occured in FreeBSD 2.1.x,
+// I guess it is ok.
+#define ACE_HAS_BROKEN_TIMESPEC_MEMBERS
+
+#endif /* __FreeBSD_version < 220000 */
+
+// Platform supports POSIX timers via struct timespec.
+#define ACE_HAS_POSIX_TIME
+#define ACE_HAS_UALARM
+
+// Platform defines struct timespec but not timespec_t
+#define ACE_LACKS_TIMESPEC_T
+
+#define ACE_LACKS_SYSTIME_H
+
+#define ACE_LACKS_STRRECVFD
+
+#define ACE_HAS_SIN_LEN
+
+// Platform supports System V IPC (most versions of UNIX, but not Win32)
+#define ACE_HAS_SYSV_IPC
+
+// Compiler/platform contains the <sys/syscall.h> file.
+#define ACE_HAS_SYSCALL_H
+
+#if !defined(FreeBSD_2_1)
+#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
+#endif /* defined FreeBSD_2_1 */
+
+// Compiler/platform supports SVR4 signal typedef
+#define ACE_HAS_SVR4_SIGNAL_T
+
+// Compiler/platform supports alloca().
+#define ACE_HAS_ALLOCA
+
+// Compiler/platform supports SVR4 dynamic linking semantics..
+#define ACE_HAS_SVR4_DYNAMIC_LINKING
+
+// Compiler/platform correctly calls init()/fini() for shared libraries.
+#define ACE_HAS_AUTOMATIC_INIT_FINI
+
+// Explicit dynamic linking permits "lazy" symbol resolution
+#define ACE_HAS_RTLD_LAZY_V
+
+// platform supports POSIX O_NONBLOCK semantics
+#define ACE_HAS_POSIX_NONBLOCK
+
+// platform supports IP multicast
+#define ACE_HAS_IP_MULTICAST
+
+// Compiler/platform has <alloca.h>
+//#define ACE_HAS_ALLOCA_H
+
+// Compiler/platform has the getrusage() system call.
+#define ACE_HAS_GETRUSAGE
+
+// Compiler/platform defines the sig_atomic_t typedef.
+#define ACE_HAS_SIG_ATOMIC_T
+
+// Compiler/platform supports sys_siglist array.
+// *** This refers to (_sys_siglist) instead of (sys_siglist)
+// #define ACE_HAS_SYS_SIGLIST
+
+// Compiler/platform defines a union semun for SysV shared memory.
+#define ACE_HAS_SEMUN
+
+// Compiler supports the ssize_t typedef.
+#define ACE_HAS_SSIZE_T
+
+// Compiler/platform supports strerror ().
+#define ACE_HAS_STRERROR
+
+// Compiler/platform provides the sockio.h file.
+#define ACE_HAS_SOCKIO_H
+
+// Defines the page size of the system.
+#define ACE_PAGE_SIZE 4096
+
+// Platform provides <sys/filio.h> header.
+#define ACE_HAS_SYS_FILIO_H
+
+// Compiler/platform supports SVR4 gettimeofday() prototype
+#define ACE_HAS_SUNOS4_GETTIMEOFDAY
+// #define ACE_HAS_TIMEZONE_GETTIMEOFDAY
+
+// Turns off the tracing feature.
+#if !defined (ACE_NTRACE)
+#define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+
+#define ACE_HAS_MSG
+#define ACE_HAS_4_4BSD_SENDMSG_RECVMSG
+#define ACE_HAS_NONCONST_MSGSND
+
+#if (__FreeBSD_version >= 228000)
+#define ACE_HAS_SIGWAIT
+#endif /* __FreeBSD_version >= 22800 */
+
+// Optimize ACE_Handle_Set for select().
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+#define ACE_HAS_NONCONST_SELECT_TIMEVAL
+
+#define ACE_HAS_TERM_IOCTLS
+#define ACE_USES_NEW_TERMIOS_STRUCT
+#define ACE_USES_HIGH_BAUD_RATES
+#define TCGETS TIOCGETA
+#define TCSETS TIOCSETA
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_FREEBSD_H */
diff --git a/ace/config-fsu-pthread.h b/ace/config-fsu-pthread.h
new file mode 100644
index 00000000000..4ce0c5fa4e3
--- /dev/null
+++ b/ace/config-fsu-pthread.h
@@ -0,0 +1,59 @@
+// $Id$
+
+#ifndef ACE_CONFIG_FSU_PTHREAD_H
+#define ACE_CONFIG_FSU_PTHREAD_H
+#include "ace/pre.h"
+
+#define ACE_LACKS_CONST_TIMESPEC_PTR
+
+// Threads
+#define ACE_HAS_THREADS
+#if !defined(ACE_MT_SAFE)
+#define ACE_MT_SAFE 1
+#endif
+
+/*
+** FSU implements 1003.4a draft 6 threads - the ACE_HAS_FSU_PTHREADS def
+** is needed for some peculiarities with this particular implementation.
+*/
+#define ACE_HAS_PTHREADS
+#define ACE_HAS_PTHREADS_DRAFT6
+#define ACE_HAS_FSU_PTHREADS
+#define ACE_HAS_THREAD_SPECIFIC_STORAGE
+#define ACE_HAS_SIGWAIT
+#define ACE_HAS_PTHREAD_YIELD_VOID_PTR
+#define ACE_HAS_PTHREAD_ATTR_INIT
+#define ACE_HAS_PTHREAD_ATTR_DESTROY
+#define ACE_LACKS_THREAD_STACK_ADDR
+#define ACE_LACKS_PTHREAD_THR_SIGSETMASK
+#define ACE_LACKS_CONDATTR_PSHARED
+#define ACE_LACKS_MUTEXATTR_PSHARED
+#define ACE_LACKS_RWLOCK_T
+#define ACE_LACKS_SETSCHED
+#if defined(M_UNIX)
+#define ACE_HAS_RECURSIVE_THR_EXIT_SEMANTICS
+#endif
+
+#if !defined(ACE_HAS_POSIX_TIME)
+#define ACE_HAS_POSIX_TIME
+#define ACE_LACKS_TIMESPEC_T
+#endif
+
+#include <pthread.h>
+
+#if !defined(PTHREAD_STACK_MIN)
+#define PTHREAD_STACK_MIN (1024*10)
+#endif
+
+#define ACE_LACKS_THREAD_PROCESS_SCOPING
+
+#undef PTHREAD_INHERIT_SCHED
+
+struct sched_param
+{
+ int sched_priority;
+ int prio;
+};
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_FSU_PTHREAD_H */
diff --git a/ace/config-g++-common.h b/ace/config-g++-common.h
new file mode 100644
index 00000000000..5ae9686885b
--- /dev/null
+++ b/ace/config-g++-common.h
@@ -0,0 +1,117 @@
+// -*- C++ -*-
+//
+// $Id$
+
+// This configuration file is designed to be included by another,
+// specific configuration file. It provides config information common
+// to all g++ platforms, including egcs.
+
+#ifndef ACE_GNUG_COMMON_H
+#define ACE_GNUG_COMMON_H
+#include "ace/pre.h"
+
+#if __GNUC__ > 2 || ( __GNUC__ == 2 && __GNUC_MINOR__ >= 8) || \
+ (defined (ACE_VXWORKS) && ACE_VXWORKS >= 0x540)
+ // egcs or g++ >= 2.8.0
+
+# define ACE_HAS_ANSI_CASTS
+# define ACE_HAS_CPLUSPLUS_HEADERS
+# define ACE_HAS_EXPLICIT_KEYWORD
+# define ACE_HAS_MUTABLE_KEYWORD
+# define ACE_HAS_STDCPP_STL_INCLUDES
+# define ACE_HAS_TEMPLATE_TYPEDEFS
+# define ACE_HAS_TYPENAME_KEYWORD
+# define ACE_HAS_STD_TEMPLATE_SPECIALIZATION
+# define ACE_HAS_STANDARD_CPP_LIBRARY 1
+# define ACE_USES_OLD_IOSTREAMS
+
+#if (__GNUC__ == 2 && __GNUC_MINOR__ <= 91)
+// EGCS (gcc 2.91) doesn't define this in its C++ standard library.
+# define ACE_LACKS_AUTO_PTR
+#endif
+
+# if __GNUC__ > 2 || ( __GNUC__ == 2 && __GNUC_MINOR__ >= 91 )
+# define ACE_HAS_USING_KEYWORD
+ // This is only needed with egcs 1.1 (egcs-2.91.57). It can't be
+ // used with older versions.
+# define ACE_HAS_WORKING_EXPLICIT_TEMPLATE_DESTRUCTOR
+# else /* This is for gcc 2.8.x */
+# define ACE_LACKS_PLACEMENT_OPERATOR_DELETE
+# endif /* __GNUC__ >= 2.91 */
+
+# if (defined (VXWORKS) && __GNUC__ == 2 && __GNUC_MINOR__ == 96)
+// This is for inofficial(!) gcc2.96 shipped with Tornado2.1.0 for
+// Hitachi SuperH platform.
+# define ACE_LACKS_AUTO_PTR
+# endif /* (defined (VXWORKS) && __GNUC__ == 2 && __GNUC_MINOR__ == 96) */
+
+#if __GNUC__ > 2 || ( __GNUC__ == 2 && __GNUC_MINOR__ >= 97 )
+ // gcc 2.97 and higher use libstdc++-v3 and require
+ // the use of the std namespace for using iostreams
+# define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
+# undef ACE_USES_OLD_IOSTREAMS
+#endif /* __GNUC__ >= 2.97 */
+
+# if __GNUC__ == 2 && __GNUC_MINOR__ != 9 && __GNUC_MINOR__ != 91
+# // g++ 2.9 and egcs 2.91 apparently have a bug with this . . .
+# define ACE_HAS_TEMPLATE_SPECIALIZATION
+# endif /* __GNUC__ != 2.9 && __GNUC__ != 2.91*/
+
+ // Some versions of egcs, e.g., egcs-2.90.27 980315 (egcs-1.0.2 release),
+ // have bugs with static data members in template classes.
+# define ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES
+
+ // __EXCEPTIONS is defined with -fexceptions, the egcs default. It
+ // is not defined with -fno-exceptions, the ACE default for g++.
+ // ACE_HAS_EXCEPTIONS is defined in
+ // include/makeinclude/wrapper_macros.GNU, so this really isn't
+ // necessary. Just in case . . .
+# if defined (__EXCEPTIONS) && !defined (ACE_HAS_EXCEPTIONS)
+# define ACE_HAS_EXCEPTIONS
+# endif /* __EXCEPTIONS && ! ACE_HAS_EXCEPTIONS */
+
+# if defined (ACE_HAS_EXCEPTIONS)
+# define ACE_NEW_THROWS_EXCEPTIONS
+# endif /* ACE_HAS_EXCEPTIONS */
+
+#else /* ! egcs */
+ // Plain old g++.
+# define ACE_LACKS_PLACEMENT_OPERATOR_DELETE
+# define ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES
+# define ACE_HAS_GNUG_PRE_2_8
+# define ACE_HAS_TEMPLATE_SPECIALIZATION
+# define ACE_LACKS_MIN_MAX_TEMPLATES
+#endif /* ! egcs */
+
+#if (defined (i386) || defined (__i386__)) && !defined (ACE_SIZEOF_LONG_DOUBLE)
+# define ACE_SIZEOF_LONG_DOUBLE 12
+#endif /* i386 */
+
+#if !defined (__MINGW32__) && (defined (i386) || defined (__i386__))
+ // If running an Intel, assume that it's a Pentium so that
+ // ACE_OS::gethrtime () can use the RDTSC instruction. If running a
+ // 486 or lower, be sure to comment this out. (If not running an
+ // Intel CPU, this #define will not be seen because of the i386
+ // protection, so it can be ignored.)
+# define ACE_HAS_PENTIUM
+#endif /* i386 */
+
+#if !defined (ACE_LACKS_PRAGMA_ONCE)
+ // We define it with a -D with make depend.
+# define ACE_LACKS_PRAGMA_ONCE
+#endif /* ! ACE_LACKS_PRAGMA_ONCE */
+
+#if defined (ACE_HAS_GNU_REPO)
+ // -frepo causes unresolved symbols of basic_string left- and
+ // right-shift operators with ACE_HAS_STRING_CLASS.
+# if defined (ACE_HAS_STRING_CLASS)
+# undef ACE_HAS_STRING_CLASS
+# endif /* ACE_HAS_STRING_CLASS */
+#else /* ! ACE_HAS_GNU_REPO */
+# define ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION
+#endif /* ! ACE_HAS_GNU_REPO */
+#define ACE_HAS_GNUC_BROKEN_TEMPLATE_INLINE_FUNCTIONS
+#define ACE_TEMPLATES_REQUIRE_SOURCE
+
+#include "ace/post.h"
+#endif /* ACE_GNUG_COMMON_H */
diff --git a/ace/config-ghs-common.h b/ace/config-ghs-common.h
new file mode 100644
index 00000000000..673a7c5ec15
--- /dev/null
+++ b/ace/config-ghs-common.h
@@ -0,0 +1,44 @@
+/* -*- C++ -*- */
+// $Id$
+
+// This configuration file is designed to be included by another,
+// specific configuration file. It provides config information common
+// to all Green Hills platforms.
+
+#ifndef ACE_GHS_COMMON_H
+#define ACE_GHS_COMMON_H
+#include "ace/pre.h"
+
+#if !defined (ACE_CONFIG_INCLUDE_GHS_COMMON)
+# error ace/config-ghs-common.h: ACE configuration error! Do not #include this file directly!
+#endif
+
+#if defined (ghs)
+
+# if defined (sun)
+ // Need nonstatic Object_Manager on Solaris to prevent seg fault
+ // on startup.
+# define ACE_HAS_NONSTATIC_OBJECT_MANAGER
+# endif /* sun */
+
+# if defined (__STANDARD_CXX)
+ // Green Hills 1.8.9, but not 1.8.8.
+# define ACE_HAS_STANDARD_CPP_LIBRARY 1
+# define ACE_LACKS_AUTO_PTR
+# define ACE_LACKS_CHAR_RIGHT_SHIFTS
+# define ACE_LACKS_UNBUFFERED_STREAMBUF
+# define ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION
+# else
+# define ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA
+# endif /* __STANDARD_CXX */
+
+# define ACE_LACKS_LINEBUFFERED_STREAMBUF
+# define ACE_LACKS_LONGLONG_T
+# define ACE_LACKS_SIGNED_CHAR
+
+#else /* ! ghs */
+# error ace/config-ghs-common.h can only be used with Green Hills compilers!
+#endif /* ! ghs */
+
+#include "ace/post.h"
+#endif /* ACE_GHS_COMMON_H */
diff --git a/ace/config-hpux-10.x-g++.h b/ace/config-hpux-10.x-g++.h
new file mode 100644
index 00000000000..239e63e43a0
--- /dev/null
+++ b/ace/config-hpux-10.x-g++.h
@@ -0,0 +1,28 @@
+/* -*- C++ -*- */
+// $Id$
+
+// The following configuration file is designed to work for HP
+// platforms running HP/UX 10.x using G++.
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+// config-g++-common.h undef's ACE_HAS_STRING_CLASS with -frepo, so
+// this must appear before its #include.
+#define ACE_HAS_STRING_CLASS
+
+#include "ace/config-g++-common.h"
+
+// These are apparantly some things which are special to g++ on HP? They are
+// compiler-related settings, but not in config-g++-common.h
+
+#define ACE_HAS_BROKEN_CONVERSIONS
+// Compiler supports the ssize_t typedef.
+#define ACE_HAS_SSIZE_T
+#define _CLOCKID_T
+
+#include "ace/config-hpux-10.x.h"
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-hpux-10.x-hpc++.h b/ace/config-hpux-10.x-hpc++.h
new file mode 100644
index 00000000000..8b7970450b9
--- /dev/null
+++ b/ace/config-hpux-10.x-hpc++.h
@@ -0,0 +1,136 @@
+/* -*- C++ -*- */
+// $Id$
+
+// The following configuration file is designed to work for HP
+// platforms running HP/UX 10.x with either of the HP C++ compilers.
+// This file contains compiler-specific settings, and uses the common
+// HP-UX file (config-hpux-10.x.h) for the platform information.
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+// There are 2 compiler-specific sections, plus a 3rd for common to both.
+// First is the HP C++ section...
+#if __cplusplus < 199707L
+
+// To use HP/C++ you need some patches, the following set
+//
+// PHSS_9855
+// PHSS_9096
+// PHSS_10261
+// PHSS_9062
+// PHSS_7505
+// PHSS_8490
+//
+// worked for me (Carlos O'Ryan), but you should check by yourself.
+// The most important one is PHSS_9855, but in depends on some of the
+// others.
+
+# define ACE_HAS_BROKEN_HPUX_TEMPLATES
+
+// Compiler can't handle calls like foo->operator T *()
+# define ACE_HAS_BROKEN_CONVERSIONS
+
+// Necessary with some compilers to pass ACE_TTY_IO as parameter to
+// DEV_Connector.
+# define ACE_NEEDS_DEV_IO_CONVERSION
+
+// Compiler's template mechanism must see source code (i.e., .C files).
+# define ACE_TEMPLATES_REQUIRE_SOURCE
+
+// Compiler's template mechanism requires the use of explicit C++
+// specializations for all used templates.
+# define ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION
+
+// The HP/UX compiler doesn't support volatile!!!!
+# define volatile
+
+#else // aC++ definitions
+
+// Parts of TAO (at least) use __HP_aCC to detect this compiler, but the
+// macro is not set until A.01.18. If it's not set, set it - it won't be an
+// HP-advertised value, but we don't check the value/version - just whether
+// it's set or not.
+# if !defined (__HP_aCC)
+# define __HP_aCC
+# endif /* __HP_aCC */
+
+// Compiler doesn't support the operator placement delete.
+# define ACE_LACKS_PLACEMENT_OPERATOR_DELETE
+
+// Precompiler needs extra flags to ignore "invalid #pragma directive"
+# define ACE_CC_PREPROCESSOR_ARGS "-E +W 67"
+
+// Compiler supports to-be-ANSI casts
+# define ACE_HAS_ANSI_CASTS
+
+// Compiler can't handle calls like foo->operator T *()
+# define ACE_HAS_BROKEN_CONVERSIONS
+
+// Compiler supports C++ exception handling. However, the user can ask for this
+// to be turned off. If so (using make exceptions=0) then this def is not set.
+// By default, it is set in wrapper_macros.GNU.
+// # define ACE_HAS_EXCEPTIONS 1
+
+// Compiler enforces need for 'template<>" when specializing template
+// classes.
+# define ACE_HAS_STD_TEMPLATE_SPECIALIZATION
+
+// If the platform_macros.GNU file turned on ACE_HAS_STANDARD_CPP_LIBRARY
+// then we're using the -AA option, so we have standard C++ library,
+// including the standard iostreams. Else, we have the old iostreams.
+# if defined (ACE_HAS_STANDARD_CPP_LIBRARY)
+# define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
+# else
+# define ACE_USES_OLD_IOSTREAMS
+# endif /* ACE_HAS_STANDARD_CPP_LIBRARY */
+
+// Compiler enforces proper use of 'typename'
+# define ACE_HAS_TYPENAME_KEYWORD
+
+// Compiler implements templates that support typedefs inside of classes
+// used as formal arguments to a template class.
+# define ACE_HAS_TEMPLATE_TYPEDEFS
+
+// Compiler supports the 'typename' qualifier.
+# define ACE_HAS_TYPENAME_KEYWORD
+
+// This is legit for A.01.12 and probably at least as far back as A.01.07.
+// Before that, not sure. But you shouldn't be there anyway ;-)
+# define ACE_HAS_USING_KEYWORD
+
+// Platform lacks streambuf "linebuffered ()".
+# define ACE_LACKS_LINEBUFFERED_STREAMBUF
+
+// Compiler's template mechanism must see source code (i.e., .C files).
+# define ACE_TEMPLATES_REQUIRE_SOURCE
+
+// Compiler supports template specialization.
+# define ACE_HAS_TEMPLATE_SPECIALIZATION
+
+// Compiler's runtime new throws bad_alloc on out-of-memory condition.
+// If being compiled without exceptions though (+noeh), it doesn't.
+# if defined (ACE_HAS_EXCEPTIONS)
+# define ACE_NEW_THROWS_EXCEPTIONS
+# define ACE_HAS_NEW_NOTHROW
+# endif /* ACE_HAS_EXCEPTIONS */
+
+#endif /* __cplusplus < 199707L */
+
+// Compiler supports the ssize_t typedef.
+#define ACE_HAS_SSIZE_T
+#define ACE_HAS_UALARM
+
+#define ACE_HAS_GPERF
+
+// Optimize ACE_Handle_Set for select().
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+
+// Compiler doesn't handle 'signed char' correctly (used in ace/IOStream.h)
+#define ACE_LACKS_SIGNED_CHAR
+
+#include "ace/config-hpux-10.x.h" /* OS information */
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-hpux-10.x.h b/ace/config-hpux-10.x.h
new file mode 100644
index 00000000000..6970104f83f
--- /dev/null
+++ b/ace/config-hpux-10.x.h
@@ -0,0 +1,252 @@
+/* -*- C++ -*- */
+// $Id$
+
+// The following configuration file is designed to work for HP
+// platforms running HP/UX 10.x. It includes all of the ACE information
+// needed for HP-UX 10.x itself. The compiler-specific information is in
+// config-hpux-10.x-<compiler>.h - they include this file.
+
+#ifndef ACE_CONFIG_H
+#error "You need to use a compiler-specific .h file - they include this file"
+#endif
+
+// Compiling for HPUX.
+#if !defined (HPUX)
+#define HPUX
+#endif /* HPUX */
+#define HPUX_10
+
+#ifndef _HPUX_SOURCE
+#define _HPUX_SOURCE
+#include "ace/pre.h"
+#endif
+
+// Some things are different for 10.10 vs. 10.20 vs. 10.30
+// If the version number wasn't set up by the compiler command line,
+// set up as if it was 10.20.
+#if !defined (HPUX_VERS)
+#define HPUX_VERS 1020
+#endif
+
+#if (HPUX_VERS < 1020) // 10.10
+# define ACE_HAS_BROKEN_MMAP_H
+# define ACE_LACKS_T_ERRNO
+# define ACE_LACKS_TIMESPEC_T
+#elif (HPUX_VERS < 1030) // 10.20
+
+ // Platform supports reentrant functions (all the POSIX *_r functions).
+# define ACE_HAS_REENTRANT_FUNCTIONS
+ // But this one is not like other platforms
+# define ACE_CTIME_R_RETURNS_INT
+ // And _REENTRANT must be set, even if not using threads.
+# if !defined (_REENTRANT)
+# define _REENTRANT
+# endif /* _REENTRANT */
+
+#else // 10.30
+// Don't know yet... probably will be 10.20 but with some different thread
+// settings.
+#endif /* HPUX_VERS tests */
+
+#include /**/ <sys/stdsyms.h>
+#include /**/ <sched.h> /* pthread.h doesn't include this */
+
+extern int h_errno; /* This isn't declared in a header file on HP-UX */
+
+
+////////////////////////////////////////////////////////////////////////////
+//
+// General OS information - see README for more details on what they mean
+//
+///////////////////////////////////////////////////////////////////////////
+
+// HP/UX needs to have these addresses in a special range.
+#define ACE_DEFAULT_BASE_ADDR ((char *) 0x80000000)
+
+// Compiler/platform contains the <sys/syscall.h> file.
+#define ACE_HAS_SYSCALL_H
+// But doesn't have a prototype for syscall()
+#define ACE_LACKS_SYSCALL
+
+// Platform supports POSIX 1.b clock_gettime ()
+#define ACE_HAS_CLOCK_GETTIME
+
+// Prototypes for both signal() and struct sigaction are consistent.
+#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
+
+// Compiler/platform has correctly prototyped header files.
+#define ACE_HAS_CPLUSPLUS_HEADERS
+
+// Compiler/platform has Dirent iterator functions.
+#define ACE_HAS_DIRENT
+
+// Platform supports getpagesize() call
+#define ACE_HAS_GETPAGESIZE
+// But we define this just to be safe
+#define ACE_PAGE_SIZE 4096
+
+// Platform supports IP multicast
+#define ACE_HAS_IP_MULTICAST
+
+// Platform supports recvmsg and sendmsg.
+#define ACE_HAS_MSG
+
+// select's timeval arg is non-const
+#define ACE_HAS_NONCONST_SELECT_TIMEVAL
+
+// Compiler/platform supports poll().
+#define ACE_HAS_POLL
+
+// Platform supports POSIX O_NONBLOCK semantics.
+#define ACE_HAS_POSIX_NONBLOCK
+
+// Platform supports the POSIX struct timespec type
+#define ACE_HAS_POSIX_TIME
+
+// Compiler/platform defines the sig_atomic_t typedef
+#define ACE_HAS_SIG_ATOMIC_T
+
+// Platform supports SVR4 extended signals
+#define ACE_HAS_SIGINFO_T
+
+// Platform doesn't detect a signal out of range unless it's way out of range.
+#define ACE_HAS_SIGISMEMBER_BUG
+
+// Platform supports ucontext_t (which is used in the extended signal API).
+#define ACE_HAS_UCONTEXT_T
+
+// Compiler/platform supports strerror ().
+#define ACE_HAS_STRERROR
+
+// SunOS 4 style prototype for gettimeofday
+#define ACE_HAS_SUNOS4_GETTIMEOFDAY
+
+// HP/UX has an undefined syscall for GETRUSAGE...
+#define ACE_HAS_SYSCALL_GETRUSAGE
+// Note, this only works if the flag is set above!
+#define ACE_HAS_GETRUSAGE
+
+// Platform supports System V IPC (most versions of UNIX, but not Win32)
+#define ACE_HAS_SYSV_IPC
+
+#define ACE_HAS_UALARM
+
+// Platform has XPG4 wide character support
+#define ACE_HAS_XPG4_MULTIBYTE_CHAR
+
+// Platform lacks readers/writer locks.
+#define ACE_LACKS_RWLOCK_T
+
+// Shared library path/search components
+#define ACE_DLL_SUFFIX ".sl"
+#define ACE_LD_SEARCH_PATH "SHLIB_PATH"
+
+//////////////////////////////////////////////////////////////////////////
+//
+// STREAMS information
+//
+//////////////////////////////////////////////////////////////////////////
+
+// Platform supports STREAMS
+#define ACE_HAS_STREAMS
+// Compiler/platform supports struct strbuf.
+#define ACE_HAS_STRBUF_T
+// But the putmsg signature doesn't have it as const...
+#define ACE_LACKS_CONST_STRBUF_PTR
+
+// Platform supports STREAM pipes
+// This is possible, but not by default - need to rebuild the kernel to
+// get them enabled - see pipe(2) and "STREAMS/UX for the HP 9000"
+// #define ACE_HAS_STREAM_PIPES
+
+/////////////////////////////////////////////////////////////////////////
+//
+// TLI information
+//
+////////////////////////////////////////////////////////////////////////
+
+// Platform supports ACE_TLI, including SVR4 facilities.
+#define ACE_HAS_TLI
+
+// t_error's arg is char *, not const char *
+#define ACE_HAS_BROKEN_T_ERROR
+// ACE_HAS_SVR4_TLI should work on HP-UX, but doesn't yet. Riverace
+// problem ID P27.
+//#define ACE_HAS_SVR4_TLI
+// Platform supports ACE_TLI tiuser header.
+#define ACE_HAS_TIUSER_H
+// But it has _terrno() outside the extern "C" stuff.
+#define ACE_HAS_TIUSER_H_BROKEN_EXTERN_C
+// Platform provides ACE_TLI function prototypes.
+#define ACE_HAS_TLI_PROTOTYPES
+// Platform uses a TCP TLI device other than /dev/tcp. Uses XTI only.
+#define ACE_TLI_TCP_DEVICE "/dev/inet_cots"
+
+/////////////////////////////////////////////////////////////////////////
+//
+// Threads information.
+// Threads definitions are controlled by the threads setting in the
+// include/makeinclude/platform_hpux_aCC.GNU file - see that for details.
+// If you build with threads support, the DCE Core subset must be installed
+// from the core OS CD.
+//
+////////////////////////////////////////////////////////////////////////
+
+#ifdef ACE_HAS_THREADS
+# if !defined (ACE_MT_SAFE)
+ #define ACE_MT_SAFE 1
+# endif
+
+# define ACE_HAS_PTHREADS
+# define ACE_HAS_PTHREADS_DRAFT4
+// POSIX real-time semaphore definitions are in the header files, and it
+// will compile and link with this in place, but will not run. HP says
+// the functions are not implemented.
+//# define ACE_HAS_POSIX_SEM
+
+# define ACE_HAS_THREAD_SPECIFIC_STORAGE
+
+// They forgot a const in the prototype of pthread_cond_timedwait
+# define ACE_LACKS_CONST_TIMESPEC_PTR
+
+// Platform lacks pthread_thr_sigsetmask
+# define ACE_LACKS_PTHREAD_THR_SIGSETMASK
+
+// Platform has no implementation of pthread_condattr_setpshared()
+# define ACE_LACKS_CONDATTR_PSHARED
+
+// Platform lacks pthread_attr_setdetachstate()
+# define ACE_LACKS_SETDETACH
+
+// Platform lacks pthread_attr_setscope
+# define ACE_LACKS_THREAD_PROCESS_SCOPING
+
+// Platform lacks pthread_attr_setstackaddr
+# define ACE_LACKS_THREAD_STACK_ADDR
+
+// If this is not turned on, the CMA wrappers will redefine a bunch of
+// system calls with wrappers - one being select() and it only defines
+// select with int arguments (not fd_set). So, as long as _CMA_NOWRAPPERS_
+// is set, the regular fd_set arg types are used for select().
+// Without threads being compiled in, the fd_set/int thing is not an issue.
+# define _CMA_NOWRAPPERS_
+
+#else
+// If threading is disabled, then timespec_t does not get defined.
+# ifndef ACE_LACKS_TIMESPEC_T
+# define ACE_LACKS_TIMESPEC_T
+# endif
+#endif /* ACE_HAS_THREADS */
+
+// Manually tweaking malloc paddings.
+#define ACE_MALLOC_PADDING 16
+#define ACE_MALLOC_ALIGN 8
+#define ACE_CONTROL_BLOCK_ALIGN_LONGS 0
+#define ACE_PI_CONTROL_BLOCK_ALIGN_LONGS 2
+
+// Turns off the tracing feature.
+// To build with tracing enabled, make sure ACE_NTRACE is not defined
+#if !defined (ACE_NTRACE)
+#define ACE_NTRACE 1
+#include "ace/post.h"
+#endif /* ACE_NTRACE */
diff --git a/ace/config-hpux-11.00.h b/ace/config-hpux-11.00.h
new file mode 100644
index 00000000000..97cc1f29d18
--- /dev/null
+++ b/ace/config-hpux-11.00.h
@@ -0,0 +1,420 @@
+/* -*- C++ -*- */
+// $Id$
+
+// The following configuration file is designed to work for HP
+// platforms running HP-UX 11.00 using aC++, CC, or gcc (2.95 and up).
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+#if defined (__GNUG__)
+
+// config-g++-common.h undef's ACE_HAS_STRING_CLASS with -frepo, so
+// this must appear before its #include.
+# define ACE_HAS_STRING_CLASS
+
+# include "ace/config-g++-common.h"
+
+// gcc 2.95.2 supplies the ssize_t typedef.
+# define ACE_HAS_SSIZE_T
+
+// gcc 3.0 claims to have wide character stuff, but (at least the version
+// built by HP) can't actually compile it. It refers to a wctype.h file
+// that's only available with aC++.
+
+#else
+
+// The following configuration section is designed to work for HP
+// platforms running HP/UX 11.x with either of the HP C++ compilers.
+// There isn't a predefined macro for all cases of the compilers that
+// can be used to tell them apart from other compilers (e.g. __KCC, etc.)
+// only to tell C++ from aC++, using the value of __cplusplus.
+//
+// NOTE - HP advises people on 11.x to use aC++ since the older C++ doesn't
+// support 64-bit or kernel threads. So, though this file has the C++ info
+// in it, it's copied from the 10.x file and hasn't been verified.
+
+// There are 2 compiler-specific sections, plus a 3rd for common to both.
+// First is the HP C++ section...
+# if __cplusplus < 199707L
+
+# define ACE_HAS_BROKEN_HPUX_TEMPLATES
+
+// Compiler can't handle calls like foo->operator T *()
+# define ACE_HAS_BROKEN_CONVERSIONS
+
+// Necessary with some compilers to pass ACE_TTY_IO as parameter to
+// DEV_Connector.
+# define ACE_NEEDS_DEV_IO_CONVERSION
+
+// Compiler's template mechanism must see source code (i.e., .C files).
+# define ACE_TEMPLATES_REQUIRE_SOURCE
+
+// Compiler's template mechanism requires the use of explicit C++
+// specializations for all used templates.
+# define ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION
+
+// The HP/UX compiler doesn't support volatile!!!!
+# define volatile
+
+# else // aC++ definitions
+
+// Parts of TAO (at least) use __HP_aCC to detect this compiler, but the
+// macro is not set until A.03.13. If it's not set, set it - it won't be an
+// HP-advertised value, but we don't check the value/version - just whether
+// it's set or not.
+# if !defined (__HP_aCC)
+# define __HP_aCC
+# endif /* __HP_aCC */
+
+// Precompiler needs extra flags to ignore "invalid #pragma directive"
+# define ACE_CC_PREPROCESSOR_ARGS "-E +W 67"
+
+// Compiler supports ANSI casts
+# define ACE_HAS_ANSI_CASTS
+
+// Compiler can't handle calls like foo->operator T *()
+# define ACE_HAS_BROKEN_CONVERSIONS
+
+// Compiler supports C++ exception handling. However, the user can ask for this
+// to be turned off. If so (using make exceptions=0) then this def is not set.
+// By default, it is set in wrapper_macros.GNU.
+// # define ACE_HAS_EXCEPTIONS 1
+
+// If the platform_macros.GNU file turned on ACE_HAS_STANDARD_CPP_LIBRARY
+// then we're using the -AA option, so we have standard C++ library,
+// including the standard iostreams. Else, we have the old iostreams.
+# if defined (ACE_HAS_STANDARD_CPP_LIBRARY)
+# define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
+# else
+# define ACE_USES_OLD_IOSTREAMS
+# endif /* ACE_HAS_STANDARD_CPP_LIBRARY */
+
+# define ACE_HAS_TYPENAME_KEYWORD
+
+// Compiler implements templates that support typedefs inside of classes
+// used as formal arguments to a template class.
+# define ACE_HAS_TEMPLATE_TYPEDEFS
+
+// This is legit for A.03.05 - not sure A.03.04, but it should be.
+# define ACE_HAS_USING_KEYWORD
+
+// Platform lacks streambuf "linebuffered ()".
+# define ACE_LACKS_LINEBUFFERED_STREAMBUF 1
+
+// Lack of (and broken) support for placement operator delete is a known
+// bug by HP, at least as of aC++ A.03.10. It may be fixed later, and if so
+// this would change to be a #if against an appropriate value of __HP_aCC
+# define ACE_LACKS_PLACEMENT_OPERATOR_DELETE
+
+// Compiler's 'new' throws exceptions on failure, regardless of whether or
+// not exception handling is enabled in the compiler options. Fortunately,
+// new(nothrow_t) is offered.
+# define ACE_NEW_THROWS_EXCEPTIONS
+# define ACE_HAS_NEW_NOTHROW
+
+// Compiler's template mechanism must see source code (i.e., .C files).
+# define ACE_TEMPLATES_REQUIRE_SOURCE
+
+// Compiler supports template specialization.
+# define ACE_HAS_TEMPLATE_SPECIALIZATION
+// ... and uses the template<> syntax
+# define ACE_HAS_STD_TEMPLATE_SPECIALIZATION
+# define ACE_HAS_STD_TEMPLATE_METHOD_SPECIALIZATION
+
+// Preprocessor needs some help with data types
+# if defined (__LP64__)
+# define ACE_SIZEOF_LONG 8
+# else
+# define ACE_SIZEOF_LONG 4
+# endif
+
+// Platform has XPG4 wide character support
+# define ACE_HAS_XPG4_MULTIBYTE_CHAR
+# define ACE_HAS_WCHAR
+
+# endif /* __cplusplus < 199707L */
+
+// Compiler supports the ssize_t typedef.
+# define ACE_HAS_SSIZE_T
+
+// Compiler doesn't handle 'signed char' correctly (used in ace/IOStream.h)
+# define ACE_LACKS_SIGNED_CHAR
+
+#endif /* __GNUG__, HP */
+
+// KCC Specific Section
+#if defined(__KCC)
+# include "ace/config-kcc-common.h"
+# undef ACE_HAS_STD_TEMPLATE_METHOD_SPECIALIZATION
+# undef ACE_CC_PREPROCESSOR_ARGS
+#endif
+
+//*********************************************************************
+//
+// From here down is the compiler-INdependent OS settings.
+//
+//*********************************************************************
+
+// Compiling for HPUX.
+#if !defined (HPUX)
+#define HPUX
+#endif /* HPUX */
+#define HPUX_11
+
+#ifndef _HPUX_SOURCE
+#define _HPUX_SOURCE
+#endif
+
+#include /**/ <sys/stdsyms.h>
+
+////////////////////////////////////////////////////////////////////////////
+//
+// General OS information - see README for more details on what they mean
+//
+///////////////////////////////////////////////////////////////////////////
+
+// HP/UX needs to have these addresses in a special range.
+// If this is on a 64-bit model, the default is to use 64-bit addressing.
+// It can also be set so that the mapped region is shareable with 32-bit
+// programs. To enable the 32/64 sharing, comment out the first definition
+// of ACE_DEFAULT_BASE_ADDR and uncomment the two lines after it.
+// Note - there's a compiler bug on aC++ A.03.04 in 64-bit mode which prevents
+// these from working as-is. So, there's some hackery in Naming_Context.cpp
+// and Memory_Pool.cpp which works around it. It requires the
+// ACE_DEFAULT_BASE_ADDRL definition below - make sure it has the same
+// value as what you use for ACE_DEFAULT_BASE_ADDR. This is allegedly fixed
+// in A.03.10 on the June Applications CD.
+#if defined (__LP64__)
+# define ACE_DEFAULT_BASE_ADDR ((char *) 0x0000001100000000)
+//# define ACE_DEFAULT_BASE_ADDR ((char *) 0x80000000)
+//# define ACE_OS_EXTRA_MMAP_FLAGS MAP_ADDR32
+
+# define ACE_DEFAULT_BASE_ADDRL (0x0000001100000000)
+//# define ACE_DEFAULT_BASE_ADDRL (0x80000000)
+#else
+# define ACE_DEFAULT_BASE_ADDR ((char *) 0x80000000)
+#endif /* __LP64__ */
+
+// Platform can do async I/O (aio_*)
+#define ACE_HAS_AIO_CALLS
+// ... but seems to require this in order to keep from hanging. Needs some
+// investigation, maybe with HP. John Mulhern determined this value
+// empirically. YMMV. If it does vary, set it up in your own config.h which
+// then includes the ACE-supplied config.
+#if !defined (ACE_INFINITE)
+# define ACE_INFINITE 10000000
+#endif
+
+// Manually tweak the malloc control block paddings to properly align
+// things.
+#define ACE_MALLOC_PADDING 16
+#define ACE_MALLOC_ALIGN 8
+#define ACE_PI_CONTROL_BLOCK_ALIGN_LONGS 3
+
+// Compiler/platform contains the <sys/syscall.h> file.
+#define ACE_HAS_SYSCALL_H
+// But doesn't have a prototype for syscall()
+#define ACE_LACKS_SYSCALL
+
+// Platform supports POSIX 1.b clock_gettime ()
+#define ACE_HAS_CLOCK_GETTIME
+
+// Prototypes for both signal() and struct sigaction are consistent.
+#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
+
+// Compiler/platform has correctly prototyped header files.
+#define ACE_HAS_CPLUSPLUS_HEADERS
+
+// Compiler/platform has Dirent iterator functions.
+#define ACE_HAS_DIRENT
+
+// Platform supports getpagesize() call
+#define ACE_HAS_GETPAGESIZE
+// But we define this just to be safe
+#define ACE_PAGE_SIZE 4096
+
+// Can run gperf on this platform (needed for TAO)
+# define ACE_HAS_GPERF
+
+// Optimize ACE_Handle_Set for select().
+# define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+
+// Platform supports IP multicast
+#define ACE_HAS_IP_MULTICAST
+
+// Platform supports recvmsg and sendmsg.
+#define ACE_HAS_MSG
+
+// Platform's select() has non-const timeval argument
+#define ACE_HAS_NONCONST_SELECT_TIMEVAL
+
+// Compiler/platform supports poll().
+#define ACE_HAS_POLL
+
+// Platform supports POSIX O_NONBLOCK semantics.
+#define ACE_HAS_POSIX_NONBLOCK
+
+// Platform supports the POSIX struct timespec type
+#define ACE_HAS_POSIX_TIME
+
+// Platform supports reentrant functions (all the POSIX *_r functions).
+#define ACE_HAS_REENTRANT_FUNCTIONS
+// ctime_r and asctime_r conform to POSIX.1c (2 param version)
+#define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R
+
+// HP-UX 11 has reentrant netdb functions. The catch is that the old
+// functions (gethostbyname, etc.) are thread-safe and the _r versions are
+// not used and will be removed at some point. So, define things so
+// the _r versions are not used. This will slow things down a bit due to
+// the extra mutex lock in the ACE_NETDBCALL_RETURN macro, and will be fixed
+// in the future (problem ID P64).
+#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS
+
+// Platform has shm_open
+#define ACE_HAS_SHM_OPEN
+
+// Compiler/platform defines the sig_atomic_t typedef
+#define ACE_HAS_SIG_ATOMIC_T
+
+// Platform supports SVR4 extended signals
+#define ACE_HAS_SIGINFO_T
+
+// Platform doesn't detect a signal out of range unless it's way out of range.
+#define ACE_HAS_SIGISMEMBER_BUG
+
+#define ACE_HAS_UALARM
+
+// Platform supports ucontext_t (which is used in the extended signal API).
+#define ACE_HAS_UCONTEXT_T
+
+// Compiler/platform supports strerror ().
+#define ACE_HAS_STRERROR
+
+// SunOS 4 style prototype for gettimeofday
+#define ACE_HAS_SUNOS4_GETTIMEOFDAY
+
+// Platform supports SVR4 dynamic linking semantics, in 64-bit mode only.
+// When used, this requires -ldl on the ACE library link line.
+#ifdef __LP64__
+#define ACE_HAS_SVR4_DYNAMIC_LINKING
+#endif
+
+// HP/UX has an undefined syscall for GETRUSAGE...
+#define ACE_HAS_SYSCALL_GETRUSAGE
+// Note, this only works if the flag is set above!
+#define ACE_HAS_GETRUSAGE
+
+// Platform has the sigwait function in a header file
+#define ACE_HAS_SIGWAIT
+#define ACE_HAS_SIGTIMEDWAIT
+
+// Platform supports System V IPC (most versions of UNIX, but not Win32)
+#define ACE_HAS_SYSV_IPC
+
+// accept() is thread-safe
+#define ACE_HAS_THREAD_SAFE_ACCEPT
+
+// Platform lacks a typedef for timespec_t, but has struct timespec
+#define ACE_LACKS_TIMESPEC_T
+
+// dlopen() takes a char* instead of const char*
+#define ACE_HAS_CHARPTR_DL
+
+// Shared library name/path components
+#define ACE_DLL_SUFFIX ".sl"
+#if defined (__LP64__)
+# define ACE_LD_SEARCH_PATH "LD_LIBRARY_PATH"
+#else
+# define ACE_LD_SEARCH_PATH "SHLIB_PATH"
+#endif /* __LP64__ */
+
+//////////////////////////////////////////////////////////////////////////
+//
+// STREAMS information
+//
+//////////////////////////////////////////////////////////////////////////
+
+// Platform supports STREAMS
+#define ACE_HAS_STREAMS
+// Compiler/platform supports struct strbuf.
+#define ACE_HAS_STRBUF_T
+// But the putmsg signature doesn't have it as const...
+// Well, it really does, but it depends on preprocessor defines.
+#define ACE_LACKS_CONST_STRBUF_PTR
+
+// Platform supports STREAM pipes
+// This is possible, but not by default - need to rebuild the kernel to
+// get them enabled - see pipe(2) and "STREAMS/UX for the HP 9000"
+// #define ACE_HAS_STREAM_PIPES
+
+/////////////////////////////////////////////////////////////////////////
+//
+// TLI/XTI information
+//
+////////////////////////////////////////////////////////////////////////
+
+// Platform supports XTI (includes TLI), including SVR4 facilities.
+#define ACE_HAS_TLI
+// ACE_HAS_SVR4_TLI should work on HP-UX, but doesn't yet. Riverace
+// problem ID P27.
+//#define ACE_HAS_SVR4_TLI
+// Platform uses <xti.h>, not tiuser.h
+#define ACE_HAS_XTI
+// But it has _terrno() outside the extern "C" stuff.
+#define ACE_HAS_TIUSER_H_BROKEN_EXTERN_C
+// Platform provides ACE_TLI function prototypes.
+#define ACE_HAS_TLI_PROTOTYPES
+// HP-UX 11.00 (at least at initial releases) has some busted macro defs
+#define ACE_HAS_BROKEN_XTI_MACROS
+// HP-UX 11 conforms to the XPG4 spec, which ACE calls broken for the
+// errmsg not being const...
+#define ACE_HAS_BROKEN_T_ERROR
+// The definitions of TCP_NODELAY and TCP_MAXSEG conflict between
+// sys/xti.h and netinet/tcp.h.
+#define ACE_HAS_CONFLICTING_XTI_MACROS
+
+/////////////////////////////////////////////////////////////////////////
+//
+// Threads information.
+//
+// Use of threads is controlled by the 'threads' argument to make. See
+// include/makeinclude/platform_hpux_aCC.GNU for details. If it's not set,
+// the default is to enable it, since kernel threads are always available
+// on HP-UX 11, as opposed to 10.x where it was optional software.
+//
+////////////////////////////////////////////////////////////////////////
+
+#if defined (ACE_HAS_THREADS)
+# if (ACE_HAS_THREADS == 0)
+# undef ACE_HAS_THREADS
+# endif /* ACE_HAS_THREADS == 0 */
+#else
+# define ACE_HAS_THREADS
+#endif /* ACE_HAS_THREADS */
+
+#if defined (ACE_HAS_THREADS)
+
+# if !defined (ACE_MT_SAFE)
+# define ACE_MT_SAFE 1
+# endif
+
+# define ACE_HAS_PTHREADS
+# define ACE_HAS_PTHREADS_STD
+# define ACE_HAS_PTHREADS_UNIX98_EXT
+
+# define ACE_HAS_THREAD_SPECIFIC_STORAGE
+#endif /* ACE_HAS_THREADS */
+
+#define ACE_HAS_POSIX_SEM
+#define ACE_HAS_TERM_IOCTLS
+
+// Turns off the tracing feature.
+// To build with tracing enabled, make sure ACE_NTRACE is not defined
+#if !defined (ACE_NTRACE)
+#define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-hpux11.h b/ace/config-hpux11.h
new file mode 100644
index 00000000000..992b96d1eb5
--- /dev/null
+++ b/ace/config-hpux11.h
@@ -0,0 +1,250 @@
+/* -*- C++ -*- */
+// $Id$
+
+// The following configuration file is designed to work for HP
+// platforms running HP/UX 11.x. It includes all of the ACE information
+// needed for HP-UX 11.x itself. The compiler-specific information is in
+// config-hpux-11.x-<compiler>.h - they include this file.
+
+#ifndef ACE_CONFIG_H
+#error "You need to use a compiler-specific .h file - they include this file"
+#endif
+
+// Compiling for HPUX.
+#if !defined (HPUX)
+#define HPUX
+#endif /* HPUX */
+#define HPUX_11
+
+#ifndef _HPUX_SOURCE
+#define _HPUX_SOURCE
+#include "ace/pre.h"
+#endif
+
+#include /**/ <sys/stdsyms.h>
+
+////////////////////////////////////////////////////////////////////////////
+//
+// General OS information - see README for more details on what they mean
+//
+///////////////////////////////////////////////////////////////////////////
+
+// HP/UX needs to have these addresses in a special range.
+// If this is on a 64-bit model, the default is to use 64-bit addressing.
+// It can also be set so that the mapped region is shareable with 32-bit
+// programs. To enable the 32/64 sharing, comment out the first definition
+// of ACE_DEFAULT_BASE_ADDR and uncomment the two lines after it.
+// Note - there's a compiler bug on aC++ A.03.04 in 64-bit mode which prevents
+// these from working as-is. So, there's some hackery in Naming_Context.cpp
+// and Memory_Pool.cpp which works around it. It requires the
+// ACE_DEFAULT_BASE_ADDRL definition below - make sure it has the same
+// value as what you use for ACE_DEFAULT_BASE_ADDR. This is allegedly fixed
+// in A.03.10 on the June Applications CD.
+#if defined (__LP64__)
+# define ACE_DEFAULT_BASE_ADDR ((char *) 0x0000001100000000)
+//# define ACE_DEFAULT_BASE_ADDR ((char *) 0x80000000)
+//# define ACE_OS_EXTRA_MMAP_FLAGS MAP_ADDR32
+
+# define ACE_DEFAULT_BASE_ADDRL (0x0000001100000000)
+//# define ACE_DEFAULT_BASE_ADDRL (0x80000000)
+#else
+# define ACE_DEFAULT_BASE_ADDR ((char *) 0x80000000)
+#endif /* __LP64__ */
+
+// Platform can do async I/O (aio_*)
+#define ACE_HAS_AIO_CALLS
+// ... but seems to require this in order to keep from hanging. Needs some
+// investigation, maybe with HP. John Mulhern determined this value
+// empirically. YMMV. If it does vary, set it up in your own config.h which
+// then includes the ACE-supplied config.
+#if !defined (ACE_INFINITE)
+# define ACE_INFINITE 10000000
+#endif
+
+// Compiler/platform contains the <sys/syscall.h> file.
+#define ACE_HAS_SYSCALL_H
+// But doesn't have a prototype for syscall()
+#define ACE_LACKS_SYSCALL
+
+// Platform supports POSIX 1.b clock_gettime ()
+#define ACE_HAS_CLOCK_GETTIME
+
+// Prototypes for both signal() and struct sigaction are consistent.
+#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
+
+// Compiler/platform has correctly prototyped header files.
+#define ACE_HAS_CPLUSPLUS_HEADERS
+
+// Compiler/platform has Dirent iterator functions.
+#define ACE_HAS_DIRENT
+
+// Platform supports getpagesize() call
+#define ACE_HAS_GETPAGESIZE
+// But we define this just to be safe
+#define ACE_PAGE_SIZE 4096
+
+// Platform supports IP multicast
+#define ACE_HAS_IP_MULTICAST
+
+// Platform supports recvmsg and sendmsg.
+#define ACE_HAS_MSG
+
+// Platform's select() has non-const timeval argument
+#define ACE_HAS_NONCONST_SELECT_TIMEVAL
+
+// Compiler/platform supports poll().
+#define ACE_HAS_POLL
+
+// Platform supports POSIX O_NONBLOCK semantics.
+#define ACE_HAS_POSIX_NONBLOCK
+
+// Platform supports the POSIX struct timespec type
+#define ACE_HAS_POSIX_TIME
+
+// Platform supports reentrant functions (all the POSIX *_r functions).
+#define ACE_HAS_REENTRANT_FUNCTIONS
+
+// HP-UX 11 has reentrant netdb functions. The catch is that the old
+// functions (gethostbyname, etc.) are thread-safe and the _r versions are
+// not used and will be removed at some point. So, define things so
+// the _r versions are not used. This will slow things down a bit due to
+// the extra mutex lock in the ACE_NETDBCALL_RETURN macro, and will be fixed
+// in the future (problem ID P64).
+#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS
+
+// Compiler/platform defines the sig_atomic_t typedef
+#define ACE_HAS_SIG_ATOMIC_T
+
+// Platform supports SVR4 extended signals
+#define ACE_HAS_SIGINFO_T
+
+// Platform doesn't detect a signal out of range unless it's way out of range.
+#define ACE_HAS_SIGISMEMBER_BUG
+
+#define ACE_HAS_UALARM
+
+// Platform supports ucontext_t (which is used in the extended signal API).
+#define ACE_HAS_UCONTEXT_T
+
+// Compiler/platform supports strerror ().
+#define ACE_HAS_STRERROR
+
+// SunOS 4 style prototype for gettimeofday
+#define ACE_HAS_SUNOS4_GETTIMEOFDAY
+
+// Platform supports SVR4 dynamic linking semantics, in 64-bit mode only.
+// When used, this requires -ldl on the ACE library link line.
+#ifdef __LP64__
+#define ACE_HAS_SVR4_DYNAMIC_LINKING
+#endif
+
+// HP/UX has an undefined syscall for GETRUSAGE...
+#define ACE_HAS_SYSCALL_GETRUSAGE
+// Note, this only works if the flag is set above!
+#define ACE_HAS_GETRUSAGE
+
+// Platform has the sigwait function in a header file
+#define ACE_HAS_SIGWAIT
+
+// Platform supports System V IPC (most versions of UNIX, but not Win32)
+#define ACE_HAS_SYSV_IPC
+
+// accept() is thread-safe
+#define ACE_HAS_THREAD_SAFE_ACCEPT
+
+// Platform has XPG4 wide character support
+#define ACE_HAS_XPG4_MULTIBYTE_CHAR
+
+// Platform lacks a typedef for timespec_t, but has struct timespec
+#define ACE_LACKS_TIMESPEC_T
+
+// Shared library name/path components
+#define ACE_DLL_SUFFIX ".sl"
+#if defined (__LP64__)
+# define ACE_LD_SEARCH_PATH "LD_LIBRARY_PATH"
+#else
+# define ACE_LD_SEARCH_PATH "SHLIB_PATH"
+#endif /* __LP64__ */
+
+//////////////////////////////////////////////////////////////////////////
+//
+// STREAMS information
+//
+//////////////////////////////////////////////////////////////////////////
+
+// Platform supports STREAMS
+#define ACE_HAS_STREAMS
+// Compiler/platform supports struct strbuf.
+#define ACE_HAS_STRBUF_T
+// But the putmsg signature doesn't have it as const...
+// Well, it really does, but it depends on preprocessor defines.
+#define ACE_LACKS_CONST_STRBUF_PTR
+
+// Platform supports STREAM pipes
+// This is possible, but not by default - need to rebuild the kernel to
+// get them enabled - see pipe(2) and "STREAMS/UX for the HP 9000"
+// #define ACE_HAS_STREAM_PIPES
+
+/////////////////////////////////////////////////////////////////////////
+//
+// TLI/XTI information
+//
+////////////////////////////////////////////////////////////////////////
+
+// Platform supports XTI (includes TLI), including SVR4 facilities.
+#define ACE_HAS_TLI
+// ACE_HAS_SVR4_TLI should work on HP-UX, but doesn't yet. Riverace
+// problem ID P27.
+//#define ACE_HAS_SVR4_TLI
+// Platform uses <xti.h>, not tiuser.h
+#define ACE_HAS_XTI
+// But it has _terrno() outside the extern "C" stuff.
+#define ACE_HAS_TIUSER_H_BROKEN_EXTERN_C
+// Platform provides ACE_TLI function prototypes.
+#define ACE_HAS_TLI_PROTOTYPES
+// HP-UX 11.00 (at least at initial releases) has some busted macro defs
+#define ACE_HAS_BROKEN_XTI_MACROS
+// HP-UX 11 conforms to the XPG4 spec, which ACE calls broken for the
+// errmsg not being const...
+#define ACE_HAS_BROKEN_T_ERROR
+
+/////////////////////////////////////////////////////////////////////////
+//
+// Threads information.
+//
+// Use of threads is controlled by the 'threads' argument to make. See
+// include/makeinclude/platform_hpux_aCC.GNU for details. If it's not set,
+// the default is to enable it, since kernel threads are always available
+// on HP-UX 11, as opposed to 10.x where it was optional software.
+//
+////////////////////////////////////////////////////////////////////////
+
+#if defined (ACE_HAS_THREADS)
+# if (ACE_HAS_THREADS == 0)
+# undef ACE_HAS_THREADS
+# endif /* ACE_HAS_THREADS == 0 */
+#else
+# define ACE_HAS_THREADS
+#endif /* ACE_HAS_THREADS */
+
+#if defined (ACE_HAS_THREADS)
+
+# if !defined (ACE_MT_SAFE)
+# define ACE_MT_SAFE 1
+# endif
+
+# define ACE_HAS_PTHREADS
+# define ACE_HAS_PTHREADS_STD
+# define ACE_HAS_PTHREADS_UNIX98_EXT
+
+# define ACE_HAS_THREAD_SPECIFIC_STORAGE
+#endif /* ACE_HAS_THREADS */
+
+#define ACE_HAS_POSIX_SEM
+
+// Turns off the tracing feature.
+// To build with tracing enabled, make sure ACE_NTRACE is not defined
+#if !defined (ACE_NTRACE)
+#define ACE_NTRACE 1
+#include "ace/post.h"
+#endif /* ACE_NTRACE */
diff --git a/ace/config-irix5.2.h b/ace/config-irix5.2.h
new file mode 100644
index 00000000000..35098a8170c
--- /dev/null
+++ b/ace/config-irix5.2.h
@@ -0,0 +1,69 @@
+/* -*- C++ -*- */
+// $Id$
+
+// The following configuration file is designed to work for the SGI
+// Indigo2EX running Irix 5.2 platform using the gcc v2.6.x compiler
+// and libg++ v2.6.x.
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+// Platform supports STREAM pipes (note that this is disabled by
+// default, see the manual page on pipe(2) to find out how to enable
+// it).
+//#define ACE_HAS_STREAM_PIPES
+
+// Platform supports getpagesize() call.
+#define ACE_HAS_GETPAGESIZE
+// Optimize ACE_Handle_Set for select().
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+
+#define ACE_HAS_SIGWAIT
+
+// Platform supports System V IPC (most versions of UNIX, but not Win32)
+#define ACE_HAS_SYSV_IPC
+
+// Platform requires void * for mmap().
+#define ACE_HAS_VOIDPTR_MMAP
+
+// Compiler/platform contains the <sys/syscall.h> file.
+#define ACE_HAS_SYSCALL_H
+
+// Platform supports recvmsg and sendmsg.
+#define ACE_HAS_MSG
+
+#define ACE_SIZEOF_LONG_DOUBLE 8
+
+#define IRIX5
+#define ACE_HAS_ALLOCA
+// Compiler/platform has <alloca.h>
+#define ACE_HAS_ALLOCA_H
+#define ACE_HAS_BSTRING
+#define ACE_HAS_GETRUSAGE
+#define ACE_HAS_POSIX_NONBLOCK
+#define ACE_HAS_POSIX_TIME
+#define ACE_HAS_CPLUSPLUS_HEADERS
+#define ACE_HAS_POLL
+#define ACE_HAS_PROC_FS
+#define ACE_HAS_SIG_ATOMIC_T
+#define ACE_HAS_SIGINFO_T
+#define ACE_HAS_UCONTEXT_T
+#define ACE_HAS_STREAMS
+#define ACE_HAS_SSIZE_T
+#define ACE_HAS_STRERROR
+#define ACE_HAS_STRBUF_T
+#define ACE_HAS_SVR4_DYNAMIC_LINKING
+#define ACE_HAS_SVR4_SIGNAL_T
+#define ACE_HAS_SYS_SIGLIST
+#define ACE_HAS_SYS_FILIO_H
+#define ACE_HAS_SEMUN
+#define ACE_NEEDS_DEV_IO_CONVERSION
+
+// Turns off the tracing feature.
+#if !defined (ACE_NTRACE)
+# define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-irix5.3-g++.h b/ace/config-irix5.3-g++.h
new file mode 100644
index 00000000000..554167e9ec3
--- /dev/null
+++ b/ace/config-irix5.3-g++.h
@@ -0,0 +1,120 @@
+/* -*- C++ -*- */
+// $Id$
+
+// The following configuration file is designed to work for the SGI
+// Indigo2EX running Irix 5.3 platform using the GNU C++ Compiler
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+// config-g++-common.h undef's ACE_HAS_STRING_CLASS with -frepo, so
+// this must appear before its #include.
+#define ACE_HAS_STRING_CLASS
+
+#include "ace/config-g++-common.h"
+
+#define ACE_SIZEOF_LONG_DOUBLE 8
+
+#define ACE_LACKS_SYSTIME_H
+// Platform supports getpagesize() call.
+#define ACE_HAS_GETPAGESIZE
+#define IRIX5
+#define ACE_HAS_SIGWAIT
+#define ACE_HAS_DIRENT
+
+// Optimize ACE_Handle_Set for select().
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+
+// Platform supports System V IPC (most versions of UNIX, but not Win32)
+#define ACE_HAS_SYSV_IPC
+
+// Platform requires void * for mmap().
+#define ACE_HAS_VOIDPTR_MMAP
+
+// Platform supports recvmsg and sendmsg.
+#define ACE_HAS_MSG
+
+// Compiler/platform contains the <sys/syscall.h> file.
+#define ACE_HAS_SYSCALL_H
+
+// Compiler/platform supports alloca()
+#define ACE_HAS_ALLOCA
+
+// Compiler/platform has <alloca.h>
+#define ACE_HAS_ALLOCA_H
+
+// IRIX5 needs to define bzero() in this odd file <bstring.h>
+#define ACE_HAS_BSTRING
+
+// Compiler/platform has the getrusage() system call.
+#define ACE_HAS_GETRUSAGE
+
+// Denotes that GNU has cstring.h as standard
+// which redefines memchr()
+#define ACE_HAS_GNU_CSTRING_H
+
+// Platform supports POSIX O_NONBLOCK semantics.
+#define ACE_HAS_POSIX_NONBLOCK
+
+// Platform supports POSIX timers via timestruc_t.
+#define ACE_HAS_POSIX_TIME
+
+// Compiler/platform has correctly prototyped header files.
+#define ACE_HAS_CPLUSPLUS_HEADERS
+
+// Platform contains <poll.h>.
+#define ACE_HAS_POLL
+
+// Platform supports the /proc file system.
+#define ACE_HAS_PROC_FS
+
+// Compiler/platform defines the sig_atomic_t typedef.
+#define ACE_HAS_SIG_ATOMIC_T
+
+// Platform supports SVR4 extended signals.
+#define ACE_HAS_SIGINFO_T
+#define ACE_HAS_UCONTEXT_T
+
+// Compiler supports the ssize_t typedef.
+#define ACE_HAS_SSIZE_T
+
+// Platform supports STREAMS.
+#define ACE_HAS_STREAMS
+
+// Platform supports STREAM pipes (note that this is disabled by
+// default, see the manual page on pipe(2) to find out how to enable
+// it).
+// #define ACE_HAS_STREAM_PIPES
+
+// Compiler/platform supports strerror ().
+#define ACE_HAS_STRERROR
+
+// Compiler/platform supports struct strbuf.
+#define ACE_HAS_STRBUF_T
+
+// Compiler/platform supports SVR4 dynamic linking semantics.
+#define ACE_HAS_SVR4_DYNAMIC_LINKING
+
+// Compiler/platform supports SVR4 signal typedef.
+#define ACE_HAS_IRIX_53_SIGNALS
+
+// Compiler/platform supports sys_siglist array.
+// #define ACE_HAS_SYS_SIGLIST
+
+// Platform provides <sys/filio.h> header.
+#define ACE_HAS_SYS_FILIO_H
+
+// Compiler/platform defines a union semun for SysV shared memory.
+#define ACE_HAS_SEMUN
+
+// Platform supports IP multicast
+#define ACE_HAS_IP_MULTICAST
+
+// Turns off the tracing feature.
+#if !defined (ACE_NTRACE)
+# define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-irix5.3-sgic++.h b/ace/config-irix5.3-sgic++.h
new file mode 100644
index 00000000000..269bab43bb6
--- /dev/null
+++ b/ace/config-irix5.3-sgic++.h
@@ -0,0 +1,123 @@
+/* -*- C++ -*- */
+// $Id$
+
+// The following configuration file is designed to work
+// for the SGI Indigo2EX running Irix 5.3 platform using
+// the SGI C++ Compiler.
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+#define IRIX5
+
+#include <sys/bsd_types.h>
+#define _BSD_TYPES
+
+#define ACE_SIZEOF_LONG_DOUBLE 8
+
+#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_LACKS_SYSTIME_H
+#define ACE_HAS_SIGWAIT
+
+// Platform supports System V IPC (most versions of UNIX, but not Win32)
+#define ACE_HAS_SYSV_IPC
+
+// Platform requires void * for mmap().
+#define ACE_HAS_VOIDPTR_MMAP
+
+// Platform supports recvmsg and sendmsg.
+#define ACE_HAS_MSG
+
+// Compiler/platform contains the <sys/syscall.h> file.
+#define ACE_HAS_SYSCALL_H
+
+// Compiler/platform supports alloca()
+#define ACE_HAS_ALLOCA
+
+// Compiler/platform has <alloca.h>
+#define ACE_HAS_ALLOCA_H
+
+// IRIX5 needs to define bzero() in this odd file <bstring.h>
+#define ACE_HAS_BSTRING
+
+// Compiler/platform has the getrusage() system call.
+#define ACE_HAS_GETRUSAGE
+
+// Platform supports POSIX O_NONBLOCK semantics.
+#define ACE_HAS_POSIX_NONBLOCK
+
+// Platform supports POSIX timers via timestruc_t.
+#define ACE_HAS_POSIX_TIME
+
+// Compiler/platform has correctly prototyped header files.
+#define ACE_HAS_CPLUSPLUS_HEADERS
+
+// Platform contains <poll.h>.
+#define ACE_HAS_POLL
+
+// No multi-threading so use poll() call
+// - for easier debugging, if nothing else
+// #define ACE_USE_POLL
+
+// Platform supports the /proc file system.
+// #define ACE_HAS_PROC_FS
+
+// Compiler/platform defines the sig_atomic_t typedef.
+#define ACE_HAS_SIG_ATOMIC_T
+
+// Platform supports SVR4 extended signals.
+#define ACE_HAS_SIGINFO_T
+// #define ACE_HAS_UCONTEXT_T
+#define ACE_LACKS_UCONTEXT_H
+
+// Compiler supports the ssize_t typedef.
+#define ACE_HAS_SSIZE_T
+
+// Platform supports STREAMS.
+#define ACE_HAS_STREAMS
+
+// Platform supports STREAM pipes (note that this is disabled by
+// default, see the manual page on pipe(2) to find out how to enable
+// it).
+// #define ACE_HAS_STREAM_PIPES
+
+// Compiler/platform supports strerror ().
+#define ACE_HAS_STRERROR
+
+// Compiler/platform supports struct strbuf.
+#define ACE_HAS_STRBUF_T
+
+// Compiler/platform supports SVR4 dynamic linking semantics.
+#define ACE_HAS_SVR4_DYNAMIC_LINKING
+
+// Compiler/platform supports SVR4 signal typedef.
+#define ACE_HAS_IRIX_53_SIGNALS
+
+// Compiler/platform supports sys_siglist array.
+// #define ACE_HAS_SYS_SIGLIST
+
+// Platform provides <sys/filio.h> header.
+#define ACE_HAS_SYS_FILIO_H
+
+// Compiler/platform defines a union semun for SysV shared memory.
+#define ACE_HAS_SEMUN
+
+// Platform supports IP multicast
+#define ACE_HAS_IP_MULTICAST
+
+#define ACE_NEEDS_DEV_IO_CONVERSION
+
+// Turns off the tracing feature.
+#if !defined (ACE_NTRACE)
+# define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-irix6.5.x-sgic++.h b/ace/config-irix6.5.x-sgic++.h
new file mode 100644
index 00000000000..a2f0f328b0a
--- /dev/null
+++ b/ace/config-irix6.5.x-sgic++.h
@@ -0,0 +1,18 @@
+// -*- C++ -*-
+// $Id$
+
+// Use this file for IRIX 6.5.x
+
+#ifndef ACE_CONFIG_IRIX65X_H
+#define ACE_CONFIG_IRIX65X_H
+#include "ace/pre.h"
+
+// Include IRIX 6.[234] configuration
+#include "ace/config-irix6.x-sgic++.h"
+
+// Irix 6.5 man pages show that they exist
+#undef ACE_LACKS_CONDATTR_PSHARED
+#undef ACE_LACKS_MUTEXATTR_PSHARED
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_IRIX65X_H */
diff --git a/ace/config-irix6.x-common.h b/ace/config-irix6.x-common.h
new file mode 100644
index 00000000000..aa4e58d496f
--- /dev/null
+++ b/ace/config-irix6.x-common.h
@@ -0,0 +1,169 @@
+/* -*- C++ -*- */
+//
+// $Id$
+//
+// This file contains the common configuration options for both
+// SGI/MIPSPro C++ and g++ under IRIX 6.X
+//
+#ifndef ACE_CONFIG_IRIX6X_COMMON_H
+
+#if !(defined(ACE_CONFIG_H) || defined(ACE_CONFIG_IRIX6X_NTHR_H))
+#error "This file may only be included via config.h or config-irix6.x-nothreads.h"
+#endif
+
+#if (defined(ACE_CONFIG_H) && defined(ACE_CONFIG_IRIX6X_NTHR_H))
+#error "May only be included via config.h *OR* config-irix6.x-nothreads.h, not both!"
+#endif
+
+// The Irix 6.x float.h doesn't allow us to distinguish between a
+// double and a long double. So, we have to hard-code this. Thanks
+// to Bob Laferriere <laferrie@gsao.med.ge.com> for figuring it out.
+#if defined (_MIPS_SIM) /* 6.X System */
+# include <sgidefs.h>
+# if defined (__GNUC__) /* GNU Compiler reports long doubles as 8 bytes */
+# define ACE_SIZEOF_LONG_DOUBLE 8
+# elif defined (_MIPS_SIM_NABI32) && (_MIPS_SIM == _MIPS_SIM_NABI32)
+# define ACE_SIZEOF_LONG_DOUBLE 16
+# elif defined (_MIPS_SIM_ABI32) && (_MIPS_SIM == _MIPS_SIM_ABI32)
+# define ACE_SIZEOF_LONG_DOUBLE 8
+# elif defined (_MIPS_SIM_ABI64) && (_MIPS_SIM == _MIPS_SIM_ABI64)
+# define ACE_SIZEOF_LONG_DOUBLE 16
+# elif !defined (ACE_SIZEOF_LONG_DOUBLE)
+# define ACE_SIZEOF_LONG_DOUBLE 8
+# endif
+#else
+# define ACE_SIZEOF_LONG_DOUBLE 8 /* 5.3 System */
+#endif
+
+// petern, Next part of it:
+
+// Platform supports getpagesize() call.
+#define ACE_HAS_GETPAGESIZE
+
+// Platform has no implementation of pthread_condattr_setpshared(),
+// even though it supports pthreads! (like Irix 6.2)
+#define ACE_LACKS_CONDATTR_PSHARED
+#define ACE_LACKS_MUTEXATTR_PSHARED
+
+// Platform/compiler has the sigwait(2) prototype
+#define ACE_HAS_SIGWAIT
+#define ACE_HAS_SIGTIMEDWAIT
+#define ACE_HAS_SIGSUSPEND
+
+// Platform supports System V IPC (most versions of UNIX, but not Win32)
+#define ACE_HAS_SYSV_IPC
+
+// Platform requires void * for mmap().
+#define ACE_HAS_VOIDPTR_MMAP
+
+// Platform supports recvmsg and sendmsg.
+#define ACE_HAS_MSG
+
+// Compiler/platform contains the <sys/syscall.h> file.
+#define ACE_HAS_SYSCALL_H
+
+// Compiler/platform supports alloca()
+#define ACE_HAS_ALLOCA
+
+// Compiler/platform has <alloca.h>
+#define ACE_HAS_ALLOCA_H
+
+// Irix needs to define bzero() in this odd file <bstring.h>
+#define ACE_HAS_BSTRING
+
+// Compiler/platform has the getrusage() system call.
+#define ACE_HAS_GETRUSAGE
+
+// Platform supports POSIX O_NONBLOCK semantics.
+#define ACE_HAS_POSIX_NONBLOCK
+
+// Compiler/platform has correctly prototyped header files.
+#define ACE_HAS_CPLUSPLUS_HEADERS
+
+// Platform contains <poll.h>.
+#define ACE_HAS_POLL
+
+// No multi-threading so use poll() call
+// - for easier debugging, if nothing else
+// #define ACE_USE_POLL
+
+// Platform supports the /proc file system.
+#define ACE_HAS_PROC_FS
+
+// Compiler/platform defines the sig_atomic_t typedef.
+#define ACE_HAS_SIG_ATOMIC_T
+
+// Platform supports SVR4 extended signals.
+#define ACE_HAS_SIGINFO_T
+#define ACE_HAS_UCONTEXT_T
+
+// Compiler supports the ssize_t typedef.
+#define ACE_HAS_SSIZE_T
+
+// Platform supports STREAMS.
+#define ACE_HAS_STREAMS
+
+// Platform supports STREAM pipes (note that this is disabled by
+// default, see the manual page on pipe(2) to find out how to enable
+// it).
+// #define ACE_HAS_STREAM_PIPES
+
+// Compiler/platform supports strerror ().
+#define ACE_HAS_STRERROR
+
+// Compiler/platform supports struct strbuf.
+#define ACE_HAS_STRBUF_T
+
+// Compiler/platform supports SVR4 dynamic linking semantics.
+#define ACE_HAS_SVR4_DYNAMIC_LINKING
+
+// Platform provides <sys/filio.h> header.
+#define ACE_HAS_SYS_FILIO_H
+
+// Compiler/platform defines a union semun for SysV shared memory.
+#define ACE_HAS_SEMUN
+
+// Platform supports IP multicast
+#define ACE_HAS_IP_MULTICAST
+
+#define ACE_HAS_STRPTIME
+
+//**************************************************************
+// Not so sure how next lines should look like
+
+// Platform supports POSIX timers via timestruc_t.
+#define ACE_HAS_POSIX_TIME
+#define ACE_LACKS_SYSTIME_H
+
+//**************************************************************
+
+// IRIX 6.4 and below do not support reentrant netdb functions
+// (getprotobyname_r, getprotobynumber_r, gethostbyaddr_r,
+// gethostbyname_r, getservbyname_r).
+#if ACE_IRIX_VERS <= 64 && !defined (ACE_HAS_NETDB_REENTRANT_FUNCTIONS)
+#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS
+#endif /* ACE_HAS_NETDB_REENTRANT_FUNCTIONS */
+
+#define ACE_HAS_DIRENT
+// Unless the thread enabled version is used the readdir_r interface
+// does not get defined in IRIX 6.2
+#define ACE_LACKS_READDIR_R
+#define ACE_LACKS_RWLOCK_T
+
+#define ACE_HAS_GPERF
+
+#define ACE_HAS_NONCONST_SELECT_TIMEVAL
+#define ACE_HAS_BROKEN_DGRAM_SENDV
+
+// Turns off the tracing feature.
+#if !defined (ACE_NTRACE)
+# define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+
+#define ACE_LACKS_PLACEMENT_OPERATOR_DELETE
+#define ACE_PI_CONTROL_BLOCK_ALIGN_LONGS 2
+
+// Enables use of POSIX termios struct
+#define ACE_USES_NEW_TERMIOS
+
+#endif /* ACE_CONFIG_IRIX6X_COMMON_H */
diff --git a/ace/config-irix6.x-g++.h b/ace/config-irix6.x-g++.h
new file mode 100644
index 00000000000..1317197244e
--- /dev/null
+++ b/ace/config-irix6.x-g++.h
@@ -0,0 +1,54 @@
+/* -*- C++ -*- */
+// $Id$
+
+// The following configuration file is designed to work for the SGI
+// Indigo2EX running Irix 6.2 platform using the GNU C++ Compiler
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+// config-g++-common.h undef's ACE_HAS_STRING_CLASS with -frepo, so
+// this must appear before its #include.
+#define ACE_HAS_STRING_CLASS
+
+#include "ace/config-g++-common.h"
+
+// Platform supports the very odd IRIX 6.2 threads...
+#define ACE_HAS_THREADS
+#if !defined (ACE_MT_SAFE)
+# define ACE_MT_SAFE 1
+#endif /* !ACE_MT_SAFE */
+#define ACE_HAS_IRIX62_THREADS
+
+// IRIX 6.2 supports a variant of POSIX Pthreads, supposedly POSIX 1c
+#define ACE_HAS_PTHREADS
+#define ACE_HAS_PTHREADS_STD
+
+#include "ace/config-irix6.x-common.h"
+
+// Needed for the threading stuff?
+#include /**/ <sched.h>
+#include /**/ <task.h>
+
+#define PTHREAD_MIN_PRIORITY PX_PRIO_MIN
+#define PTHREAD_MAX_PRIORITY PX_PRIO_MAX
+
+// Compiler/platform has thread-specific storage
+#define ACE_HAS_THREAD_SPECIFIC_STORAGE
+
+#define IRIX6
+
+// Denotes that GNU has cstring.h as standard
+// which redefines memchr()
+#define ACE_HAS_GNU_CSTRING_H
+
+// Compiler/platform supports SVR4 signal typedef.
+#define ACE_HAS_IRIX_53_SIGNALS
+
+// Compiler/platform supports sys_siglist array.
+//#define ACE_HAS_SYS_SIGLIST
+
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-irix6.x-kcc.h b/ace/config-irix6.x-kcc.h
new file mode 100644
index 00000000000..5b1ba941c69
--- /dev/null
+++ b/ace/config-irix6.x-kcc.h
@@ -0,0 +1,68 @@
+/* -*- C++ -*- */
+// $Id$
+
+// The following configuration file is designed to work for the SGI
+// Indigo2EX running Irix 6.5 platform using the KAI C++ compiler.
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+#include "ace/config-kcc-common.h"
+
+
+// Platform supports the very odd IRIX 6.2 threads...
+#define ACE_HAS_THREADS
+#if !defined (ACE_MT_SAFE)
+# define ACE_MT_SAFE 1
+#endif /* !ACE_MT_SAFE */
+#define ACE_HAS_IRIX62_THREADS
+
+// IRIX 6.2 supports a variant of POSIX Pthreads, supposedly POSIX 1c
+#define ACE_HAS_PTHREADS
+#define ACE_HAS_PTHREADS_STD
+
+#include "ace/config-irix6.x-common.h"
+
+// Needed for the threading stuff?
+#include /**/ <sched.h>
+#include /**/ <task.h>
+
+#define PTHREAD_MIN_PRIORITY PX_PRIO_MIN
+#define PTHREAD_MAX_PRIORITY PX_PRIO_MAX
+
+// Compiler/platform has thread-specific storage
+#define ACE_HAS_THREAD_SPECIFIC_STORAGE
+
+// The pthread_cond_timedwait call does not reset the timer.
+#define ACE_LACKS_COND_TIMEDWAIT_RESET 1
+
+#define ACE_HAS_STRING_CLASS
+#ifndef IRIX6
+# define IRIX6
+#endif
+
+// Denotes that GNU has cstring.h as standard
+// which redefines memchr()
+#define ACE_HAS_GNU_CSTRING_H
+
+// Compiler/platform supports SVR4 signal typedef.
+#define ACE_HAS_IRIX_53_SIGNALS
+
+#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
+
+// Compiler/platform supports sys_siglist array.
+//#define ACE_HAS_SYS_SIGLIST
+
+// This gets defined in config-irix6.x-common.h, but kcc does support this.
+#undef ACE_LACKS_PLACEMENT_OPERATOR_DELETE
+
+// Shift this --- otherwise, it lands on top of libKCC.
+#define ACE_DEFAULT_BASE_ADDR ((char*) 0x0500000)
+
+// kcc 4.0d miscompiles memchr_emulation on irix at +K3 optimization.
+// So just use the library version instead.
+#define ACE_HAS_MEMCHR
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-irix6.x-sgic++-nothreads.h b/ace/config-irix6.x-sgic++-nothreads.h
new file mode 100644
index 00000000000..bc4740e96d4
--- /dev/null
+++ b/ace/config-irix6.x-sgic++-nothreads.h
@@ -0,0 +1,95 @@
+/* -*- C++ -*- */
+// $Id$
+
+// This is the config file for IRIX 6.2, 6.4 and hopefully 6.3, using
+// the SGI C++ compiler (7.1 or higher).
+
+// For IRIX 6.2 there are several patches that should be applied to
+// get reliable operation with multi-threading and exceptions.
+// Specifically you should get a reasonable current IRIX, Compiler
+// and POSIX patch-sets.
+
+// For IRIX 6.[34] it's less critical, but it's still recommended
+// that you apply the applicable patch-sets (IRIX and Compiler I believe).
+
+// These patches are updated frequently, so you should ask your support
+// contact or search SGI's web site (http://www.sgi.com) for the latest
+// version.
+
+// Since this files gets included from config-irix6.x-sgic++.h we
+// cannot use ACE_CONFIG_H here.
+#ifndef ACE_CONFIG_IRIX6X_NTHR_H
+#define ACE_CONFIG_IRIX6X_NTHR_H
+#include "ace/pre.h"
+
+// Include this file to set the _MIPS_SIM*ABI* macros.
+#include /**/ <sgidefs.h>
+#include "ace/config-irix6.x-common.h"
+
+#define ACE_HAS_SGIDLADD
+#define ACE_HAS_P_READ_WRITE
+#define ACE_LACKS_LINEBUFFERED_STREAMBUF
+#define ACE_HAS_SETOWN
+#define ACE_HAS_SYSENT_H
+#define ACE_HAS_SYSINFO
+#define ACE_HAS_UALARM
+
+// Platform has support for multi-byte character support compliant
+// with the XPG4 Worldwide Portability Interface wide-character
+// classification.
+#define ACE_HAS_XPG4_MULTIBYTE_CHAR
+
+// We need to setup a very high address or Naming_Test won't run.
+#define ACE_DEFAULT_BASE_ADDR ((char *) (1024U * 1024 * 1024))
+
+#define ACE_LACKS_SIGNED_CHAR
+
+// Platform supports reentrant functions (i.e., all the POSIX *_r
+// functions).
+#define ACE_HAS_REENTRANT_FUNCTIONS
+
+// Optimize ACE_Handle_Set for select().
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+
+// Platform has terminal ioctl flags like TCGETS and TCSETS.
+#define ACE_HAS_TERM_IOCTLS
+
+// Platform does not support reentrant password file accessor functiions.
+#define ACE_LACKS_PWD_REENTRANT_FUNCTIONS
+
+// uses ctime_r & asctime_r with only two parameters vs. three
+#define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R
+
+// Prototypes for both signal() and struct sigaction are consistent.
+#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
+
+
+// The following three should be enabled/disabled together.
+#if _COMPILER_VERSION >= 720
+#define ACE_HAS_TEMPLATE_SPECIALIZATION
+#define ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION
+#define ACE_HAS_USING_KEYWORD
+# ifdef _STANDARD_C_PLUS_PLUS
+# define ACE_HAS_STD_TEMPLATE_SPECIALIZATION
+# define ACE_HAS_TYPENAME_KEYWORD
+# endif /* _STANDARD_C_PLUS_PLUS */
+#else
+#define ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA
+#endif /* _COMPILER_VERSION >= 720 */
+#define ACE_TEMPLATES_REQUIRE_SOURCE
+#define ACE_NEEDS_FUNC_DEFINITIONS
+
+// Platform supports STREAM pipes (note that this is disabled by
+// default, see the manual page on pipe(2) to find out how to enable
+// it).
+// #define ACE_HAS_STREAM_PIPES
+
+#if defined (_COMPILER_VERSION)
+# define ACE_CC_NAME "SGI/MIPSPro"
+# define ACE_CC_MAJOR_VERSION (_COMPILER_VERSION / 100)
+# define ACE_CC_MINOR_VERSION (_COMPILER_VERSION % 100)
+# define ACE_CC_BETA_VERSION (0)
+#endif /* _COMPILER_VERSION */
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_IRIX6X_NTHR_H */
diff --git a/ace/config-irix6.x-sgic++.h b/ace/config-irix6.x-sgic++.h
new file mode 100644
index 00000000000..06001f1ca2f
--- /dev/null
+++ b/ace/config-irix6.x-sgic++.h
@@ -0,0 +1,59 @@
+/* -*- C++ -*- */
+// $Id$
+
+// Use this file for IRIX 6.[234] if you have the pthreads patches
+// installed.
+
+#ifndef ACE_CONFIG_IRIX6X_H
+#define ACE_CONFIG_IRIX6X_H
+#include "ace/pre.h"
+
+// Include basic (non-threaded) configuration
+#include "ace/config-irix6.x-sgic++-nothreads.h"
+
+#define ACE_HAS_UALARM
+
+// Scheduling functions are declared in <sched.h>
+#define ACE_NEEDS_SCHED_H
+
+// Compile using multi-thread libraries by default
+#if !defined (ACE_MT_SAFE)
+ #define ACE_MT_SAFE 1
+#endif /* ACE_MT_SAFE */
+
+#if (ACE_MT_SAFE != 0)
+
+// Add threading support
+
+#define ACE_HAS_IRIX62_THREADS
+
+// Needed for the threading stuff?
+#include /**/ <task.h>
+#define PTHREAD_MIN_PRIORITY PX_PRIO_MIN
+#define PTHREAD_MAX_PRIORITY PX_PRIO_MAX
+
+// ACE supports threads.
+#define ACE_HAS_THREADS
+
+// Platform has no implementation of pthread_condattr_setpshared(),
+// even though it supports pthreads! (like Irix 6.2)
+#define ACE_LACKS_CONDATTR_PSHARED
+#define ACE_LACKS_MUTEXATTR_PSHARED
+
+// IRIX 6.2 supports a variant of POSIX Pthreads, supposedly POSIX 1c
+#define ACE_HAS_PTHREADS
+#define ACE_HAS_PTHREADS_STD
+
+// Compiler/platform has thread-specific storage
+#define ACE_HAS_THREAD_SPECIFIC_STORAGE
+
+// The pthread_cond_timedwait call does not reset the timer.
+#define ACE_LACKS_COND_TIMEDWAIT_RESET 1
+
+// When threads are enabled READDIR_R is supported on IRIX.
+#undef ACE_LACKS_READDIR_R
+
+#endif /* (ACE_MT_SAFE == 0) */
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_IRIX6X_H */
diff --git a/ace/config-kcc-common.h b/ace/config-kcc-common.h
new file mode 100644
index 00000000000..3f0b9c6d00b
--- /dev/null
+++ b/ace/config-kcc-common.h
@@ -0,0 +1,76 @@
+/* -*- C++ -*- */
+// $Id$
+
+// This configuration file is designed to be included by another,
+// specific configuration file. It provides config information common
+// to all KAI C++ platforms (KCC version 3.3a).
+//
+// KAI C++ 3.2d for Linux had a known problem with being unable to call
+// static object constructors and destructors within shared libraries.
+//
+// KAI C++ 3.3a requires glibc 2. This configuration was tested with
+// egcs 1.0.2 and glibc-2.0.7-7. The KCC_BASE/bin/KCC script requires
+// the following settings for i386-linux to work:
+//
+//case i386-linux:
+// set common_na = "-Dlinux -Dunix -Di386"
+// set cpp_defines = "-D__CPLUSPLUS -D__inline__=inline -D__inline=inline -D__signed__=signed"
+// set c_defines = "-D__inline__= -D__inline= -D__signed__=signed"
+// set knr_c_defines = "-D__inline__= -D__inline= -D__signed__="
+// set ansi_c_defines = ""
+// breaksw
+//
+
+#ifndef ACE_KCC_COMMON_H
+#define ACE_KCC_COMMON_H
+#include "ace/pre.h"
+
+#if (defined (i386) || defined (__i386__)) && !defined (ACE_SIZEOF_LONG_DOUBLE)
+# define ACE_SIZEOF_LONG_DOUBLE 12
+#endif /* i386 */
+
+#if defined (i386) || defined (__i386__)
+ // If running an Intel, assume that it's a Pentium so that
+ // ACE_OS::gethrtime () can use the RDTSC instruction. If
+ // running a 486 or lower, be sure to comment this out.
+ // (If not running an Intel CPU, this #define will not be seen
+ // because of the i386 protection, so it can be ignored.)
+# define ACE_HAS_PENTIUM
+#endif /* i386 */
+
+// ****** Need to move this somewhere else
+// #define TAO_YY_BREAK
+
+#define ACE_SIZEOF_LONG_LONG 8
+#define ACE_TEMPLATES_REQUIRE_SOURCE
+
+#define ACE_HAS_TEMPLATE_SPECIALIZATION
+#define ACE_HAS_STD_TEMPLATE_SPECIALIZATION
+#define ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION
+
+// Compiler doesn't support static data member templates.
+//#define ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES
+
+#define ACE_HAS_USING_KEYWORD
+
+// Define this if you want to use the standard C++ library
+#define ACE_HAS_STANDARD_CPP_LIBRARY 1
+#define ACE_HAS_STRING_CLASS
+#define ACE_HAS_STDCPP_STL_INCLUDES 1
+#define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
+#define ACE_LACKS_IOSTREAM_FX 1
+#define ACE_LACKS_LINEBUFFERED_STREAMBUF 1
+#define ACE_LACKS_UNBUFFERED_STREAMBUF 1
+#define ACE_HAS_EXCEPTIONS 1
+#define ACE_HAS_CPLUSPLUS_HEADERS
+#define ACE_NEW_THROWS_EXCEPTIONS
+
+// __KCC_VERSION is not defined before 3.4.
+#if !defined (__KCC_VERSION)
+#define ACE_AUTO_PTR_LACKS_RESET
+#endif /* !__KCC_VERSION */
+
+//#define ACE_HAS_NONSTATIC_OBJECT_MANAGER 1
+
+#include "ace/post.h"
+#endif /* ACE_KCC_COMMON_H */
diff --git a/ace/config-linux-common.h b/ace/config-linux-common.h
new file mode 100644
index 00000000000..68f88090490
--- /dev/null
+++ b/ace/config-linux-common.h
@@ -0,0 +1,279 @@
+/* -*- C++ -*- */
+// $Id$
+
+// Do not use this configuration file directly since it's designed to
+// be included by another, specific configuration file, such as
+// config-linux.h. It provides config information common to all Linux
+// platforms. It automatically determines the CPU architecture,
+// compiler (g++ or egcs), and libc (libc5 or glibc), and configures
+// based on those.
+
+#ifndef ACE_LINUX_COMMON_H
+#define ACE_LINUX_COMMON_H
+#include "ace/pre.h"
+
+#define ACE_HAS_BYTESEX_H
+
+#if ! defined (__ACE_INLINE__)
+#define __ACE_INLINE__
+#endif /* ! __ACE_INLINE__ */
+
+// Needed to make some prototypes visible.
+// #if ! defined (_GNU_SOURCE)
+// #define _GNU_SOURCE
+// #endif /* ! _GNU_SOURCE */
+
+// Needed to differentiate between libc 5 and libc 6 (aka glibc).
+// It's there on all libc 5 systems I checked.
+#include <features.h>
+
+
+// First the machine specific part
+
+#if defined (__alpha)
+ // This is necessary on Alphas with glibc 2.0.7-13.
+# define ACE_POLL_IS_BROKEN
+#elif defined (__powerpc__)
+# if !defined (ACE_DEFAULT_BASE_ADDR)
+# define ACE_DEFAULT_BASE_ADDR ((char *) 0x40000000)
+# endif /* ! ACE_DEFAULT_BASE_ADDR */
+#elif defined (__ia64)
+# if !defined (ACE_DEFAULT_BASE_ADDR)
+# define ACE_DEFAULT_BASE_ADDR ((char *) 0x8000000000000000)
+# endif /* ! ACE_DEFAULT_BASE_ADDR */
+#endif /* ! __alpha && ! __powerpc__ && ! __ia64 */
+
+// Then glibc/libc5 specific parts
+
+#if defined(__GLIBC__)
+# define ACE_HAS_BROKEN_SETRLIMIT
+# define ACE_HAS_RUSAGE_WHO_ENUM enum __rusage_who
+# define ACE_HAS_RLIMIT_RESOURCE_ENUM enum __rlimit_resource
+# define ACE_HAS_SOCKLEN_T
+# define ACE_HAS_4_4BSD_SENDMSG_RECVMSG
+
+ // To avoid the strangeness with Linux's ::select (), which modifies
+ // its timeout argument, use ::poll () instead.
+# define ACE_HAS_POLL
+
+// Don't define _XOPEN_SOURCE and _XOPEN_SOURCE_EXTENDED in ACE to make
+// getpgid() prototype visible. ACE shouldn't depend on feature test
+// macros to make prototypes visible.
+# define ACE_LACKS_GETPGID_PROTOTYPE
+
+// NOTE: the following defines are necessary with glibc 2.0 (0.961212-5)
+// on Alpha. I assume that they're necessary on Intel as well,
+// but that may depend on the version of glibc that is used.
+//# define ACE_HAS_DLFCN_H_BROKEN_EXTERN_C
+# define ACE_HAS_VOIDPTR_SOCKOPT
+# define ACE_LACKS_SYSTIME_H
+
+// Don't define _POSIX_SOURCE in ACE to make strtok() prototype
+// visible. ACE shouldn't depend on feature test macros to make
+// prototypes visible.
+# define ACE_LACKS_STRTOK_R_PROTOTYPE
+// NOTE: end of glibc 2.0 (0.961212-5)-specific configuration.
+
+# if __GLIBC__ > 1 && __GLIBC_MINOR__ >= 1
+ // These were suggested by Robert Hanzlik <robi@codalan.cz> to get
+ // ACE to compile on Linux using glibc 2.1 and libg++/gcc 2.8.
+# undef ACE_HAS_BYTESEX_H
+# define ACE_HAS_SIGINFO_T
+# define ACE_LACKS_SIGINFO_H
+# define ACE_HAS_UCONTEXT_T
+
+ // Pre-glibc (RedHat 5.2) doesn't have sigtimedwait.
+# define ACE_HAS_SIGTIMEDWAIT
+# endif /* __GLIBC__ 2.1+ */
+#else /* ! __GLIBC__ */
+ // Fixes a problem with some non-glibc versions of Linux...
+# define ACE_LACKS_MADVISE
+# define ACE_LACKS_MSG_ACCRIGHTS
+#endif /* ! __GLIBC__ */
+
+// Don't define _LARGEFILE64_SOURCE in ACE to make llseek() or
+// lseek64() prototype visible. ACE shouldn't depend on feature test
+// macros to make prototypes visible.
+#if __GLIBC__ > 1
+# if __GLIBC_MINOR__ == 0
+# define ACE_HAS_LLSEEK
+# define ACE_LACKS_LLSEEK_PROTOTYPE
+# else /* __GLIBC_MINOR__ > 0 */
+# define ACE_HAS_LSEEK64
+# define ACE_LACKS_LSEEK64_PROTOTYPE
+# endif
+#endif /* __GLIBC__ > 1 */
+
+#if __GLIBC__ > 1 && __GLIBC_MINOR__ >= 1
+# define ACE_HAS_P_READ_WRITE
+# define ACE_LACKS_PREAD_PROTOTYPE
+// Use ACE's alternate cuserid() implementation since the use of the
+// system cuserid() is discouraged.
+# define ACE_HAS_ALT_CUSERID
+#endif /* __GLIBC__ > 1 && __GLIBC_MINOR__ >= 0 */
+
+
+// Then the compiler specific parts
+
+#if defined (__GNUG__)
+ // config-g++-common.h undef's ACE_HAS_STRING_CLASS with -frepo, so
+ // this must appear before its #include.
+# define ACE_HAS_STRING_CLASS
+# include "ace/config-g++-common.h"
+#elif defined (__KCC)
+# define ACE_HAS_STRING_CLASS
+# undef ACE_HAS_LLSEEK
+# undef ACE_HAS_LSEEK64
+# undef ACE_LACKS_LLSEEK_PROTOTYPE
+# undef ACE_LACKS_LSEEK64_PROTOTYPE
+# include "ace/config-kcc-common.h"
+#elif defined (__DECCXX)
+# define ACE_CONFIG_INCLUDE_CXX_COMMON
+# include "ace/config-cxx-common.h"
+#else /* ! __GNUG__ && ! __KCC && !__DECCXX */
+# error unsupported compiler in ace/config-linux-common.h
+#endif /* ! __GNUG__ && ! __KCC */
+
+// Completely common part :-)
+
+// Platform/compiler has the sigwait(2) prototype
+# define ACE_HAS_SIGWAIT
+
+# define ACE_HAS_SIGSUSPEND
+
+// However, sigqueue-ing things across threads does not work (at least
+// prior to the 2.4 kernel) so unless the user has specifically requested
+// the POSIX_SIG_PROACTOR, use the AIOCB version to avoid this problem.
+# if !defined (ACE_POSIX_SIG_PROACTOR)
+# define ACE_POSIX_AIOCB_PROACTOR
+# endif /* ACE_POSIX_SIG_PROACTOR */
+
+// Some misc wide character stuff
+# define ACE_LACKS_WCSDUP_PROTOTYPE
+
+// Linux has wcstok, but not the kind we are looking for.
+# define ACE_LACKS_WCSTOK
+
+#define ACE_LACKS_ITOW
+#define ACE_LACKS_WCSICMP
+#define ACE_LACKS_WCSNICMP
+
+#if !defined (ACE_DEFAULT_BASE_ADDR)
+# define ACE_DEFAULT_BASE_ADDR ((char *) 0x80000000)
+#endif /* ! ACE_DEFAULT_BASE_ADDR */
+
+// Compiler/platform supports alloca().
+#define ACE_HAS_ALLOCA
+
+// Compiler/platform has <alloca.h>
+#define ACE_HAS_ALLOCA_H
+
+// Compiler/platform has the getrusage() system call.
+#define ACE_HAS_GETRUSAGE
+#define ACE_HAS_GETRUSAGE_PROTO
+
+#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
+
+// Optimize ACE_Handle_Set for select().
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+
+// ONLY define this if you have config'd multicast into a 2.0.34 or
+// prior kernel. It is enabled by default in 2.0.35 kernels.
+#if !defined (ACE_HAS_IP_MULTICAST)
+# define ACE_HAS_IP_MULTICAST
+#endif /* ! ACE_HAS_IP_MULTICAST */
+
+#define ACE_HAS_BIG_FD_SET
+
+// Linux defines struct msghdr in /usr/include/socket.h
+#define ACE_HAS_MSG
+
+// Linux "improved" the interface to select() so that it modifies
+// the struct timeval to reflect the amount of time not slept
+// (see NOTES in Linux's select(2) man page).
+#define ACE_HAS_NONCONST_SELECT_TIMEVAL
+
+#define ACE_HAS_TERM_IOCTLS
+
+#define ACE_DEFAULT_MAX_SOCKET_BUFSIZ 65535
+
+#define ACE_HAS_GETPAGESIZE 1
+
+#if (__GLIBC__ < 2) || (__GLIBC__ == 2 && __GLIBC_MINOR__ < 2)
+ // GLIBC 2.2 and higher doesn't need this macro any more.
+ // Platform lacks POSIX prototypes for certain System V functions
+ // like shared memory and message queues.
+# define ACE_LACKS_SOME_POSIX_PROTOTYPES
+#endif
+
+// glibc supports the mkstemp() function.
+#define ACE_HAS_MKSTEMP
+
+// glibc requires _XOPEN_SOURCE_EXTENDED to make this prototype
+// visible, so force ACE to declare one. Yuk!
+#define ACE_LACKS_MKSTEMP_PROTOTYPE
+
+// Platform defines struct timespec but not timespec_t
+#define ACE_LACKS_TIMESPEC_T
+
+#define ACE_LACKS_STRRECVFD
+
+//#define ACE_LACKS_MSYNC
+
+// A conflict appears when including both <ucontext.h> and
+// <sys/procfs.h> with recent glibc headers.
+//#define ACE_HAS_PROC_FS
+
+// Platform supports System V IPC (most versions of UNIX, but not Win32)
+#define ACE_HAS_SYSV_IPC
+
+// Compiler/platform contains the <sys/syscall.h> file.
+#define ACE_HAS_SYSCALL_H
+
+#define ACE_HAS_SUNOS4_GETTIMEOFDAY
+
+// Compiler/platform supports strerror ().
+#define ACE_HAS_STRERROR
+
+#define ACE_HAS_STRPTIME
+// Don't define _XOPEN_SOURCE in ACE to make strptime() prototype
+// visible. ACE shouldn't depend on feature test macros to make
+// prototypes visible.
+#define ACE_LACKS_STRPTIME_PROTOTYPE
+
+// Compiler supports the ssize_t typedef.
+#define ACE_HAS_SSIZE_T
+
+// Compiler/platform defines the sig_atomic_t typedef.
+#define ACE_HAS_SIG_ATOMIC_T
+
+// Compiler/platform defines a union semun for SysV shared memory.
+#define ACE_HAS_SEMUN
+
+#define ACE_HAS_POSIX_TIME
+
+#define ACE_HAS_GPERF
+
+#define ACE_HAS_DIRENT
+
+#if defined (__ia64)
+// On 64 bit platforms, the "long" type is 64-bits. Override the
+// default 32-bit platform-specific format specifiers appropriately.
+# define ACE_UINT64_FORMAT_SPECIFIER ACE_LIB_TEXT ("%lu")
+# define ACE_SSIZE_T_FORMAT_SPECIFIER ACE_LIB_TEXT ("%ld")
+# define ACE_SIZE_T_FORMAT_SPECIFIER ACE_LIB_TEXT ("%lu")
+#endif /* __ia64 */
+
+// Turns off the tracing feature.
+#if !defined (ACE_NTRACE)
+# define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+
+#define ACE_SIZEOF_WCHAR 4
+
+#include "ace/post.h"
+
+// Enables use of POSIX termios struct
+#define ACE_USES_NEW_TERMIOS
+
+#endif /* ACE_LINUX_COMMON_H */
diff --git a/ace/config-linux.h b/ace/config-linux.h
new file mode 100644
index 00000000000..ab769089e87
--- /dev/null
+++ b/ace/config-linux.h
@@ -0,0 +1,70 @@
+/* -*- C++ -*- */
+// $Id$
+
+// The following configuration file is designed to work for Linux
+// platforms using GNU C++.
+
+#ifndef ACE_CONFIG_LINUX_H
+#define ACE_CONFIG_LINUX_H
+#include "ace/pre.h"
+
+#include "ace/config-linux-common.h"
+
+#define ACE_HAS_SVR4_DYNAMIC_LINKING
+#define ACE_HAS_AUTOMATIC_INIT_FINI
+
+#if !defined (ACE_MT_SAFE)
+#define ACE_MT_SAFE 1 // JCEJ 12/22/96 #1
+#endif
+
+#if ACE_MT_SAFE
+// Yes, we do have threads.
+#define ACE_HAS_THREADS
+// And they're even POSIX pthreads (LinuxThreads implementation)
+#define ACE_HAS_PTHREADS
+
+// ... and the final standard even!
+#define ACE_HAS_PTHREADS_STD
+#define ACE_HAS_THREAD_SPECIFIC_STORAGE // jcej 12/22/96 #2
+
+#define ACE_LACKS_THREAD_STACK_ADDR // JCEJ 12/17/96
+
+#define ACE_LACKS_RWLOCK_T // JCEJ 12/23/96 #1
+#define ACE_HAS_RECURSIVE_THR_EXIT_SEMANTICS // JCEJ 1/7-8/96
+
+#if defined(__GLIBC__)
+// Platform supports reentrant functions (i.e., all the POSIX *_r
+// functions).
+#define ACE_HAS_REENTRANT_FUNCTIONS
+
+#if (__GLIBC__ < 2) || (__GLIBC__ == 2 && __GLIBC_MINOR__ < 1)
+ // Older versions of glibc lacked reentrant netdb functions
+# define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS
+
+ // glibc < 2.1 lacks pthread_attr_setstacksize()
+# define ACE_LACKS_THREAD_STACK_SIZE
+#endif /* (__GLIBC__ < 2) || (__GLIBC__ == 2 && __GLIBC_MINOR__ < 1) */
+
+// uses ctime_r & asctime_r with only two parameters vs. three
+#define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R
+#endif
+
+#include /**/ <pthread.h>
+
+#if (__GLIBC__ > 2) || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 2)
+ // glibc 2.2.x or better has pthread_mutex_timedlock()
+# define ACE_HAS_MUTEX_TIMEOUTS
+# if !defined (_XOPEN_SOURCE) \
+ || (defined (_XOPEN_SOURCE) && (_XOPEN_SOURCE - 0) < 600)
+// pthread_mutex_timedlock() prototype is not visible if _XOPEN_SOURCE
+// is not >= 600 (i.e. for XPG6).
+extern "C" int pthread_mutex_timedlock (pthread_mutex_t *mutex,
+ const struct timespec * abstime);
+# endif /* _XOPEN_SOURCE && _XOPEN_SOURCE < 600 */
+#endif /* (__GLIBC__ > 2) || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 2) */
+
+#endif /* ACE_MT_SAFE */
+
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_LINUX_H */
diff --git a/ace/config-lynxos.h b/ace/config-lynxos.h
new file mode 100644
index 00000000000..e3282a40d59
--- /dev/null
+++ b/ace/config-lynxos.h
@@ -0,0 +1,183 @@
+// $Id$
+
+// The following configuration file is designed to work for LynxOS,
+// version 2.5.0 and later, using the GNU g++ compiler.
+
+// Note on why ACE_HAS_POSIX_SEM is not #defined:
+// ACE_HAS_POSIX_SEM would cause native LynxOS mutexes and condition
+// variables to be used. But, they don't appear to be intended to be
+// used between processes. Without ACE_HAS_POSIX_SEM, ACE uses
+// semaphores for all synchronization. Those can be used between
+// processes
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+#if ! defined (__ACE_INLINE__)
+# define __ACE_INLINE__
+#endif /* ! __ACE_INLINE__ */
+
+#if defined (__GNUG__)
+# if __GNUC_MINOR__ == 7
+
+# include "ace/config-g++-common.h"
+
+ // The g++ that's distributed with LynxOS 3.0.0 needs this.
+ // It won't hurt with 2.5.0.
+# undef ACE_HAS_TEMPLATE_SPECIALIZATION
+# elif __LYNXOS_SDK_VERSION <= 199603L
+ /* LynxOS <= 2.5.0 */
+ // config-g++-common.h undef's ACE_HAS_STRING_CLASS with -frepo, so
+ // this must appear before its #include.
+
+ // If ACE_HAS_STRING_CLASS is used with LynxOS 3.0.0, some
+ // executables, such as IOStream_Test, require linking with
+ // libg++.
+# define ACE_HAS_STRING_CLASS
+
+# include "ace/config-g++-common.h"
+# endif /* __GNUC_MINOR__ == 7 */
+#endif /* __GNUG__ */
+
+#if defined (__x86__)
+ // PowerPC libraries don't seem to have alloca (), so only use with x86.
+# define ACE_HAS_ALLOCA
+# define ACE_HAS_ALLOCA_H
+# define ACE_HAS_PENTIUM
+#elif defined (__powerpc__)
+ // It looks like the default stack size is 15000.
+ // ACE's Recursive_Mutex_Test needs more.
+# define ACE_NEEDS_HUGE_THREAD_STACKSIZE 65536
+ // This doesn't work on LynxOS 3.0.0, because it resets the TimeBaseRegister.
+ // # define ACE_HAS_POWERPC_TIMER
+#endif /* __x86__ || __powerpc__ */
+
+#define ACE_DEFAULT_BASE_ADDR ((char *) 0)
+#define ACE_HAS_4_4BSD_SENDMSG_RECVMSG
+#define ACE_HAS_AUTOMATIC_INIT_FINI
+#define ACE_HAS_BROKEN_READV
+#define ACE_HAS_BROKEN_SETRLIMIT
+#define ACE_HAS_BROKEN_WRITEV
+#define ACE_HAS_CLOCK_GETTIME
+#define ACE_HAS_CPLUSPLUS_HEADERS
+#define ACE_HAS_DIRENT
+#define ACE_HAS_GETRUSAGE
+#define ACE_HAS_GNU_CSTRING_H
+#define ACE_HAS_GPERF
+#define ACE_HAS_IP_MULTICAST
+#define ACE_HAS_LYNXOS_SIGNALS
+#define ACE_HAS_MSG
+#define ACE_HAS_NONCONST_GETBY
+#define ACE_HAS_NONCONST_SELECT_TIMEVAL
+#define ACE_HAS_POLL
+#define ACE_HAS_POSIX_NONBLOCK
+#define ACE_HAS_POSIX_TIME
+#define ACE_HAS_RECURSIVE_THR_EXIT_SEMANTICS
+#define ACE_HAS_SEMUN
+#define ACE_HAS_SHM_OPEN
+#define ACE_HAS_SIGINFO_T
+#define ACE_HAS_SIGWAIT
+#define ACE_HAS_SIG_ATOMIC_T
+#define ACE_HAS_SOCKIO_H
+#define ACE_HAS_SSIZE_T
+#define ACE_HAS_STRBUF_T
+#define ACE_HAS_STREAMS
+#define ACE_HAS_STRERROR
+#define ACE_HAS_SYSV_IPC
+#define ACE_HAS_SYS_SIGLIST
+#define ACE_HAS_TIMEZONE_GETTIMEOFDAY
+#define ACE_LACKS_CONST_TIMESPEC_PTR
+#define ACE_LACKS_GETHOSTENT
+#define ACE_LACKS_GETOPT_PROTO
+#define ACE_LACKS_GETPGID
+#define ACE_LACKS_SETPGID
+#define ACE_LACKS_SETREGID
+#define ACE_LACKS_SETREUID
+#define ACE_LACKS_MADVISE
+#define ACE_LACKS_MKTEMP
+#define ACE_LACKS_RWLOCK_T
+#define ACE_LACKS_SIGINFO_H
+#define ACE_LACKS_SI_ADDR
+#define ACE_LACKS_SOME_POSIX_PROTOTYPES
+#define ACE_LACKS_STRCASECMP
+#define ACE_LACKS_TIMESPEC_T
+#define ACE_LACKS_UCONTEXT_H
+#define ACE_LACKS_MKSTEMP
+#define ACE_MALLOC_ALIGN 8
+#define ACE_HAS_TYPENAME_KEYWORD
+// Don't use MAP_FIXED, at least for now.
+#define ACE_MAP_FIXED 0
+// LynxOS, through 3.0.0, does not support MAP_PRIVATE, so map it to
+// MAP_SHARED.
+#define ACE_MAP_PRIVATE ACE_MAP_SHARED
+#define ACE_PAGE_SIZE 4096
+#define ACE_POLL_IS_BROKEN
+
+// Compile using multi-thread libraries.
+#if !defined (ACE_MT_SAFE)
+# define ACE_MT_SAFE 1
+# define _REENTRANT
+#endif
+
+#if ACE_MT_SAFE == 1
+ // Platform supports threads.
+# define ACE_HAS_PTHREADS
+# include <unistd.h>
+# if _POSIX_VERSION >= 199506L
+ // LynxOS 3.1.0 or greater
+# define ACE_HAS_PTHREADS_STD
+ // Though there's a pthread_sigmask man page, there isn't a
+ // declaration in a system header file.
+# include <signal.h>
+ extern "C" int pthread_sigmask (int, const sigset_t *, sigset_t *);
+# else /* LynxOS < 3.1.0 */
+# define ACE_HAS_PTHREADS_DRAFT4
+# define ACE_HAS_STDARG_THR_DEST
+ // Without TSS emulation, you'll only have 3 native TSS keys, on
+ // LynxOS 3.0.0/ppc.
+# define ACE_HAS_TSS_EMULATION
+# endif /* LynxOS < 3.1.0 */
+# define ACE_HAS_THREADS
+# define ACE_HAS_THREAD_SPECIFIC_STORAGE
+# define ACE_LACKS_NULL_PTHREAD_STATUS
+# define ACE_LACKS_SETDETACH
+# define ACE_LACKS_THREAD_PROCESS_SCOPING
+# define ACE_LACKS_THREAD_STACK_ADDR
+ // This gets around Lynx broken macro calls resulting in "::0"
+# define _POSIX_THREADS_CALLS
+#endif /* ACE_MT_SAFE */
+
+#define ACE_HAS_AIO_CALLS
+#define ACE_POSIX_AIOCB_PROACTOR
+// AIOCB Proactor works on Lynx. But it is not
+// multi-threaded.
+// Lynx OS 3.0.0 lacks POSIX call <pthread_sigmask>. So,we cannot use
+// SIG Proactor also, with multiple threads. So, let us use the AIOCB
+// Proactor. Once <pthreadd_sigmask> is available on Lynx, we can turn
+// on SIG Proactor for this platform.
+// #define ACE_POSIX_SIG_PROACTOR
+
+#define ACE_HAS_BROKEN_PREALLOCATED_OBJECTS_AFTER_FORK 1
+
+// Turns off the tracing feature.
+#if !defined (ACE_NTRACE)
+# define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+
+// By default, don't include RCS Id strings in object code.
+#if !defined (ACE_USE_RCSID)
+# define ACE_USE_RCSID 0
+#endif /* ! ACE_USE_RCSID */
+
+// System include files are not in sys/, this gets rid of warning.
+#define __NO_INCLUDE_WARN__
+
+extern "C"
+{
+ int getopt (int, char *const *, const char *);
+ int putenv (const char *);
+}
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-m88k.h b/ace/config-m88k.h
new file mode 100644
index 00000000000..19f5f30886c
--- /dev/null
+++ b/ace/config-m88k.h
@@ -0,0 +1,227 @@
+/* -*- C++ -*- */
+// $Id$
+
+// The following configuration file is designed to work for Motorola
+// 88k SVR4 platforms using pthreads from Florida State (ACE_HAS_FSU_PTHREADS).
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+#if ! defined (__ACE_INLINE__)
+# define __ACE_INLINE__
+#endif /* ! __ACE_INLINE__ */
+
+#if defined (__GNUG__)
+# include "ace/config-g++-common.h"
+ // This config file has not been tested with ACE_HAS_TEMPLATE_SPECIALIZATION.
+ // Maybe it will work?
+# undef ACE_HAS_TEMPLATE_SPECIALIZATION
+#endif /* __GNUG__ */
+
+#if !defined (m88k)
+#define m88k
+#endif
+
+extern "C" void pthread_init();
+
+#define PTHREAD_STACK_MIN 1024
+
+// Optimize ACE_Handle_Set for select().
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+
+#if !defined (IP_ADD_MEMBERSHIP)
+#define IP_ADD_MEMBERSHIP 0x13
+#endif /* m88k */
+
+#if !defined (IP_DROP_MEMBERSHIP)
+#define IP_DROP_MEMBERSHIP 0x14
+#endif /* m88k */
+
+struct sched_param
+{
+ int sched_priority;
+ int prio;
+};
+
+// This seems to be necessary for m88k.
+struct ip_mreq
+{
+ struct in_addr imr_multiaddr; // IP multicast address of the group
+ struct in_addr imr_interface; // local IP address of the interface
+};
+
+#if !defined (ACE_HAS_FSU_PTHREADS)
+# define ACE_HAS_FSU_PTHREADS
+#endif
+#if !defined (ACE_HAS_PTHREADS_DRAFT6)
+# define ACE_HAS_PTHREADS_DRAFT6
+#endif
+
+// Added for compilation on the m88k
+#if defined (m88k)
+# define ACE_LACKS_T_ERRNO
+# define ACE_LACKS_MADVISE
+# define ACE_HAS_GNU_CSTRING_H
+#endif /* m88k */
+
+// Platform supports System V IPC (most versions of UNIX, but not Win32)
+#define ACE_HAS_SYSV_IPC
+
+// Sun has the wrong prototype for sendmsg.
+#define ACE_HAS_BROKEN_SENDMSG
+
+// The SunOS 5.x version of rand_r is inconsistent with the header files...
+#define ACE_HAS_BROKEN_RANDR
+
+// Platform supports system configuration information.
+#define ACE_HAS_SYSINFO
+
+// Platform supports the POSIX regular expression library.
+#define ACE_HAS_REGEX
+
+// Platform supports recvmsg and sendmsg.
+#define ACE_HAS_MSG
+
+// Compiler/platform contains the <sys/syscall.h> file.
+#define ACE_HAS_SYSCALL_H
+
+#if !defined (ACE_HAS_FSU_PTHREADS)
+// Platform supports reentrant functions (i.e., all the POSIX *_r functions).
+#define ACE_HAS_REENTRANT_FUNCTIONS
+#endif /* ACE_HAS_FSU_PTHREADS */
+
+// Platform has terminal ioctl flags like TCGETS and TCSETS.
+#define ACE_HAS_TERM_IOCTLS
+
+// Compiler/platform correctly calls init()/fini() for shared libraries.
+#define ACE_HAS_AUTOMATIC_INIT_FINI
+
+// Platform supports POSIX O_NONBLOCK semantics.
+#define ACE_HAS_POSIX_NONBLOCK
+
+// Compiler/platform has correctly prototyped header files.
+#define ACE_HAS_CPLUSPLUS_HEADERS
+
+#if !defined (m88k)
+// Compiler/platform supports SunOS high resolution timers.
+# define ACE_HAS_HI_RES_TIMER
+#endif /* m88k */
+
+// Platform supports IP multicast
+#define ACE_HAS_IP_MULTICAST
+
+// Compiler/platform supports alloca()
+#define ACE_HAS_ALLOCA
+
+#if !defined (m88k)
+// Compiler/platform has <alloca.h>
+#define ACE_HAS_ALLOCA_H
+#endif /* m88k */
+
+// Platform contains <poll.h>.
+#define ACE_HAS_POLL
+
+// Platform supports POSIX timers via timestruc_t.
+#define ACE_HAS_POSIX_TIME
+
+// Platform supports the /proc file system.
+#define ACE_HAS_PROC_FS
+
+#if !defined (m88k)
+// Platform supports the prusage_t struct.
+#define ACE_HAS_PRUSAGE_T
+#endif /* m88k */
+
+// Compiler/platform defines the sig_atomic_t typedef.
+#define ACE_HAS_SIG_ATOMIC_T
+
+// Platform supports SVR4 extended signals.
+#define ACE_HAS_SIGINFO_T
+#define ACE_HAS_UCONTEXT_T
+
+// Compiler/platform provides the sockio.h file.
+#define ACE_HAS_SOCKIO_H
+
+// Compiler supports the ssize_t typedef.
+#define ACE_HAS_SSIZE_T
+
+// Platform supports STREAMS.
+#define ACE_HAS_STREAMS
+
+// Platform supports STREAM pipes.
+#define ACE_HAS_STREAM_PIPES
+
+// Compiler/platform supports strerror ().
+#define ACE_HAS_STRERROR
+
+// Compiler/platform supports struct strbuf.
+#define ACE_HAS_STRBUF_T
+
+// Compiler/platform supports SVR4 dynamic linking semantics.
+#define ACE_HAS_SVR4_DYNAMIC_LINKING
+
+// Compiler/platform supports SVR4 gettimeofday() prototype.
+#define ACE_HAS_SVR4_GETTIMEOFDAY
+
+// Compiler/platform supports SVR4 signal typedef.
+#define ACE_HAS_SVR4_SIGNAL_T
+
+// Compiler/platform supports SVR4 ACE_TLI (in particular, T_GETNAME stuff)...
+#define ACE_HAS_SVR4_TLI
+
+// Platform provides <sys/filio.h> header.
+#define ACE_HAS_SYS_FILIO_H
+
+#if !defined (m88k)
+// Compiler/platform supports sys_siglist array.
+#define ACE_HAS_SYS_SIGLIST
+#endif /* m88k */
+
+/* Turn off the following five defines if you want to disable threading. */
+// Compile using multi-thread libraries.
+#if !defined (ACE_MT_SAFE)
+# define ACE_MT_SAFE 1
+#endif
+
+#define ACE_HAS_PTHREADS
+#define ACE_LACKS_RWLOCK_T
+
+// Platform supports threads.
+#define ACE_HAS_THREADS
+
+#if defined (ACE_HAS_FSU_PTHREADS)
+#define ACE_LACKS_THREAD_STACK_ADDR
+#endif /* ACE_HAS_FSU_PTHREADS */
+
+// Compiler/platform has thread-specific storage
+#define ACE_HAS_THREAD_SPECIFIC_STORAGE
+
+// Reactor detects deadlock
+// #define ACE_REACTOR_HAS_DEADLOCK_DETECTION
+
+// Platform supports ACE_TLI timod STREAMS module.
+#define ACE_HAS_TIMOD_H
+
+// Platform supports ACE_TLI tiuser header.
+#define ACE_HAS_TIUSER_H
+
+// Platform provides ACE_TLI function prototypes.
+#define ACE_HAS_TLI_PROTOTYPES
+
+// Platform supports ACE_TLI.
+#define ACE_HAS_TLI
+
+// Use the poll() event demultiplexor rather than select().
+//#define ACE_USE_POLL
+
+// Turns off the tracing feature.
+#if !defined (ACE_NTRACE)
+# define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+
+// Defines the page size of the system.
+#define ACE_PAGE_SIZE 4096
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-macosx.h b/ace/config-macosx.h
new file mode 100644
index 00000000000..19852858757
--- /dev/null
+++ b/ace/config-macosx.h
@@ -0,0 +1,173 @@
+/* -*- C++ -*- */
+// $Id$
+
+// This configuration file is designed to work with the MacOS X operating system.
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+
+#if ! defined (__ACE_INLINE__)
+#define __ACE_INLINE__
+#endif /* ! __ACE_INLINE__ */
+
+#if defined (__GNUG__)
+# include "ace/config-g++-common.h"
+#endif /* __GNUG__ */
+
+#undef ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION
+
+#define ACE_SIZE_T_FORMAT_SPECIFIER ACE_LIB_TEXT ("%lu")
+
+#if defined (ACE_HAS_PENTIUM)
+# undef ACE_HAS_PENTIUM
+#endif /* ACE_HAS_PENTIUM */
+
+// Platform specific directives
+
+#define __MACOSX__
+#define ACE_HAS_MACOSX_DYLIB
+
+#if !defined (_THREAD_SAFE)
+#define _THREAD_SAFE
+#endif /* _THREAD_SAFE */
+
+#define ACE_HAS_GPERF
+//#define ACE_HAS_POSIX_SEM
+
+//#define ACE_HAS_SVR4_TLI
+
+#define ACE_HAS_MEMCHR
+
+// Compiler/platform defines the sig_atomic_t typedef.
+#define ACE_HAS_SIG_ATOMIC_T
+
+// Compiler/platform supports SVR4 signal typedef
+#define ACE_HAS_SVR4_SIGNAL_T
+
+//Platform/compiler has the sigwait(2) prototype
+#define ACE_HAS_SIGWAIT
+
+//Platform supports sigsuspend()
+#define ACE_HAS_SIGSUSPEND
+
+//Platform/compiler has macros for sig{empty,fill,add,del}set (e.g., SCO and FreeBSD)
+#define ACE_HAS_SIG_MACROS
+
+//#define ACE_HAS_RECURSIVE_THR_EXIT_SEMANTICS
+#define ACE_LACKS_GETPGID
+#define ACE_LACKS_RWLOCK_T
+
+// Optimize ACE_Handle_Set for select().
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+
+#define ACE_HAS_NONCONST_SELECT_TIMEVAL
+
+//?
+#define ACE_LACKS_SIGSET
+
+#define ACE_NEEDS_SCHED_H
+
+// Use of <malloc.h> is deprecated.
+#define ACE_LACKS_MALLOC_H
+
+#define ACE_HAS_ALT_CUSERID
+
+// Platform supports POSIX timers via struct timespec.
+#define ACE_HAS_POSIX_TIME
+#define ACE_HAS_UALARM
+
+// Platform defines struct timespec but not timespec_t
+#define ACE_LACKS_TIMESPEC_T
+
+#define ACE_LACKS_STRRECVFD
+
+#define ACE_HAS_SIN_LEN
+
+#define ACE_HAS_ANSI_CASTS
+
+// Platform supports System V IPC (most versions of UNIX, but not Win32)
+//#define ACE_HAS_SYSV_IPC
+
+// Compiler/platform contains the <sys/syscall.h> file.
+#define ACE_HAS_SYSCALL_H
+
+#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
+
+// Compiler/platform supports alloca().
+#define ACE_HAS_ALLOCA
+
+// Compiler/platform correctly calls init()/fini() for shared libraries.
+#define ACE_HAS_AUTOMATIC_INIT_FINI
+
+// Explicit dynamic linking permits "lazy" symbol resolution
+//#define ACE_HAS_RTLD_LAZY_V
+
+// platform supports POSIX O_NONBLOCK semantics
+#define ACE_HAS_POSIX_NONBLOCK
+
+// platform supports IP multicast
+#define ACE_HAS_IP_MULTICAST
+
+// Compiler/platform has the getrusage() system call.
+#define ACE_HAS_GETRUSAGE
+
+// Compiler/platform defines a union semun for SysV shared memory.
+#define ACE_LACKS_SEMBUF_T
+
+// Compiler supports the ssize_t typedef.
+#define ACE_HAS_SSIZE_T
+
+// Compiler/platform supports strerror ().
+#define ACE_HAS_STRERROR
+
+// Compiler/platform provides the sockio.h file.
+#define ACE_HAS_SOCKIO_H
+
+// Defines the page size of the system.
+#define ACE_HAS_GETPAGESIZE
+
+// Platform provides <sys/filio.h> header.
+#define ACE_HAS_SYS_FILIO_H
+
+// Compiler/platform supports SVR4 gettimeofday() prototype
+#define ACE_HAS_SUNOS4_GETTIMEOFDAY
+#define ACE_HAS_TIMEZONE_GETTIMEOFDAY
+
+// Turns off the tracing feature.
+#if !defined (ACE_NTRACE)
+#define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+
+#define ACE_LACKS_SYSV_MSG_H
+#define ACE_HAS_MSG
+#define ACE_HAS_4_4BSD_SENDMSG_RECVMSG
+#define ACE_HAS_NONCONST_MSGSND
+
+// Thread specific settings
+// Yes, we do have threads.
+#define ACE_HAS_THREADS
+// And they're even POSIX pthreads
+#if !defined (ACE_MT_SAFE)
+# define ACE_MT_SAFE 1
+#endif /* ! ACE_MT_SAFE */
+#define ACE_HAS_PTHREADS
+#define ACE_HAS_PTHREADS_STD
+#define ACE_LACKS_PTHREAD_KILL
+#define ACE_LACKS_PTHREAD_CANCEL
+#define ACE_LACKS_PTHREAD_SIGMASK
+#define ACE_LACKS_THREAD_PROCESS_SCOPING
+#define ACE_LACKS_PTHREAD_THR_SIGSETMASK
+#define ACE_LACKS_CONDATTR_PSHARED
+#define ACE_LACKS_MUTEXATTR_PSHARED
+#define ACE_HAS_THREAD_SPECIFIC_STORAGE
+#define ACE_HAS_DIRENT
+
+#define ACE_LACKS_SETSCHED
+//#define ACE_HAS_RECURSIVE_MUTEXES
+
+#define ACE_HAS_TERM_IOCTLS
+#define ACE_USES_HIGH_BAUD_RATES
+#define TCGETS TIOCGETA
+#define TCSETS TIOCSETA
+
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-minimal.h b/ace/config-minimal.h
new file mode 100644
index 00000000000..11d66eb7b01
--- /dev/null
+++ b/ace/config-minimal.h
@@ -0,0 +1,39 @@
+/* -*- C++ -*- */
+// $Id$
+
+// This configuration file is designed to build only the minimal
+// ACE_OS adaptation layer.
+
+#ifndef ACE_CONFIG_MINIMAL_H
+#define ACE_CONFIG_MINIMAL_H
+#include "ace/pre.h"
+
+#define ACE_HAS_MINIMAL_ACE_OS
+
+// Only instantiate the ACE_OS_Object_Manager.
+#define ACE_MAIN_OBJECT_MANAGER \
+ ACE_OS_Object_Manager ace_os_object_manager;
+
+#if !defined(ACE_USE_THREAD_MANAGER_ADAPTER)
+ // To prevent use of ACE_Thread_Exit functions in
+ // ACE_Thread_Adapter::invoke ().
+# define ACE_USE_THREAD_MANAGER_ADAPTER
+#endif /* ! ACE_USE_THREAD_MANAGER_ADAPTER */
+
+#if defined (ACE_ASSERT)
+# undef ACE_ASSERT
+#endif /* ACE_ASSERT */
+#define ACE_ASSERT(x)
+
+#if defined (ACE_DEBUG)
+# undef ACE_DEBUG
+#endif /* ACE_DEBUG */
+#define ACE_DEBUG(x)
+
+#if defined (ACE_ERROR)
+# undef ACE_ERROR
+#endif /* ACE_ERROR */
+#define ACE_ERROR(x)
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_MINIMAL_H */
diff --git a/ace/config-mit-pthread.h b/ace/config-mit-pthread.h
new file mode 100644
index 00000000000..03eda51c41b
--- /dev/null
+++ b/ace/config-mit-pthread.h
@@ -0,0 +1,53 @@
+// $Id$
+
+#ifndef ACE_CONFIG_MIT_PTHREAD_H
+#define ACE_CONFIG_MIT_PTHREAD_H
+#include "ace/pre.h"
+
+// Platform uses int for select() rather than fd_set.
+#if !defined(ACE_HAS_SELECT_H)
+#define ACE_HAS_SELECT_H
+#endif
+
+// Threads
+#define ACE_HAS_THREADS
+#if !defined (ACE_MT_SAFE)
+ #define ACE_MT_SAFE 1
+#endif
+#define ACE_HAS_THREAD_SPECIFIC_STORAGE
+#define ACE_HAS_PTHREADS
+#define ACE_HAS_PTHREADS_STD
+#define ACE_LACKS_PTHREAD_CANCEL
+#define ACE_HAS_PTHREAD_SIGMASK
+#define ACE_HAS_SIGWAIT
+//#define ACE_HAS_PTHREAD_YIELD_VOID_PTR
+//#define ACE_HAS_PTHREAD_ATTR_INIT
+//#define ACE_HAS_PTHREAD_ATTR_DESTROY
+#define ACE_LACKS_THREAD_PROCESS_SCOPING
+//#define ACE_LACKS_THREAD_STACK_ADDR
+// If ACE doesn't compile due to the lack of these methods, please
+// send email to schmidt@cs.wustl.edu reporting this.
+// #define ACE_LACKS_CONDATTR_PSHARED
+// #define ACE_LACKS_MUTEXATTR_PSHARED
+#define ACE_LACKS_RWLOCK_T
+#define ACE_LACKS_SETSCHED
+
+#include <pthread.h>
+#if defined(_M_UNIX)
+#include <sys/regset.h>
+#endif
+
+#define ACE_LACKS_TIMEDWAIT_PROTOTYPES
+#define ACE_HAS_RECV_TIMEDWAIT
+#define ACE_HAS_RECVFROM_TIMEDWAIT
+#define ACE_HAS_RECVMSG_TIMEDWAIT
+#define ACE_HAS_SEND_TIMEDWAIT
+#define ACE_HAS_SENDTO_TIMEDWAIT
+#define ACE_HAS_SENDMSG_TIMEDWAIT
+#define ACE_HAS_READ_TIMEDWAIT
+#define ACE_HAS_READV_TIMEDWAIT
+#define ACE_HAS_WRITE_TIMEDWAIT
+#define ACE_HAS_WRITEV_TIMEDWAIT
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_MIT_PTHREAD_H */
diff --git a/ace/config-mklinux.h b/ace/config-mklinux.h
new file mode 100644
index 00000000000..31957b70be0
--- /dev/null
+++ b/ace/config-mklinux.h
@@ -0,0 +1,20 @@
+/* -*- C++ -*- */
+// $Id$
+
+// The following configuration file is designed to work for MkLinux
+// platforms using GNU C++.
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+#include "ace/config-linux-common.h"
+
+#define ACE_HAS_SVR4_DYNAMIC_LINKING
+#define ACE_HAS_AUTOMATIC_INIT_FINI
+
+#undef ACE_HAS_SOCKLEN_T
+#define ACE_HAS_SIZET_SOCKET_LEN
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-mvs.h b/ace/config-mvs.h
new file mode 100644
index 00000000000..51e8a86e843
--- /dev/null
+++ b/ace/config-mvs.h
@@ -0,0 +1,122 @@
+/* -*- C++ -*- */
+// $Id$
+
+// Config file for MVS with OpenEdition
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+// The following #defines are hacks to get around things
+// that seem to be missing or different in MVS land
+#define MAXPATHLEN 1024 /* sys/param.h not on MVS */
+#define NSIG 44 /* missing from Signal.h */
+#define MAXHOSTNAMELEN 256 /* missing form netdb.h */
+#define howmany __howmany /* MVS uses different names than most others */
+#define fd_mask __fd_mask
+#define MAXNAMLEN __DIR_NAME_MAX
+#define ERRMAX __sys_nerr
+#if defined (log) /* log is a macro in math.h */
+# undef log /* conflicts with log function in ACE */
+#endif /* log */
+
+#define ACE_MVS
+
+// Preprocesor requires an extra argument
+#define ACE_CC_PREPROCESSOR_ARGS "-+ -E"
+
+// See the README file in this directory
+// for a description of the following ACE_ macros
+
+#if __COMPILER_VER__ >= 0x21020000 /* OS/390 r2 or higher */
+# define ACE_HAS_4_4BSD_SENDMSG_RECVMSG
+# define ACE_HAS_UCONTEXT_T
+#else /* __COMPILER_VER__ < 0x21020000 */
+# define ACE_LACKS_UCONTEXT_H
+#endif /* __COMPILER_VER__ < 0x21020000 */
+
+#if __COMPILER_VER__ < 0x22060000 /* before OS/390 r2.6 */
+# define ACE_LACKS_LONGLONG_T
+#endif /* __COMPILER_VER__ < 0x22060000 */
+
+#define ACE_HAS_BROKEN_CTIME
+#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
+#define ACE_HAS_CPLUSPLUS_HEADERS
+#define ACE_HAS_DIRENT
+#define ACE_HAS_EXCEPTIONS
+#define ACE_HAS_GETPAGESIZE
+#define ACE_HAS_GETRUSAGE
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+#define ACE_HAS_LIMITED_RUSAGE_T
+#define ACE_HAS_MSG
+#define ACE_HAS_NONCONST_SELECT_TIMEVAL
+#define ACE_HAS_NONSCALAR_THREAD_KEY_T
+#define ACE_HAS_POLL
+#define ACE_HAS_POSIX_NONBLOCK
+#define ACE_HAS_POSIX_TIME
+#define ACE_HAS_PTHREADS
+#define ACE_HAS_PTHREADS_DRAFT6
+#define ACE_HAS_PTHREAD_CONDATTR_SETKIND_NP
+#define ACE_HAS_PTHREAD_MUTEXATTR_SETKIND_NP
+#define ACE_HAS_SIGINFO_T
+#define ACE_HAS_SIGWAIT
+#define ACE_HAS_SIG_ATOMIC_T
+#define ACE_HAS_SIG_C_FUNC
+#define ACE_HAS_SIN_LEN
+#define ACE_HAS_SIZET_SOCKET_LEN
+#define ACE_HAS_SSIZE_T
+#define ACE_HAS_STRERROR
+#define ACE_HAS_STRINGS
+#define ACE_HAS_SYSV_IPC
+#define ACE_HAS_TEMPLATE_SPECIALIZATION
+#define ACE_HAS_THREADS
+#define ACE_HAS_THREAD_SPECIFIC_STORAGE
+#define ACE_HAS_THR_C_DEST
+#define ACE_HAS_THR_C_FUNC
+#define ACE_HAS_TIMEZONE_GETTIMEOFDAY
+#define ACE_HAS_UALARM
+#define ACE_HAS_UTIME
+#define ACE_HAS_VOIDPTR_MMAP
+#define ACE_HAS_VOIDPTR_SOCKOPT
+#define ACE_HAS_XPG4_MULTIBYTE_CHAR
+
+#define ACE_LACKS_CONDATTR_PSHARED
+#define ACE_LACKS_MUTEXATTR_PSHARED
+#define ACE_LACKS_IOSTREAM_FX
+#define ACE_LACKS_LINEBUFFERED_STREAMBUF
+#define ACE_LACKS_MADVISE
+#define ACE_LACKS_MALLOC_H
+#define ACE_LACKS_MSGBUF_T
+#define ACE_LACKS_PARAM_H
+#define ACE_LACKS_PLACEMENT_OPERATOR_DELETE
+#define ACE_LACKS_PTHREAD_THR_SIGSETMASK
+#define ACE_LACKS_READDIR_R
+#define ACE_LACKS_RWLOCK_T
+#define ACE_LACKS_SETSCHED
+#define ACE_LACKS_SIGINFO_H
+#define ACE_LACKS_STRRECVFD
+#define ACE_LACKS_SYSTIME_H
+#define ACE_LACKS_SYS_NERR
+#define ACE_LACKS_TCP_H
+#define ACE_LACKS_THREAD_PROCESS_SCOPING
+#define ACE_LACKS_THREAD_STACK_ADDR
+#define ACE_LACKS_TIMESPEC_T
+
+#if !defined (ACE_MT_SAFE)
+# define ACE_MT_SAFE 1
+#endif
+
+#define ACE_NEEDS_DEV_IO_CONVERSION
+
+#if !defined (ACE_NTRACE)
+# define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+
+#define ACE_SIZEOF_FLOAT 4
+#define ACE_SIZEOF_DOUBLE 8
+#define ACE_SIZEOF_LONG_DOUBLE 16
+
+#define ACE_TEMPLATES_REQUIRE_SOURCE
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-netbsd.h b/ace/config-netbsd.h
new file mode 100644
index 00000000000..386ef450277
--- /dev/null
+++ b/ace/config-netbsd.h
@@ -0,0 +1,179 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ***** This configuration file is still under testing. *****
+
+// The following configuration file is designed to work for NetBSD
+// platforms using GNU g++.
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+#if ! defined (__ACE_INLINE__)
+#define __ACE_INLINE__
+#endif /* ! __ACE_INLINE__ */
+
+// ********************************************************
+// uncomment next line if you are using FreeBSD 2.1.x[R]
+// #define FreeBSD_2_1
+// ********************************************************
+#define ACE_NETBSD
+
+#define ACE_SIZEOF_LONG_DOUBLE 12
+
+#if defined (__GNUG__)
+# include "ace/config-g++-common.h"
+#endif /* __GNUG__ */
+
+// #define ACE_HAS_BROKEN_NETBSD_MSYNC
+
+// Platform specific directives
+#define ACE_LACKS_GETPGID
+#define ACE_LACKS_SETPGID
+#define ACE_LACKS_SETREGID
+#define ACE_LACKS_SETREUID
+#define ACE_LACKS_RWLOCK_T
+#define ACE_HAS_SIG_MACROS
+#define ACE_HAS_CHARPTR_DL
+#define ACE_USES_ASM_SYMBOL_IN_DLSYM
+
+// NetBSD appears to have dirent support.
+#define ACE_HAS_DIRENT
+
+// NetBSD appears to have a sigset_t type.
+// #define ACE_LACKS_SIGSET
+
+// This is for 2.1.x only. By default, gcc defines __FreeBSD__ automatically
+#if defined(FreeBSD_2_1)
+
+#define ACE_HAS_CPLUSPLUS_HEADERS
+
+// This is to fix the nested struct if_data definition on FreeBSD 2.1.x
+#include <sys/types.h>
+#include <sys/time.h>
+struct if_data {
+/* generic interface information */
+ u_char ifi_type; /* ethernet, tokenring, etc */
+ u_char ifi_physical; /* e.g., AUI, Thinnet, 10base-T, etc */
+ u_char ifi_addrlen; /* media address length */
+ u_char ifi_hdrlen; /* media header length */
+ u_long ifi_mtu; /* maximum transmission unit */
+ u_long ifi_metric; /* routing metric (external only) */
+ u_long ifi_baudrate; /* linespeed */
+/* volatile statistics */
+ u_long ifi_ipackets; /* packets received on interface */
+ u_long ifi_ierrors; /* input errors on interface */
+ u_long ifi_opackets; /* packets sent on interface */
+ u_long ifi_oerrors; /* output errors on interface */
+ u_long ifi_collisions; /* collisions on csma interfaces */
+ u_long ifi_ibytes; /* total number of octets received */
+ u_long ifi_obytes; /* total number of octets sent */
+ u_long ifi_imcasts; /* packets received via multicast */
+ u_long ifi_omcasts; /* packets sent via multicast */
+ u_long ifi_iqdrops; /* dropped on input, this interface */
+ u_long ifi_noproto; /* destined for unsupported protocol */
+ struct timeval ifi_lastchange;/* time of last administrative ch
+ange */
+} ;
+
+// this is a hack, but since this only occured in FreeBSD 2.1.x,
+// I guess it is ok.
+#define ACE_HAS_BROKEN_TIMESPEC_MEMBERS
+
+#endif /* defined FreeBSD_2_1 */
+
+// Platform supports POSIX timers via struct timespec.
+#define ACE_HAS_POSIX_TIME
+#define ACE_HAS_UALARM
+
+// Platform defines struct timespec but not timespec_t
+#define ACE_LACKS_TIMESPEC_T
+
+#define ACE_LACKS_SYSTIME_H
+
+#define ACE_LACKS_STRRECVFD
+
+#define ACE_HAS_SIN_LEN
+
+// Platform supports System V IPC (most versions of UNIX, but not Win32)
+#define ACE_HAS_SYSV_IPC
+
+// Compiler/platform contains the <sys/syscall.h> file.
+#define ACE_HAS_SYSCALL_H
+
+#if !defined(FreeBSD_2_1)
+#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
+#endif /* defined FreeBSD_2_1 */
+
+// Compiler/platform supports SVR4 signal typedef
+#define ACE_HAS_SVR4_SIGNAL_T
+
+// Compiler/platform supports alloca().
+#define ACE_HAS_ALLOCA
+
+// Compiler/platform supports SVR4 dynamic linking semantics..
+#define ACE_HAS_SVR4_DYNAMIC_LINKING
+
+// Compiler/platform correctly calls init()/fini() for shared libraries.
+#define ACE_HAS_AUTOMATIC_INIT_FINI
+
+// Explicit dynamic linking permits "lazy" symbol resolution
+#define ACE_HAS_RTLD_LAZY_V
+
+// platform supports POSIX O_NONBLOCK semantics
+#define ACE_HAS_POSIX_NONBLOCK
+
+// platform supports IP multicast
+#define ACE_HAS_IP_MULTICAST
+
+// Compiler/platform has <alloca.h>
+//#define ACE_HAS_ALLOCA_H
+
+// Compiler/platform has the getrusage() system call.
+#define ACE_HAS_GETRUSAGE
+
+// Compiler/platform defines the sig_atomic_t typedef.
+#define ACE_HAS_SIG_ATOMIC_T
+
+// Compiler/platform supports sys_siglist array.
+// *** This refers to (_sys_siglist) instead of (sys_siglist)
+// #define ACE_HAS_SYS_SIGLIST
+
+// Compiler/platform defines a union semun for SysV shared memory.
+#define ACE_HAS_SEMUN
+
+// Compiler supports the ssize_t typedef.
+#define ACE_HAS_SSIZE_T
+
+// Compiler/platform supports strerror ().
+#define ACE_HAS_STRERROR
+
+// Compiler/platform provides the sockio.h file.
+#define ACE_HAS_SOCKIO_H
+
+// Defines the page size of the system.
+#define ACE_PAGE_SIZE 4096
+
+// Platform provides <sys/filio.h> header.
+#define ACE_HAS_SYS_FILIO_H
+
+// Compiler/platform supports SVR4 gettimeofday() prototype
+#define ACE_HAS_SUNOS4_GETTIMEOFDAY
+// #define ACE_HAS_TIMEZONE_GETTIMEOFDAY
+
+// Turns off the tracing feature.
+#if !defined (ACE_NTRACE)
+#define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+
+#define ACE_HAS_MSG
+#define ACE_HAS_4_4BSD_SENDMSG_RECVMSG
+
+// Optimize ACE_Handle_Set for select().
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+
+#define ACE_LACKS_GETHOSTENT
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-osf1-3.2.h b/ace/config-osf1-3.2.h
new file mode 100644
index 00000000000..6412896a0a3
--- /dev/null
+++ b/ace/config-osf1-3.2.h
@@ -0,0 +1,188 @@
+/* -*- C++ -*- */
+// $Id$
+
+// The following configuration file is designed to work for OSF1 3.2
+// platforms with the DEC 5.1 C++ compiler.
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+#define ACE_LACKS_SETSCHED
+#define ACE_LACKS_RWLOCK_T
+// DF: this platform uses Digital's CXX compiler
+#define DEC_CXX
+
+// DF: DEC's CXX supports explicit template specialization.
+#define ACE_HAS_TEMPLATE_SPECIALIZATION
+
+// DF: 3.2 has getpgid but no prototype defined anywhere. So we cheat
+// and declare it here.
+extern "C" pid_t getpgid (pid_t);
+
+// DF: ACE_HAS_STRING_CLASS seems the right thing to do...
+#define ACE_HAS_STRING_CLASS
+
+// DF: Seems apropriate since this is a new compiler...
+#if !defined (__ACE_INLINE__)
+# define __ACE_INLINE__
+#endif /* ! __ACE_INLINE__ */
+
+#define ACE_HAS_BROKEN_MSG_H
+#define ACE_LACKS_SYSV_MSQ_PROTOS
+
+// Optimize ACE_Handle_Set for select().
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+
+// Platform supports <sys/procfs.h>
+#define ACE_HAS_PROC_FS
+
+#define ACE_HAS_UALARM
+
+// If ACE doesn't compile due to the lack of these methods, please
+// send email to schmidt@cs.wustl.edu reporting this.
+// #define ACE_LACKS_CONDATTR_PSHARED
+// #define ACE_LACKS_MUTEXATTR_PSHARED
+
+// Platform lacks support for stack address information
+#define ACE_LACKS_THREAD_STACK_ADDR
+
+// Platform lacks thread process scoping
+#define ACE_LACKS_THREAD_PROCESS_SCOPING
+
+// Platform has non-POSIX setkind and other functions.
+#define ACE_LACKS_PTHREAD_THR_SIGSETMASK
+#define ACE_HAS_SETKIND_NP
+
+// Platform supports POSIX 1.b clock_gettime ()
+#define ACE_HAS_CLOCK_GETTIME
+
+// Platform defines MAP_FAILED as a long constant.
+#define ACE_HAS_LONG_MAP_FAILED
+
+// Platform's implementation of sendmsg() has a non-const msgheader parameter.
+#define ACE_HAS_BROKEN_SENDMSG
+
+// Platform's implementation of writev() has a non-const iovec parameter.
+#define ACE_HAS_BROKEN_WRITEV
+
+// Platform's implementation of setlrmit() has a non-const rlimit parameter.
+#define ACE_HAS_BROKEN_SETRLIMIT
+
+// Platform supports System V IPC (most versions of UNIX, but not Win32)
+#define ACE_HAS_SYSV_IPC
+
+// Platform supports recvmsg and sendmsg.
+#define ACE_HAS_MSG
+
+// Compiler/platform contains the <sys/syscall.h> file.
+#define ACE_HAS_SYSCALL_H
+
+// Compiler/platform correctly calls init()/fini().
+#define ACE_HAS_AUTOMATIC_INIT_FINI
+
+// Prototypes for both signal() and struct sigaction are consistent.
+#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
+
+// Compiler/platform has thread-specific storage
+#define ACE_HAS_THREAD_SPECIFIC_STORAGE
+
+// Platform supports C++ headers
+#define ACE_HAS_CPLUSPLUS_HEADERS
+
+// Compiler/platform has the getrusage() system call.
+#define ACE_HAS_GETRUSAGE
+
+// Platform supports the OSF ACE_TLI timod STREAMS module.
+#define ACE_HAS_OSF_TIMOD_H
+
+// Platform supports IP multicast
+#define ACE_HAS_IP_MULTICAST
+
+// Platform contains <poll.h>.
+#define ACE_HAS_POLL
+
+// Platform supports POSIX timers via timestruc_t.
+#define ACE_HAS_POSIX_TIME
+
+// Platform defines struct timespec in <sys/timers.h>
+#define ACE_HAS_BROKEN_POSIX_TIME
+
+// Platform supports POSIX O_NONBLOCK semantics.
+#define ACE_HAS_POSIX_NONBLOCK
+
+#define ACE_LACKS_PTHREAD_THR_SIGSETMASK
+
+// ACE supports POSIX Pthreads. OSF/1 3.2 has draft 4
+#define ACE_HAS_PTHREADS
+#define ACE_HAS_PTHREADS_DRAFT4
+#define ACE_HAS_THREAD_SELF
+
+// Compiler/platform defines the sig_atomic_t typedef.
+#define ACE_HAS_SIG_ATOMIC_T
+
+// Added 6/13/95, 1 line
+#define ACE_HAS_SIGINFO_T
+#define ACE_HAS_UCONTEXT_T
+
+// Compiler/platform has ssize_t.
+#define ACE_HAS_SSIZE_T
+
+// Compiler/platform supports struct strbuf.
+#define ACE_HAS_STRBUF_T
+
+// Platform supports STREAMS.
+#define ACE_HAS_STREAMS
+
+// Platform has 64bit longs and 32bit ints...
+// NOTE: ACE_HAS_64BIT_LONGS is deprecated. Instead, use ACE_SIZEOF_LONG == 8.
+#define ACE_HAS_64BIT_LONGS
+
+// Platform supports STREAM pipes.
+// #define ACE_HAS_STREAM_PIPES
+
+// Compiler/platform supports SVR4 dynamic linking semantics.
+#define ACE_HAS_SVR4_DYNAMIC_LINKING
+
+// Platform support OSF1 gettimeofday
+#define ACE_HAS_OSF1_GETTIMEOFDAY
+
+// Compiler/platform supports SVR4 signal typedef.
+#define ACE_HAS_SVR4_SIGNAL_T
+
+// Compiler/platform has strerror().
+#define ACE_HAS_STRERROR
+
+// ACE supports threads.
+#define ACE_HAS_THREADS
+
+// Platform supports ACE_TLI tiuser header.
+#define ACE_HAS_TIUSER_H
+
+// Platform supports ACE_TLI timod STREAMS module.
+// #define ACE_HAS_TIMOD_H
+
+// Platform provides ACE_TLI function prototypes.
+#define ACE_HAS_TLI_PROTOTYPES
+
+// Platform supports ACE_TLI.
+#define ACE_HAS_TLI
+
+// Compile using multi-thread libraries.
+#if !defined (ACE_MT_SAFE)
+# define ACE_MT_SAFE 1
+#endif
+
+#define ACE_NEEDS_DEV_IO_CONVERSION
+
+// Turns off the tracing feature.
+#if !defined (ACE_NTRACE)
+# define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+
+// Defines the page size of the system.
+#define ACE_PAGE_SIZE 8192
+#define ACE_HAS_GETPAGESIZE
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-osf1-4.0.h b/ace/config-osf1-4.0.h
new file mode 100644
index 00000000000..7666cf1b3c5
--- /dev/null
+++ b/ace/config-osf1-4.0.h
@@ -0,0 +1,183 @@
+/* -*- C++ -*- */
+// $Id$
+
+// NOTE: if you are using Digital UNIX V4.0f or later, you must
+// use config-tru64.h instead of directly using this config file.
+
+// The following configuration file is designed to work for the
+// Digital UNIX V4.0a through V4.0d with either the GNU g++, DEC
+// cxx 5.4 and later, Rational RCC (2.4.1) compilers, or KAI 3.3
+// compilers. It is configured to use the IEEE Std 1003.1c-1995,
+// POSIX System Application Program Interface, or DCE threads (with
+// cxx only); it automatically selects the proper thread interface
+// depending on whether the cxx -pthread or -threads option was
+// specified. By 4.0a, the version is meant that is called "V4.0 464"
+// by uname -a.
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+#if !defined (__ACE_INLINE__)
+# define __ACE_INLINE__
+#endif /* ! __ACE_INLINE__ */
+
+// Compile using multi-thread libraries.
+#if !defined (ACE_MT_SAFE)
+# define ACE_MT_SAFE 1
+#endif /* ! ACE_MT_SAFE */
+
+// Turns off the tracing feature.
+#if !defined (ACE_NTRACE)
+# define ACE_NTRACE 1
+#endif /* ! ACE_NTRACE */
+
+// Include unistd.h to define _POSIX_C_SOURCE.
+#include <unistd.h>
+
+// Configuration-specific #defines:
+// 1) g++ or cxx
+// 2) pthreads or DCE threads
+#if defined (__GNUG__)
+ // g++ with pthreads
+
+ // config-g++-common.h undef's ACE_HAS_STRING_CLASS with -frepo, so
+ // this must appear before its #include.
+# define ACE_HAS_STRING_CLASS
+
+# include "ace/config-g++-common.h"
+
+# define ACE_HAS_GNU_CSTRING_H
+# define ACE_HAS_REENTRANT_FUNCTIONS
+#elif defined (__DECCXX)
+
+# define ACE_CONFIG_INCLUDE_CXX_COMMON
+# include "ace/config-cxx-common.h"
+
+#elif defined (__rational__)
+# define ACE_HAS_REENTRANT_FUNCTIONS
+# define ACE_HAS_STRING_CLASS
+# define ACE_LACKS_LINEBUFFERED_STREAMBUF
+# define ACE_LACKS_SIGNED_CHAR
+
+ // Exceptions are enabled by platform_osf1_4.0_rcc.GNU.
+# define ACE_HAS_ANSI_CASTS
+# define ACE_HAS_STDCPP_STL_INCLUDES
+# define ACE_HAS_TEMPLATE_SPECIALIZATION
+# define ACE_HAS_TYPENAME_KEYWORD
+# define ACE_HAS_USING_KEYWORD
+#elif defined (__KCC)
+# define ACE_HAS_STRING_CLASS
+# include "ace/config-kcc-common.h"
+#else
+# error unsupported compiler on Digital Unix
+#endif /* ! __GNUG__ && ! __DECCXX && ! __rational__ && !_KCC */
+
+#if (DIGITAL_UNIX >= 0x400) && (DIGITAL_UNIX < 0x500)
+#define ACE_LACKS_PREAD_PROTOTYPE
+#endif // (DIGITAL_UNIX >= 0x400) && (DIGITAL_UNIX < 0x500)
+
+#if defined(_POSIX_C_SOURCE) && (_POSIX_C_SOURCE >= 199506L)
+ // cxx with POSIX 1003.1c-1995 threads (pthreads) . . .
+# define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R
+# define ACE_HAS_BROKEN_IF_HEADER
+# define ACE_HAS_BROKEN_R_ROUTINES
+#if (ACE_MT_SAFE != 0)
+# define ACE_HAS_PTHREADS
+# define ACE_HAS_PTHREADS_STD
+# define ACE_HAS_RECURSIVE_THR_EXIT_SEMANTICS
+#endif /* ACE_MT_SAFE != 0 */
+# define ACE_LACKS_T_ERRNO
+# define ACE_POLL_IS_BROKEN
+# if !defined (DIGITAL_UNIX)
+# define DIGITAL_UNIX 0x400
+# endif /* ! DIGITAL_UNIX */
+ // DJT removed this due to some minor issues related to the
+ // definitions of timestruc_t and tid_t in procfs.h not sure what
+ // functionality is lost? Platform supports <sys/procfs.h>
+ //#define ACE_HAS_PROC_FS
+#else /* _POSIX_C_SOURCE < 199506L */
+ // cxx with DCE threads . . .
+ // This ACE configuration is only supported with cxx; it has not been
+ // test with g++.
+# define ACE_HAS_BROKEN_MSG_H
+# define ACE_HAS_BROKEN_POSIX_TIME
+#if (ACE_MT_SAFE != 0)
+# define ACE_HAS_PTHREADS
+# define ACE_HAS_PTHREADS_DRAFT4
+# define ACE_HAS_THREAD_SELF
+# define ACE_LACKS_THREAD_PROCESS_SCOPING
+# define ACE_LACKS_PTHREAD_THR_SIGSETMASK
+# define ACE_LACKS_PTHREAD_THR_SIGSETMASK
+#endif
+# define ACE_HAS_GETPAGESIZE
+# define ACE_HAS_PROC_FS
+# define ACE_HAS_SETKIND_NP
+# define ACE_LACKS_CONST_TIMESPEC_PTR
+# define ACE_LACKS_READDIR_R
+# define ACE_LACKS_SETSCHED
+# define ACE_LACKS_SIGNED_CHAR
+# define ACE_LACKS_SYSV_MSQ_PROTOS
+#endif /* _POSIX_C_SOURCE < 199506L */
+
+#define ACE_DEFAULT_BASE_ADDR ((char *) 0x80000000)
+// NOTE: ACE_HAS_64BIT_LONGS is deprecated. Instead, use ACE_SIZEOF_LONG == 8.
+#define ACE_HAS_64BIT_LONGS
+#define ACE_HAS_AUTOMATIC_INIT_FINI
+#define ACE_HAS_BROKEN_SETRLIMIT
+#define ACE_HAS_BROKEN_T_ERROR
+#define ACE_HAS_BROKEN_WRITEV
+#define ACE_HAS_CLOCK_GETTIME
+#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
+#define ACE_HAS_CPLUSPLUS_HEADERS
+#define ACE_HAS_DIRENT
+#define ACE_HAS_GETRUSAGE
+#define ACE_HAS_GPERF
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+#define ACE_HAS_IP_MULTICAST
+#define ACE_HAS_LLSEEK
+#define ACE_HAS_LONG_MAP_FAILED
+#define ACE_HAS_MSG
+#define ACE_HAS_NONCONST_SELECT_TIMEVAL
+#define ACE_HAS_OSF1_GETTIMEOFDAY
+#define ACE_HAS_OSF_TIMOD_H
+#define ACE_HAS_POLL
+#define ACE_HAS_POSIX_NONBLOCK
+#define ACE_HAS_POSIX_TIME
+#define ACE_HAS_PRIOCNTL
+#define ACE_HAS_SIGINFO_T
+#define ACE_HAS_SIG_ATOMIC_T
+#define ACE_HAS_SSIZE_T
+#define ACE_HAS_STRBUF_T
+#define ACE_HAS_STREAMS
+#define ACE_HAS_STRERROR
+#define ACE_HAS_STRPTIME
+#define ACE_HAS_SVR4_DYNAMIC_LINKING
+#define ACE_HAS_SVR4_SIGNAL_T
+#define ACE_HAS_SYSCALL_H
+#define ACE_HAS_SYSV_IPC
+#if (ACE_MT_SAFE != 0)
+#define ACE_HAS_THREADS
+#define ACE_HAS_THREAD_SPECIFIC_STORAGE
+#define ACE_LACKS_THREAD_STACK_ADDR
+#endif
+#define ACE_HAS_TIUSER_H
+#define ACE_HAS_TLI
+#define ACE_HAS_TLI_PROTOTYPES
+#define ACE_HAS_UALARM
+#define ACE_HAS_UCONTEXT_T
+#define ACE_LACKS_PRI_T
+#define ACE_LACKS_RWLOCK_T
+#define ACE_PAGE_SIZE 8192
+#define ACE_HAS_SIGTIMEDWAIT
+#define ACE_HAS_SIGSUSPEND
+
+// DJT 6/10/96 All these broken macro's can now be removed with the
+// approporiate ordering of the include files. The Platinum release
+// now temporarily supports both forms. Platform's implementation of
+// sendmsg() has a non-const msgheader parameter.
+#define ACE_HAS_BROKEN_SENDMSG
+#define ACE_HAS_IDTYPE_T
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-pharlap.h b/ace/config-pharlap.h
new file mode 100644
index 00000000000..51433b4fe77
--- /dev/null
+++ b/ace/config-pharlap.h
@@ -0,0 +1,60 @@
+/* -*- C++ -*- */
+// $Id$
+
+// This configuration file is for use with the PharLap Realtime ETS Kernel.
+// It has been tested with PharLap TNT Embedded ToolSuite version 9.1.
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+#define ACE_HAS_PHARLAP
+// Some features are only available with the Realtime edition of ETS.
+// Assume that if using ACE, the realtime version is also being used, but
+// allow it to be turned off as well.
+#ifndef ACE_HAS_PHARLAP_RT
+# define ACE_HAS_PHARLAP_RT
+#else
+# if (ACE_HAS_PHARLAP_RT == 0)
+# undef ACE_HAS_PHARLAP_RT
+# endif
+#endif
+
+// Fortunately, PharLap ETS offers much of the Win32 API. But it's still on
+// WinNT 3.5, Winsock 1.1
+#define ACE_HAS_WINNT4 0
+#define ACE_HAS_WINSOCK2 0
+
+// The TSS implementation doesn't pass muster on the TSS_Test, but it works
+// well with ACE's TSS emulation.
+#define ACE_HAS_TSS_EMULATION
+
+#define ACE_LACKS_MMAP
+#define ACE_LACKS_MPROTECT
+#define ACE_LACKS_MSYNC
+#define ACE_LACKS_TCP_NODELAY
+#define ACE_LACKS_MSG_WFMO
+
+// There's no host table, by default. So using "localhost" won't work.
+// If your system does have the ability to use "localhost" and you want to,
+// define it before including this file.
+#if !defined (ACE_LOCALHOST)
+# define ACE_LOCALHOST "127.0.0.1"
+#endif /* ACE_LOCALHOST */
+
+// Don't know how to get the page size at execution time. This is most likely
+// the correct value.
+#define ACE_PAGE_SIZE 4096
+
+// Let the config-win32.h file do its thing
+#undef ACE_CONFIG_H
+#include "ace/config-win32.h"
+#undef ACE_HAS_WCHAR
+
+#include /**/ <embkern.h>
+#if defined (ACE_HAS_PHARLAP_RT)
+# include /**/ <embtcpip.h>
+#endif /* ACE_HAS_PHARLAP_RT */
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-psos-diab-mips.h b/ace/config-psos-diab-mips.h
new file mode 100644
index 00000000000..954dcd9e2f9
--- /dev/null
+++ b/ace/config-psos-diab-mips.h
@@ -0,0 +1,246 @@
+/* -*- C++ -*- */
+// $Id$
+
+// The following configuration file is designed to work for pSOSystem V2.2.1,
+// using the Diab Data D-C++ 4.2 p3 compiler (or a later version)
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+// #if ! defined (__ACE_INLINE__)
+// # define __ACE_INLINE__
+// #endif /* ! __ACE_INLINE__ */
+#if defined (__ACE_INLINE__)
+# undef __ACE_INLINE__
+#endif /* __ACE_INLINE__ */
+
+#define ACE_LACKS_ISATTY
+
+#define ACE_LACKS_DIFFTIME
+
+#define ACE_LACKS_INLINE_FUNCTIONS
+
+#define ACE_LACKS_TEMPLATE_AS_TEMPLATE_PARAMETER
+
+#if defined (__GNUG__)
+# include "ace/config-g++-common.h"
+#endif /* __GNUG__ */
+
+
+// Don't use RCSID
+#if !defined (ACE_USE_RCSID)
+#define ACE_USE_RCSID 0
+#endif /* #if !defined (ACE_USE_RCSID) */
+
+#define ACE_LACKS_ASSERT_MACRO
+
+#define ACE_LACKS_SIGSET
+#define ACE_LACKS_SIGACTION
+#define ACE_LACKS_FCNTL
+#define ACE_LACKS_FILELOCKS
+#define ACE_LACKS_TRUNCATE
+#define ACE_LACKS_PRAGMA_ONCE
+#define ACE_NLOGGING
+#define ACE_NDEBUG
+
+#define ACE_PSOS_LACKS_PREPC
+
+#define ACE_HAS_STRDUP_EMULATION
+
+#define ACE_HAS_IP_MULTICAST
+
+#define ACE_HAS_CPLUSPLUS_HEADERS
+
+#define ACE_HAS_BROKEN_CONDITIONAL_STRING_CASTS
+
+#define ACE_HAS_BROKEN_EXPLICIT_DESTRUCTOR
+
+# define ACE_HAS_BROKEN_NOOP_DTORS
+
+# define ACE_HAS_DIRENT
+# define ACE_LACKS_READDIR_R
+# define ACE_LACKS_TELLDIR
+# define ACE_LACKS_SEEKDIR
+# define ACE_LACKS_REWINDDIR
+
+# define ACE_THREADS_DONT_INHERIT_LOG_MSG
+
+// Template instantiation definitions
+// #define ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION_FILE
+#define ACE_TEMPLATES_REQUIRE_SOURCE
+#define ACE_LACKS_METHOD_DEFINITIONS_IN_CLASS_TEMPLATE
+
+#define ACE_LACKS_HRTIME_T
+
+// #define ACE_LACKS_EVENT_T
+
+// #define ACE_HAS_VERBOSE_NOTSUP
+
+#define ACE_LACKS_MEMORY_H
+
+// #define ACE_LACKS_MALLOC_H
+
+#define ACE_LACKS_MMAP
+
+#define ACE_LACKS_UNIX_DOMAIN_SOCKETS
+
+#define ACE_HAS_NONSTATIC_OBJECT_MANAGER
+
+#define ACE_LACKS_SEMBUF_T
+
+#define ACE_LACKS_EXEC
+
+#define ACE_LACKS_FORK
+
+#define ACE_LACKS_WRITEV
+
+#define ACE_LACKS_READV
+
+// rename the main entry point
+// #define ACE_MAIN extern "C" void root
+
+// All this was commented out for the single threaded port
+/*
+#define ACE_HAS_THREADS
+
+#if !defined (ACE_MT_SAFE)
+# define ACE_MT_SAFE 1
+#endif
+
+#define ACE_HAS_TSS_EMULATION
+
+#define ACE_DEFAULT_THREAD_KEYS 256
+
+#define ACE_LACKS_COND_T
+// #define ACE_HAS_TSS_EMULATION
+
+*/
+
+#define ACE_LACKS_PTHREAD_THR_SIGSETMASK
+
+/* #define ACE_HAS_BROKEN_SENDMSG */
+
+/* #define ACE_HAS_BROKEN_WRITEV */
+
+#define ACE_HAS_BROKEN_CONVERSIONS
+
+#define ACE_HAS_CHARPTR_SOCKOPT
+
+#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
+
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+
+#define ACE_HAS_MSG
+
+#define ACE_HAS_POSIX_NONBLOCK
+
+#define ACE_HAS_SIGINFO_T
+#define ACE_LACKS_SIGINFO_H
+#define ACE_SIGINFO_IS_SIGINFO_T
+#define ACE_LACKS_SIGSET_DEFINITIONS
+
+#define ACE_HAS_SIGWAIT
+
+//#define ACE_HAS_SIG_ATOMIC_T
+
+// #define ACE_HAS_STRERROR
+
+#define ACE_LACKS_ACCESS
+
+#define ACE_LACKS_GETHOSTENT
+
+#define ACE_LACKS_GETSERVBYNAME
+
+// IO Streams stuff
+/* #define ACE_HAS_MINIMUM_IOSTREAMH_INCLUSION */
+#define ACE_LACKS_IOSTREAM_TOTALLY
+#define ACE_LACKS_ACE_IOSTREAM
+#define ACE_LACKS_IOSTREAM_FX
+#define ACE_DEFAULT_LOG_STREAM 0
+#define ostream FILE
+
+#define ACE_LACKS_IOSTREAM_FX
+
+#define ACE_LACKS_KEY_T
+
+#define ACE_LACKS_LINEBUFFERED_STREAMBUF
+
+#define ACE_LACKS_LONGLONG_T
+
+#define ACE_LACKS_MADVISE
+
+#define ACE_LACKS_MKTEMP
+
+#define ACE_LACKS_MPROTECT
+
+#define ACE_LACKS_MSYNC
+
+#define ACE_LACKS_PARAM_H
+
+#define ACE_LACKS_PWD_FUNCTIONS
+
+#define ACE_LACKS_RLIMIT
+
+#define ACE_LACKS_RPC_H
+
+#define ACE_LACKS_RWLOCK_T
+
+#define ACE_LACKS_SBRK
+
+#define ACE_LACKS_SIGNED_CHAR
+
+#define ACE_LACKS_SI_ADDR
+
+#define ACE_LACKS_SOCKETPAIR
+
+#define ACE_LACKS_STRCASECMP
+
+#define ACE_LACKS_STRRECVFD
+
+#define ACE_LACKS_SYSCALL
+
+#define ACE_LACKS_SYSV_MSG_H
+
+#define ACE_LACKS_SYSV_SHMEM
+
+// #define ACE_LACKS_SYS_NERR
+
+#define ACE_LACKS_SYS_TYPES_H
+
+#define ACE_LACKS_TIMESPEC_T
+
+#define ACE_LACKS_UCONTEXT_H
+
+#define ACE_LACKS_UNIX_SIGNALS
+
+// #define ACE_LACKS_SYSTIME_H
+
+#define ACE_PAGE_SIZE 4096
+
+#if !defined (ACE_NTRACE)
+# define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+
+#define ACE_PSOS_CANT_USE_SYS_TYPES
+
+// #define ACE_PSOS_SNARFS_HEADER_INFO
+
+#if !defined (ACE_PSOS)
+#define ACE_PSOS
+#endif /* ACE_PSOS */
+
+#if !defined (ACE_PSOS_TBD)
+#define ACE_PSOS_TBD
+#endif /* ACE_PSOS_TBD */
+
+#define ACE_LACKS_MKFIFO
+
+#define ACE_LACKS_MALLOC_H
+
+#define ACE_PSOS_DIAB
+
+#define ACE_PSOS_DIAB_MIPS
+#define ACE_MALLOC_ALIGN 8
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-psos-diab-ppc.h b/ace/config-psos-diab-ppc.h
new file mode 100644
index 00000000000..9cbf2d63c7f
--- /dev/null
+++ b/ace/config-psos-diab-ppc.h
@@ -0,0 +1,281 @@
+/* -*- C++ -*- */
+// $Id$
+
+// The following configuration file is designed to work for:
+// a) pSOSystem V2.5.0 for PowerPC (pssppc.250)
+// b) DiabData C++ compiler - dplus 4.2b
+// *note pSOSystem V2.5.0 is contained in the PRISM+2.0.0 package
+
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+// #if ! defined (__ACE_INLINE__)
+// # define __ACE_INLINE__
+// #endif /* ! __ACE_INLINE__ */
+#if defined (__ACE_INLINE__)
+# undef __ACE_INLINE__
+#endif /* __ACE_INLINE__ */
+
+#define ACE_LACKS_ISATTY
+
+#define ACE_LACKS_DIFFTIME
+
+#define ACE_LACKS_FCNTL
+
+#define ACE_LACKS_FILELOCKS
+
+#define ACE_LACKS_FSYNC
+
+#define ACE_LACKS_INLINE_FUNCTIONS
+
+#define ACE_LACKS_TEMPLATE_AS_TEMPLATE_PARAMETER
+
+#if defined (__GNUG__)
+# include "ace/config-g++-common.h"
+#else
+// At least true with newer Diab compiler...
+# define ACE_LACKS_PRAGMA_ONCE
+# define ACE_HAS_EXCEPTIONS
+#endif /* __GNUG__ */
+
+#define ACE_PSOS_LACKS_PREPC
+
+#define ACE_PSOS_HAS_TIME
+
+#define ACE_HAS_STRDUP_EMULATION
+
+#define ACE_HAS_IP_MULTICAST
+
+#define ACE_HAS_CPLUSPLUS_HEADERS
+
+#define ACE_HAS_BROKEN_EXPLICIT_TYPECAST_OPERATOR_INVOCATION
+
+#define ACE_HAS_BROKEN_CONDITIONAL_STRING_CASTS
+
+#define ACE_HAS_WORKING_EXPLICIT_TEMPLATE_DESTRUCTOR
+
+# define ACE_HAS_BROKEN_NOOP_DTORS
+
+# define ACE_HAS_DIRENT
+# define ACE_LACKS_READDIR_R
+# define ACE_LACKS_TELLDIR
+# define ACE_LACKS_SEEKDIR
+# define ACE_LACKS_REWINDDIR
+
+#define ACE_LACKS_TRUNCATE
+
+// Template instantiation definitions
+// #define ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION_FILE
+#define ACE_TEMPLATES_REQUIRE_SOURCE
+
+// IO Streams stuff
+// #define ACE_HAS_MINIMUM_IOSTREAMH_INCLUSION
+//#define ACE_LACKS_IOSTREAM_TOTALLY
+//#define ACE_LACKS_ACE_IOSTREAM
+//#define ACE_LACKS_IOSTREAM_FX
+//#define ACE_DEFAULT_LOG_STREAM 0
+//#define ostream FILE
+
+#define ACE_LACKS_HRTIME_T
+
+// #define ACE_LACKS_EVENT_T
+
+#define ACE_HAS_VERBOSE_NOTSUP
+
+#define ACE_LACKS_MEMORY_H
+
+// #define ACE_LACKS_MALLOC_H
+
+#define ACE_LACKS_MMAP
+
+#define ACE_LACKS_UNIX_DOMAIN_SOCKETS
+
+#define ACE_HAS_NONSTATIC_OBJECT_MANAGER
+
+#define ACE_HAS_NONCONST_SELECT_TIMEVAL
+
+#define ACE_LACKS_SEMBUF_T
+
+#define ACE_LACKS_EXEC
+
+#define ACE_LACKS_FORK
+
+#define ACE_LACKS_WRITEV
+
+#define ACE_LACKS_READV
+
+// rename the main entry point
+#define ACE_MAIN extern "C" void root
+
+// All this was commented out for the single threaded port
+
+#define ACE_HAS_THREADS
+
+#if !defined (ACE_MT_SAFE)
+# define ACE_MT_SAFE 1
+#endif
+
+// #define ACE_HAS_TSS_EMULATION
+// #define ACE_DEFAULT_THREAD_KEYS 256
+#define ACE_HAS_THREAD_SPECIFIC_STORAGE
+#define ACE_PSOS_HAS_TSS
+#define ACE_DEFAULT_THREAD_KEYS KC_NTSD
+
+#define ACE_PSOS_HAS_MUTEX
+#define ACE_PSOS_HAS_PRIO_MUTEX
+#define ACE_PSOS_HAS_PRIO_INHERIT_MUTEX
+#define ACE_HAS_RECURSIVE_MUTEXES
+
+// #define ACE_LACKS_COND_T
+#define ACE_PSOS_HAS_COND_T
+
+#define ACE_LACKS_PTHREAD_THR_SIGSETMASK
+
+/* #define ACE_HAS_BROKEN_SENDMSG */
+
+/* #define ACE_HAS_BROKEN_WRITEV */
+
+#define ACE_HAS_BROKEN_CONVERSIONS
+
+#define ACE_HAS_CHARPTR_SOCKOPT
+
+#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
+
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+
+#define ACE_HAS_MSG
+
+#define ACE_HAS_POSIX_NONBLOCK
+
+#define ACE_HAS_SIGINFO_T
+#define ACE_LACKS_SIGINFO_H
+#define ACE_SIGINFO_IS_SIGINFO_T
+#define ACE_LACKS_SIGSET_DEFINITIONS
+#define ACE_LACKS_SIGSET
+#define ACE_LACKS_SIGACTION
+
+#define ACE_HAS_SIGWAIT
+
+//#define ACE_HAS_SIG_ATOMIC_T
+
+#define ACE_HAS_STRERROR
+
+#define ACE_LACKS_ACCESS
+
+#define ACE_LACKS_GETHOSTENT
+
+#define ACE_LACKS_GETSERVBYNAME
+
+#define ACE_LACKS_KEY_T
+
+#define ACE_LACKS_LINEBUFFERED_STREAMBUF
+
+#define ACE_LACKS_LONGLONG_T
+
+#define ACE_LACKS_LSTAT
+
+#define ACE_LACKS_MADVISE
+
+#define ACE_LACKS_MKTEMP
+
+#define ACE_LACKS_MPROTECT
+
+#define ACE_LACKS_MSYNC
+
+#define ACE_LACKS_PARAM_H
+
+#define ACE_LACKS_PWD_FUNCTIONS
+
+#define ACE_LACKS_READLINK
+
+#define ACE_LACKS_RLIMIT
+
+#define ACE_LACKS_RWLOCK_T
+
+#define ACE_LACKS_SBRK
+
+#define ACE_LACKS_SIGNED_CHAR
+
+#define ACE_LACKS_SI_ADDR
+
+#define ACE_LACKS_SOCKETPAIR
+
+#define ACE_LACKS_STRCASECMP
+
+#define ACE_LACKS_STRRECVFD
+
+#define ACE_LACKS_SYSCALL
+
+#define ACE_LACKS_SYSV_MSG_H
+
+#define ACE_LACKS_SYSV_SHMEM
+
+#define ACE_LACKS_SYS_NERR
+
+#define ACE_LACKS_SYS_TYPES_H
+
+#define ACE_LACKS_TIMESPEC_T
+
+#define ACE_LACKS_UCONTEXT_H
+
+#define ACE_LACKS_UNIX_SIGNALS
+
+#define ACE_THREADS_LACK_SHARED_SOCKETS
+
+// #define ACE_MALLOC_ALIGN 8
+// #define ACE_LACKS_SYSTIME_H
+
+#define ACE_PAGE_SIZE 4096
+
+#if !defined (ACE_NTRACE)
+# define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+
+#define ACE_PSOS_CANT_USE_SYS_TYPES
+
+// #define ACE_PSOS_LACKS_PHILE
+
+#define ACE_PSOS_HAS_C_LIBRARY
+
+#define ACE_PSOS_SNARFS_HEADER_INFO
+
+#define ACE_PSOS_LACKS_ARGC_ARGV
+
+#if !defined (ACE_PSOS)
+#define ACE_PSOS
+#endif /* ACE_PSOS */
+
+#if !defined (ACE_PSOS_TBD)
+#define ACE_PSOS_TBD
+#endif /* ACE_PSOS_TBD */
+
+#define ACE_LACKS_MKFIFO
+
+#define ACE_PSOS_DIAB
+
+#define ACE_PSOS_DIAB_PPC
+
+/* Defining PNANOREDEF will avoid the redefinition of close to pna_close in
+ * pna.h In OS.i we make sure that pna_close is called in place of close
+ * when a socket is closed.
+ */
+#define _PNANOREDEF_
+
+/* needed for portability, due to non-standard ip_mreq
+ structure definition for pSOS Diab PPC */
+#define IMR_MULTIADDR imr_mcastaddr
+
+#define ACE_THREADS_DONT_INHERIT_LOG_MSG /* Stream sharing problem for tasks */
+
+#define ACE_THREADS_MUST_EXPLICITLY_SHARE_SOCKETS /* Can't just share sockets */
+
+#define ACE_PSOS_DEFAULT_STACK_SIZE 30720 /* Default task stack size to 30K */
+
+#define ACE_DEFAULT_THREAD_PRIORITY 239
+
+#define ACE_THREAD_MANAGER_LACKS_STATICS
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-psos-diab.h b/ace/config-psos-diab.h
new file mode 100644
index 00000000000..7c439aa677d
--- /dev/null
+++ b/ace/config-psos-diab.h
@@ -0,0 +1,237 @@
+/* -*- C++ -*- */
+// $Id$
+
+// The following configuration file is designed to work for pSOSystem V2.2.2,
+// using the Diab Data D-C++ 4.2a compiler (or a later version)
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+// #if ! defined (__ACE_INLINE__)
+// # define __ACE_INLINE__
+// #endif /* ! __ACE_INLINE__ */
+#if defined (__ACE_INLINE__)
+# undef __ACE_INLINE__
+#endif /* __ACE_INLINE__ */
+
+#define ACE_LACKS_ISATTY
+
+#define ACE_LACKS_DIFFTIME
+
+#define ACE_LACKS_FCNTL
+
+#define ACE_LACKS_FILELOCKS
+
+#define ACE_LACKS_FSYNC
+
+#define ACE_LACKS_INLINE_FUNCTIONS
+
+#define ACE_LACKS_TEMPLATE_AS_TEMPLATE_PARAMETER
+
+#if defined (__GNUG__)
+# include "ace/config-g++-common.h"
+#endif /* __GNUG__ */
+
+#define ACE_PSOS_LACKS_PREPC
+
+#define ACE_PSOS_HAS_TIME
+
+#define ACE_HAS_STRDUP_EMULATION
+
+#define ACE_HAS_IP_MULTICAST
+
+#define ACE_HAS_CPLUSPLUS_HEADERS
+
+#define ACE_HAS_BROKEN_EXPLICIT_TYPECAST_OPERATOR_INVOCATION
+
+#define ACE_HAS_BROKEN_CONDITIONAL_STRING_CASTS
+
+#define ACE_HAS_WORKING_EXPLICIT_TEMPLATE_DESTRUCTOR
+
+# define ACE_HAS_BROKEN_NOOP_DTORS
+
+# define ACE_HAS_DIRENT
+# define ACE_LACKS_READDIR_R
+# define ACE_LACKS_TELLDIR
+# define ACE_LACKS_SEEKDIR
+# define ACE_LACKS_REWINDDIR
+
+#define ACE_LACKS_TRUNCATE
+
+// Template instantiation definitions
+// #define ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION_FILE
+#define ACE_TEMPLATES_REQUIRE_SOURCE
+
+// IO Streams stuff
+// #define ACE_HAS_MINIMUM_IOSTREAMH_INCLUSION
+#define ACE_LACKS_IOSTREAM_TOTALLY
+#define ACE_LACKS_ACE_IOSTREAM
+#define ACE_LACKS_IOSTREAM_FX
+#define ACE_DEFAULT_LOG_STREAM 0
+#define ostream FILE
+
+#define ACE_LACKS_HRTIME_T
+
+// #define ACE_LACKS_EVENT_T
+
+#define ACE_HAS_VERBOSE_NOTSUP
+
+#define ACE_LACKS_MEMORY_H
+
+// #define ACE_LACKS_MALLOC_H
+
+#define ACE_LACKS_MMAP
+
+#define ACE_LACKS_UNIX_DOMAIN_SOCKETS
+
+#define ACE_HAS_NONSTATIC_OBJECT_MANAGER
+
+#define ACE_LACKS_SEMBUF_T
+
+#define ACE_LACKS_EXEC
+
+#define ACE_LACKS_FORK
+
+#define ACE_LACKS_WRITEV
+
+#define ACE_LACKS_READV
+
+// rename the main entry point
+#define ACE_MAIN extern "C" void root
+
+// All this was commented out for the single threaded port
+
+#define ACE_HAS_THREADS
+
+#if !defined (ACE_MT_SAFE)
+# define ACE_MT_SAFE 1
+#endif
+
+#define ACE_HAS_TSS_EMULATION
+
+#define ACE_DEFAULT_THREAD_KEYS 256
+
+#define ACE_LACKS_COND_T
+
+// #define ACE_HAS_TSS_EMULATION
+
+#define ACE_LACKS_PTHREAD_THR_SIGSETMASK
+
+/* #define ACE_HAS_BROKEN_SENDMSG */
+
+/* #define ACE_HAS_BROKEN_WRITEV */
+
+#define ACE_HAS_BROKEN_CONVERSIONS
+
+#define ACE_HAS_CHARPTR_SOCKOPT
+
+#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
+
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+
+#define ACE_HAS_MSG
+
+#define ACE_HAS_POSIX_NONBLOCK
+
+#define ACE_HAS_SIGINFO_T
+#define ACE_LACKS_SIGINFO_H
+#define ACE_SIGINFO_IS_SIGINFO_T
+#define ACE_LACKS_SIGSET_DEFINITIONS
+
+#define ACE_HAS_SIGWAIT
+
+#define ACE_HAS_SIG_ATOMIC_T
+
+#define ACE_HAS_STRERROR
+
+#define ACE_LACKS_ACCESS
+
+#define ACE_LACKS_GETHOSTENT
+
+#define ACE_LACKS_GETSERVBYNAME
+
+#define ACE_LACKS_KEY_T
+
+#define ACE_LACKS_LINEBUFFERED_STREAMBUF
+
+#define ACE_LACKS_LONGLONG_T
+
+#define ACE_LACKS_LSTAT
+
+#define ACE_LACKS_MADVISE
+
+#define ACE_LACKS_MKTEMP
+
+#define ACE_LACKS_MPROTECT
+
+#define ACE_LACKS_MSYNC
+
+#define ACE_LACKS_PARAM_H
+
+#define ACE_LACKS_PWD_FUNCTIONS
+
+#define ACE_LACKS_READLINK
+
+#define ACE_LACKS_RLIMIT
+
+#define ACE_LACKS_RWLOCK_T
+
+#define ACE_LACKS_SBRK
+
+#define ACE_LACKS_SIGNED_CHAR
+
+#define ACE_LACKS_SI_ADDR
+
+#define ACE_LACKS_SOCKETPAIR
+
+#define ACE_LACKS_STRCASECMP
+
+#define ACE_LACKS_STRRECVFD
+
+#define ACE_LACKS_SYSCALL
+
+#define ACE_LACKS_SYSV_MSG_H
+
+#define ACE_LACKS_SYSV_SHMEM
+
+#define ACE_LACKS_SYS_NERR
+
+#define ACE_LACKS_SYS_TYPES_H
+
+#define ACE_LACKS_TIMESPEC_T
+
+#define ACE_LACKS_UCONTEXT_H
+
+#define ACE_LACKS_UNIX_SIGNALS
+
+// #define ACE_LACKS_SYSTIME_H
+
+#define ACE_PAGE_SIZE 4096
+
+#if !defined (ACE_NTRACE)
+# define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+
+#define ACE_PSOS_CANT_USE_SYS_TYPES
+
+// #define ACE_PSOS_LACKS_PHILE
+
+#define ACE_PSOS_HAS_C_LIBRARY
+
+#define ACE_PSOS_SNARFS_HEADER_INFO
+
+#define ACE_PSOS_LACKS_ARGC_ARGV
+
+#if !defined (ACE_PSOS)
+#define ACE_PSOS
+#endif /* ACE_PSOS */
+
+#define ACE_MALLOC_ALIGN 8
+
+#if !defined (ACE_PSOS_DIAB)
+#define ACE_PSOS_DIAB
+#endif /* ACE_PSOS_DIAB */
+#define ACE_LACKS_MKFIFO
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-psos-tm.h b/ace/config-psos-tm.h
new file mode 100644
index 00000000000..aa077e2bca6
--- /dev/null
+++ b/ace/config-psos-tm.h
@@ -0,0 +1,210 @@
+/* -*- C++ -*- */
+// $Id$
+
+// The following configuration file is designed to work for pSOSystem V2.2.1,
+// using the Diab Data D-C++ 4.1a compiler
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+// #if ! defined (__ACE_INLINE__)
+// # define __ACE_INLINE__
+// #endif /* ! __ACE_INLINE__ */
+#if defined (__ACE_INLINE__)
+# undef __ACE_INLINE__
+#endif /* __ACE_INLINE__ */
+
+#if defined (__GNUG__)
+# include "ace/config-g++-common.h"
+#endif /* __GNUG__ */
+
+#define ACE_HAS_STRDUP_EMULATION
+
+#define ACE_HAS_IP_MULTICAST
+
+#define ACE_HAS_CPLUSPLUS_HEADERS
+
+#define ACE_HAS_WORKING_EXPLICIT_TEMPLATE_DESTRUCTOR
+
+// Template instantiation definitions
+// #define ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION_FILE
+#define ACE_TEMPLATES_REQUIRE_SOURCE
+
+#define ACE_DONT_INCLUDE_ACE_SIGNAL_H
+# include <signal.h> //JINLU
+#undef ACE_DONT_INCLUDE_ACE_SIGNAL_H
+#include <pna.h> //JINLU
+#define NSIG _NSIG //_NSIG = 32 defined in signal.h JINLU
+#define TCP_NODELAY 1 // this will be defined later by pSOS/TM
+
+/* #define ACE_HAS_MINIMUM_IOSTREAMH_INCLUSION */
+
+#define ACE_LACKS_HRTIME_T
+
+// #define ACE_LACKS_EVENT_T
+
+#define ACE_HAS_VERBOSE_NOTSUP
+
+#define ACE_LACKS_MEMORY_H
+
+// #define ACE_LACKS_MALLOC_H
+
+#define ACE_LACKS_MMAP
+
+#define ACE_LACKS_UNIX_DOMAIN_SOCKETS
+
+#define ACE_HAS_NONSTATIC_OBJECT_MANAGER
+
+#define ACE_LACKS_SEMBUF_T
+
+#define ACE_LACKS_EXEC
+
+#define ACE_LACKS_FORK
+
+#define ACE_LACKS_WRITEV
+
+#define ACE_LACKS_READV
+
+// rename the main entry point
+// #define ACE_MAIN extern "C" void root
+
+// All this was commented out for the single threaded port
+
+#define ACE_HAS_THREADS
+
+#if !defined (ACE_MT_SAFE)
+# define ACE_MT_SAFE 1
+#endif
+
+#define ACE_HAS_TSS_EMULATION
+
+#define ACE_DEFAULT_THREAD_KEYS 256
+
+#define ACE_LACKS_COND_T
+
+// #define ACE_HAS_TSS_EMULATION
+
+#define ACE_LACKS_PTHREAD_THR_SIGSETMASK
+
+/* #define ACE_HAS_BROKEN_SENDMSG */
+
+/* #define ACE_HAS_BROKEN_WRITEV */
+
+#define ACE_HAS_BROKEN_CONVERSIONS
+
+#define ACE_HAS_CHARPTR_SOCKOPT
+
+#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
+
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+
+#define ACE_HAS_MSG
+
+#define ACE_HAS_POSIX_NONBLOCK
+
+#define ACE_HAS_SIGINFO_T
+#define ACE_LACKS_SIGINFO_H
+#define ACE_SIGINFO_IS_SIGINFO_T
+
+#define ACE_HAS_SIGWAIT
+
+#define ACE_HAS_SIG_ATOMIC_T
+
+#define ACE_HAS_STRERROR
+
+#define ACE_LACKS_ACCESS
+
+#define ACE_LACKS_GETHOSTENT
+
+#define ACE_LACKS_GETSERVBYNAME
+
+#define ACE_LACKS_IOSTREAM_FX
+
+#define ACE_LACKS_KEY_T
+
+#define ACE_LACKS_LINEBUFFERED_STREAMBUF
+
+#define ACE_LACKS_LONGLONG_T
+
+#define ACE_LACKS_LSTAT
+
+#define ACE_LACKS_MADVISE
+
+#define ACE_LACKS_MKTEMP
+
+#define ACE_LACKS_MPROTECT
+
+#define ACE_LACKS_MSYNC
+
+#define ACE_LACKS_PARAM_H
+
+#define ACE_LACKS_PWD_FUNCTIONS
+
+#define ACE_LACKS_READLINK
+
+#define ACE_LACKS_RLIMIT
+
+#define ACE_LACKS_RWLOCK_T
+
+#define ACE_LACKS_SBRK
+
+#define ACE_LACKS_SIGNED_CHAR
+
+#define ACE_LACKS_SI_ADDR
+
+#define ACE_LACKS_SOCKETPAIR
+
+#define ACE_LACKS_STRCASECMP
+
+#define ACE_LACKS_STRRECVFD
+
+#define ACE_LACKS_SYSCALL
+
+#define ACE_LACKS_SYSV_MSG_H
+
+#define ACE_LACKS_SYSV_SHMEM
+
+#define ACE_LACKS_SYS_NERR // psos/tm does not have sys_nerr
+
+#define ACE_LACKS_SYS_TYPES_H
+
+#define ACE_LACKS_TIMESPEC_T
+
+#define ACE_LACKS_UCONTEXT_H
+
+#define ACE_LACKS_UNIX_SIGNALS
+
+// #define ACE_LACKS_SYSTIME_H
+
+#define ACE_PAGE_SIZE 4096
+
+#if !defined (ACE_NTRACE)
+# define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+
+#define ACE_PSOS_TM
+#define ACE_PSOS_PROVIDES_ERROR_SYMBOLS_TM
+#define USER_INCLUDE_SYS_TIME_TM
+#define ACE_LACKS_FILELOCKS
+#define ACE_LACKS_SIGSET
+#define ACE_LACKS_SIGACTION
+#define ACE_LACKS_FCNTL
+#define ACE_PSOS_LACKS_PHILE
+#define ACE_PSOS_LACKS_PREPC
+#define ACE_PSOS_CANT_USE_SYS_TYPES
+#define ACE_PSOS_HAS_TIME
+
+//#define ACE_PSOS_SNARFS_HEADER_INFO
+
+#if !defined (ACE_PSOS)
+#define ACE_PSOS
+#endif /* ACE_PSOS */
+
+#if !defined (ACE_PSOS_TBD)
+#define ACE_PSOS_TBD
+#endif /* ACE_PSOS_TBD */
+#define ACE_LACKS_MKFIFO
+#define ACE_MALLOC_ALIGN 8
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-psosim-g++.h b/ace/config-psosim-g++.h
new file mode 100644
index 00000000000..f288b93f18e
--- /dev/null
+++ b/ace/config-psosim-g++.h
@@ -0,0 +1,246 @@
+/* -*- C++ -*- */
+// $Id$
+
+// The following configuration file is designed to work for pSOSim on SunOS5
+// using the GNU/Cygnus g++ 2.7.2 compiler, without repo patch.
+
+///////////////////////////////////////////////////////////////////////////////
+// * IMPORTANT * IMPORTANT * IMPORTANT * IMPORTANT * IMPORTANT * IMPORTANT * //
+// //
+// Because pSOSim includes UNIX system header files in order to do //
+// its emulation of pSOSystSem on Solaris, there are a number of //
+// things that are "available" to ACE on pSOSim that are *not* //
+// really available on pSOSystem. Every effort has been made to //
+// avoid dependencies on these "features" in the ACE pSOSim port, //
+// which has in turn necessarily required pSOSim specific definitions. //
+// //
+// To ease portability between pSOSim and pSOSystem, the definitions //
+// in this file have been separated into three groups: those that //
+// are known to be appropriate for both pSOSim and pSOSystem, those //
+// known to be appropriate for pSOSim but (probably) not for pSOSystem, //
+// and those that are (probably) appropriate for pSOSystem, but are //
+// not appropriate for pSOSim. //
+// //
+// When porting from pSOSim to pSOSystem, it is (probably) a good //
+// idea to leave the definitions in the first category alone, //
+// comment out the definitions in the second category, and uncomment //
+// the definitions in the third category. Additional definitions //
+// may need to be added to the third category, as only those that //
+// were encountered during the pSOSim port were added (that is, one //
+// of the system files included by pSOSim could be compensating for //
+// a definition pSOSystem really needs. //
+// //
+// * IMPORTANT * IMPORTANT * IMPORTANT * IMPORTANT * IMPORTANT * IMPORTANT * //
+///////////////////////////////////////////////////////////////////////////////
+
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+////////////////////////////////////////////////////////////////
+// //
+// Definitions appropriate for both pSOSim and pSOSystem //
+// //
+////////////////////////////////////////////////////////////////
+
+#if ! defined (__ACE_INLINE__)
+# define __ACE_INLINE__
+#endif /* ! __ACE_INLINE__ */
+
+#if defined (__GNUG__)
+# include "ace/config-g++-common.h"
+#endif /* __GNUG__ */
+
+#define ACE_HAS_IP_MULTICAST
+
+#define ACE_HAS_CPLUSPLUS_HEADERS
+
+/* #define ACE_HAS_MINIMUM_IOSTREAMH_INCLUSION */
+
+// #define ACE_LACKS_U_LONG_LONG
+
+#define ACE_LACKS_HRTIME_T
+
+// #define ACE_LACKS_EVENT_T
+
+#define ACE_HAS_VERBOSE_NOTSUP
+
+#define ACE_LACKS_MEMORY_H
+
+#define ACE_LACKS_MALLOC_H
+
+#define ACE_LACKS_MMAP
+
+#define ACE_LACKS_UNIX_DOMAIN_SOCKETS
+
+#define ACE_HAS_NONSTATIC_OBJECT_MANAGER
+
+#define ACE_LACKS_SEMBUF_T
+
+#define ACE_LACKS_EXEC
+
+#define ACE_LACKS_FORK
+
+
+// rename the main entry point
+#define ACE_MAIN extern "C" void root
+
+// All this is commented out for the single threaded port
+/*
+
+#define ACE_HAS_THREADS
+
+#if !defined (ACE_MT_SAFE)
+# define ACE_MT_SAFE 1
+#endif
+
+#define ACE_DEFAULT_THREAD_KEYS 256
+
+#define ACE_LACKS_COND_T
+
+
+*/
+
+#define ACE_HAS_TSS_EMULATION
+
+
+////////////////////////////////////////////////////////////////
+// //
+// Definitions appropriate for pSOSim but not pSOSystem //
+// //
+////////////////////////////////////////////////////////////////
+
+#define ACE_HAS_POSIX_TIME
+
+////////////////////////////////////////////////////////////////
+// //
+// Definitions appropriate for pSOSystem but not pSOSim //
+// //
+////////////////////////////////////////////////////////////////
+
+
+////////////////////////////////////////////////////////////////
+// //
+// Definitions that have not been categorized //
+// //
+////////////////////////////////////////////////////////////////
+
+
+#define ACE_LACKS_PTHREAD_THR_SIGSETMASK
+
+/* #define ACE_HAS_BROKEN_SENDMSG */
+
+/* #define ACE_HAS_BROKEN_WRITEV */
+
+#define ACE_HAS_CHARPTR_SOCKOPT
+
+#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
+
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+
+#define ACE_HAS_MSG
+
+#define ACE_HAS_POSIX_NONBLOCK
+
+#define ACE_HAS_SIGINFO_T
+
+#define ACE_HAS_SIGWAIT
+
+#define ACE_HAS_SIG_ATOMIC_T
+
+#define ACE_HAS_STRERROR
+
+#define ACE_LACKS_ACCESS
+
+#define ACE_LACKS_GETHOSTENT
+
+#define ACE_LACKS_GETSERVBYNAME
+
+#define ACE_LACKS_IOSTREAM_FX
+
+#define ACE_LACKS_KEY_T
+
+#define ACE_LACKS_LINEBUFFERED_STREAMBUF
+
+#define ACE_LACKS_LONGLONG_T
+
+#define ACE_LACKS_LSTAT
+
+#define ACE_LACKS_MADVISE
+
+#define ACE_LACKS_MKTEMP
+
+#define ACE_LACKS_MPROTECT
+
+#define ACE_LACKS_MSYNC
+
+#define ACE_LACKS_PARAM_H
+
+#define ACE_LACKS_PWD_FUNCTIONS
+
+#define ACE_LACKS_READLINK
+
+#define ACE_LACKS_RLIMIT
+
+#define ACE_LACKS_RWLOCK_T
+
+#define ACE_LACKS_SBRK
+
+#define ACE_LACKS_SIGINFO_H
+
+#define ACE_LACKS_SIGNED_CHAR
+
+#define ACE_LACKS_SI_ADDR
+
+#define ACE_LACKS_SOCKETPAIR
+
+#define ACE_LACKS_STRCASECMP
+
+#define ACE_LACKS_STRRECVFD
+
+#define ACE_LACKS_SYSCALL
+
+#define ACE_LACKS_SYSV_MSG_H
+
+#define ACE_LACKS_SYSV_SHMEM
+
+#define ACE_LACKS_SYS_NERR
+
+#define ACE_LACKS_TIMESPEC_T
+
+#define ACE_LACKS_UCONTEXT_H
+
+#define ACE_LACKS_UNIX_SIGNALS
+
+#define ACE_LACKS_UTSNAME_T
+
+// #define ACE_LACKS_SYSTIME_H
+
+#define ACE_PAGE_SIZE 4096
+
+#if !defined (ACE_NTRACE)
+# define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+
+#if !defined (ACE_PSOS)
+#define ACE_PSOS
+#endif /* ACE_PSOS */
+
+#if !defined (ACE_PSOSIM)
+#define ACE_PSOSIM
+#endif /* ACE_PSOSIM */
+
+#if !defined (ACE_PSOS_TBD)
+#define ACE_PSOS_TBD
+#endif /* ACE_PSOS_TBD */
+
+// By default, don't include RCS Id strings in object code.
+#if !defined (ACE_USE_RCSID)
+#define ACE_USE_RCSID 0
+#endif /* #if !defined (ACE_USE_RCSID) */
+#define ACE_LACKS_MKFIFO
+
+#define ACE_MALLOC_ALIGN 8
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-qnx-neutrino.h b/ace/config-qnx-neutrino.h
new file mode 100644
index 00000000000..560e00f175a
--- /dev/null
+++ b/ace/config-qnx-neutrino.h
@@ -0,0 +1,148 @@
+// $Id$
+
+// The following configuration file is designed to work for Neutrino
+// 2.0 (Beta) with GNU C++ and the POSIX (pthread) threads package.
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+#define _POSIX_C_SOURCE 199506
+#define _QNX_SOURCE
+
+// These constants are in i386-nto/include/limits.h, but egcs
+// picks up its own limits.h instead:
+#define _POSIX_NAME_MAX 14 /* Max bytes in a filename */
+#define _POSIX_PATH_MAX 256 /* Num. bytes in pathname (excl. NULL) */
+
+// gcc can do inline
+#if __GNUC__ > 2 || ( __GNUC__ == 2 && __GNUC_MINOR__ >= 8)
+# if !defined (__ACE_INLINE__)
+# define __ACE_INLINE__
+# endif /* ! __ACE_INLINE__ */
+#endif
+
+#if defined(__OPTIMIZE__)
+# if defined(__X86__)
+ // string.h can't be used by ACE with __OPTIMIZE__.
+# undef __OPTIMIZE__
+# include <string.h>
+# define __OPTIMIZE__
+# endif /* __X86__ */
+#endif /* __OPTIMIZE__ */
+
+#include "ace/config-g++-common.h"
+
+// The following defines the Neutrino compiler.
+// gcc should know to call g++ as necessary
+#ifdef __GNUC__
+# define ACE_CC_NAME "gcc"
+#else
+# define ACE_CC_NAME "NTO compiler ??"
+#endif
+
+// /usr/nto/include/float.h defines
+// FLT_MAX_EXP 127
+// DBL_MAX_EXP 1023
+// ace expects 128 & 1024 respectively
+// to set the following macros in ace/Basic_Types.h
+// These macros are:
+// #define ACE_SIZEOF_DOUBLE 8
+// #define ACE_SIZEOF_FLOAT 4
+
+#define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R
+#define ACE_HAS_4_4BSD_SENDMSG_RECVMSG
+#define ACE_HAS_ALLOCA
+#define ACE_HAS_ALLOCA_H
+#define ACE_HAS_AUTOMATIC_INIT_FINI
+#define ACE_HAS_CLOCK_GETTIME
+#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
+#define ACE_HAS_DIRENT
+#define ACE_HAS_GETPAGESIZE
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+#define ACE_HAS_NONSTATIC_OBJECT_MANAGER
+#define ACE_HAS_INLINED_OSCALLS
+#define ACE_HAS_IP_MULTICAST
+#define ACE_HAS_MSG
+#define ACE_HAS_MT_SAFE_MKTIME
+#define ACE_HAS_MUTEX_TIMEOUTS
+#define ACE_HAS_NONCONST_SELECT_TIMEVAL
+#define ACE_HAS_POSIX_SEM
+#define ACE_HAS_POSIX_TIME
+#define ACE_HAS_PTHREADS
+#define ACE_HAS_PTHREADS_STD
+#define ACE_HAS_PTHREAD_SIGMASK
+#define ACE_HAS_P_READ_WRITE
+#define ACE_HAS_REENTRANT_FUNCTIONS
+#define ACE_HAS_SELECT_H
+#define ACE_HAS_SIGINFO_T
+#define ACE_HAS_SIGISMEMBER_BUG
+#define ACE_HAS_SIGWAIT
+#define ACE_HAS_SIG_ATOMIC_T
+#define ACE_HAS_SIG_MACROS
+#define ACE_HAS_SIN_LEN
+#define ACE_HAS_SIZET_SOCKET_LEN
+#define ACE_HAS_SSIZE_T
+#define ACE_HAS_STRERROR
+#define ACE_HAS_STRINGS
+#define ACE_HAS_SVR4_GETTIMEOFDAY
+#define ACE_HAS_TERM_IOCTLS
+#define ACE_HAS_THREADS
+#define ACE_HAS_THREAD_SPECIFIC_STORAGE
+#define ACE_HAS_THR_C_DEST
+#define ACE_HAS_THR_C_FUNC
+#define ACE_HAS_TIMEZONE_GETTIMEOFDAY
+#define ACE_HAS_UALARM
+#define ACE_HAS_UCONTEXT_T
+#define ACE_HAS_VOIDPTR_MMAP
+#define ACE_HAS_VOIDPTR_SOCKOPT
+#define ACE_LACKS_CMSG_DATA_MEMBER
+#define ACE_LACKS_CONDATTR_PSHARED
+#define ACE_LACKS_CONST_TIMESPEC_PTR
+#define ACE_LACKS_FORK
+#define ACE_LACKS_LINEBUFFERED_STREAMBUF
+#define ACE_LACKS_MADVISE
+#define ACE_LACKS_MSGBUF_T
+#define ACE_LACKS_MUTEXATTR_PSHARED
+#define ACE_LACKS_NAMED_POSIX_SEM
+#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS
+#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS
+#define ACE_LACKS_PTHREAD_THR_SIGSETMASK
+#define ACE_LACKS_RPC_H
+#define ACE_LACKS_RTTI
+#define ACE_LACKS_RWLOCK_T
+#define ACE_LACKS_SBRK
+#define ACE_LACKS_SEEKDIR
+#define ACE_LACKS_SOCKET_BUFSIZ
+#define ACE_LACKS_SOCKETPAIR
+#define ACE_LACKS_SOME_POSIX_PROTOTYPES
+#define ACE_LACKS_STREAM_MODULES
+#define ACE_LACKS_STRRECVFD
+#define ACE_LACKS_SYSCALL
+#define ACE_LACKS_SYSTIME_H
+#define ACE_LACKS_SYSV_MSG_H
+#define ACE_LACKS_SYSV_SHMEM
+#define ACE_LACKS_TCP_NODELAY
+#define ACE_LACKS_TELLDIR
+#define ACE_LACKS_TIMESPEC_T
+#define ACE_LACKS_TRUNCATE
+#define ACE_LACKS_T_ERRNO
+#define ACE_LACKS_UALARM_PROTOTYPE
+#define ACE_LACKS_UCONTEXT_H
+#define ACE_LACKS_UNIX_DOMAIN_SOCKETS
+#define ACE_LACKS_U_LONGLONG_T
+#define ACE_MT_SAFE 1
+#define ACE_NEEDS_FUNC_DEFINITIONS
+#define ACE_NEEDS_HUGE_THREAD_STACKSIZE 65536
+#define ACE_TEMPLATES_REQUIRE_SOURCE
+#define ACE_THR_PRI_FIFO_DEF 10
+#define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
+#define ACE_HAS_SIGTIMEDWAIT
+#define ACE_HAS_SIGSUSPEND
+
+#if !defined (ACE_NTRACE)
+# define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-qnx-rtp.h b/ace/config-qnx-rtp.h
new file mode 100644
index 00000000000..e29d051c0a2
--- /dev/null
+++ b/ace/config-qnx-rtp.h
@@ -0,0 +1,195 @@
+// $Id$
+
+// The following configuration file is designed to work for QNX RTP
+// GNU C++ and the POSIX (pthread) threads package. You can get QNX
+// RTP at http://get.qnx.com
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+#define _POSIX_C_SOURCE 199506
+#define _QNX_SOURCE
+
+// These constants are in i386-nto/include/limits.h, but egcs
+// picks up its own limits.h instead:
+#define _POSIX_NAME_MAX 14 /* Max bytes in a filename */
+#define _POSIX_PATH_MAX 256 /* Num. bytes in pathname (excl. NULL) */
+
+// gcc can do inline
+#if __GNUC__ > 2 || ( __GNUC__ == 2 && __GNUC_MINOR__ >= 8)
+# if !defined (__ACE_INLINE__)
+# define __ACE_INLINE__
+# endif /* ! __ACE_INLINE__ */
+#endif
+
+#if defined(__OPTIMIZE__)
+# if defined(__X86__)
+ // string.h can't be used by ACE with __OPTIMIZE__.
+# undef __OPTIMIZE__
+# include <string.h>
+# define __OPTIMIZE__
+# endif /* __X86__ */
+#endif /* __OPTIMIZE__ */
+
+#include "ace/config-g++-common.h"
+
+// The following defines the Neutrino compiler.
+// gcc should know to call g++ as necessary
+#ifdef __GNUC__
+# define ACE_CC_NAME "gcc"
+#else
+# define ACE_CC_NAME "QNX-RTP compiler ??"
+#endif
+
+// /usr/nto/include/float.h defines
+// FLT_MAX_EXP 127
+// DBL_MAX_EXP 1023
+// ace expects 128 & 1024 respectively
+// to set the following macros in ace/Basic_Types.h
+// These macros are:
+#define ACE_SIZEOF_DOUBLE 8
+#define ACE_SIZEOF_FLOAT 4
+
+/////////////////////////////////////////////////////////////////
+// Definition of the features that are available.
+//
+// ACE_HAS Section
+/////////////////////////////////////////////////////////////////
+
+#define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R
+#define ACE_HAS_4_4BSD_SENDMSG_RECVMSG
+#define ACE_HAS_ALLOCA
+#define ACE_HAS_ALLOCA_H
+#define ACE_HAS_AUTOMATIC_INIT_FINI
+#define ACE_HAS_CLOCK_GETTIME
+#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
+#define ACE_HAS_DIRENT
+#define ACE_HAS_GETPAGESIZE
+// Enable gperf, this is a hosted configuration.
+#define ACE_HAS_GPERF
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+//#define ACE_HAS_NONSTATIC_OBJECT_MANAGER
+#define ACE_HAS_INLINED_OSCALLS
+#define ACE_HAS_IP_MULTICAST
+#define ACE_HAS_MSG
+#define ACE_HAS_MT_SAFE_MKTIME
+#define ACE_HAS_MUTEX_TIMEOUTS
+#define ACE_HAS_NONCONST_SELECT_TIMEVAL
+#define ACE_HAS_POSIX_SEM
+#define ACE_HAS_POSIX_TIME
+#define ACE_HAS_PTHREADS
+#define ACE_HAS_PTHREADS_STD
+#define ACE_HAS_PTHREAD_SIGMASK
+#define ACE_HAS_P_READ_WRITE
+#define ACE_HAS_REENTRANT_FUNCTIONS
+#define ACE_HAS_SELECT_H
+#define ACE_HAS_SIGINFO_T
+#define ACE_HAS_SIGISMEMBER_BUG
+#define ACE_HAS_SIGWAIT
+#define ACE_HAS_SIG_ATOMIC_T
+#define ACE_HAS_SIG_MACROS
+#define ACE_HAS_SIN_LEN
+#define ACE_HAS_SIZET_SOCKET_LEN
+#define ACE_HAS_SSIZE_T
+#define ACE_HAS_STRERROR
+#define ACE_HAS_STRINGS
+#define ACE_HAS_SVR4_GETTIMEOFDAY
+#define ACE_HAS_TERM_IOCTLS
+#define ACE_HAS_THREADS
+#define ACE_HAS_THREAD_SPECIFIC_STORAGE
+#define ACE_HAS_THR_C_DEST
+#define ACE_HAS_THR_C_FUNC
+#define ACE_HAS_TIMEZONE_GETTIMEOFDAY
+#define ACE_HAS_UALARM
+#define ACE_HAS_UCONTEXT_T
+#define ACE_HAS_VOIDPTR_MMAP
+#define ACE_HAS_VOIDPTR_SOCKOPT
+
+/////////////////////////////////////////////////////////////////
+// Definition of the features that are not available.
+//
+// ACE_LACKS Section
+/////////////////////////////////////////////////////////////////
+#define ACE_LACKS_CMSG_DATA_MEMBER
+#define ACE_LACKS_CONDATTR_PSHARED
+#define ACE_LACKS_CONST_TIMESPEC_PTR
+#define ACE_LACKS_LINEBUFFERED_STREAMBUF
+#define ACE_LACKS_MADVISE
+#define ACE_LACKS_MSGBUF_T
+#define ACE_LACKS_MUTEXATTR_PSHARED
+#define ACE_LACKS_NAMED_POSIX_SEM
+#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS
+#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS
+#define ACE_LACKS_PTHREAD_THR_SIGSETMASK
+#define ACE_LACKS_RPC_H
+#define ACE_LACKS_RTTI
+#define ACE_LACKS_RWLOCK_T
+#define ACE_LACKS_SBRK
+#define ACE_LACKS_SEEKDIR
+#define ACE_LACKS_SOCKET_BUFSIZ
+#define ACE_LACKS_SOCKETPAIR // Even if the QNX RTP docs says that socket pair are
+ // available, there is actually no implementation of
+ // soket-pairs.
+#define ACE_LACKS_SOME_POSIX_PROTOTYPES
+#define ACE_LACKS_STREAM_MODULES
+#define ACE_LACKS_STRRECVFD
+#define ACE_LACKS_SYSCALL
+#define ACE_LACKS_SYSTIME_H
+#define ACE_LACKS_SYSV_MSG_H
+#define ACE_LACKS_SYSV_SHMEM
+//#define ACE_LACKS_TCP_NODELAY // Based on the QNX RTP documentation, this option seems to
+ // to be supported.
+#define ACE_LACKS_TELLDIR
+#define ACE_LACKS_TIMESPEC_T
+#define ACE_LACKS_TRUNCATE
+#define ACE_LACKS_T_ERRNO
+#define ACE_LACKS_UALARM_PROTOTYPE
+#define ACE_LACKS_UCONTEXT_H
+#define ACE_LACKS_UNIX_DOMAIN_SOCKETS
+#define ACE_LACKS_U_LONGLONG_T
+
+#define ACE_LACKS_RLIMIT // QNX rlimit syscalls don't work properly with ACE.
+
+#define ACE_MT_SAFE 1
+#define ACE_NEEDS_FUNC_DEFINITIONS
+#define ACE_NEEDS_HUGE_THREAD_STACKSIZE 64000
+#define ACE_TEMPLATES_REQUIRE_SOURCE
+#define ACE_THR_PRI_FIFO_DEF 10
+#define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
+#define ACE_HAS_SIGTIMEDWAIT
+#define ACE_HAS_SIGSUSPEND
+
+#define ACE_HAS_BROKEN_PREALLOCATED_OBJECTS_AFTER_FORK 1
+
+#define ACE_SIZEOF_WCHAR 4
+
+// Not really, but the prototype returns wchar_t instead of wchar_t *
+#define ACE_LACKS_WCSSTR
+
+// No prototypes
+#define ACE_LACKS_ITOW
+#define ACE_LACKS_WCSICMP
+#define ACE_LACKS_WCSNICMP
+#define ACE_LACKS_WCSDUP
+
+// And these have prototypes but no implementation
+#define ACE_LACKS_WCSLEN
+#define ACE_LACKS_WCSNCMP
+#define ACE_LACKS_WCSCPY
+#define ACE_LACKS_WCSNCPY
+#define ACE_LACKS_TOWLOWER
+#define ACE_LACKS_WCSCMP
+#define ACE_LACKS_WCSCAT
+#define ACE_LACKS_WCSNCAT
+#define ACE_LACKS_WCSSPN
+#define ACE_LACKS_WCSCHR
+#define ACE_LACKS_WCSPBRK
+#define ACE_LACKS_WCSRCHR
+
+#if !defined (ACE_NTRACE)
+# define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-rtems.h b/ace/config-rtems.h
new file mode 100644
index 00000000000..e0a1d102255
--- /dev/null
+++ b/ace/config-rtems.h
@@ -0,0 +1,164 @@
+/* -*- C -*- */
+// $Id$
+
+/* The following configuration file is designed to work for RTEMS
+ platforms using GNU C.
+*/
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+
+// begin of linux-common.h
+
+/* #define ACE_HAS_BYTESEX_H */
+
+#if ! defined (__ACE_INLINE__)
+#define __ACE_INLINE__
+#endif /* ! __ACE_INLINE__ */
+
+// Needed to make some prototypes visible.
+// #if ! defined (_GNU_SOURCE)
+// #define _GNU_SOURCE
+// #endif /* ! _GNU_SOURCE */
+
+// First the machine specific part
+// There are no known port specific issues with the RTEMS port of ACE.
+// XXX Pentium and PowerPC have high res timer support in ACE.
+
+// Then the compiler specific parts
+#if defined (__GNUG__)
+ // config-g-common.h undef's ACE_HAS_STRING_CLASS with -frepo, so
+ // this must appear before its #include.
+# define ACE_HAS_STRING_CLASS
+# include "ace/config-g-common.h"
+#elif defined (__KCC)
+# define ACE_HAS_STRING_CLASS
+# include "ace/config-kcc-common.h"
+#elif defined (__DECCXX)
+# define ACE_CONFIG_INCLUDE_CXX_COMMON
+# include "ace/config-cxx-common.h"
+#else /* ! __GNUG__ && ! __KCC && !__DECCXX */
+# error unsupported compiler in ace/config-linux-common.h
+#endif /* ! __GNUG__ && ! __KCC */
+
+// Completely common part :-)
+
+#define ACE_HAS_NONSTATIC_OBJECT_MANAGER
+# if !defined (ACE_MAIN)
+# define ACE_MAIN ace_main
+# endif /* ! ACE_MAIN */
+
+// Yes, we do have threads.
+#define ACE_HAS_THREADS
+// And they're even POSIX pthreads (MIT implementation)
+#define ACE_HAS_PTHREADS
+// ... and the final standard even!
+#define ACE_HAS_PTHREADS_STD
+#define ACE_HAS_THREAD_SPECIFIC_STORAGE
+
+// XXX thread defines go here
+#define ACE_MT_SAFE 1
+#define ACE_PAGE_SIZE 4096
+#define ACE_HAS_ALT_CUSERID
+#define ACE_HAS_4_4BSD_SENDMSG_RECVMSG
+#define ACE_HAS_CLOCK_GETTIME
+/* #define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES */
+#define ACE_HAS_DIRENT
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+/* #define ACE_HAS_LLSEEK */
+#define ACE_HAS_MEMCHR
+#define ACE_HAS_MSG
+#define ACE_HAS_MT_SAFE_MKTIME
+#define ACE_HAS_POSIX_SEM
+#define ACE_HAS_POSIX_TIME
+#define ACE_HAS_PROCESS_ENUM
+#define ACE_HAS_REENTRANT_FUNCTIONS
+#define ACE_HAS_SIGINFO_T
+#define ACE_HAS_SIGSUSPEND
+#define ACE_HAS_SSIZE_T
+/* #define ACE_HAS_STANDARD_CPP_LIBRARY */
+#define ACE_HAS_STRERROR
+#define ACE_HAS_SUNOS4_GETTIMEOFDAY
+#define ACE_HAS_SYS_ERRLIST
+#define ACE_HAS_SYS_FILIO_H
+#define ACE_HAS_TIMEZONE_GETTIMEOFDAY
+#define ACE_LACKS_DIFFTIME
+#define ACE_LACKS_EXEC
+#define ACE_LACKS_FILELOCKS
+#define ACE_LACKS_FORK
+#define ACE_LACKS_GETOPT_PROTO
+#define ACE_LACKS_GETPGID
+#define ACE_LACKS_TIMESPEC_T
+#define ACE_LACKS_MADVISE
+#define ACE_LACKS_MKFIFO
+#define ACE_LACKS_MMAP
+#define ACE_LACKS_MPROTECT
+#define ACE_LACKS_MSYNC
+#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS
+/* #define ACE_LACKS_POSIX_PROTOTYPES */
+ // ... for System V functions like shared memory and message queues
+#define ACE_LACKS_PTHREAD_THR_SIGSETMASK
+#define ACE_LACKS_READDIR_R
+#define ACE_LACKS_READLINK
+#define ACE_HAS_BROKEN_READV
+#define ACE_LACKS_READV
+#define ACE_LACKS_RLIMIT
+#define ACE_LACKS_RLIMIT_PROTOTYPE
+#define ACE_LACKS_RWLOCK_T
+#define ACE_LACKS_SBRK
+#define ACE_LACKS_SEMBUF_T
+#define ACE_LACKS_SETREUID
+#define ACE_LACKS_SETREUID_PROTOTYPE
+#define ACE_LACKS_SETREGID
+#define ACE_LACKS_SETREGID_PROTOTYPE
+#define ACE_LACKS_SOME_POSIX_PROTOTYPES
+ // ... for System V functions like shared memory and message queues
+#define ACE_LACKS_NATIVE_STRPTIME
+#define ACE_LACKS_STRRECVFD
+#define ACE_LACKS_SI_ADDR
+#define ACE_LACKS_SOCKETPAIR
+#define ACE_LACKS_SYSV_MSG_H
+#define ACE_LACKS_SYSV_SHMEM
+#define ACE_LACKS_SYSCALL
+#define ACE_LACKS_SYS_NERR
+#define ACE_LACKS_UALARM_PROTOTYPE
+#define ACE_LACKS_UCONTEXT_H
+#define ACE_HAS_BROKEN_WRITEV
+#define ACE_LACKS_WRITEV
+#define ACE_NEEDS_HUGE_THREAD_STACKSIZE 65536
+#define ACE_NEEDS_SCHED_H
+#define ACE_HAS_POSIX_NONBLOCK
+
+/* What should these be set to?.
+
+ACE_TLI_TCP_DEVICE
+ACE_HAS_RECVFROM_TIMEDWAIT
+ACE_HAS_SEND_TIMEDWAIT
+ACE_HAS_SENDTO_TIMEDWAIT
+ACE_HAS_IP_MULTICAST
+ACE_HAS_NONCONST_SELECT_TIMEVAL
+ACE_HAS_WCHAR_TYPEDEFS_CHAR
+ACE_HAS_WCHAR_TYPEDEFS_USHORT
+ACE_HAS_SIGNAL_SAFE_OS_CALLS
+ACE_HAS_SIZET_SOCKET_LEN
+ACE_HAS_SOCKADDR_MSG_NAME
+ACE_HAS_SOCKLEN_T
+ACE_HAS_STRBUF_T
+ACE_HAS_SYS_SIGLIST
+ACE_HAS_TERM_IOCTLS
+ACE_HAS_THREAD_SAFE_ACCEPT
+ACE_LACKS_COND_TIMEDWAIT_RESET
+ACE_LACKS_MSG_ACCRIGHTS
+ACE_LACKS_NETDB_REENTRANT_FUNCTIONS
+
+Why don't we have alloca.h?
+ */
+
+#include /**/ <pthread.h>
+
+extern "C"
+{
+ int getopt (int, char *const *, const char *);
+}
+
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-sco-4.2-nothread.h b/ace/config-sco-4.2-nothread.h
new file mode 100644
index 00000000000..bb7df289328
--- /dev/null
+++ b/ace/config-sco-4.2-nothread.h
@@ -0,0 +1,116 @@
+/* -*- C++ -*- */
+// $Id$
+
+// The following configuration file is designed to work for SCO UNIX
+// version 4.2 without threads.
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+#if defined (__GNUG__)
+# include "ace/config-g++-common.h"
+ // This config file has not been tested with ACE_HAS_TEMPLATE_SPECIALIZATION.
+ // Maybe it will work?
+# undef ACE_HAS_TEMPLATE_SPECIALIZATION
+#endif /* __GNUG__ */
+
+// Compiling for SCO.
+#if !defined (SCO)
+#define SCO
+#endif /* SCO */
+
+#if ! defined (__ACE_INLINE__)
+#define __ACE_INLINE__
+#endif /* ! __ACE_INLINE__ */
+
+// Optimize ACE_Handle_Set for select().
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+#define ACE_DEFAULT_CLOSE_ALL_HANDLES 0
+
+#if defined (SCO) && !defined (MAXPATHLEN)
+#define MAXPATHLEN 1023
+#endif /* SCO */
+
+#define ACE_HAS_SIG_MACROS
+#define ACE_LACKS_UNIX_DOMAIN_SOCKETS
+#define ACE_LACKS_SYSCALL
+#define ACE_LACKS_STRRECVFD
+#define ACE_LACKS_MMAP
+#define ACE_LACKS_SOCKETPAIR
+#define ACE_HAS_SEMUN
+#define ACE_LACKS_MSYNC
+#define ACE_LACKS_MADVISE
+#define ACE_LACKS_WRITEV
+#define ACE_LACKS_READV
+#define ACE_NEEDS_FTRUNCATE
+#define ACE_LACKS_RLIMIT
+#define ACE_LACKS_RECVMSG
+#define ACE_LACKS_SENDMSG
+
+// Platform supports System V IPC (most versions of UNIX, but not Win32)
+#define ACE_HAS_SYSV_IPC
+
+// Platform supports recvmsg and sendmsg.
+//#define ACE_HAS_MSG
+
+// Compiler/platform contains the <sys/syscall.h> file.
+//#define ACE_HAS_SYSCALL_H
+
+// Fixes a problem with HP/UX not wrapping the mmap(2) header files
+// with extern "C".
+//#define ACE_HAS_BROKEN_MMAP_H
+
+// Prototypes for both signal() and struct sigaction are consistent.
+#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
+
+// Compiler/platform has correctly prototyped header files.
+#define ACE_HAS_CPLUSPLUS_HEADERS
+
+// Header files lack t_errno for ACE_TLI.
+//#define ACE_LACKS_T_ERRNO
+
+// Compiler/platform supports poll().
+#define ACE_HAS_POLL
+
+// Platform supports POSIX O_NONBLOCK semantics.
+#define ACE_HAS_POSIX_NONBLOCK
+
+// Compiler/platform defines the sig_atomic_t typedef
+#define ACE_HAS_SIG_ATOMIC_T
+
+// Compiler supports the ssize_t typedef.
+//#define ACE_HAS_SSIZE_T
+
+// Defines the page size of the system.
+#define ACE_PAGE_SIZE 4096
+
+// Compiler/platform supports strerror ().
+#define ACE_HAS_STRERROR
+
+// ???
+#define ACE_HAS_SUNOS4_GETTIMEOFDAY
+
+// HP/UX has an undefined syscall for GETRUSAGE...
+//#define ACE_HAS_SYSCALL_GETRUSAGE
+
+// Note, this only works if the flag is set above!
+//#define ACE_HAS_GETRUSAGE
+
+// Platform uses int for select() rather than fd_set.
+#define ACE_SELECT_USES_INT
+
+// Platform has prototypes for ACE_TLI.
+//#define ACE_HAS_TLI_PROTOTYPES
+// Platform has the XLI version of ACE_TLI.
+// #define ACE_HAS_XLI
+
+#define ACE_HAS_GNU_CSTRING_H
+
+// Turns off the tracing feature.
+#if !defined (ACE_NTRACE)
+#define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+#define ACE_HAS_DIRENT
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-sco-5.0.0-fsu-pthread.h b/ace/config-sco-5.0.0-fsu-pthread.h
new file mode 100644
index 00000000000..2c873f48c87
--- /dev/null
+++ b/ace/config-sco-5.0.0-fsu-pthread.h
@@ -0,0 +1,15 @@
+/* -*- C++ -*- */
+// $Id$
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+#include "ace/config-g++-common.h"
+#include "ace/config-sco-5.0.0.h"
+#include "ace/config-fsu-pthread.h"
+
+#define ACE_HAS_GNU_CSTRING_H
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-sco-5.0.0-mit-pthread.h b/ace/config-sco-5.0.0-mit-pthread.h
new file mode 100644
index 00000000000..70ce1167694
--- /dev/null
+++ b/ace/config-sco-5.0.0-mit-pthread.h
@@ -0,0 +1,178 @@
+/* -*- C++ -*- */
+// $Id$
+
+// The following configuration file is designed to work for SCO UNIX
+// version 5.0 with MIT pthreads.
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+#if !defined (__ACE_INLINE__)
+#define __ACE_INLINE__
+#endif /* ! __ACE_INLINE__ */
+
+#if defined (__GNUG__)
+# include "ace/config-g++-common.h"
+ // This config file has not been tested with ACE_HAS_TEMPLATE_SPECIALIZATION.
+ // Maybe it will work?
+# undef ACE_HAS_TEMPLATE_SPECIALIZATION
+#endif /* __GNUG__ */
+
+// Compiling for SCO.
+#if !defined (SCO)
+#define SCO
+#define _SVID3
+#endif /* SCO */
+
+#define ACE_DEFAULT_CLOSE_ALL_HANDLES 0
+#define ACE_HAS_SIG_MACROS
+// Optimize ACE_Handle_Set for select().
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+
+#if defined (SCO) && !defined (MAXPATHLEN)
+#define MAXPATHLEN 1023
+#endif /* SCO */
+
+#define ACE_LACKS_PWD_FUNCTIONS
+#define ACE_HAS_BIG_FD_SET
+
+//#define ACE_LACKS_SYSCALL
+//#define ACE_LACKS_STRRECVFD
+//#define ACE_NEEDS_FTRUNCATE
+#define ACE_LACKS_RLIMIT
+#define ACE_LACKS_MADVISE
+
+#define ACE_HAS_REENTRANT_FUNCTIONS
+
+// Platform supports System V IPC (most versions of UNIX, but not Win32)
+#define ACE_HAS_SYSV_IPC
+#define ACE_HAS_NONCONST_MSGSND
+// #define ACE_LACKS_POSIX_PROTOTYPES
+#define ACE_HAS_SVR4_DYNAMIC_LINKING
+#define ACE_HAS_AUTOMATIC_INIT_FINI
+
+// Platform supports Term Ioctls
+#define ACE_HAS_TERM_IOCTLS
+
+// Platform supports recvmsg and sendmsg.
+#define ACE_HAS_MSG
+
+// Compiler/platform contains the <sys/syscall.h> file.
+//#define ACE_HAS_SYSCALL_H
+
+// Fixes a problem with HP/UX not wrapping the mmap(2) header files
+// with extern "C".
+//#define ACE_HAS_BROKEN_MMAP_H
+
+// Prototypes for both signal() and struct sigaction are consistent.
+#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
+
+// Compiler/platform has correctly prototyped header files.
+#define ACE_HAS_CPLUSPLUS_HEADERS
+
+// Header files lack t_errno for ACE_TLI.
+//#define ACE_LACKS_T_ERRNO
+
+// Compiler/platform supports poll().
+// #define ACE_HAS_POLL
+
+// Platform supports POSIX O_NONBLOCK semantics.
+#define ACE_HAS_POSIX_NONBLOCK
+
+// Compiler/platform defines the sig_atomic_t typedef
+#define ACE_HAS_SIG_ATOMIC_T
+
+// Compiler supports the ssize_t typedef.
+//#define ACE_HAS_SSIZE_T
+
+// Defines the page size of the system.
+#define ACE_PAGE_SIZE 4096
+
+// Compiler/platform supports strerror ().
+#define ACE_HAS_STRERROR
+
+// ???
+// #define ACE_HAS_SUNOS4_GETTIMEOFDAY
+#define ACE_HAS_TIMEZONE_GETTIMEOFDAY
+
+// HP/UX has an undefined syscall for GETRUSAGE...
+//#define ACE_HAS_SYSCALL_GETRUSAGE
+
+// Note, this only works if the flag is set above!
+//#define ACE_HAS_GETRUSAGE
+
+// Platform uses int for select() rather than fd_set.
+#define ACE_HAS_SELECT_H
+
+// Platform has prototypes for ACE_TLI.
+#define ACE_HAS_TLI
+//#define ACE_HAS_SVR4_TLI
+#define ACE_HAS_T_OPMGMT
+#define ACE_HAS_TLI_PROTOTYPES
+#define ACE_HAS_TIMOD_H
+#define ACE_HAS_TIUSER_H
+#define ACE_LACKS_T_ERRNO
+
+// Platform has the XLI version of ACE_TLI.
+// #define ACE_HAS_XLI
+
+#define ACE_HAS_GNU_CSTRING_H
+
+// Turns off the tracing feature.
+#if !defined (ACE_NTRACE)
+#define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+
+#define ACE_HAS_SIGINFO_T
+#define ACE_HAS_UCONTEXT_T
+
+#define ACE_LACKS_SYSTIME_H
+#define ACE_HAS_INLINED_OSCALLS
+
+#define ACE_HAS_STRBUF_T
+#define ACE_HAS_STREAMS
+//#define ACE_HAS_STREAM_PIPES
+#define ACE_HAS_IP_MULTICAST
+
+// Threads
+#define ACE_HAS_THREADS
+#if !defined (ACE_MT_SAFE)
+# define ACE_MT_SAFE 1
+#endif
+#define ACE_HAS_THREAD_SPECIFIC_STORAGE
+#define ACE_HAS_PTHREADS
+#define ACE_HAS_PTHREADS_STD
+#define ACE_LACKS_PTHREAD_CANCEL
+#define ACE_HAS_SIGWAIT
+//#define ACE_HAS_PTHREAD_YIELD_VOID_PTR
+//#define ACE_HAS_PTHREAD_ATTR_INIT
+//#define ACE_HAS_PTHREAD_ATTR_DESTROY
+#define ACE_LACKS_THREAD_PROCESS_SCOPING
+//#define ACE_LACKS_THREAD_STACK_ADDR
+// If ACE doesn't compile due to the lack of these methods, please
+// send email to schmidt@cs.wustl.edu reporting this.
+// #define ACE_LACKS_CONDATTR_PSHARED
+// #define ACE_LACKS_MUTEXATTR_PSHARED
+#define ACE_LACKS_RWLOCK_T
+#define ACE_LACKS_SETSCHED
+#define ACE_HAS_POSIX_TIME
+
+#include <pthread.h>
+#include <sys/regset.h>
+
+#define ACE_LACKS_TIMEDWAIT_PROTOTYPES
+#define ACE_HAS_RECV_TIMEDWAIT
+#define ACE_HAS_RECVFROM_TIMEDWAIT
+#define ACE_HAS_RECVMSG_TIMEDWAIT
+#define ACE_HAS_SEND_TIMEDWAIT
+#define ACE_HAS_SENDTO_TIMEDWAIT
+#define ACE_HAS_SENDMSG_TIMEDWAIT
+#define ACE_HAS_READ_TIMEDWAIT
+#define ACE_HAS_READV_TIMEDWAIT
+#define ACE_HAS_WRITE_TIMEDWAIT
+#define ACE_HAS_WRITEV_TIMEDWAIT
+#define ACE_HAS_DIRENT
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-sco-5.0.0-nothread.h b/ace/config-sco-5.0.0-nothread.h
new file mode 100644
index 00000000000..ca241adbd1d
--- /dev/null
+++ b/ace/config-sco-5.0.0-nothread.h
@@ -0,0 +1,14 @@
+/* -*- C++ -*- */
+// $Id$
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+#include "ace/config-g++-common.h"
+#include "ace/config-sco-5.0.0.h"
+
+#define ACE_HAS_GNU_CSTRING_H
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-sco-5.0.0.h b/ace/config-sco-5.0.0.h
new file mode 100644
index 00000000000..b8a2b738182
--- /dev/null
+++ b/ace/config-sco-5.0.0.h
@@ -0,0 +1,110 @@
+/* -*- C++ -*- */
+// $Id$
+
+#ifndef ACE_CONFIG_SCO_5_0_0_H
+#define ACE_CONFIG_SCO_5_0_0_H
+#include "ace/pre.h"
+
+// Compiling for SCO.
+#if !defined (SCO)
+#define SCO
+#endif /* SCO */
+
+#if defined (SCO) && !defined (MAXPATHLEN)
+#define MAXPATHLEN 1023
+#endif /* SCO */
+
+#define ACE_HAS_NONCONST_SELECT_TIMEVAL
+#define ACE_HAS_SIG_MACROS
+#define ACE_LACKS_CONST_TIMESPEC_PTR
+#define ACE_LACKS_SYSCALL
+#define ACE_LACKS_STRRECVFD
+#define ACE_NEEDS_FTRUNCATE
+#define ACE_LACKS_MADVISE
+#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS
+
+#define ACE_DEFAULT_CLOSE_ALL_HANDLES 0
+
+// Compiler doesn't support static data member templates.
+//#define ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES
+
+// Platform supports System V IPC (most versions of UNIX, but not Win32)
+#define ACE_HAS_SYSV_IPC
+#define ACE_HAS_NONCONST_MSGSND
+#define ACE_HAS_BIG_FD_SET
+// #define ACE_LACKS_POSIX_PROTOTYPES
+#define ACE_HAS_SVR4_DYNAMIC_LINKING
+#define ACE_HAS_AUTOMATIC_INIT_FINI
+
+// Platform supports Term Ioctls
+#define ACE_HAS_TERM_IOCTLS
+
+// Compiler/platform contains the <sys/syscall.h> file.
+//#define ACE_HAS_SYSCALL_H
+
+// Fixes a problem with HP/UX not wrapping the mmap(2) header files
+// with extern "C".
+//#define ACE_HAS_BROKEN_MMAP_H
+
+// Prototypes for both signal() and struct sigaction are consistent.
+#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
+
+// Compiler/platform has correctly prototyped header files.
+#define ACE_HAS_CPLUSPLUS_HEADERS
+
+// Header files lack t_errno for ACE_TLI.
+//#define ACE_LACKS_T_ERRNO
+
+// Compiler/platform supports poll().
+// #define ACE_HAS_POLL
+
+// Platform supports POSIX O_NONBLOCK semantics.
+#define ACE_HAS_POSIX_NONBLOCK
+
+// Compiler/platform defines the sig_atomic_t typedef
+#define ACE_HAS_SIG_ATOMIC_T
+
+// Compiler supports the ssize_t typedef.
+//#define ACE_HAS_SSIZE_T
+
+// Defines the page size of the system.
+#define ACE_PAGE_SIZE 4096
+
+// Compiler/platform supports strerror ().
+#define ACE_HAS_STRERROR
+
+#define ACE_HAS_TIMEZONE_GETTIMEOFDAY
+
+// HP/UX has an undefined syscall for GETRUSAGE...
+//#define ACE_HAS_SYSCALL_GETRUSAGE
+
+// Note, this only works if the flag is set above!
+//#define ACE_HAS_GETRUSAGE
+
+// Platform uses int for select() rather than fd_set.
+#define ACE_HAS_SELECT_H
+
+// Platform has prototypes for ACE_TLI.
+#define ACE_HAS_TLI_PROTOTYPES
+// Platform has the XLI version of ACE_TLI.
+// #define ACE_HAS_XLI
+
+// Turns off the tracing feature.
+#if !defined (ACE_NTRACE)
+#define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+
+#define ACE_HAS_SIGINFO_T
+#define ACE_HAS_UCONTEXT_T
+
+#define ACE_LACKS_SYSTIME_H
+#define ACE_LACKS_STRCASECMP
+
+// #define ACE_HAS_POSIX_TIME
+#define ACE_HAS_IP_MULTICAST
+#define ACE_HAS_DIRENT
+#define ACE_LACKS_READDIR_R
+#define ACE_HAS_GPERF
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_SCO_5_0_0_H */
diff --git a/ace/config-sunos4-g++.h b/ace/config-sunos4-g++.h
new file mode 100644
index 00000000000..b1d5f485e00
--- /dev/null
+++ b/ace/config-sunos4-g++.h
@@ -0,0 +1,105 @@
+/* -*- C++ -*- */
+// $Id$
+
+// for SunOS4 platforms using the GNU g++ compiler
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+#if ! defined (__ACE_INLINE__)
+#define __ACE_INLINE__
+#endif /* ! __ACE_INLINE__ */
+
+// config-g++-common.h undef's ACE_HAS_STRING_CLASS with -frepo, so
+// this must appear before its #include.
+#define ACE_HAS_STRING_CLASS
+
+#include "ace/config-g++-common.h"
+// This config file has not been tested with ACE_HAS_TEMPLATE_SPECIALIZATION.
+// Maybe it will work?
+#undef ACE_HAS_TEMPLATE_SPECIALIZATION
+
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+
+#define ACE_LACKS_SYSTIME_H
+#define ACE_LACKS_GETPGID
+#define ACE_LACKS_SETPGID
+#define ACE_LACKS_SETREGID
+#define ACE_LACKS_SETREUID
+
+#define ACE_HAS_CHARPTR_SPRINTF
+#define ACE_HAS_UNION_WAIT
+
+// Platform supports System V IPC (most versions of UNIX, but not Win32)
+#define ACE_HAS_SYSV_IPC
+
+// Platform supports recvmsg and sendmsg.
+#define ACE_HAS_MSG
+
+// Compiler/platform contains the <sys/syscall.h> file.
+#define ACE_HAS_SYSCALL_H
+
+// Compiler/platform has the getrusage() system call.
+#define ACE_HAS_GETRUSAGE
+
+// Compiler/platform supports strerror ().
+// #define ACE_HAS_STRERROR
+#define ACE_HAS_SYS_ERRLIST
+
+// Header files lack t_errno for ACE_TLI.
+// #define ACE_LACKS_T_ERRNO
+
+// Compiler/platform uses old malloc()/free() prototypes (ugh).
+#define ACE_HAS_OLD_MALLOC
+
+// Defines the page size of the system.
+#define ACE_PAGE_SIZE 4096
+
+// Compiler/platform supports poll().
+#define ACE_HAS_POLL
+
+// Compiler/platform defines a union semun for SysV shared memory.
+#define ACE_HAS_SEMUN
+
+// Compiler/platform provides the sockio.h file.
+#define ACE_HAS_SOCKIO_H
+
+// Compiler/platform supports struct strbuf
+#define ACE_HAS_STRBUF_T
+
+// Platform supports STREAMS.
+#define ACE_HAS_STREAMS
+
+// Compiler/platform supports SVR4 dynamic linking semantics.
+#define ACE_HAS_SVR4_DYNAMIC_LINKING
+
+// Platform provides <sys/filio.h> header.
+#define ACE_HAS_SYS_FILIO_H
+// Platform supports ACE_TLI tiuser header.
+// #define ACE_HAS_TIUSER_H
+
+// Platform has ACE_TLI.
+// #define ACE_HAS_TLI
+
+#define ACE_LACKS_U_LONGLONG_T
+
+#define ACE_LACKS_DIFFTIME
+#define ACE_HAS_DIRENT
+
+#define ACE_HAS_SUNOS4_SIGNAL_T
+#define ACE_HAS_CPLUSPLUS_HEADERS
+#if (__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ > 6))
+#define ACE_HAS_SYSENT_H
+#endif
+#define ACE_HAS_ALLOCA
+// Compiler/platform has <alloca.h>
+#define ACE_HAS_ALLOCA_H
+#define ACE_HAS_SVR4_GETTIMEOFDAY
+// Turns off the tracing feature.
+#if !defined (ACE_NTRACE)
+#define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-sunos4-lucid3.2.h b/ace/config-sunos4-lucid3.2.h
new file mode 100644
index 00000000000..e0738e124a8
--- /dev/null
+++ b/ace/config-sunos4-lucid3.2.h
@@ -0,0 +1,95 @@
+/* -*- C++ -*- */
+// $Id$
+
+// The following configuration file is designed to work
+// for SunOS4 platforms using the Lucid 3.2 compiler.
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+#define ACE_LACKS_GETPGID
+#define ACE_LACKS_SETPGID
+
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+
+#define ACE_HAS_SYS_ERRLIST
+#define ACE_HAS_CHARPTR_SPRINTF
+#define ACE_HAS_UNION_WAIT
+
+// Platform supports System V IPC (most versions of UNIX, but not Win32)
+#define ACE_HAS_SYSV_IPC
+
+// Platform supports recvmsg and sendmsg.
+#define ACE_HAS_MSG
+
+// Compiler/platform contains the <sys/syscall.h> file.
+#define ACE_HAS_SYSCALL_H
+
+// Compiler/platform supports alloca()
+#define ACE_HAS_ALLOCA
+
+// Compiler/platform has <alloca.h>
+#define ACE_HAS_ALLOCA_H
+
+// Compiler/platform has correctly prototyped header files.
+#define ACE_HAS_CPLUSPLUS_HEADERS
+
+// Compiler/platform has the getrusage() system call.
+#define ACE_HAS_GETRUSAGE
+
+// Header files lack t_errno for ACE_TLI.
+// #define ACE_LACKS_T_ERRNO
+
+// Defines the page size of the system.
+#define ACE_PAGE_SIZE 4096
+
+// Compiler/platform supports poll().
+#define ACE_HAS_POLL
+
+// Compiler/platform defines a union semun for SysV shared memory.
+#define ACE_HAS_SEMUN
+
+// Compiler/platform provides the sockio.h file.
+#define ACE_HAS_SOCKIO_H
+
+// Compiler/platform supports struct strbuf
+#define ACE_HAS_STRBUF_T
+
+// Platform supports STREAMS.
+#define ACE_HAS_STREAMS
+
+// Compiler/platform supports strerror ().
+// #define ACE_HAS_STRERROR
+
+// SunOS 4 style prototype.
+#define ACE_HAS_SUNOS4_GETTIMEOFDAY
+
+// Compiler/platform supports SVR4 dynamic linking semantics.
+#define ACE_HAS_SVR4_DYNAMIC_LINKING
+
+// Platform provides <sysent.h> header.
+#define ACE_HAS_SYSENT_H
+
+// Platform provides <sys/filio.h> header.
+#define ACE_HAS_SYS_FILIO_H
+
+// Platform supports ACE_TLI tiuser header.
+// #define ACE_HAS_TIUSER_H
+
+// Platform has ACE_TLI.
+// #define ACE_HAS_TLI
+
+#define ACE_NEEDS_DEV_IO_CONVERSION
+
+#define ACE_LACKS_U_LONGLONG_T
+
+#define ACE_LACKS_DIFFTIME
+
+// Turns off the tracing feature.
+#if !defined (ACE_NTRACE)
+#define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-sunos4-sun3.x.h b/ace/config-sunos4-sun3.x.h
new file mode 100644
index 00000000000..88acc3e5ded
--- /dev/null
+++ b/ace/config-sunos4-sun3.x.h
@@ -0,0 +1,87 @@
+/* -*- C++ -*- */
+// $Id$
+
+// The following configuration file is designed to work for SunOS4
+// platforms using the SunC++ 3.0.x compiler.
+
+#ifndef ACE_CONFIG_H
+
+#define ACE_LACKS_GETPGID
+#define ACE_LACKS_SETPGID
+
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+
+#define ACE_LACKS_POSIX_PROTOTYPES
+#define ACE_HAS_UNION_WAIT
+#define ACE_HAS_SPARCWORKS_401_SIGNALS
+
+#define ACE_CONFIG_H
+#define ACE_HAS_CHARPTR_SPRINTF
+#define ACE_HAS_SYS_ERRLIST
+
+// Platform supports System V IPC (most versions of UNIX, but not Win32)
+#define ACE_HAS_SYSV_IPC
+
+// Platform supports recvmsg and sendmsg.
+#define ACE_HAS_MSG
+
+// Compiler/platform contains the <sys/syscall.h> file.
+#define ACE_HAS_SYSCALL_H
+
+// Compiler/platform has the getrusage() system call.
+#define ACE_HAS_GETRUSAGE
+
+// Header files lack t_errno for ACE_TLI.
+// #define ACE_LACKS_T_ERRNO
+
+// Compiler/platform uses old malloc()/free() prototypes (ugh).
+#define ACE_HAS_OLD_MALLOC
+
+// Defines the page size of the system.
+#define ACE_PAGE_SIZE 4096
+
+// Compiler/platform supports poll().
+#define ACE_HAS_POLL
+
+// Compiler/platform defines a union semun for SysV shared memory.
+#define ACE_HAS_SEMUN
+
+// Compiler/platform provides the sockio.h file.
+#define ACE_HAS_SOCKIO_H
+
+// Compiler/platform supports struct strbuf
+#define ACE_HAS_STRBUF_T
+
+// Platform supports STREAMS.
+#define ACE_HAS_STREAMS
+
+// SunOS 4 style prototype.
+#define ACE_HAS_SUNOS4_GETTIMEOFDAY
+
+// Compiler/platform supports SVR4 dynamic linking semantics.
+#define ACE_HAS_SVR4_DYNAMIC_LINKING
+
+// Platform provides <sys/filio.h> header.
+#define ACE_HAS_SYS_FILIO_H
+
+// Platform supports ACE_TLI tiuser header.
+// #define ACE_HAS_TIUSER_H
+
+// Platform has ACE_TLI.
+// #define ACE_HAS_TLI
+
+#define ACE_LACKS_LINEBUFFERED_STREAMBUF
+#define ACE_LACKS_SIGNED_CHAR
+
+#define ACE_NEEDS_DEV_IO_CONVERSION
+
+#define ACE_LACKS_U_LONGLONG_T
+
+#define ACE_LACKS_DIFFTIME
+
+// Turns off the tracing feature.
+#if !defined (ACE_NTRACE)
+#define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-sunos4-sun4.1.4.h b/ace/config-sunos4-sun4.1.4.h
new file mode 100644
index 00000000000..54ab33b2aa8
--- /dev/null
+++ b/ace/config-sunos4-sun4.1.4.h
@@ -0,0 +1,99 @@
+/* -*- C++ -*- */
+// $Id$
+
+// The following configuration file is designed to work for SunOS4.1.4
+// platforms using the SunC++ 4.x compiler.
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+#define ACE_LACKS_GETPGID
+#define ACE_LACKS_SETPGID
+#define ACE_LACKS_SETREGID
+#define ACE_LACKS_SETREUID
+
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+
+#define ACE_HAS_CHARPTR_SPRINTF
+#define ACE_LACKS_SYSTIME_H
+#define ACE_HAS_UNION_WAIT
+
+// Special addition to handle sunOS 4.1 which is unable to
+// handle POSIX Prototypes !
+#define ACE_LACKS_POSIX_PROTOTYPES
+
+// Platform supports System V IPC (most versions of UNIX, but not Win32)
+#define ACE_HAS_SYSV_IPC
+
+// Platform supports recvmsg and sendmsg.
+#define ACE_HAS_MSG
+
+// Compiler/platform contains the <sys/syscall.h> file.
+#define ACE_HAS_SYSCALL_H
+
+// Compiler/platform has the getrusage() system call.
+#define ACE_HAS_GETRUSAGE
+
+// Compiler/platform supports strerror ().
+// #define ACE_HAS_STRERROR
+#define ACE_HAS_SYS_ERRLIST
+
+// Header files lack t_errno for ACE_TLI.
+// #define ACE_LACKS_T_ERRNO
+
+// Compiler/platform uses old malloc()/free() prototypes (ugh).
+#define ACE_HAS_OLD_MALLOC
+
+// Defines the page size of the system.
+#define ACE_PAGE_SIZE 4096
+
+// Compiler/platform supports poll().
+#define ACE_HAS_POLL
+
+// Compiler/platform defines a union semun for SysV shared memory.
+#define ACE_HAS_SEMUN
+
+// Compiler/platform provides the sockio.h file.
+#define ACE_HAS_SOCKIO_H
+
+// Compiler has brain-damaged SPARCwork signal prototype...
+#define ACE_HAS_SPARCWORKS_401_SIGNALS
+
+// Compiler/platform supports struct strbuf
+#define ACE_HAS_STRBUF_T
+
+// Platform supports STREAMS.
+#define ACE_HAS_STREAMS
+
+// SunOS 4 style prototype.
+#define ACE_HAS_SUNOS4_GETTIMEOFDAY
+
+// Compiler/platform supports SVR4 dynamic linking semantics.
+#define ACE_HAS_SVR4_DYNAMIC_LINKING
+
+// Platform provides <sys/filio.h> header.
+#define ACE_HAS_SYS_FILIO_H
+
+// Platform supports ACE_TLI tiuser header.
+// #define ACE_HAS_TIUSER_H
+
+// Platform has ACE_TLI.
+// #define ACE_HAS_TLI
+
+#define ACE_LACKS_LINEBUFFERED_STREAMBUF
+#define ACE_LACKS_SIGNED_CHAR
+
+#define ACE_NEEDS_DEV_IO_CONVERSION
+
+#define ACE_LACKS_U_LONGLONG_T
+
+#define ACE_LACKS_DIFFTIME
+
+// Turns off the tracing feature.
+#if !defined (ACE_NTRACE)
+#define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-sunos4-sun4.x.h b/ace/config-sunos4-sun4.x.h
new file mode 100644
index 00000000000..a5f1fd23063
--- /dev/null
+++ b/ace/config-sunos4-sun4.x.h
@@ -0,0 +1,106 @@
+/* -*- C++ -*- */
+// $Id$
+
+// The following configuration file is designed to work
+// for SunOS4 platforms using the SunC++ 4.x compiler.
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+#define ACE_LACKS_SYSTIME_H
+#define ACE_LACKS_GETPGID
+#define ACE_LACKS_SETPGID
+#define ACE_LACKS_SETREGID
+#define ACE_LACKS_SETREUID
+
+#define ACE_HAS_CHARPTR_SPRINTF
+#define ACE_LACKS_POSIX_PROTOTYPES
+// #define ACE_HAS_UNION_WAIT
+
+// Maximum compensation (10 ms) for early return from timed ::select ().
+#if !defined (ACE_TIMER_SKEW)
+# define ACE_TIMER_SKEW 10 * 1000
+#endif /* ACE_TIMER_SKEW */
+
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+
+// Platform supports System V IPC (most versions of UNIX, but not Win32)
+#define ACE_HAS_SYSV_IPC
+
+// Platform supports recvmsg and sendmsg.
+#define ACE_HAS_MSG
+
+// Compiler/platform contains the <sys/syscall.h> file.
+#define ACE_HAS_SYSCALL_H
+
+// Compiler/platform has the getrusage() system call.
+#define ACE_HAS_GETRUSAGE
+
+// Compiler/platform supports strerror ().
+// #define ACE_HAS_STRERROR
+#define ACE_HAS_SYS_ERRLIST
+
+// Header files lack t_errno for ACE_TLI.
+// #define ACE_LACKS_T_ERRNO
+
+// Compiler/platform uses old malloc()/free() prototypes (ugh).
+#define ACE_HAS_OLD_MALLOC
+
+// Defines the page size of the system.
+#define ACE_PAGE_SIZE 4096
+
+// Compiler/platform supports poll().
+#define ACE_HAS_POLL
+
+// Compiler/platform defines a union semun for SysV shared memory.
+#define ACE_HAS_SEMUN
+
+// Compiler/platform provides the sockio.h file.
+#define ACE_HAS_SOCKIO_H
+
+// Compiler has brain-damaged SPARCwork signal prototype...
+#define ACE_HAS_SPARCWORKS_401_SIGNALS
+
+// Compiler/platform supports struct strbuf
+#define ACE_HAS_STRBUF_T
+
+// Platform supports STREAMS.
+#define ACE_HAS_STREAMS
+
+// SunOS 4 style prototype.
+#define ACE_HAS_SUNOS4_GETTIMEOFDAY
+
+// Compiler/platform supports SVR4 dynamic linking semantics.
+#define ACE_HAS_SVR4_DYNAMIC_LINKING
+
+// Platform provides <sys/filio.h> header.
+#define ACE_HAS_SYS_FILIO_H
+
+// Platform supports ACE_TLI tiuser header.
+// #define ACE_HAS_TIUSER_H
+
+// Platform has ACE_TLI.
+// #define ACE_HAS_TLI
+
+#define ACE_LACKS_LINEBUFFERED_STREAMBUF
+#define ACE_LACKS_SIGNED_CHAR
+
+#define ACE_NEEDS_DEV_IO_CONVERSION
+
+#define ACE_LACKS_U_LONGLONG_T
+
+#define ACE_LACKS_DIFFTIME
+
+// 10 millisecond fudge factor to account for Solaris timers...
+#if !defined (ACE_TIMER_SKEW)
+#define ACE_TIMER_SKEW 1000 * 10
+#endif /* ACE_TIMER_SKEW */
+
+// Turns off the tracing feature.
+#if !defined (ACE_NTRACE)
+#define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-sunos5.4-centerline-2.x.h b/ace/config-sunos5.4-centerline-2.x.h
new file mode 100644
index 00000000000..84a685f9153
--- /dev/null
+++ b/ace/config-sunos5.4-centerline-2.x.h
@@ -0,0 +1,162 @@
+/* -*- C++ -*- */
+// $Id$
+
+// The following configuration file is designed to work for SunOS 5.4
+// platforms using the Centerline 2.x C++ compiler.
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+#define ACE_HAS_TEMPLATE_SPECIALIZATION
+
+// Platform supports pread() and pwrite()
+#define ACE_HAS_P_READ_WRITE
+
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+
+#define ACE_HAS_XPG4_MULTIBYTE_CHAR
+
+// Platform supports System V IPC (most versions of UNIX, but not Win32)
+#define ACE_HAS_SYSV_IPC
+
+// Sun has the wrong prototype for sendmsg.
+#define ACE_HAS_BROKEN_SENDMSG
+
+// The SunOS 5.x version of rand_r is inconsistent with the header files...
+#define ACE_HAS_BROKEN_RANDR
+
+// Platform supports system configuration information.
+#define ACE_HAS_SYSINFO
+
+// Platform supports the POSIX regular expression library
+#define ACE_HAS_REGEX
+
+// Platform supports recvmsg and sendmsg.
+#define ACE_HAS_MSG
+
+// Compiler/platform contains the <sys/syscall.h> file.
+#define ACE_HAS_SYSCALL_H
+
+// Platform has terminal ioctl flags like TCGETS and TCSETS.
+#define ACE_HAS_TERM_IOCTLS
+
+// Compiler/platform correctly calls init()/fini() for shared libraries.
+#define ACE_HAS_AUTOMATIC_INIT_FINI
+
+// Platform supports POSIX O_NONBLOCK semantics.
+#define ACE_HAS_POSIX_NONBLOCK
+
+// Compiler/platform has correctly prototyped header files.
+#define ACE_HAS_CPLUSPLUS_HEADERS
+
+// Compiler/platform supports SunOS high resolution timers.
+#define ACE_HAS_HI_RES_TIMER
+
+// Platform supports IP multicast
+#define ACE_HAS_IP_MULTICAST
+
+// Platform contains <poll.h>.
+#define ACE_HAS_POLL
+
+// Platform supports POSIX timers via timestruc_t.
+#define ACE_HAS_POSIX_TIME
+
+// Platform supports the /proc file system.
+#define ACE_HAS_PROC_FS
+
+// Platform supports the prusage_t struct.
+#define ACE_HAS_PRUSAGE_T
+
+// Compiler/platform defines the sig_atomic_t typedef.
+#define ACE_HAS_SIG_ATOMIC_T
+
+// Platform supports SVR4 extended signals.
+#define ACE_HAS_SIGINFO_T
+#define ACE_HAS_UCONTEXT_T
+
+// Compiler/platform provides the sockio.h file.
+#define ACE_HAS_SOCKIO_H
+
+// Compiler supports the ssize_t typedef.
+#define ACE_HAS_SSIZE_T
+
+// Platform supports STREAMS.
+#define ACE_HAS_STREAMS
+
+// Platform supports STREAM pipes.
+#define ACE_HAS_STREAM_PIPES
+
+// Compiler/platform supports strerror ().
+#define ACE_HAS_STRERROR
+
+// Compiler/platform supports struct strbuf.
+#define ACE_HAS_STRBUF_T
+
+// Compiler/platform supports SVR4 dynamic linking semantics.
+#define ACE_HAS_SVR4_DYNAMIC_LINKING
+
+// Compiler/platform supports SVR4 signal typedef.
+#define ACE_HAS_SVR4_SIGNAL_T
+
+// Platform lacks pthread_sigaction
+#define ACE_LACKS_PTHREAD_THR_SIGSETMASK
+
+// Compiler/platform supports SVR4 ACE_TLI (in particular, T_GETNAME stuff)...
+#define ACE_HAS_SVR4_TLI
+
+// Platform provides <sys/filio.h> header.
+#define ACE_HAS_SYS_FILIO_H
+
+// Compiler/platform supports sys_siglist array.
+#define ACE_HAS_SYS_SIGLIST
+
+/* Turn off the following defines if you want to disable threading. */
+// Compile using multi-thread libraries.
+#if !defined (ACE_MT_SAFE)
+# define ACE_MT_SAFE 1
+#endif
+
+// Platform supports threads.
+#define ACE_HAS_THREADS
+
+// Platform supports Solaris threads.
+#define ACE_HAS_STHREADS
+
+// Compiler/platform has thread-specific storage
+#define ACE_HAS_THREAD_SPECIFIC_STORAGE
+
+// Platform supports reentrant functions (i.e., all the POSIX *_r functions).
+#define ACE_HAS_REENTRANT_FUNCTIONS
+
+/* end threading defines */
+
+#define ACE_HAS_PRIOCNTL
+#define ACE_NEEDS_LWP_PRIO_SET
+
+// Platform supports ACE_TLI timod STREAMS module.
+#define ACE_HAS_TIMOD_H
+
+// Platform supports ACE_TLI tiuser header.
+#define ACE_HAS_TIUSER_H
+
+// Platform provides ACE_TLI function prototypes.
+#define ACE_HAS_TLI_PROTOTYPES
+
+// Platform supports ACE_TLI.
+#define ACE_HAS_TLI
+
+#define ACE_NEEDS_DEV_IO_CONVERSION
+
+// Turns off the tracing feature.
+#if !defined (ACE_NTRACE)
+# define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+
+// Defines the page size of the system.
+#define ACE_PAGE_SIZE 4096
+#define ACE_HAS_IDTYPE_T
+#define ACE_HAS_DIRENT
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-sunos5.4-g++.h b/ace/config-sunos5.4-g++.h
new file mode 100644
index 00000000000..3059e3c2aae
--- /dev/null
+++ b/ace/config-sunos5.4-g++.h
@@ -0,0 +1,181 @@
+/* -*- C++ -*- */
+// $Id$
+
+// The following configuration file is designed to work for SunOS 5.4
+// platforms using the GNU g++ compiler.
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+#if ! defined (__ACE_INLINE__)
+# define __ACE_INLINE__
+#endif /* ! __ACE_INLINE__ */
+
+// config-g++-common.h undef's ACE_HAS_STRING_CLASS with -frepo, so
+// this must appear before its #include.
+#define ACE_HAS_STRING_CLASS
+
+#include "ace/config-g++-common.h"
+#define ACE_HAS_GNU_CSTRING_H
+
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+
+// Platform supports pread() and pwrite()
+#define ACE_HAS_P_READ_WRITE
+
+#define ACE_HAS_XPG4_MULTIBYTE_CHAR
+
+#define ACE_HAS_TERM_IOCTLS
+
+// Platform supports System V IPC (most versions of UNIX, but not Win32)
+#define ACE_HAS_SYSV_IPC
+
+// Sun has the wrong prototype for sendmsg.
+#define ACE_HAS_BROKEN_SENDMSG
+
+// The SunOS 5.x version of rand_r is inconsistent with the header files...
+#define ACE_HAS_BROKEN_RANDR
+
+// Platform supports system configuration information.
+#define ACE_HAS_SYSINFO
+
+// Platform supports the POSIX regular expression library
+#define ACE_HAS_REGEX
+
+// Platform supports recvmsg and sendmsg.
+#define ACE_HAS_MSG
+
+// Compiler/platform contains the <sys/syscall.h> file.
+#define ACE_HAS_SYSCALL_H
+
+// Compiler/platform correctly calls init()/fini() for shared libraries.
+#define ACE_HAS_AUTOMATIC_INIT_FINI
+
+// Platform supports POSIX O_NONBLOCK semantics.
+#define ACE_HAS_POSIX_NONBLOCK
+
+// Compiler/platform has correctly prototyped header files.
+#define ACE_HAS_CPLUSPLUS_HEADERS
+
+// Compiler/platform supports SunOS high resolution timers.
+#define ACE_HAS_HI_RES_TIMER
+
+// Platform supports IP multicast
+#define ACE_HAS_IP_MULTICAST
+
+// Compiler/platform supports alloca()
+#define ACE_HAS_ALLOCA
+
+// Compiler/platform has <alloca.h>
+#define ACE_HAS_ALLOCA_H
+
+// Platform contains <poll.h>.
+#define ACE_HAS_POLL
+
+// Platform supports POSIX timers via timestruc_t.
+#define ACE_HAS_POSIX_TIME
+
+// Platform supports the /proc file system.
+#define ACE_HAS_PROC_FS
+
+// Platform supports the prusage_t struct.
+#define ACE_HAS_PRUSAGE_T
+
+// Compiler/platform defines the sig_atomic_t typedef.
+#define ACE_HAS_SIG_ATOMIC_T
+
+// Platform supports SVR4 extended signals.
+#define ACE_HAS_SIGINFO_T
+#define ACE_HAS_UCONTEXT_T
+
+// Compiler/platform provides the sockio.h file.
+#define ACE_HAS_SOCKIO_H
+
+// Compiler supports the ssize_t typedef.
+#define ACE_HAS_SSIZE_T
+
+// Platform supports STREAMS.
+#define ACE_HAS_STREAMS
+
+// Platform supports STREAM pipes.
+#define ACE_HAS_STREAM_PIPES
+
+// Compiler/platform supports strerror ().
+#define ACE_HAS_STRERROR
+
+// Compiler/platform supports struct strbuf.
+#define ACE_HAS_STRBUF_T
+
+// Compiler/platform supports SVR4 dynamic linking semantics.
+#define ACE_HAS_SVR4_DYNAMIC_LINKING
+
+// Compiler/platform supports SVR4 gettimeofday() prototype.
+#define ACE_HAS_SVR4_GETTIMEOFDAY
+
+// Platform lacks pthread_sigaction
+#define ACE_LACKS_PTHREAD_THR_SIGSETMASK
+
+// Compiler/platform supports SVR4 TLI (in particular, T_GETNAME stuff)...
+#define ACE_HAS_SVR4_TLI
+
+// Platform provides <sys/filio.h> header.
+#define ACE_HAS_SYS_FILIO_H
+
+// Compiler/platform supports sys_siglist array.
+#define ACE_HAS_SYS_SIGLIST
+
+/* Turn off the following defines if you want to disable threading. */
+// Compile using multi-thread libraries.
+#if !defined (ACE_MT_SAFE)
+# define ACE_MT_SAFE 1
+# if !defined (_REENTRANT)
+# define _REENTRANT
+# endif /* _REENTRANT */
+#endif /* !ACE_MT_SAFE */
+
+// Platform supports Solaris threads.
+#define ACE_HAS_STHREADS
+
+// Platform supports threads.
+#define ACE_HAS_THREADS
+
+// Compiler/platform has thread-specific storage
+#define ACE_HAS_THREAD_SPECIFIC_STORAGE
+
+// Platform supports reentrant functions (i.e., all the POSIX *_r functions).
+#define ACE_HAS_REENTRANT_FUNCTIONS
+
+/* end threading defines */
+
+#define ACE_HAS_PRIOCNTL
+#define ACE_NEEDS_LWP_PRIO_SET
+
+// Platform supports TLI timod STREAMS module.
+#define ACE_HAS_TIMOD_H
+
+// Platform supports TLI tiuser header.
+#define ACE_HAS_TIUSER_H
+
+// Platform provides TLI function prototypes.
+#define ACE_HAS_TLI_PROTOTYPES
+
+// Platform supports TLI.
+#define ACE_HAS_TLI
+
+// Use the poll() event demultiplexor rather than select().
+//#define ACE_USE_POLL
+
+// Turns off the tracing feature.
+#if !defined (ACE_NTRACE)
+# define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+
+// Defines the page size of the system.
+#define ACE_PAGE_SIZE 4096
+#define ACE_HAS_IDTYPE_T
+#define ACE_HAS_GPERF
+#define ACE_HAS_DIRENT
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-sunos5.4-sunc++-4.x.h b/ace/config-sunos5.4-sunc++-4.x.h
new file mode 100644
index 00000000000..7e09eb292f3
--- /dev/null
+++ b/ace/config-sunos5.4-sunc++-4.x.h
@@ -0,0 +1,194 @@
+/* -*- C++ -*- */
+// $Id$
+
+// The following configuration file is designed to work for SunOS 5.4
+// platforms using the SunC++ 4.0.x compiler.
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+#if ! defined (__ACE_INLINE__)
+# define __ACE_INLINE__
+#endif /* ! __ACE_INLINE__ */
+
+#define ACE_HAS_TEMPLATE_SPECIALIZATION
+
+// Optimize ACE_Handle_Set for select().
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+
+// Platform supports pread() and pwrite()
+#define ACE_HAS_P_READ_WRITE
+
+#define ACE_HAS_XPG4_MULTIBYTE_CHAR
+
+// Platform supports System V IPC (most versions of UNIX, but not Win32)
+#define ACE_HAS_SYSV_IPC
+
+// Sun has the wrong prototype for sendmsg.
+#define ACE_HAS_BROKEN_SENDMSG
+
+// The SunOS 5.x version of rand_r is inconsistent with the header files...
+#define ACE_HAS_BROKEN_RANDR
+
+// Platform supports system configuration information.
+#define ACE_HAS_SYSINFO
+
+// Platform supports the POSIX regular expression library.
+#define ACE_HAS_REGEX
+
+// Platform supports recvmsg and sendmsg.
+#define ACE_HAS_MSG
+
+// Compiler/platform contains the <sys/syscall.h> file.
+#define ACE_HAS_SYSCALL_H
+
+// Platform has terminal ioctl flags like TCGETS and TCSETS.
+#define ACE_HAS_TERM_IOCTLS
+
+// Compiler/platform correctly calls init()/fini() for shared libraries.
+#define ACE_HAS_AUTOMATIC_INIT_FINI
+
+// Platform supports POSIX O_NONBLOCK semantics.
+#define ACE_HAS_POSIX_NONBLOCK
+
+// Compiler/platform has correctly prototyped header files.
+#define ACE_HAS_CPLUSPLUS_HEADERS
+
+// Compiler/platform supports SunOS high resolution timers.
+#define ACE_HAS_HI_RES_TIMER
+
+// Platform supports IP multicast
+#define ACE_HAS_IP_MULTICAST
+
+// Compiler/platform supports alloca()
+#define ACE_HAS_ALLOCA
+
+// Compiler/platform has <alloca.h>
+#define ACE_HAS_ALLOCA_H
+
+// Platform contains <poll.h>.
+#define ACE_HAS_POLL
+
+// Platform supports POSIX timers via timestruc_t.
+#define ACE_HAS_POSIX_TIME
+
+// Platform supports the /proc file system.
+#define ACE_HAS_PROC_FS
+
+// Platform supports the prusage_t struct.
+#define ACE_HAS_PRUSAGE_T
+
+// Compiler/platform defines the sig_atomic_t typedef.
+#define ACE_HAS_SIG_ATOMIC_T
+
+// Platform supports SVR4 extended signals.
+#define ACE_HAS_SIGINFO_T
+#define ACE_HAS_UCONTEXT_T
+
+// Compiler/platform provides the sockio.h file.
+#define ACE_HAS_SOCKIO_H
+
+// Compiler supports the ssize_t typedef.
+#define ACE_HAS_SSIZE_T
+
+// Platform supports STREAMS.
+#define ACE_HAS_STREAMS
+
+// Platform supports STREAM pipes.
+#define ACE_HAS_STREAM_PIPES
+
+// Compiler/platform supports strerror ().
+#define ACE_HAS_STRERROR
+
+// Compiler/platform supports struct strbuf.
+#define ACE_HAS_STRBUF_T
+
+// Compiler/platform supports SVR4 dynamic linking semantics.
+#define ACE_HAS_SVR4_DYNAMIC_LINKING
+
+// Compiler/platform supports SVR4 gettimeofday() prototype.
+#define ACE_HAS_SVR4_GETTIMEOFDAY
+
+// Compiler/platform supports SVR4 signal typedef.
+#define ACE_HAS_SVR4_SIGNAL_T
+
+// Platform lacks pthread_sigaction
+#define ACE_LACKS_PTHREAD_THR_SIGSETMASK
+
+// Compiler/platform supports SVR4 ACE_TLI (in particular, T_GETNAME stuff)...
+#define ACE_HAS_SVR4_TLI
+
+// Platform provides <sys/filio.h> header.
+#define ACE_HAS_SYS_FILIO_H
+
+// Compiler/platform supports sys_siglist array.
+#define ACE_HAS_SYS_SIGLIST
+
+/* Turn off the following defines if you want to disable threading. */
+// Compile using multi-thread libraries.
+#if !defined (ACE_MT_SAFE)
+# define ACE_MT_SAFE 1
+#endif
+
+// Platform supports Solaris threads.
+#define ACE_HAS_STHREADS
+
+// Platform supports threads.
+#define ACE_HAS_THREADS
+
+// Compiler/platform has thread-specific storage
+#define ACE_HAS_THREAD_SPECIFIC_STORAGE
+
+// Platform supports reentrant functions (i.e., all the POSIX *_r functions).
+#define ACE_HAS_REENTRANT_FUNCTIONS
+
+/* end threading defines */
+
+#define ACE_HAS_PRIOCNTL
+#define ACE_NEEDS_LWP_PRIO_SET
+
+// Reactor detects deadlock
+// #define ACE_REACTOR_HAS_DEADLOCK_DETECTION
+
+// Platform supports ACE_TLI timod STREAMS module.
+#define ACE_HAS_TIMOD_H
+
+// Platform supports ACE_TLI tiuser header.
+#define ACE_HAS_TIUSER_H
+
+// Platform provides ACE_TLI function prototypes.
+#define ACE_HAS_TLI_PROTOTYPES
+
+// Platform supports ACE_TLI.
+#define ACE_HAS_TLI
+
+#define ACE_LACKS_LINEBUFFERED_STREAMBUF
+#define ACE_LACKS_SIGNED_CHAR
+
+// Use the poll() event demultiplexor rather than select().
+//#define ACE_USE_POLL
+
+#define ACE_NEEDS_DEV_IO_CONVERSION
+
+// Turns off the tracing feature.
+// #define ACE_NTRACE 0
+#if !defined (ACE_NTRACE)
+# define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+
+// Defines the page size of the system.
+#define ACE_PAGE_SIZE 4096
+#define ACE_HAS_IDTYPE_T
+
+#define ACE_HAS_GPERF
+#define ACE_HAS_DIRENT
+
+# if defined (ACE_HAS_EXCEPTIONS)
+ // If exceptions are enabled and we are using Sun/CC then
+ // <operator new> throws an exception instead of returning 0.
+# define ACE_NEW_THROWS_EXCEPTIONS
+# endif /* ACE_HAS_EXCEPTIONS */
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-sunos5.5.h b/ace/config-sunos5.5.h
new file mode 100644
index 00000000000..21b6463f773
--- /dev/null
+++ b/ace/config-sunos5.5.h
@@ -0,0 +1,378 @@
+/* -*- C++ -*- */
+// $Id$
+
+// This configuration file is designed to work for SunOS 5.5 platforms
+// using the following compilers:
+// * Sun C++ 4.2 and later (including 5.x), patched as noted below
+// * g++ 2.7.2 and later, including egcs
+// * Green Hills 1.8.8 and later
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+// Before we do anything, we should include <sys/feature_tests.h> to
+// ensure that things are set up properly.
+#include <sys/feature_tests.h>
+
+// Compiler version-specific settings:
+#if defined (__SUNPRO_CC)
+# if (__SUNPRO_CC < 0x410)
+ // The following might not be necessary, but I can't tell: my build
+ // with Sun C++ 4.0.1 never completes.
+# define ACE_NEEDS_DEV_IO_CONVERSION
+# elif (__SUNPRO_CC >= 0x420)
+# define ACE_HAS_ANSI_CASTS
+# if (__SUNPRO_CC >= 0x500)
+// string.h and memory.h conflict for memchr definitions
+# define ACE_LACKS_MEMORY_H
+// Sun C++ 5.0 supports the `using' and `typename' keywords.
+# define ACE_HAS_TYPENAME_KEYWORD
+ /* Explicit instantiation requires the -instances=explicit
+ CCFLAG. It seems to work for the most part, except for:
+ 1) Static data members get instantiated multiple times.
+ 2) In TAO, the TAO_Unbounded_Sequence vtbl can't be found.
+ With CC 5.0, those problems may be fixed. And, this is necessary
+ to work around problems with automatic template instantiation. */
+# define ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION
+# define ACE_TEMPLATES_REQUIRE_SOURCE
+ // If -compat=4 is turned on, the old 4.2 settings for iostreams are used,
+ // but the newer, explicit instantiation is used (above)
+# if (__SUNPRO_CC_COMPAT >= 5)
+# define ACE_HAS_USING_KEYWORD
+# define ACE_HAS_STD_TEMPLATE_SPECIALIZATION
+// Note that SunC++ 5.0 doesn't yet appear to support
+// ACE_HAS_STD_TEMPLATE_METHOD_SPECIALIZATION...
+# define ACE_HAS_STANDARD_CPP_LIBRARY 1
+# define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
+# define ACE_HAS_THR_C_DEST
+# endif
+# if !defined (ACE_HAS_EXCEPTIONS)
+ // See /opt/SUNWspro_5.0/SC5.0/include/CC/stdcomp.h:
+# define _RWSTD_NO_EXCEPTIONS 1
+# endif /* ! ACE_HAS_EXCEPTIONS */
+# elif (__SUNPRO_CC == 0x420) || (__SUNPRO_CC == 0x410)
+# define ACE_LACKS_PLACEMENT_OPERATOR_DELETE
+# endif /* __SUNPRO_CC >= 0x500 */
+# endif /* __SUNPRO_CC >= 0x420 */
+
+# define ACE_CAST_CONST const
+# define ACE_HAS_HI_RES_TIMER
+# define ACE_HAS_SIG_C_FUNC /* Sun CC 5.0 needs this, 4.2 doesn't mind. */
+# define ACE_HAS_TEMPLATE_SPECIALIZATION
+# define ACE_HAS_XPG4_MULTIBYTE_CHAR
+# define ACE_LACKS_LINEBUFFERED_STREAMBUF
+# define ACE_LACKS_SIGNED_CHAR
+
+ // ACE_HAS_EXCEPTIONS precludes -noex in
+ // include/makeinclude/platform_macros.GNU. But beware, we have
+ // seen problems with exception handling on multiprocessor
+ // UltraSparcs: threaded executables core dump when threads exit.
+ // This problem does not seem to appear on single-processor UltraSparcs.
+ // And, it is solved with the application of patch
+ // 104631-02 "C++ 4.2: Jumbo Patch for C++ 4.2 on Solaris SPARC"
+ // to Sun C++ 4.2.
+ // To provide optimum performance, ACE_HAS_EXCEPTIONS is disabled by
+ // default. It can be enabled by adding "exceptions=1" to the "make"
+ // invocation. See include/makeinclude/platform_sunos5_sunc++.GNU
+ // for details.
+
+# if defined (ACE_HAS_EXCEPTIONS)
+ // If exceptions are enabled and we are using Sun/CC then
+ // <operator new> throws an exception instead of returning 0.
+# define ACE_NEW_THROWS_EXCEPTIONS
+# endif /* ACE_HAS_EXCEPTIONS */
+
+ /* If you want to disable threading with Sun CC, remove -mt
+ from your CFLAGS, e.g., using make threads=0. */
+
+#elif defined (__GNUG__)
+ // config-g++-common.h undef's ACE_HAS_STRING_CLASS with -frepo, so
+ // this must appear before its #include.
+# define ACE_HAS_STRING_CLASS
+# include "ace/config-g++-common.h"
+# define ACE_HAS_HI_RES_TIMER
+ // Denotes that GNU has cstring.h as standard, to redefine memchr().
+# define ACE_HAS_GNU_CSTRING_H
+# define ACE_HAS_XPG4_MULTIBYTE_CHAR
+
+# if !defined (ACE_MT_SAFE) || ACE_MT_SAFE != 0
+ // ACE_MT_SAFE is #defined below, for all compilers.
+# if !defined (_REENTRANT)
+ /* If you want to disable threading, comment out the following
+ line. Or, add -DACE_MT_SAFE=0 to your CFLAGS, e.g., using
+ make threads=0. */
+# define _REENTRANT
+# endif /* _REENTRANT */
+# endif /* !ACE_MT_SAFE */
+
+#elif defined (ghs)
+
+# if !defined (ACE_MT_SAFE) || ACE_MT_SAFE != 0
+ // ACE_MT_SAFE is #defined below, for all compilers.
+# if !defined (_REENTRANT)
+ /* If you want to disable threading, comment out the following
+ line. Or, add -DACE_MT_SAFE=0 to your CFLAGS, e.g., using
+ make threads=0. */
+# define _REENTRANT
+# endif /* _REENTRANT */
+# endif /* !ACE_MT_SAFE */
+
+# define ACE_CONFIG_INCLUDE_GHS_COMMON
+# include "ace/config-ghs-common.h"
+
+ // To avoid warning about inconsistent declaration between Sun's
+ // stdlib.h and Green Hills' ctype.h.
+# include <stdlib.h>
+
+ // IOStream_Test never halts with Green Hills 1.8.9.
+# define ACE_LACKS_ACE_IOSTREAM
+
+#elif defined (__KCC) /* KAI compiler */
+
+# define ACE_HAS_ANSI_CASTS
+# include "ace/config-kcc-common.h"
+
+#else /* ! __SUNPRO_CC && ! __GNUG__ && ! ghs */
+# error unsupported compiler in ace/config-sunos5.5.h
+#endif /* ! __SUNPRO_CC && ! __GNUG__ && ! ghs */
+
+#if !defined (__ACE_INLINE__)
+// NOTE: if you have link problems with undefined inline template
+// functions with Sun C++, be sure that the #define of __ACE_INLINE__
+// below is not commented out.
+# define __ACE_INLINE__
+#endif /* ! __ACE_INLINE__ */
+
+// Platform supports the POSIX regular expression library.
+// NOTE: please comment out the ACE_HAS_REGEX #define if you
+// have link problems with g++ or egcs on SunOS 5.5.
+#define ACE_HAS_REGEX
+
+// Optimize ACE_Handle_Set for select().
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+
+// select()'s timeval arg is not declared as const and may be modified
+#define ACE_HAS_NONCONST_SELECT_TIMEVAL
+
+// Platform supports pread() and pwrite()
+#define ACE_HAS_P_READ_WRITE
+#define ACE_HAS_RECURSIVE_THR_EXIT_SEMANTICS
+#define ACE_HAS_UALARM
+#define ACE_LACKS_UALARM_PROTOTYPE
+
+// Platform supports System V IPC (most versions of UNIX, but not Win32)
+#define ACE_HAS_SYSV_IPC
+
+#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
+
+// Platform supports system configuration information.
+#define ACE_HAS_SYSINFO
+
+// Platform supports recvmsg and sendmsg.
+#define ACE_HAS_MSG
+
+// Compiler/platform contains the <sys/syscall.h> file.
+#define ACE_HAS_SYSCALL_H
+
+// Platform has terminal ioctl flags like TCGETS and TCSETS.
+#define ACE_HAS_TERM_IOCTLS
+
+// Compiler/platform correctly calls init()/fini() for shared libraries.
+#define ACE_HAS_AUTOMATIC_INIT_FINI
+
+// Platform supports POSIX O_NONBLOCK semantics.
+#define ACE_HAS_POSIX_NONBLOCK
+
+// Compiler/platform has correctly prototyped header files.
+#define ACE_HAS_CPLUSPLUS_HEADERS
+
+// Platform supports IP multicast
+#define ACE_HAS_IP_MULTICAST
+
+// Compiler/platform supports alloca()
+#define ACE_HAS_ALLOCA
+
+// Compiler/platform has <alloca.h>
+#define ACE_HAS_ALLOCA_H
+
+// Platform contains <poll.h>.
+#define ACE_HAS_POLL
+
+// Platform supports POSIX timers via timestruc_t.
+#define ACE_HAS_POSIX_TIME
+
+// ACE_HAS_CLOCK_GETTIME requires linking with -lposix4.
+#define ACE_HAS_CLOCK_GETTIME
+
+// Platform supports the /proc file system.
+#define ACE_HAS_PROC_FS
+
+// Platform supports the prusage_t struct.
+#define ACE_HAS_PRUSAGE_T
+
+// Compiler/platform defines the sig_atomic_t typedef.
+#define ACE_HAS_SIG_ATOMIC_T
+
+// Platform supports SVR4 extended signals.
+#define ACE_HAS_SIGINFO_T
+#define ACE_HAS_UCONTEXT_T
+
+// Compiler/platform provides the sockio.h file.
+#define ACE_HAS_SOCKIO_H
+
+// Compiler supports the ssize_t typedef.
+#define ACE_HAS_SSIZE_T
+
+// Platform supports STREAMS.
+#define ACE_HAS_STREAMS
+
+// Platform supports STREAM pipes.
+#define ACE_HAS_STREAM_PIPES
+
+// Compiler/platform supports strerror ().
+#define ACE_HAS_STRERROR
+
+// Compiler/platform supports struct strbuf.
+#define ACE_HAS_STRBUF_T
+
+// Compiler/platform supports SVR4 dynamic linking semantics.
+#define ACE_HAS_SVR4_DYNAMIC_LINKING
+
+// Compiler/platform supports SVR4 gettimeofday() prototype.
+#define ACE_HAS_SVR4_GETTIMEOFDAY
+
+// Compiler/platform supports SVR4 ACE_TLI (in particular, T_GETNAME stuff)...
+#define ACE_HAS_SVR4_TLI
+
+// Platform provides <sys/filio.h> header.
+#define ACE_HAS_SYS_FILIO_H
+
+// Compiler/platform supports sys_siglist array.
+#define ACE_HAS_SYS_SIGLIST
+
+// SunOS 5.5.x does not support mkstemp
+#define ACE_LACKS_MKSTEMP
+
+// Platform has posix getpwnam_r
+#if (defined (_POSIX_C_SOURCE) && _POSIX_C_SOURCE - 0 >= 199506L) || \
+ defined(_POSIX_PTHREAD_SEMANTICS)
+# define ACE_HAS_POSIX_GETPWNAM_R
+#endif /* _POSIX_C_SOURCE || _POSIX_PTHREAD_SEMANTICS */
+
+#if defined (_REENTRANT) || \
+ (defined (_POSIX_C_SOURCE) && (_POSIX_C_SOURCE - 0 >= 199506L)) || \
+ defined (_POSIX_PTHREAD_SEMANTICS)
+ // Compile using multi-thread libraries.
+# define ACE_HAS_THREADS
+
+# if !defined (ACE_MT_SAFE)
+# define ACE_MT_SAFE 1
+# endif /* ACE_MT_SAFE */
+
+ // Platform supports POSIX pthreads *and* Solaris threads, by
+ // default! If you only want to use POSIX pthreads, add
+ // -D_POSIX_PTHREAD_SEMANTICS to your CFLAGS. Or, #define it right
+ // here. See the Intro (3) man page for information on
+ // -D_POSIX_PTHREAD_SEMANTICS.
+# if defined (_POSIX_PTHREAD_SEMANTICS)
+# define ACE_LACKS_RWLOCK_T
+# else
+# define ACE_HAS_STHREADS
+# endif /* ! _POSIX_PTHREAD_SEMANTICS */
+
+# define ACE_HAS_PTHREADS
+# define ACE_HAS_PTHREADS_STD
+ // . . . but only supports SCHED_OTHER scheduling policy
+# define ACE_HAS_ONLY_SCHED_OTHER
+# define ACE_HAS_SIGWAIT
+# define ACE_HAS_SIGTIMEDWAIT
+# define ACE_HAS_SIGSUSPEND
+
+ // Compiler/platform has thread-specific storage
+# define ACE_HAS_THREAD_SPECIFIC_STORAGE
+
+ // Platform supports reentrant functions (i.e., all the POSIX *_r functions).
+# define ACE_HAS_REENTRANT_FUNCTIONS
+
+# define ACE_NEEDS_LWP_PRIO_SET
+# define ACE_HAS_THR_YIELD
+# define ACE_LACKS_PTHREAD_YIELD
+#endif /* _REENTRANT || _POSIX_C_SOURCE >= 199506L || \
+ _POSIX_PTHREAD_SEMANTICS */
+
+# define ACE_HAS_PRIOCNTL
+
+// Platform supports ACE_TLI timod STREAMS module.
+#define ACE_HAS_TIMOD_H
+
+// Platform supports ACE_TLI tiuser header.
+#define ACE_HAS_TIUSER_H
+
+// Platform provides ACE_TLI function prototypes.
+#define ACE_HAS_TLI_PROTOTYPES
+
+// Platform has broken t_error() prototype.
+#define ACE_HAS_BROKEN_T_ERROR
+
+// Platform supports ACE_TLI.
+#define ACE_HAS_TLI
+
+#define ACE_HAS_STRPTIME
+
+// Turns off the tracing feature.
+#if !defined (ACE_NTRACE)
+# define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+
+#define ACE_HAS_GETPAGESIZE 1
+
+#define ACE_HAS_STL_MAP_CONFLICT
+
+// Sieg - gcc 2.95.1 declares queue in stream.h. Might want to change
+// the == to >= to allow for future versions
+#if !( __GNUG__ && (__GNUC__ == 2) && (__GNUC_MINOR__ == 95) )
+#define ACE_HAS_STL_QUEUE_CONFLICT
+#endif /* !( __GNUG__ && (__GNUC__ == 2) && (__GNUC_MINOR__ == 95) ) */
+#define ACE_HAS_IDTYPE_T
+
+#define ACE_HAS_GPERF
+#define ACE_HAS_DIRENT
+#define ACE_HAS_MEMCHR
+
+#if defined (__SUNPRO_CC)
+# define ACE_CC_NAME "SunPro C++"
+# define ACE_CC_MAJOR_VERSION (__SUNPRO_CC >> 8)
+# define ACE_CC_MINOR_VERSION (__SUNPRO_CC & 0x00ff)
+# define ACE_CC_BETA_VERSION (0)
+#elif defined (__GNUG__)
+# define ACE_CC_MAJOR_VERSION __GNUC__
+# define ACE_CC_MINOR_VERSION __GNUC_MINOR__
+# define ACE_CC_BETA_VERSION (0)
+# if __GNUC_MINOR__ >= 90
+# define ACE_CC_NAME "egcs"
+# else
+# define ACE_CC_NAME "g++"
+# endif /* __GNUC_MINOR__ */
+#endif /* __GNUG__ */
+
+#if defined (i386)
+# define ACE_HAS_X86_STAT_MACROS
+#endif /* i386 */
+
+#define ACE_MALLOC_ALIGN 8
+#define ACE_LACKS_SETREUID_PROTOTYPE
+#define ACE_LACKS_SETREGID_PROTOTYPE
+
+// Solaris does indeed implement the inet_aton() function, but it is
+// found in `libresolv.*'. It doesn't seem worth it to link another
+// library just for that function. Just use the emulation in ACE that
+// has been used for years.
+#define ACE_LACKS_INET_ATON
+
+#if defined (_LARGEFILE_SOURCE) || (_FILE_OFFSET_BITS==64)
+#undef ACE_HAS_PROC_FS
+#undef ACE_HAS_PRUSAGE_T
+#endif /* (_LARGEFILE_SOURCE) || (_FILE_OFFSET_BITS==64) */
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-sunos5.6.h b/ace/config-sunos5.6.h
new file mode 100644
index 00000000000..1e85f8f380e
--- /dev/null
+++ b/ace/config-sunos5.6.h
@@ -0,0 +1,128 @@
+/* -*- C++ -*- */
+// $Id$
+
+// The following configuration file is designed to work for SunOS 5.6
+// platforms using the SunC++ 4.x or g++ compilers.
+
+#ifndef ACE_CONFIG_H
+
+// ACE_CONFIG_H is defined by one of the following #included headers.
+
+// #include the SunOS 5.5 config file, then add SunOS 5.6 updates below.
+
+#include "ace/config-sunos5.5.h"
+
+#if defined(__GNUC__) && __GNUC__ >= 2 && __GNUC_MINOR__ >= 95
+// gcc-2.95 fixes this problem for us!
+#undef ACE_HAS_STL_QUEUE_CONFLICT
+#endif /* __GNUC__ */
+
+#if (defined(_POSIX_C_SOURCE) && _POSIX_C_SOURCE > 2) || \
+ defined (__EXTENSIONS__)
+// The asctime_r/ctime_r parameters change at POSIX.1c-1995
+# if (defined (_POSIX_C_SOURCE) && _POSIX_C_SOURCE >= 199506L)
+# define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R
+# endif /* POSIX_C_SOURCE >= 199506L */
+# define ACE_HAS_SIGWAIT
+// Hack 'cuz _POSIX_C_SOURCE > 2 and -DEXTENSIONS hides this.
+# include <sys/types.h>
+ extern "C" int madvise(caddr_t, size_t, int);
+#endif /* _POSIX_C_SOURCE > 2 || __EXTENSIONS__ */
+
+// Support for the SunC++ 5.2 compiler.
+#if defined (__SUNPRO_CC) && __SUNPRO_CC > 0x510
+#ifdef ACE_LACKS_ACE_IOSTREAM
+#undef ACE_LACKS_ACE_IOSTREAM
+#endif /* ACE_LACKS_ACE_IOSTREAM */
+#ifndef ACE_LACKS_UNBUFFERED_STREAMBUF
+#define ACE_LACKS_UNBUFFERED_STREAMBUF 1
+#endif /* ACE_LACKS_UNBUFFERED_STREAMBUF */
+#ifndef ACE_TEMPLATES_REQUIRE_SOURCE
+#define ACE_TEMPLATES_REQUIRE_SOURCE 1
+#endif /* ACE_TEMPLATES_REQUIRE_SOURCE */
+#ifndef ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION
+#define ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION 1
+#endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */
+#ifndef ACE_HAS_STD_TEMPLATE_SPECIALIZATION
+#define ACE_HAS_STD_TEMPLATE_SPECIALIZATION 1
+#endif /* ACE_HAS_STD_TEMPLATE_SPECIALIZATION */
+#ifndef ACE_HAS_ANSI_CASTS
+#define ACE_HAS_ANSI_CASTS 1
+#endif /* ACE_HAS_ANSI_CASTS */
+#ifndef ACE_HAS_TEMPLATE_TYPEDEFS
+#define ACE_HAS_TEMPLATE_TYPEDEFS 1
+#endif /* ACE_HAS_TEMPLATE_TYPEDEFS */
+#ifndef ACE_HAS_TYPENAME_KEYWORD
+#define ACE_HAS_TYPENAME_KEYWORD 1
+#endif /* ACE_HAS_TYPENAME_KEYWORD */
+#ifndef ACE_HAS_USING_KEYWORD
+#define ACE_HAS_USING_KEYWORD 1
+#endif /* ACE_HAS_USING_KEYWORD */
+#ifndef ACE_HAS_THR_C_DEST
+#define ACE_HAS_THR_C_DEST 1
+#endif /* ACE_HAS_THR_C_DEST */
+#ifndef ACE_HAS_THR_C_FUNC
+#define ACE_HAS_THR_C_FUNC 1
+#endif /* ACE_HAS_THR_C_FUNC */
+#ifndef ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
+#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES 1
+#endif /* ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES */
+#ifndef ACE_HAS_SIG_C_FUNC
+#define ACE_HAS_SIG_C_FUNC 1
+#endif /* ACE_HAS_SIG_C_FUNC */
+#ifndef ACE_HAS_STDCPP_STL_INCLUDES
+#define ACE_HAS_STDCPP_STL_INCLUDES 1
+#endif /* ACE_HAS_STDCPP_STL_INCLUDES */
+#ifndef ACE_HAS_STRING_CLASS
+#define ACE_HAS_STRING_CLASS 1
+#endif /* ACE_HAS_STRING_CLASS */
+#ifndef ACE_HAS_STANDARD_CPP_LIBRARY
+#define ACE_HAS_STANDARD_CPP_LIBRARY 1
+#endif /* ACE_HAS_STANDARD_CPP_LIBRARY */
+#ifndef ACE_HAS_STDCPP_STL_INCLUDES
+#define ACE_HAS_STDCPP_STL_INCLUDES 1
+#endif /* ACE_HAS_STDCPP_STL_INCLUDES */
+#ifndef ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB
+#define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
+#endif /* ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB */
+#ifndef ACE_HAS_TEMPLATE_SPECIALIZATION
+#define ACE_HAS_TEMPLATE_SPECIALIZATION 1
+#endif /* ACE_HAS_TEMPLATE_SPECIALIZATION */
+#ifndef ACE_LACKS_IOSTREAM_FX
+#define ACE_LACKS_IOSTREAM_FX 1
+#endif /* ACE_LACKS_IOSTREAM_FX */
+#ifndef ACE_LACKS_LINEBUFFERED_STREAMBUF
+#define ACE_LACKS_LINEBUFFERED_STREAMBUF 1
+#endif /* ACE_LACKS_LINEBUFFERED_STREAMBUF */
+
+#endif /* defined (__SUNPRO_CC) && __SUNPRO_CC > 0x510 */
+
+// SunOS 5.6 and above support mkstemp
+#undef ACE_LACKS_MKSTEMP
+
+
+// SunOS 5.6 has AIO calls.
+#if !defined (ACE_HAS_AIO_CALLS)
+#define ACE_HAS_AIO_CALLS
+#endif /* ACE_HAS_AIO_CALLS */
+
+#define ACE_HAS_POSIX_SEM
+
+// Sunos 5.6's aio_* with RT signals is broken.
+#define ACE_POSIX_AIOCB_PROACTOR
+
+// SunOS 5.6 has a buggy select
+#define ACE_HAS_LIMITED_SELECT
+
+// SunOS 5.6 introduced shm_open, but need to turn on POSIX.1b or higher
+// to pick it up.
+#if defined (_POSIX_C_SOURCE) && (_POSIX_C_SOURCE > 2)
+# define ACE_HAS_SHM_OPEN
+#endif /* _POSIX_C_SOURCE > 2 */
+
+// The struct msghdr is conditional on SunOS 5.6 based on _XPG4_2
+#if defined(_XPG4_2)
+# define ACE_HAS_4_4BSD_SENDMSG_RECVMSG
+#endif /* _XPG4_2 */
+
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-sunos5.7.h b/ace/config-sunos5.7.h
new file mode 100644
index 00000000000..9fb6f36481f
--- /dev/null
+++ b/ace/config-sunos5.7.h
@@ -0,0 +1,79 @@
+/* -*- C++ -*- */
+// $Id$
+
+// The following configuration file is designed to work for SunOS 5.7
+// (Solaris 7) platforms using the SunC++ 4.x, 5.x, or g++ compilers.
+
+#ifndef ACE_CONFIG_H
+
+// ACE_CONFIG_H is defined by one of the following #included headers.
+
+// #include the SunOS 5.6 config file, then add SunOS 5.7 updates below.
+
+#include "ace/config-sunos5.6.h"
+
+#if defined (__GNUG__)
+# if __GNUC__ <= 2 && __GNUC_MINOR__ < 8
+ // Assume that later g++ were built on SunOS 5.7, so they don't
+ // have these problems . . .
+
+ // Disable the following, because g++ 2.7.2.3 can't handle it.
+ // Maybe later g++ versions can?
+# undef ACE_HAS_XPG4_MULTIBYTE_CHAR
+
+ // The Solaris86 g++ 2.7.2.3 sys/types.h doesn't have these . . .
+ typedef long t_scalar_t; /* historical versions */
+ typedef unsigned long t_uscalar_t;
+ typedef void *timeout_id_t;
+# endif /* __GNUC__ <= 2 && __GNUC_MINOR__ < 8 */
+
+#elif defined (ghs)
+ // SunOS 5.7's /usr/include/sys/procfs_isa.h needs uint64_t,
+ // but /usr/include/sys/int_types.h doesn't #define it because
+ // _NO_LONGLONG is #
+# undef ACE_HAS_PROC_FS
+# undef ACE_HAS_PRUSAGE_T
+
+#elif defined (__KCC)
+typedef unsigned long long uint64_t;
+#endif /* __GNUG__ || ghs || __KCC */
+
+// SunOS 5.7 supports SCHED_FIFO and SCHED_RR, as well as SCHED_OTHER.
+#undef ACE_HAS_ONLY_SCHED_OTHER
+
+// SunOS 5.7 gets this right . . .
+#undef ACE_HAS_BROKEN_T_ERROR
+
+// And doesn't need to set LWP priorities, as shown by
+// performance-tests/Misc/preempt.
+#undef ACE_NEEDS_LWP_PRIO_SET
+
+// SunOS 5.7 can support Real-Time Signals and POSIX4 AIO operations
+// are supported.
+
+#if !defined (ACE_HAS_AIO_CALLS)
+#define ACE_HAS_AIO_CALLS
+#endif /* !ACE_HAS_AIO_CALLS */
+
+#if defined (ACE_POSIX_AIOCB_PROACTOR)
+#undef ACE_POSIX_AIOCB_PROACTOR
+#endif /* ACE_POSIX_AIOCB_PROACTOR */
+
+// This is anyway default.
+#define ACE_POSIX_SIG_PROACTOR
+
+#ifdef ACE_HAS_LIMITED_SELECT
+#undef ACE_HAS_LIMITED_SELECT
+#endif /* ACE_HAS_LIMITED_SELECT */
+
+// SunOS 5.7 has socklen_t
+#define ACE_HAS_SOCKLEN_T
+
+#if defined (__sparcv9)
+#define ERRMAX 256 /* Needed for following define */
+#define ACE_LACKS_SYS_NERR
+#define _LP64
+#define ACE_SIZEOF_LONG 8 /* Needed to circumvent compiler bug #4294969 */
+#endif /* __sparcv9 */
+
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-sunos5.8.h b/ace/config-sunos5.8.h
new file mode 100644
index 00000000000..de6803e9822
--- /dev/null
+++ b/ace/config-sunos5.8.h
@@ -0,0 +1,25 @@
+/* -*- C++ -*- */
+// $Id$
+
+// The following configuration file is designed to work for SunOS 5.8
+// (Solaris 8) platforms using the SunC++ 4.x, 5.x, 6.x, or g++ compilers.
+
+#ifndef ACE_CONFIG_H
+
+// ACE_CONFIG_H is defined by one of the following #included headers.
+
+// #include the SunOS 5.7 config, then add any SunOS 5.8 updates below.
+#include "ace/config-sunos5.7.h"
+
+// The range of thread priorities for 5.8 differs from 5.7 in the
+// minimum priority for the SCHED_OTHER policy (i.e.,
+// ACE_THR_PRI_OTHER_MIN)
+# define ACE_THR_PRI_OTHER_MIN (long) -20
+
+# if defined (_POSIX_PTHREAD_SEMANTICS)
+# ifdef ACE_LACKS_RWLOCK_T
+# undef ACE_LACKS_RWLOCK_T
+# endif /* ACE_LACKS_RWLOCK_T */
+# endif /* _POSIX_PTHREAD_SEMANTICS */
+
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-tandem.h b/ace/config-tandem.h
new file mode 100644
index 00000000000..47777c9f53d
--- /dev/null
+++ b/ace/config-tandem.h
@@ -0,0 +1,445 @@
+/* -*- C++ -*- */
+// Testing TANDEM
+// $Id$
+
+// The following configuration file is designed to work for Tandems NonStop-UX
+// 4.2MP platforms using the NCC 3.20 compiler.
+
+// Note this is a test version it might include several errors I
+// have done a test and set/unset until I errors disappered.
+// Some of the options that should be set aren't because of the simple fact
+// that i haven't the time to check what is wrong.
+// e.g. widecharacter are supported but a wcstok which only take 2 parameters
+// are included by the compiler, to get the correct wcstok that takes 3 params
+// we must set _XOPEN_SOURCE and we get ALOT of errors and warnings.
+// So this config is done to get things to start to work it isn't finished.
+// Janne (Jan.Perman@osd.Ericsson.se)
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+#if ! defined (__ACE_INLINE__)
+# define __ACE_INLINE__
+#endif /* ! __ACE_INLINE__ */
+
+#define ACE_HAS_IDTYPE_T
+// Optimize ACE_Handle_Set for select().
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+
+// Tandem doesn't include this although they are defined
+// in sys/time.h and sys/resource.h
+#define ACE_LACKS_RLIMIT_PROTOTYPE // jjpp
+// Tandem has a function to set t_errno (set_t_errno)
+#define ACE_HAS_SET_T_ERRNO // jjpp
+
+//Platform supports System V IPC (most versions of UNIX, but not Win32)
+#define ACE_HAS_SYSV_IPC
+
+// OS/compiler omits the const from the sendmsg() prototype.
+#define ACE_HAS_BROKEN_SENDMSG
+
+//OS/compiler's header files are inconsistent with libC definition of rand_r().
+//#define ACE_HAS_BROKEN_RANDR // Defines it the same way as sunos5.4
+
+//Platform supports system configuration information
+#define ACE_HAS_SYSINFO
+
+//Platform supports the POSIX regular expression library
+#define ACE_HAS_REGEX
+
+// Platform supports recvmsg and sendmsg
+#define ACE_HAS_MSG
+
+//Compiler/platform contains the <sys/syscall.h> file.
+#define ACE_HAS_SYSCALL_H
+
+//Platform provides <sysent.h> header
+#define ACE_HAS_SYSENT_H
+
+// Platform has terminal ioctl flags like TCGETS and TCSETS.
+#define ACE_HAS_TERM_IOCTLS
+
+// ? ACE_HAS_AUTOMATIC_INIT_FINI Compiler/platform correctly calls
+// init()/fini() for shared libraries
+
+//Platform supports POSIX O_NONBLOCK semantics
+#define ACE_HAS_POSIX_NONBLOCK
+
+// Compiler/platform has correctly prototyped header files
+#define ACE_HAS_CPLUSPLUS_HEADERS
+
+// Platform supports IP multicast
+//#define ACE_HAS_IP_MULTICAST
+
+//Compiler/platform supports alloca()
+#define ACE_HAS_ALLOCA
+//Compiler/platform has <alloca.h>
+#define ACE_HAS_ALLOCA_H
+
+//Platform contains <poll.h>
+#define ACE_HAS_POLL
+
+// Platform supports the POSIX struct timespec type
+#define ACE_HAS_POSIX_TIME // As i understand it, but i'm in deep water
+//Platform supports the SVR4 timestruc_t type
+
+//ACE_HAS_PROC_FS Platform supports the /proc file system
+
+//ACE_HAS_PRUSAGE_T Platform supports the prusage_t struct
+
+
+// To get this to work a patch in sys/signal must be made
+// typedef void SIG_FUNC_TYPE(int);
+//#if defined (__cplusplus)
+// void (*sa_handler)(int);
+//#else
+// ...
+//#endif
+//#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
+#define ACE_HAS_TANDEM_SIGNALS
+//Compiler/platform defines the sig_atomic_t typedef
+#define ACE_HAS_SIG_ATOMIC_T
+//Platform supports SVR4 extended signals
+#define ACE_HAS_SIGINFO_T
+//Platform supports ucontext_t (which is used in the extended signal API).
+#define ACE_HAS_UCONTEXT_T
+//Compiler/platform supports SVR4 signal typedef
+//#define ACE_HAS_SVR4_SIGNAL_T
+//ACE_HAS_SVR4_SIGNAL_T
+
+
+// Platform/compiler has the sigwait(2) prototype
+#define ACE_HAS_SIGWAIT
+
+//Compiler/platform provides the sockio.h file
+#define ACE_HAS_SOCKIO_H
+
+// Compiler supports the ssize_t typedef
+#define ACE_HAS_SSIZE_T // Limits.h must be included
+
+//Platform supports STREAMS
+#define ACE_HAS_STREAMS
+
+#define ACE_HAS_STREAM_PIPES
+//Platform supports STREAM pipes
+
+//Compiler/platform supports strerror ()
+#define ACE_HAS_STRERROR
+
+//Compiler/platform supports struct strbuf
+#define ACE_HAS_STRBUF_T
+
+//Compiler/platform supports SVR4 dynamic linking semantics
+#define ACE_HAS_SVR4_DYNAMIC_LINKING
+//Compiler/platform supports SVR4 gettimeofday() prototype
+//#define ACE_HAS_SVR4_GETTIMEOFDAY // Defines it the same way as sunos5.4
+
+//Compiler/platform supports SVR4 TLI (in particular, T_GETNAME stuff)...
+#define ACE_HAS_SVR4_TLI
+
+//Platform provides <sys/filio.h> header
+#define ACE_HAS_SYS_FILIO_H
+
+//Platform supports TLI timod STREAMS module
+#define ACE_HAS_TIMOD_H
+//Platform supports TLI tiuser header
+#define ACE_HAS_TIUSER_H
+
+//Platform supports TLI
+#define ACE_HAS_TLI
+//Platform provides TLI function prototypes
+#define ACE_HAS_TLI_PROTOTYPES
+
+//Platform lacks streambuf "linebuffered ()".
+#define ACE_LACKS_LINEBUFFERED_STREAMBUF
+
+// Platform lacks "signed char" type (broken!)
+#define ACE_LACKS_SIGNED_CHAR
+
+
+//? ACE_NEEDS_DEV_IO_CONVERSION Necessary with some compilers
+//to pass ACE_TTY_IO as parameter to DEV_Connector.
+
+#define ACE_PAGE_SIZE 4096
+// Defines the page size of the system (not used on Win32 or
+// with ACE_HAS_GETPAGESIZE).
+
+/****** THREAD SPECIFIC **********/
+/* If you want to remove threading then comment out the following four #defines .*/
+#if !defined (ACE_MT_SAFE)
+ #define ACE_MT_SAFE 1 //Compile using multi-thread libraries
+#endif
+#define ACE_HAS_THREADS //Platform supports threads
+#define ACE_HAS_STHREADS //Platform supports Solaris threads
+
+// Compiler/platform has threadspecific storage
+#define ACE_HAS_THREAD_SPECIFIC_STORAGE
+//Platform supports thr_keydelete (e.g,. UNIXWARE)
+
+#define ACE_HAS_THR_MINSTACK // Tandem uses thr_minstack instead of thr_min_stack
+#define ACE_LACKS_PRI_T // Tandem lacks pri_t
+#define ACE_HAS_THR_KEYDELETE
+
+//ACE_HAS_REENTRANT_FUNCTIONS Platform supports reentrant
+// functions (i.e., all the POSIX *_r functions).
+//ACE_HAS_RECURSIVE_THR_EXIT_SEMANTICS Platform will recurse infinitely on
+// thread exits from TSS cleanup routines (e.g., AIX).
+//ACE_NEEDS_HUGE_THREAD_STACKSIZE Required by platforms with small
+// default stacks.
+//ACE_HAS_ONLY_SCHED_OTHER Platform, e.g., Solaris 2.5, only
+// supports SCHED_OTHER POSIX scheduling policy.
+
+
+//*************************************
+//ACE_HAS_PTHREADS Platform supports POSIX Pthreads
+//ACE_HAS_PTHREAD_CONDATTR_SETKIND_NP Platform has pthread_condattr_
+// setkind_np().
+//ACE_HAS_PTHREAD_MUTEXATTR_SETKIND_NP Platform has
+// pthread_mutexattr_setkind_np().
+//ACE_HAS_THREAD_SELF Platform has thread_self() rather
+// than pthread_self() (e.g., DCETHREADS and AIX)
+//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_LACKS_CONDATTR_PSHARED Platform has no implementation of
+// pthread_condattr_setpshared(), even though it supports pthreads!
+//ACE_LACKS_PTHREAD_THR_SIGSETMASK Platform lacks pthread_thr_
+// sigsetmask (e.g., MVS, HP/UX, and OSF/1 3.2)
+//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_THREAD_STACK_SIZE Platform lacks pthread_attr_
+// setstacksize() (e.g., Linux pthreads)
+
+//ACE_HAS_IRIX62_THREADS Platform supports the very odd IRIX
+// 6.2 threads...
+
+/*********************************/
+
+/******* SIGNAL STUFF *******/
+//ACE_HAS_SIGNAL_OBJECT_AND_WAIT Platform supports the Win32
+// SignalObjectAndWait() function (WinNT 4.0 and beyond).
+//#define ACE_HAS_SIGNAL_SAFE_OS_CALLS
+//Automatically restart OS system
+// calls when EINTR occurs
+
+
+// Platform supports the getrusage() system call.
+//#define ACE_HAS_GETRUSAGE
+//Platform uses non-const char * in calls to gethostbyaddr, gethostbyname,
+// getservbyname
+#define ACE_HAS_NONCONST_GETBY
+// Platform's select() uses non-const timeval* (only found on Linux right now)
+#define ACE_HAS_NONCONST_SELECT_TIMEVAL
+// And on Tandem :-)
+//Uses ctime_r & asctime_r with only two parameters vs. three.
+#define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R
+//Platform has special header for select().
+#define ACE_HAS_SELECT_H
+// Platform/compiler supports Standard C++ Library
+#define ACE_HAS_STANDARD_CPP_LIBRARY
+//Platform/compiler supports _sys_errlist symbol
+//#define ACE_HAS_SYS_ERRLIST
+//Platform lacks madvise() (e.g., Linux)
+#define ACE_LACKS_MADVISE
+//Platform lacks the si_addr field of siginfo_t (e.g.,VxWorks and HP/UX 10.x)
+//?#define ACE_LACKS_SI_ADDR
+//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_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.
+//ACE_HAS_AIX_HI_RES_TIMER Platform has AIX4 ::read_real_time ()
+// ? 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_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_POSIX_TIME Platform defines struct timespec in
+// <sys/timers.h>
+//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.
+// There is a bstring in the Tandem but where man bstring OK, find bstring NOK
+// ? 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 *.
+// Yes in man, no in header file
+//ACE_HAS_CHARPTR_SOCKOPT OS/platform uses char * for sockopt,
+// rather than const char *
+// sprintf() returns char * rather than int (e.g., SunOS 4.x)
+//#define ACE_HAS_CHARPTR_SPRINTF
+//ACE_HAS_CLOCK_GETTIME Platform supports POSIX 1.b
+// clock_gettime ()
+//ACE_HAS_COMPLEX_LOCK Platform supports non-standard
+// readers/writer locks...
+//? ACE_HAS_EXCEPTIONS Compiler supports C++ exception
+// handling
+// Platform supports getpagesize() call (otherwise, ACE_PAGE_SIZE must be
+// defined, except on Win32)
+//#define ACE_HAS_GETPAGESIZE // Man getpagesize ok grep /usr/.. not
+// found
+//ACE_HAS_GNU_CSTRING_H Denotes that GNU has cstring.h as
+// standard which redefines memchr()
+//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_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_NONCONST_MSGSND Platform has a non-const parameter to
+// msgsend() (e.g., SCO).
+// Has it msgsend at all
+
+//ACE_HAS_OLD_MALLOC Compiler/platform uses old malloc()/
+// free() prototypes (ugh)
+//? ACE_HAS_POSIX_SEM Platform supports POSIX real-time
+//semaphores (e.g., VxWorks and Solaris)
+//Compiler/platform defines a union semun for SysV shared memory
+//#define ACE_HAS_SEMUN
+//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_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_SUNOS4_GETTIMEOFDAY SunOS 4 style prototype.
+//? ACE_HAS_SYSCALL_GETRUSAGE HP/UX has an undefined syscall for
+//GETRUSAGE...
+//ACE_HAS_TEMPLATE_TYPEDEFS Compiler implements templates that
+// support typedefs inside of classes used as formal arguments to a template
+// class.
+//Platform/compiler supports timezone * as second parameter to gettimeofday()
+//#define ACE_HAS_TIMEZONE_GETTIMEOFDAY According to man we have but not
+//when compiling
+//ACE_HAS_UNION_WAIT The wait() system call takes a (
+// union wait *) rather than int *
+//? 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_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_EXEC Platform lacks the exec() family of
+// system calls (e.g., Win32, VxWorks, Chorus)
+//ACE_LACKS_FILELOCKS Platform lacks file locking mechanism
+//ACE_LACKS_IOSTREAM_FX iostream header does not declare
+// ipfx (), opfx (), etc.
+//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_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_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_SEMBUF_T Platform lacks struct sembuf
+//(e.g., Win32 and VxWorks)
+//ACE_LACKS_SIGACTION Platform lacks struct sigaction
+// (e.g., Win32 and Chorus)
+//? 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_KEY_T Platform lacks key_t
+//(e.g., Chorus, VxWorks, Win32)
+//ACE_LACKS_SENDMSG Platform lacks sendmsg()
+// (e.g., Linux)
+//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_TCP_H Platform doesn't have netinet/tcp.h
+//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_NDEBUG Turns off debugging features
+//ACE_LACKS_READV Platform doesn't define readv, so
+// use our own
+//ACE_LACKS_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_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 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().
+
+// Turns off the tracing feature.
+// #define ACE_NTRACE 0
+#if !defined (ACE_NTRACE)
+# define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+
+// Defines the page size of the system.
+#define ACE_PAGE_SIZE 4096
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-tru64.h b/ace/config-tru64.h
new file mode 100644
index 00000000000..313d93d9fb0
--- /dev/null
+++ b/ace/config-tru64.h
@@ -0,0 +1,23 @@
+/* -*- C++ -*- */
+// $Id$
+
+// The following configuration file is designed to work for the
+// Digital UNIX V4.0a and later platforms. It relies on
+// config-osf1-4.0.h, and adds deltas for newer platforms.
+
+#ifndef ACE_CONFIG_TRU64_H
+#define ACE_CONFIG_TRU64_H
+#include "ace/pre.h"
+
+#if defined (DIGITAL_UNIX)
+# include "ace/config-osf1-4.0.h"
+# define ACE_HAS_NONSTATIC_OBJECT_MANAGER
+# if DIGITAL_UNIX >= 0x40D
+# define ACE_LACKS_SYSTIME_H
+# endif /* DIGITAL_UNIX >= 0x40D */
+#else /* ! DIGITAL_UNIX */
+# include "ace/config-osf1-3.2.h"
+#endif /* ! DIGITAL_UNIX */
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_TRU64_H */
diff --git a/ace/config-unixware-2.01-g++.h b/ace/config-unixware-2.01-g++.h
new file mode 100644
index 00000000000..92fe9d4c58a
--- /dev/null
+++ b/ace/config-unixware-2.01-g++.h
@@ -0,0 +1,113 @@
+/* -*- C++ -*- */
+// $Id$
+
+// The following configuration file is designed to work
+// for Unixware platforms running UnixWare 2.01.
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+// See README for what the ACE_HAS... and ACE_LACKS... macros mean
+
+#if ! defined (__ACE_INLINE__)
+# define __ACE_INLINE__
+#endif /* ! __ACE_INLINE__ */
+
+// config-g++-common.h undef's ACE_HAS_STRING_CLASS with -frepo, so
+// this must appear before its #include.
+#define ACE_HAS_STRING_CLASS
+
+#if defined (__GNUG__)
+# include "ace/config-g++-common.h"
+#endif /* __GNUG__ */
+
+// Optimize ACE_Handle_Set for select().
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+
+#define ACE_HAS_IDTYPE_T
+#define ACE_LACKS_STRCASECMP
+#define ACE_HAS_SIZET_SOCKET_LEN
+#define ACE_HAS_AUTOMATIC_INIT_FINI
+#define ACE_HAS_CPLUSPLUS_HEADERS
+#define ACE_HAS_GNU_CSTRING_H
+#define ACE_HAS_MSG
+#define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R
+// Not yet sure about threads
+#define ACE_HAS_NONCONST_GETBY
+#define ACE_HAS_OSF1_GETTIMEOFDAY
+#define ACE_HAS_POLL
+#define ACE_HAS_POSIX_NONBLOCK
+#define ACE_HAS_POSIX_TIME
+#define ACE_HAS_REENTRANT_FUNCTIONS
+#define ACE_HAS_REGEX
+#define ACE_HAS_LAZY_V
+#define ACE_HAS_SELECT_H
+#define ACE_HAS_SIGINFO_T
+#define ACE_HAS_UCONTEXT_T
+#define ACE_HAS_SIGWAIT
+#define ACE_HAS_SIG_ATOMIC_T
+#define ACE_HAS_SOCKIO_H
+#define ACE_HAS_SSIZE_T
+#define ACE_HAS_STHREADS
+#define ACE_HAS_THR_KEYDELETE
+#define ACE_HAS_STRBUF_T
+#define ACE_HAS_STREAMS
+#define ACE_HAS_STREAM_PIPES
+#define ACE_HAS_STRERROR
+#define ACE_HAS_SVR4_DYNAMIC_LINKING
+#define ACE_HAS_SYSCALL_H
+#define ACE_HAS_SYSINFO
+#define ACE_HAS_SYSV_IPC
+#define ACE_HAS_SYS_FILIO_H
+#define ACE_HAS_SYS_SIGLIST
+#define ACE_HAS_TERM_IOCTLS
+#define ACE_HAS_THREADS
+#define ACE_HAS_THREAD_SPECIFIC_STORAGE
+#define ACE_HAS_THREAD_T
+#define ACE_HAS_TIMOD_H
+#define ACE_HAS_TIUSER_H
+#define ACE_HAS_TLI
+#define ACE_HAS_TLI_PROTOTYPES
+#define ACE_HAS_UNIXWARE_SVR4_SIGNAL_T
+#define ACE_HAS_VOIDPTR_SOCKOPT
+
+#define ACE_LACKS_MADVISE
+#define ACE_LACKS_SYSCALL
+
+#if !defined (ACE_MT_SAFE)
+# define ACE_MT_SAFE 1
+#endif
+
+#define ACE_PAGE_SIZE 4096
+#define ACE_REDEFINES_XTI_FUNCTIONS
+
+// Compiling for UNIXWARE
+#if !defined (UNIXWARE)
+# define UNIXWARE
+# define UNIXARE_2_0
+#endif /* UNIXWARE */
+
+// These seem to be missing... Process_Manager uses them
+//
+//typedef int Process_t;
+//typedef int hProcess_t;
+//typedef int hpid_t;
+
+
+// Compiler/platform supports OSF/1 gettimeofday() prototype.
+//#define ACE_HAS_OSF1_GETTIMEOFDAY
+
+// Compiler/platform supports SVR4 TLI (in particular, T_GETNAME stuff)...
+//#define ACE_HAS_SVR4_TLI
+
+
+// Platform doesn't have get<blah>by... char *arg defined as const
+//#define ACE_GET_BLAH_BY_NO_CONST
+
+// Turns off the tracing feature.
+#if !defined (ACE_NTRACE)
+# define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-unixware-2.1.2-g++.h b/ace/config-unixware-2.1.2-g++.h
new file mode 100644
index 00000000000..fced5901150
--- /dev/null
+++ b/ace/config-unixware-2.1.2-g++.h
@@ -0,0 +1,102 @@
+/* -*- C++ -*- */
+// $Id$
+
+// The following configuration file is designed to work
+// for Unixware platforms running UnixWare 2.1.2 and gcc version 2.7.2.2
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+// See README for what the ACE_HAS... and ACE_LACKS... macros mean
+
+#if ! defined (__ACE_INLINE__)
+# define __ACE_INLINE__
+#endif /* ! __ACE_INLINE__ */
+
+// config-g++-common.h undef's ACE_HAS_STRING_CLASS with -frepo, so
+// this must appear before its #include.
+#define ACE_HAS_STRING_CLASS
+
+#if defined (__GNUG__)
+# include "ace/config-g++-common.h"
+#endif /* __GNUG__ */
+
+// Optimize ACE_Handle_Set for select().
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+
+#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
+#define ACE_HAS_AUTOMATIC_INIT_FINI
+#define ACE_HAS_CPLUSPLUS_HEADERS
+#define ACE_HAS_GNU_CSTRING_H
+#define ACE_HAS_MSG
+#define ACE_HAS_SVR4_GETTIMEOFDAY
+#define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R
+#define ACE_HAS_NONCONST_GETBY
+#define ACE_HAS_POLL
+#define ACE_HAS_POSIX_NONBLOCK
+#define ACE_HAS_POSIX_TIME
+#define ACE_LACKS_TIMESPEC_T
+#define ACE_HAS_REENTRANT_FUNCTIONS
+#define ACE_HAS_REGEX
+#define ACE_HAS_LAZY_V
+#define ACE_HAS_SELECT_H
+#define ACE_HAS_SIGINFO_T
+#define ACE_HAS_UCONTEXT_T
+#define ACE_HAS_SIGWAIT
+#define ACE_HAS_SIG_ATOMIC_T
+#define ACE_HAS_SOCKIO_H
+#define ACE_HAS_SSIZE_T
+#define ACE_HAS_STHREADS
+#define ACE_HAS_THR_KEYDELETE
+#define ACE_HAS_STRBUF_T
+#define ACE_HAS_STREAMS
+#define ACE_HAS_STREAM_PIPES
+#define ACE_HAS_STRERROR
+#define ACE_HAS_SVR4_DYNAMIC_LINKING
+#define ACE_HAS_SYSCALL_H
+#define ACE_HAS_SYSINFO
+#define ACE_HAS_SYSV_IPC
+#define ACE_HAS_SYS_FILIO_H
+#define ACE_HAS_TERM_IOCTLS
+#define ACE_HAS_THREADS
+#define ACE_HAS_THREAD_SPECIFIC_STORAGE
+#define ACE_HAS_THREAD_T
+#define ACE_HAS_TIMOD_H
+#define ACE_HAS_TIUSER_H
+#define ACE_HAS_TLI
+#define ACE_HAS_TLI_PROTOTYPES
+#define ACE_HAS_UNIXWARE_SVR4_SIGNAL_T
+#define ACE_HAS_VOIDPTR_SOCKOPT
+#define ACE_HAS_THR_MINSTACK
+
+#define ACE_LACKS_MADVISE
+#define ACE_LACKS_STRCASECMP
+#define ACE_LACKS_PRI_T
+#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS
+#define ACE_LACKS_PWD_REENTRANT_FUNCTIONS
+
+#if !defined (ACE_MT_SAFE)
+# define ACE_MT_SAFE 1
+#endif
+
+#define ACE_PAGE_SIZE 4096
+#define ACE_REDEFINES_XTI_FUNCTIONS
+
+#if !defined (UNIXWARE)
+# define UNIXWARE
+# define UNIXWARE_2_1
+#endif /* ! UNIXWARE */
+
+// Turns off the tracing feature.
+#if !defined (ACE_NTRACE)
+# define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+
+#define ACE_HAS_IDTYPE_T
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-unixware-7.1.0.h b/ace/config-unixware-7.1.0.h
new file mode 100644
index 00000000000..b5a228d1a81
--- /dev/null
+++ b/ace/config-unixware-7.1.0.h
@@ -0,0 +1,447 @@
+/* -*- C++ -*- */
+// $Id$
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+
+/* ACE configuration header file */
+
+/* Include the commong gnu config file */
+#include "config-g++-common.h"
+
+/* For unixware 7.1 && g++ 2.91.57, see if this fixes my problem */
+#ifndef UNIXWARE_7_1
+#define UNIXWARE_7_1
+#endif
+
+/* Define if you have alloca, as a function or macro. */
+#define HAVE_ALLOCA 1
+
+/* Define if you have the strftime function. */
+#define HAVE_STRFTIME 1
+
+/* Define if you have <sys/wait.h> that is POSIX.1 compatible. */
+#define HAVE_SYS_WAIT_H 1
+
+/* Define if you have the ANSI C header files. */
+#define STDC_HEADERS 1
+
+/* Define if lex declares yytext as a char * by default, not a char[]. */
+#define YYTEXT_POINTER 1
+
+/* Define _REENTRANT if reentrant functions should be used. */
+#ifndef _REENTRANT
+# define _REENTRANT 1
+#endif
+
+#define ACE_HAS_NEW_NO_H 1
+#define ACE_HAS_STDEXCEPT_NO_H 1
+#define ACE_HAS_IOMANIP_NO_H 1
+
+/* Platform provides <sys/ioctl.h> header */
+#define ACE_HAS_SYS_IOCTL_H 1
+
+#define ACE_THREAD_MIN_PRIORITY 0
+#if defined (ACE_THREAD_MIN_PRIORITY)
+# define PTHREAD_MIN_PRIORITY ACE_THREAD_MIN_PRIORITY
+#endif /* #if defined (ACE_THREAD_MIN_PRIORITY) */
+
+#define ACE_THREAD_MAX_PRIORITY 99
+#if defined (ACE_THREAD_MAX_PRIORITY)
+# define PTHREAD_MAX_PRIORITY ACE_THREAD_MAX_PRIORITY
+#endif /* #if defined (ACE_THREAD_MAX_PRIORITY) */
+
+/* Specify sizes of given built-in types. If a size isn't defined here,
+ then ace/Basic_Types.h will attempt to deduce the size. */
+/* #undef ACE_SIZEOF_CHAR */
+#define ACE_SIZEOF_SHORT 2
+#define ACE_SIZEOF_INT 4
+#define ACE_SIZEOF_LONG 4
+#define ACE_SIZEOF_LONG_LONG 8
+#define ACE_SIZEOF_VOID_P 4
+#define ACE_SIZEOF_FLOAT 4
+#define ACE_SIZEOF_DOUBLE 8
+#define ACE_SIZEOF_LONG_DOUBLE 12
+
+/* typedef for ACE_UINT64 */
+/*
+ We only make the typedef if ACE_UINT64_TYPEDEF is defined. Otherwise,
+ let ace/Basic_Types.h do the work for us.
+*/
+#define ACE_UINT64_TYPEDEF unsigned long long
+#if defined(ACE_UINT64_TYPEDEF)
+ typedef ACE_UINT64_TYPEDEF ACE_UINT64;
+#endif /* ACE_UINT64_TYPEDEF && !ACE_DISABLE_AUTOCONF_UINT64 */
+
+/* Enable ACE inlining */
+#define __ACE_INLINE__ 1
+
+/* OS has priocntl (2) */
+#define ACE_HAS_PRIOCNTL 1
+
+/* Platform has pread() and pwrite() support */
+#define ACE_HAS_P_READ_WRITE 1
+
+/* Compiler/platform supports alloca() */
+#define ACE_HAS_ALLOCA 1
+
+/* Compiler/platform correctly calls init()/fini() for shared libraries */
+#define ACE_HAS_AUTOMATIC_INIT_FINI 1
+
+/* Platform doesn't cast MAP_FAILED to a (void *). */
+/* #undef ACE_HAS_BROKEN_MAP_FAILED */
+/* Staller: oh yes, let's do this! */
+#define ACE_HAS_BROKEN_MAP_FAILED
+
+/* Prototypes for both signal() and struct sigaction are consistent. */
+#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES 1
+
+/* Platform supports operations on directories via struct dirent,
+ readdir_r, etc. */
+#define ACE_HAS_DIRENT 1
+
+/* Compiler supports C++ exception handling */
+// MM-Graz if ! defined inserted, to prevent warnings, because it is already
+// defined in config-g++common.h
+# if !defined (ACE_HAS_EXCEPTIONS)
+#define ACE_HAS_EXCEPTIONS 1
+# endif
+
+/* Platform supports getpagesize() call (otherwise, ACE_PAGE_SIZE must be
+ defined, except on Win32) */
+#define ACE_HAS_GETPAGESIZE 1
+
+/* Platform supports the getrusage() system call. */
+#define ACE_HAS_GETRUSAGE 1
+
+/* Platform has a getrusage () prototype in sys/resource.h that differs from
+ the one in ace/OS.i. */
+#define ACE_HAS_GETRUSAGE_PROTO 1
+
+/* Denotes that GNU has cstring.h as standard which redefines memchr() */
+#define ACE_HAS_GNU_CSTRING_H
+
+/* The GPERF utility is compiled for this platform */
+#define ACE_HAS_GPERF 1
+
+/* Optimize ACE_Handle_Set::count_bits for select() operations (common case) */
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT 1
+
+/* Compiler/platform supports idtype_t. */
+#define ACE_HAS_IDTYPE_T 1
+
+/* Platform supports IP multicast */
+#define ACE_HAS_IP_MULTICAST 1
+
+/* Platform supports thr_keydelete (e.g,. UNIXWARE) */
+#define ACE_HAS_THR_KEYDELETE 1
+
+/* Platform calls thr_minstack() rather than thr_min_stack() (e.g., Tandem). */
+#define ACE_HAS_THR_MINSTACK 1
+
+/* Platform supports recvmsg and sendmsg */
+#define ACE_HAS_MSG 1
+
+/* Platform's select() uses non-const timeval* (only found on Linux right
+ now) */
+#define ACE_HAS_NONCONST_SELECT_TIMEVAL 1
+
+/* Uses ctime_r & asctime_r with only two parameters vs. three. */
+#define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R 1
+
+/* Platform is an Intel Pentium microprocessor. */
+/* There is a problem with the gethrtime() because of (apparently) a problem
+ with the inline assembly instruction. Hopefully there is a way to resolve
+ that with an improvement to the assembler
+*/
+#ifdef ACE_HAS_PENTIUM
+#undef ACE_HAS_PENTIUM
+#endif /* ACE_HAS_PENTIUM */
+
+
+/* Platform contains <poll.h> */
+#define ACE_HAS_POLL 1
+
+/* Platform supports POSIX O_NONBLOCK semantics */
+#define ACE_HAS_POSIX_NONBLOCK 1
+
+/* Platform supports the POSIX struct timespec type */
+#define ACE_HAS_POSIX_TIME 1
+
+/* Platform supports the /proc file system and defines tid_t
+ in <sys/procfs.h> */
+#define ACE_HAS_PROC_FS 1
+
+/* Platform supports POSIX Threads */
+#define ACE_HAS_PTHREADS 1
+
+/* Platform supports POSIX.1c-1995 threads */
+#define ACE_HAS_PTHREADS_STD 1
+
+/* pthread.h declares an enum with PTHREAD_PROCESS_PRIVATE and
+ PTHREAD_PROCESS_SHARED values */
+#define ACE_HAS_PTHREAD_PROCESS_ENUM 1
+
+/* Platform has pthread_sigmask() defined. */
+#define ACE_HAS_PTHREAD_SIGMASK 1
+
+/* Platform will recurse infinitely on thread exits from TSS cleanup routines
+ (e.g., AIX) */
+#define ACE_HAS_RECURSIVE_THR_EXIT_SEMANTICS 1
+
+/* Platform supports reentrant functions (i.e., all the POSIX *_r
+ functions). */
+#define ACE_HAS_REENTRANT_FUNCTIONS 1
+
+/* Platform has support for multi-byte character support compliant with the
+ XPG4 Worldwide Portability Interface wide-character classification. */
+#define ACE_HAS_XPG4_MULTIBYTE_CHAR 1
+
+/* Platform does not support reentrant netdb functions (getprotobyname_r,
+ getprotobynumber_r, gethostbyaddr_r, gethostbyname_r, getservbyname_r). */
+#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS 1
+
+/* Platform supports the POSIX regular expression library */
+#define ACE_HAS_REGEX 1
+
+/* Platform has special header for select(). */
+#define ACE_HAS_SELECT_H 1
+
+/* Platform has a function to set t_errno (e.g., Tandem). */
+#define ACE_HAS_SET_T_ERRNO 1
+
+/* Platform supports SVR4 extended signals */
+#define ACE_HAS_SIGINFO_T 1
+
+/* Platform/compiler has the sigwait(2) prototype */
+#define ACE_HAS_SIGWAIT 1
+
+/* Compiler/platform defines the sig_atomic_t typedef */
+#define ACE_HAS_SIG_ATOMIC_T 1
+
+/* Platform supports new BSD inet_addr len field. */
+#define ACE_HAS_SIN_LEN 1
+
+/* OS/compiler uses size_t * rather than int * for socket lengths */
+#define ACE_HAS_SIZET_SOCKET_LEN 1
+
+/* Compiler/platform provides the sys/sockio.h file */
+#define ACE_HAS_SOCKIO_H 1
+
+/* Compiler supports the ssize_t typedef */
+#define ACE_HAS_SSIZE_T 1
+
+/* Platform supports UNIX International Threads */
+#define ACE_HAS_STHREADS 1
+
+/* Platform has thr_yield() */
+#define ACE_HAS_THR_YIELD 1
+
+/* Compiler/platform supports struct strbuf */
+#define ACE_HAS_STRBUF_T 1
+
+/* Platform supports STREAMS */
+#define ACE_HAS_STREAMS 1
+
+/* Platform supports STREAM pipes */
+#define ACE_HAS_STREAM_PIPES 1
+
+/* Compiler/platform supports strerror () */
+#define ACE_HAS_STRERROR 1
+
+/* Platform/Compiler supports a String class (e.g., GNU or Win32). */
+#define ACE_HAS_STRING_CLASS 1
+
+/* Platform has <strings.h> (which contains bzero() prototype) */
+#define ACE_HAS_STRINGS 1
+
+/* Platform has void * as second parameter to gettimeofday and a has a
+ prototype */
+#define ACE_HAS_SUNOS4_GETTIMEOFDAY 1
+
+/* Compiler/platform supports SVR4 dynamic linking semantics */
+#define ACE_HAS_SVR4_DYNAMIC_LINKING 1
+
+/* Compiler/platform supports SVR4 TLI (in particular, T_GETNAME stuff)... */
+#define ACE_HAS_SVR4_TLI 1
+
+/* Compiler/platform contains the <sys/syscall.h> file. */
+#define ACE_HAS_SYSCALL_H 1
+
+/* Platform supports system configuration information */
+#define ACE_HAS_SYSINFO 1
+
+/* Platform supports System V IPC (most versions of UNIX, but not Win32) */
+#define ACE_HAS_SYSV_IPC 1
+
+/* Platform provides <sys/filio.h> header */
+#define ACE_HAS_SYS_FILIO_H 1
+
+/* Platform provides <sys/xti.h> header */
+#define ACE_HAS_SYS_XTI_H 1
+
+/* Platform has terminal ioctl flags like TCGETS and TCSETS. */
+#define ACE_HAS_TERM_IOCTLS 1
+
+/* Platform supports threads */
+#define ACE_HAS_THREADS 1
+
+/* Compiler/platform has thread-specific storage */
+#define ACE_HAS_THREAD_SPECIFIC_STORAGE 1
+
+/* Platform supports TLI timod STREAMS module */
+#define ACE_HAS_TIMOD_H 1
+
+/* Platform supports TLI tiuser header */
+#define ACE_HAS_TIUSER_H 1
+
+/* Platform supports TLI. Also see ACE_TLI_TCP_DEVICE. */
+#define ACE_HAS_TLI 1
+
+/* Platform provides TLI function prototypes */
+#define ACE_HAS_TLI_PROTOTYPES 1
+
+/* Platform supports ualarm() */
+#define ACE_HAS_UALARM 1
+
+/* Platform supports ucontext_t (which is used in the extended signal API). */
+#define ACE_HAS_UCONTEXT_T 1
+
+/* Platform has <utime.h> header file */
+#define ACE_HAS_UTIME 1
+
+/* Platform requires void * for mmap(). */
+#define ACE_HAS_VOIDPTR_MMAP 1
+
+/* Platform has XTI (X/Open-standardized superset of TLI). Implies
+ ACE_HAS_TLI but uses a different header file. */
+#define ACE_HAS_XTI 1
+
+/* Platform can not build ace/IOStream{,_T}.cpp. This does not necessarily
+ mean that the platform does not support iostreams. */
+#define ACE_LACKS_ACE_IOSTREAM 1
+
+/* Platform does not have u_longlong_t typedef */
+#define ACE_LACKS_U_LONGLONG_T 1
+
+/* Platform lacks madvise() (e.g., Linux) */
+#define ACE_LACKS_MADVISE 1
+
+/* Platform lacks POSIX prototypes for certain System V functions like shared
+ memory and message queues. */
+#define ACE_LACKS_SOME_POSIX_PROTOTYPES 1
+
+/* Platform lacks pri_t (e.g., Tandem NonStop UNIX). */
+#define ACE_LACKS_PRI_T 1
+
+/* Platform lacks pthread_thr_sigsetmask (e.g., MVS, HP/UX, and OSF/1 3.2) */
+#define ACE_LACKS_PTHREAD_THR_SIGSETMASK 1
+
+/* Platfrom lack pthread_yield() support. */
+#define ACE_LACKS_PTHREAD_YIELD 1
+
+/* Platform lacks readers/writer locks. */
+#define ACE_LACKS_RWLOCK_T 1
+
+/* MIT pthreads platform lacks the timedwait prototypes */
+#define ACE_LACKS_TIMEDWAIT_PROTOTYPES 1
+
+/* Platform does not define timepec_t as a typedef for struct timespec. */
+#define ACE_LACKS_TIMESPEC_T 1
+
+/* Compile using multi-thread libraries */
+#define ACE_MT_SAFE 1
+
+/* Platform needs regexpr.h for regular expression support */
+#define ACE_NEEDS_REGEXPR_H 1
+
+/* Platform needs to #include <sched.h> to get thread scheduling defs. */
+#define ACE_NEEDS_SCHED_H 1
+
+/* <time.h> doesn't automatically #include <sys/time.h> */
+#define ACE_LACKS_SYSTIME_H 1
+
+/* Turns off the tracing feature. */
+#define ACE_NTRACE 1
+
+/*********************************************************************/
+/* Compiler's template mechanim must see source code (i.e., .cpp files). This
+ is used for GNU G++. */
+/* Staller -> make 0 */
+// #undef ACE_TEMPLATES_REQUIRE_SOURCE
+
+/* 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. */
+/* Staller -> make 0 */
+// #define ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION 1
+/*********************************************************************/
+
+/* The OS/platform supports the poll() event demultiplexor */
+#define ACE_USE_POLL 1
+
+/* Platform has its standard c++ library in the namespace std. */
+#define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
+
+/* The number of bytes in a double. */
+#define SIZEOF_DOUBLE 8
+
+/* The number of bytes in a float. */
+#define SIZEOF_FLOAT 4
+
+/* The number of bytes in a int. */
+#define SIZEOF_INT 4
+
+/* The number of bytes in a long. */
+#define SIZEOF_LONG 4
+
+/* The number of bytes in a long double. */
+#define SIZEOF_LONG_DOUBLE 12
+
+/* The number of bytes in a long long. */
+#define SIZEOF_LONG_LONG 8
+
+/* The number of bytes in a short. */
+#define SIZEOF_SHORT 2
+
+/* The number of bytes in a signed char. */
+#define SIZEOF_SIGNED_CHAR 1
+
+/* The number of bytes in a void *. */
+#define SIZEOF_VOID_P 4
+
+/* Define if you have the execv function. */
+#define HAVE_EXECV 1
+
+/* Define if you have the execve function. */
+#define HAVE_EXECVE 1
+
+/* Define if you have the execvp function. */
+#define HAVE_EXECVP 1
+
+/* Define if you have the <dirent.h> header file. */
+#define HAVE_DIRENT_H 1
+
+/* Define if you have the <fstream> header file. */
+#define HAVE_FSTREAM 1
+
+/* Define if you have the <iomanip> header file. */
+#define HAVE_IOMANIP 1
+
+/* Define if you have the <iostream> header file. */
+#define HAVE_IOSTREAM 1
+
+/* Define if you have the <pwd.h> header file. */
+#define HAVE_PWD_H 1
+
+/* Name of package */
+#define PACKAGE "ace"
+
+/* Added by Staller */
+#define ENUM_BOOLEAN // See file /usr/local/lib/gcc-lib/i486-pc-sysv5/egcs-2.91.60/include/sys/types.h
+#define howmany(x, y) (((x)+((y)-1))/(y))
+#define ACE_HAS_BROKEN_T_ERROR // make a nasty warning disappear in OS.i
+#define __USLC__ 1
+#define __IOCTL_VERSIONED__ // By Carlo!
+
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-unixware-7.1.0.udk.h b/ace/config-unixware-7.1.0.udk.h
new file mode 100644
index 00000000000..ecda2189807
--- /dev/null
+++ b/ace/config-unixware-7.1.0.udk.h
@@ -0,0 +1,529 @@
+/* -*- C++ -*- */
+#ifndef ACE_CONFIG_UNIXWARE_UDK_H
+#define ACE_CONFIG_UNIXWARE_UDK_H
+
+// $Id$
+
+// Configuration for the unixware UDK compiler. derived from the unixware/g++ config
+// which was itself derived from an autoconfig run.
+
+/* ACE configuration header file */
+
+#define ACE_HAS_STD_TEMPLATE_SPECIALIZATION
+#define ACE_TEMPLATES_REQUIRE_SOURCE
+#define ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION
+//#define ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA
+
+/* For unixware 7.1 && g++ 2.91.57, see if this fixes my problem */
+//#define ACE_HAS_BROKEN_NOOP_DTORS
+#ifndef UNIXWARE_7_1
+#define UNIXWARE_7_1
+#endif
+
+#define ACE_LACKS_PLACEMENT_OPERATOR_DELETE
+
+/* Define if you have the strftime function. */
+#define HAVE_STRFTIME 1
+
+/* Define if you have <sys/wait.h> that is POSIX.1 compatible. */
+#define HAVE_SYS_WAIT_H 1
+
+/* Define if you have the ANSI C header files. */
+#define STDC_HEADERS 1
+
+/* Define if lex declares yytext as a char * by default, not a char[]. */
+#define YYTEXT_POINTER 1
+
+/* Define _REENTRANT if reentrant functions should be used. */
+#ifndef _REENTRANT
+# define _REENTRANT 1
+#endif
+
+#define ACE_HAS_NEW_NO_H 1
+#define ACE_HAS_STDEXCEPT_NO_H 1
+#define ACE_HAS_IOMANIP_NO_H 1
+
+/* Platform provides <sys/ioctl.h> header */
+#define ACE_HAS_SYS_IOCTL_H 1
+
+/*
+ * TODO: These two next #defines have an #undef before them, in
+ * case the variable being defined already had a value.
+ * The #undefs are being picked up by configure, and are commented out!
+ */
+#define ACE_THREAD_MIN_PRIORITY 0
+#if defined (ACE_THREAD_MIN_PRIORITY)
+/* # undef PTHREAD_MIN_PRIORITY */
+# define PTHREAD_MIN_PRIORITY ACE_THREAD_MIN_PRIORITY
+#endif /* #if defined (ACE_THREAD_MIN_PRIORITY) */
+
+#define ACE_THREAD_MAX_PRIORITY 99
+#if defined (ACE_THREAD_MAX_PRIORITY)
+/* # undef PTHREAD_MAX_PRIORITY */
+# define PTHREAD_MAX_PRIORITY ACE_THREAD_MAX_PRIORITY
+#endif /* #if defined (ACE_THREAD_MAX_PRIORITY) */
+
+
+
+/* UnixWare specific configuration parameters */
+/* #undef UNIXWARE */
+/* #undef UNIXWARE_2_0 */
+/* #undef UNIXWARE_2_1 */
+
+/* Specify sizes of given built-in types. If a size isn't defined here,
+ then ace/Basic_Types.h will attempt to deduce the size. */
+/* #undef ACE_SIZEOF_CHAR */
+#define ACE_SIZEOF_SHORT 2
+#define ACE_SIZEOF_INT 4
+#define ACE_SIZEOF_LONG 4
+#define ACE_SIZEOF_LONG_LONG 8
+#define ACE_SIZEOF_VOID_P 4
+#define ACE_SIZEOF_FLOAT 4
+#define ACE_SIZEOF_DOUBLE 8
+#define ACE_SIZEOF_LONG_DOUBLE 12
+
+/* typedef for ACE_UINT64 */
+/*
+ We only make the typedef if ACE_UINT64_TYPEDEF is defined. Otherwise,
+ let ace/Basic_Types.h do the work for us.
+*/
+#define ACE_UINT64_TYPEDEF unsigned long long
+#if defined(ACE_UINT64_TYPEDEF)
+ typedef ACE_UINT64_TYPEDEF ACE_UINT64;
+#endif /* ACE_UINT64_TYPEDEF && !ACE_DISABLE_AUTOCONF_UINT64 */
+
+/* Enable ACE inlining */
+#define __ACE_INLINE__ 1
+
+/* Platform supports new C++ style casts (dynamic_cast, static_cast,
+ reinterpret_cast and const_cast) */
+#define ACE_HAS_ANSI_CASTS
+
+/* Platform supports Asynchronous IO calls */
+/* #define ACE_HAS_AIO_CALLS */
+
+/* Specify this if you don't want threads to inherit parent thread's
+ ACE_Log_Msg properties. */
+/* #undef ACE_THREADS_DONT_INHERIT_LOG_MSG */
+
+/* OS has priocntl (2) */
+#define ACE_HAS_PRIOCNTL 1
+
+/* Platform has pread() and pwrite() support */
+#define ACE_HAS_P_READ_WRITE 1
+
+/* Compiler/platform correctly calls init()/fini() for shared libraries */
+#define ACE_HAS_AUTOMATIC_INIT_FINI 1
+
+/* Compiler handles explicit calling of template destructor correctly.
+ See "ace/OS.h" for details. */
+/* Staller: already defined by config-g++-common.h
+#define ACE_HAS_WORKING_EXPLICIT_TEMPLATE_DESTRUCTOR 1
+*/
+
+/* Platform doesn't cast MAP_FAILED to a (void *). */
+/* #undef ACE_HAS_BROKEN_MAP_FAILED */
+/* Staller: oh yes, let's do this! */
+#define ACE_HAS_BROKEN_MAP_FAILED
+
+
+/* Prototypes for both signal() and struct sigaction are consistent. */
+#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES 1
+
+/* Compiler/platform has correctly prototyped header files */
+#define ACE_HAS_CPLUSPLUS_HEADERS
+
+/* Platform supports operations on directories via struct dirent,
+ readdir_r, etc. */
+#define ACE_HAS_DIRENT
+
+/* Compiler supports C++ exception handling */
+# if !defined (ACE_HAS_EXCEPTIONS)
+#define ACE_HAS_EXCEPTIONS
+# endif
+
+/* Platform supports getpagesize() call (otherwise, ACE_PAGE_SIZE must be
+ defined, except on Win32) */
+#define ACE_HAS_GETPAGESIZE
+
+/* Platform supports the getrusage() system call. */
+#define ACE_HAS_GETRUSAGE
+
+/* Platform has a getrusage () prototype in sys/resource.h that differs from
+ the one in ace/OS.i. */
+#define ACE_HAS_GETRUSAGE_PROTO
+
+/* The GPERF utility is compiled for this platform */
+#define ACE_HAS_GPERF
+
+/* Optimize ACE_Handle_Set::count_bits for select() operations (common case) */
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT 1
+
+/* Compiler/platform supports SunOS high resolution timers */
+/* #undef ACE_HAS_HI_RES_TIMER */
+
+/* Compiler/platform supports idtype_t. */
+#define ACE_HAS_IDTYPE_T
+
+/* Inline all the static class OS methods to remove call overhead */
+/* Note: This gets defined by OS.h if __ACE_INLINE__ is defined */
+/* #undef ACE_HAS_INLINED_OSCALLS */
+
+/* Platform supports IP multicast */
+#define ACE_HAS_IP_MULTICAST
+
+/* Platform supports thr_keydelete (e.g,. UNIXWARE) */
+#define ACE_HAS_THR_KEYDELETE
+
+/* Platform calls thr_minstack() rather than thr_min_stack() (e.g., Tandem). */
+#define ACE_HAS_THR_MINSTACK
+
+/* Some files, such as ace/streams.h, want to include new style C++ stream
+ headers. These headers are iomanip, ios, iostream, istream, ostream,
+ fstream and streambuf. If _all_ of these headers aren't available, then
+ assume that only iostream.h and fstream.h are available. */
+/* #define ACE_USES_OLD_IOSTREAMS */
+
+/* Platform supports recvmsg and sendmsg */
+#define ACE_HAS_MSG
+
+/* Platform's select() uses non-const timeval* (only found on Linux right
+ now) */
+#define ACE_HAS_NONCONST_SELECT_TIMEVAL
+
+/* Uses ctime_r & asctime_r with only two parameters vs. three. */
+#define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R
+
+
+/* Platform is an Intel Pentium microprocessor. */
+/* There is a problem with the gethrtime() because of (apparently) a problem
+ with the inline assembly instruction. Hopefully there is a way to resolve
+ that with an improvement to the assembler
+*/
+#ifdef ACE_HAS_PENTIUM
+//#undef ACE_HAS_PENTIUM
+#endif /* ACE_HAS_PENTIUM */
+
+
+/* Platform contains <poll.h> */
+#define ACE_HAS_POLL
+
+/* Platform supports POSIX O_NONBLOCK semantics */
+#define ACE_HAS_POSIX_NONBLOCK
+
+/* Platform supports the POSIX struct timespec type */
+#define ACE_HAS_POSIX_TIME
+
+/* Platform supports the /proc file system and defines tid_t
+ in <sys/procfs.h> */
+#define ACE_HAS_PROC_FS
+
+/* Platform supports POSIX Threads */
+#define ACE_HAS_PTHREADS
+
+/* Platform supports POSIX Threads .4a Draft 4 */
+/* #undef ACE_HAS_PTHREADS_DRAFT4 */
+
+/* Platform supports POSIX Threads .4a Draft 6 */
+/* #undef ACE_HAS_PTHREADS_DRAFT6 */
+
+/* Platform supports POSIX Threads .1c Draft 7 */
+/* #undef ACE_HAS_PTHREADS_DRAFT7 */
+
+/* Platform supports POSIX.1c-1995 threads */
+#define ACE_HAS_PTHREADS_STD
+
+/* Platform has pthread_condattr_setkind_np(). */
+/* #undef ACE_HAS_PTHREAD_CONDATTR_SETKIND_NP */
+
+/* Platform has pthread_mutexattr_setkind_np(). */
+/* #undef ACE_HAS_PTHREAD_MUTEXATTR_SETKIND_NP */
+
+/* pthread.h declares an enum with PTHREAD_PROCESS_PRIVATE and
+ PTHREAD_PROCESS_SHARED values */
+#define ACE_HAS_PTHREAD_PROCESS_ENUM
+
+/* Platform has pthread_sigmask() defined. */
+#define ACE_HAS_PTHREAD_SIGMASK
+
+/* Platform will recurse infinitely on thread exits from TSS cleanup routines
+ (e.g., AIX) */
+#define ACE_HAS_RECURSIVE_THR_EXIT_SEMANTICS
+
+/* Platform supports reentrant functions (i.e., all the POSIX *_r
+ functions). */
+#define ACE_HAS_REENTRANT_FUNCTIONS
+
+/* Platform has support for multi-byte character support compliant with the
+ XPG4 Worldwide Portability Interface wide-character classification. */
+#define ACE_HAS_XPG4_MULTIBYTE_CHAR
+
+/* Platform does not support reentrant netdb functions (getprotobyname_r,
+ getprotobynumber_r, gethostbyaddr_r, gethostbyname_r, getservbyname_r). */
+#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS
+
+/* Platform supports the POSIX regular expression library */
+#define ACE_HAS_REGEX
+
+/* Platform has special header for select(). */
+#define ACE_HAS_SELECT_H
+
+/* Platform has a function to set t_errno (e.g., Tandem). */
+#define ACE_HAS_SET_T_ERRNO
+
+/* Platform supports SVR4 extended signals */
+#define ACE_HAS_SIGINFO_T
+
+/* Platform/compiler has the sigwait(2) prototype */
+#define ACE_HAS_SIGWAIT
+
+/* Compiler/platform defines the sig_atomic_t typedef */
+#define ACE_HAS_SIG_ATOMIC_T
+
+/* Platform supports new BSD inet_addr len field. */
+#define ACE_HAS_SIN_LEN
+
+/* OS/compiler uses size_t * rather than int * for socket lengths */
+#define ACE_HAS_SIZET_SOCKET_LEN
+
+/* Compiler/platform provides the sys/sockio.h file */
+#define ACE_HAS_SOCKIO_H
+
+/* Compiler supports the ssize_t typedef */
+#define ACE_HAS_SSIZE_T
+
+/* Platform supports UNIX International Threads */
+#define ACE_HAS_STHREADS
+
+/* Platform has thr_yield() */
+#define ACE_HAS_THR_YIELD
+
+/* Platform/compiler supports Standard C++ Library */
+/* It seems that UDK provides std-like declarations for only portions
+ such as <exception>
+*/
+#define ACE_HAS_STANDARD_CPP_LIBRARY 0
+
+/* Compiler/platform supports struct strbuf */
+#define ACE_HAS_STRBUF_T
+
+/* Platform supports STREAMS */
+#define ACE_HAS_STREAMS
+
+/* Platform supports STREAM pipes */
+#define ACE_HAS_STREAM_PIPES
+
+/* Compiler/platform supports strerror () */
+#define ACE_HAS_STRERROR
+
+/* Platform/Compiler supports a String class (e.g., GNU or Win32). */
+#define ACE_HAS_STRING_CLASS
+
+/* Platform has <strings.h> (which contains bzero() prototype) */
+#define ACE_HAS_STRINGS
+
+/* Platform has void * as second parameter to gettimeofday and a has a
+ prototype */
+#define ACE_HAS_SUNOS4_GETTIMEOFDAY
+
+/* Compiler/platform supports SVR4 dynamic linking semantics */
+#define ACE_HAS_SVR4_DYNAMIC_LINKING
+
+/* Compiler/platform supports SVR4 TLI (in particular, T_GETNAME stuff)... */
+#define ACE_HAS_SVR4_TLI
+
+/* Compiler/platform contains the <sys/syscall.h> file. */
+#define ACE_HAS_SYSCALL_H
+
+/* Platform supports system configuration information */
+#define ACE_HAS_SYSINFO 1
+
+/* Platform supports System V IPC (most versions of UNIX, but not Win32) */
+#define ACE_HAS_SYSV_IPC 1
+
+/* Platform provides <sys/filio.h> header */
+#define ACE_HAS_SYS_FILIO_H 1
+
+/* Platform provides <sys/xti.h> header */
+#define ACE_HAS_SYS_XTI_H 1
+
+/* Compiler implements template specialization */
+#define ACE_HAS_TEMPLATE_SPECIALIZATION 1
+
+/* Compiler implements templates that support typedefs inside of classes used
+ as formal arguments to a template class. */
+#define ACE_HAS_TEMPLATE_TYPEDEFS 1
+
+/* Platform has terminal ioctl flags like TCGETS and TCSETS. */
+#define ACE_HAS_TERM_IOCTLS 1
+
+/* Platform supports threads */
+#define ACE_HAS_THREADS 1
+
+/* Compiler/platform has thread-specific storage */
+#define ACE_HAS_THREAD_SPECIFIC_STORAGE 1
+
+/* Platform supports TLI timod STREAMS module */
+#define ACE_HAS_TIMOD_H 1
+
+/* Platform supports TLI tiuser header */
+#define ACE_HAS_TIUSER_H 1
+
+/* Platform supports TLI. Also see ACE_TLI_TCP_DEVICE. */
+#define ACE_HAS_TLI 1
+
+/* Platform provides TLI function prototypes */
+#define ACE_HAS_TLI_PROTOTYPES 1
+
+/* Platform supports ualarm() */
+#define ACE_HAS_UALARM 1
+
+/* Platform supports ucontext_t (which is used in the extended signal API). */
+#define ACE_HAS_UCONTEXT_T 1
+
+/* Platform has <utime.h> header file */
+#define ACE_HAS_UTIME 1
+
+/* Compiler supports the C++ typename keyword */
+#define ACE_HAS_TYPENAME_KEYWORD 1
+
+/* Compiler supports the new using keyword for C++ namespaces. */
+#define ACE_HAS_USING_KEYWORD 1
+
+/* Prints out console message in ACE_NOTSUP. Useful for tracking down origin
+ of ACE_NOTSUP. */
+/* #undef ACE_HAS_VERBOSE_NOTSUP */
+
+/* Platform requires void * for mmap(). */
+#define ACE_HAS_VOIDPTR_MMAP 1
+
+/* Platform has XTI (X/Open-standardized superset of TLI). Implies
+ ACE_HAS_TLI but uses a different header file. */
+#define ACE_HAS_XTI 1
+
+/* Platform can not build ace/IOStream{,_T}.cpp. This does not necessarily
+ mean that the platform does not support iostreams. */
+#define ACE_LACKS_ACE_IOSTREAM 1
+
+/* Platform does not have u_longlong_t typedef */
+#define ACE_LACKS_U_LONGLONG_T 1
+
+/* Platform lacks madvise() (e.g., Linux) */
+#define ACE_LACKS_MADVISE 1
+
+/* Platform lacks POSIX prototypes for certain System V functions like shared
+ memory and message queues. */
+#define ACE_LACKS_SOME_POSIX_PROTOTYPES 1
+
+/* Platform lacks pri_t (e.g., Tandem NonStop UNIX). */
+#define ACE_LACKS_PRI_T 1
+
+/* Platform lacks pthread_thr_sigsetmask (e.g., MVS, HP/UX, and OSF/1 3.2) */
+#define ACE_LACKS_PTHREAD_THR_SIGSETMASK 1
+
+/* Platfrom lack pthread_yield() support. */
+#define ACE_LACKS_PTHREAD_YIELD 1
+
+/* Platform lacks readers/writer locks. */
+#define ACE_LACKS_RWLOCK_T 1
+
+/* MIT pthreads platform lacks the timedwait prototypes */
+#define ACE_LACKS_TIMEDWAIT_PROTOTYPES 1
+
+/* Platform does not define timepec_t as a typedef for struct timespec. */
+#define ACE_LACKS_TIMESPEC_T 1
+
+/* Compile using multi-thread libraries */
+#define ACE_MT_SAFE 1
+
+/* Platform needs regexpr.h for regular expression support */
+#define ACE_NEEDS_REGEXPR_H 1
+
+/* Platform needs to #include <sched.h> to get thread scheduling defs. */
+#define ACE_NEEDS_SCHED_H 1
+
+/* <time.h> doesn't automatically #include <sys/time.h> */
+#define ACE_LACKS_SYSTIME_H 1
+
+/* Turns off the LM_DEBUG and LM_ERROR logging macros... */
+/* #undef ACE_NLOGGING */
+
+/* Turns off the tracing feature. */
+#define ACE_NTRACE 1
+
+/* The OS/platform supports the poll() event demultiplexor */
+#define ACE_USE_POLL 1
+
+/* Platform has its standard c++ library in the namespace std. */
+#define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
+
+/* The number of bytes in a double. */
+#define SIZEOF_DOUBLE 8
+
+/* The number of bytes in a float. */
+#define SIZEOF_FLOAT 4
+
+/* The number of bytes in a int. */
+#define SIZEOF_INT 4
+
+/* The number of bytes in a long. */
+#define SIZEOF_LONG 4
+
+/* The number of bytes in a long double. */
+#define SIZEOF_LONG_DOUBLE 12
+
+/* The number of bytes in a long long. */
+#define SIZEOF_LONG_LONG 8
+
+/* The number of bytes in a short. */
+#define SIZEOF_SHORT 2
+
+/* The number of bytes in a signed char. */
+#define SIZEOF_SIGNED_CHAR 1
+
+/* The number of bytes in a void *. */
+#define SIZEOF_VOID_P 4
+
+/* Define if you have the execv function. */
+#define HAVE_EXECV 1
+
+/* Define if you have the execve function. */
+#define HAVE_EXECVE 1
+
+/* Define if you have the execvp function. */
+#define HAVE_EXECVP 1
+
+/* Define if you have the <dirent.h> header file. */
+#define HAVE_DIRENT_H 1
+
+/* Define if you have the <fstream> header file. */
+#define HAVE_FSTREAM 1
+
+/* Define if you have the <iomanip> header file. */
+#define HAVE_IOMANIP 1
+
+/* Define if you have the <iostream> header file. */
+#define HAVE_IOSTREAM 1
+
+/* Define if you have the <pwd.h> header file. */
+#define HAVE_PWD_H 1
+
+/* Name of package */
+#define PACKAGE "ace"
+
+/* Version number of package */
+#define VERSION "4.6.37"
+
+/* Added by Staller */
+#define ENUM_BOOLEAN // See file /usr/local/lib/gcc-lib/i486-pc-sysv5/egcs-2.91.60/include/sys/types.h
+/* Hat nix gebracht
+#define ACE_DEFAULT_SELECT_REACTOR_SIZE 256 // this is like in linux config fileto avoid another error
+*/
+#define howmany(x, y) (((x)+((y)-1))/(y))
+#define ACE_HAS_BROKEN_T_ERROR // let disappear a nasty warning from OS.i
+#if !defined (__USLC__)
+# define __USLC__ 1
+#endif
+
+#define __IOCTL_VERSIONED__ // By Carlo!
+#endif /* ACE_UNIXWARE_UDK_H */
diff --git a/ace/config-visualage.h b/ace/config-visualage.h
new file mode 100644
index 00000000000..ccaaec9c776
--- /dev/null
+++ b/ace/config-visualage.h
@@ -0,0 +1,20 @@
+/* -*- C++ -*- */
+// $Id$
+
+// This configuration file automatically includes the proper
+// configurations for IBM's VisualAge C++ compiler on Win32 and AIX.
+
+#ifndef CONFIG_VISUALAGE_H
+#define CONFIG_VISUALAGE_H
+#include "ace/pre.h"
+
+#ifdef __TOS_WIN__
+ #include "ace/config-win32.h"
+#elif __TOS_AIX__
+ #include "ace/config-aix-4.x.h"
+#else
+ #include "PLATFORM NOT SPECIFIED"
+#endif /* __TOS_WIN__ */
+
+#include "ace/post.h"
+#endif //CONFIG_VISUALAGE_H
diff --git a/ace/config-vxworks5.x.h b/ace/config-vxworks5.x.h
new file mode 100644
index 00000000000..240ed0692e2
--- /dev/null
+++ b/ace/config-vxworks5.x.h
@@ -0,0 +1,217 @@
+/* -*- C++ -*- */
+// $Id$
+
+// The following configuration file is designed to work for VxWorks
+// 5.2/5.3 platforms using one of these compilers:
+// 1) The GNU/Cygnus g++ compiler that is shipped with Tornado 1.0.1.
+// 2) The Green Hills 1.8.8 (not 1.8.7!!!!) and 1.8.9 compilers.
+
+#ifndef ACE_CONFIG_H
+#define ACE_CONFIG_H
+#include "ace/pre.h"
+
+#if ! defined (VXWORKS)
+# define VXWORKS
+#endif /* ! VXWORKS */
+
+#if ! defined (__ACE_INLINE__)
+# define __ACE_INLINE__
+#endif /* ! __ACE_INLINE__ */
+
+// Compiler-specific configuration.
+#if defined (__GNUG__)
+# include "ace/config-g++-common.h"
+# undef ACE_HAS_TEMPLATE_SPECIALIZATION
+
+# define ACE_LACKS_IOSTREAM_FX
+# if !defined (ACE_MAIN)
+# define ACE_MAIN ace_main
+# endif /* ! ACE_MAIN */
+
+ // Even though the documentation suggests that g++/VxWorks 5.3.1
+ // (Tornado 1.0.1) supports long long, Wind River tech support says
+ // that it doesn't. It causes undefined symbols for math functions.
+# define ACE_LACKS_LONGLONG_T
+
+ // On g++/VxWorks, iostream.h defines a static instance (yes, instance)
+ // of the Iostream_init class. That causes all files that #include it
+ // to put in the global constructor/destructor hooks. For files that
+ // don't have any static instances of non-class (built-in) types, the
+ // hooks refer to the file name, e.g., "foo.cpp". That file name gets
+ // embedded in a variable name by munch. The output from munch won't
+ // compile, though, because of the period! So, let g++/VxWorks users
+ // include iostream.h only where they need it.
+# define ACE_HAS_MINIMUM_IOSTREAMH_INCLUSION
+
+# define ACE_LACKS_LINEBUFFERED_STREAMBUF
+# define ACE_LACKS_SIGNED_CHAR
+
+#elif defined (ghs)
+ // Processor type, if necessary. Green Hills defines "ppc".
+# if defined (ppc)
+# define ACE_HAS_POWERPC_TIMER
+# elif defined (i386) || defined (__i386__)
+ // If running an Intel, assume that it's a Pentium so that
+ // ACE_OS::gethrtime () can use the RDTSC instruction. If
+ // running a 486 or lower, be sure to comment this out.
+ // (If not running an Intel CPU, this #define will not be seen
+ // because of the i386 protection, so it can be ignored.)
+# define ACE_HAS_PENTIUM
+# endif /* ppc || i386 */
+
+# define ACE_CONFIG_INCLUDE_GHS_COMMON
+# include "ace/config-ghs-common.h"
+
+# define ACE_LACKS_UNISTD_H
+# define ACE_LACKS_IOSTREAM_TOTALLY
+
+// Short-circuit the include of <arpa/inet.h>
+// Green Hills has a problem with multiply defined functions
+// with different parameters.
+# define __INCineth
+
+#elif defined (__DCPLUSPLUS__)
+ // Diab 4.2a or later.
+# if !defined (ACE_LACKS_PRAGMA_ONCE)
+ // We define it with a -D with make depend.
+# define ACE_LACKS_PRAGMA_ONCE
+# endif /* ! ACE_LACKS_PRAGMA_ONCE */
+
+ // Diab doesn't support VxWorks' iostream libraries.
+# define ACE_LACKS_IOSTREAM_TOTALLY
+
+ // #include <new.h> causes strange compilation errors in
+ // the system header files.
+# define ACE_LACKS_NEW_H
+
+#else /* ! __GNUG__ && ! ghs */
+# error unsupported compiler on VxWorks
+#endif /* ! __GNUG__ && ! ghs */
+
+// OS-specific configuration
+
+#define ACE_LACKS_UNIX_SYSLOG
+#define ACE_HAS_MUTEX_TIMEOUTS
+#define ACE_DEFAULT_MAX_SOCKET_BUFSIZ 32768
+#define ACE_DEFAULT_THREAD_KEYS 16
+#define ACE_HAS_BROKEN_ACCEPT_ADDR
+#define ACE_HAS_BROKEN_SENDMSG
+#define ACE_HAS_BROKEN_WRITEV
+#define ACE_HAS_CHARPTR_SOCKOPT
+#define ACE_HAS_CLOCK_GETTIME
+#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
+#define ACE_HAS_CPLUSPLUS_HEADERS
+#define ACE_HAS_DIRENT
+#define ACE_HAS_DLL 0
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+#define ACE_HAS_MSG
+#define ACE_HAS_NONCONST_SELECT_TIMEVAL
+#define ACE_HAS_NONSTATIC_OBJECT_MANAGER
+#define ACE_HAS_POSIX_NONBLOCK
+#define ACE_HAS_POSIX_TIME
+#define ACE_HAS_RECURSIVE_MUTEXES
+#define ACE_HAS_SIGINFO_T
+#define ACE_HAS_SIGWAIT
+#define ACE_HAS_SIG_ATOMIC_T
+#define ACE_HAS_STRDUP_EMULATION
+#define ACE_HAS_STRERROR
+#define ACE_HAS_THREADS
+#define ACE_HAS_TSS_EMULATION
+#define ACE_LACKS_ACCESS
+#define ACE_LACKS_COND_T
+#define ACE_LACKS_EXEC
+#define ACE_LACKS_FCNTL
+#define ACE_LACKS_FILELOCKS
+#define ACE_LACKS_FORK
+#define ACE_LACKS_FSYNC
+#define ACE_LACKS_GETHOSTENT
+#define ACE_LACKS_GETSERVBYNAME
+#define ACE_LACKS_KEY_T
+#define ACE_LACKS_LSTAT
+#define ACE_LACKS_MADVISE
+#define ACE_LACKS_MALLOC_H
+#define ACE_LACKS_MEMORY_H
+#define ACE_LACKS_MKFIFO
+#define ACE_LACKS_MKTEMP
+#define ACE_LACKS_MKSTEMP
+#define ACE_LACKS_MMAP
+#define ACE_LACKS_MPROTECT
+#define ACE_LACKS_MSYNC
+#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS
+#define ACE_LACKS_PARAM_H
+#define ACE_LACKS_PWD_FUNCTIONS
+#define ACE_LACKS_READDIR_R
+#define ACE_LACKS_READLINK
+#define ACE_LACKS_RLIMIT
+#define ACE_LACKS_RWLOCK_T
+#define ACE_LACKS_SBRK
+#define ACE_LACKS_SEEKDIR
+#define ACE_LACKS_SEMBUF_T
+#define ACE_LACKS_SIGINFO_H
+#define ACE_LACKS_SI_ADDR
+#define ACE_LACKS_SOCKETPAIR
+#define ACE_LACKS_STRCASECMP
+#define ACE_LACKS_STRRECVFD
+#define ACE_LACKS_SYSCALL
+#define ACE_LACKS_SYSTIME_H
+#define ACE_LACKS_SYSV_MSG_H
+#define ACE_LACKS_SYSV_SHMEM
+#define ACE_LACKS_SYS_NERR
+#define ACE_LACKS_TELLDIR
+#define ACE_LACKS_TIMESPEC_T
+#define ACE_LACKS_TRUNCATE
+#define ACE_LACKS_UCONTEXT_H
+#define ACE_LACKS_UNIX_SIGNALS
+#define ACE_LACKS_UTSNAME_T
+#define ACE_PAGE_SIZE 4096
+#define ACE_THR_PRI_FIFO_DEF 101
+#define ACE_THR_PRI_OTHER_DEF ACE_THR_PRI_FIFO_DEF
+#define ACE_HAS_SIGTIMEDWAIT
+#define ACE_HAS_SIGSUSPEND
+#if !defined (ACE_VXWORKS_SPARE)
+# define ACE_VXWORKS_SPARE spare4
+#endif /* ! ACE_VXWORKS_SPARE */
+
+// Some string things
+#define ACE_LACKS_WCSCAT
+#define ACE_LACKS_WCSCHR
+#define ACE_LACKS_WCSCMP
+#define ACE_LACKS_WCSCPY
+#define ACE_LACKS_WCSCSPN
+#define ACE_LACKS_WCSLEN
+#define ACE_LACKS_WCSNCAT
+#define ACE_LACKS_WCSNCMP
+#define ACE_LACKS_WCSNCPY
+#define ACE_LACKS_WCSPBRK
+#define ACE_LACKS_WCSRCHR
+#define ACE_LACKS_WCSSPN
+#define ACE_LACKS_WCSSTR
+#define ACE_LACKS_WCSTOK
+#define ACE_LACKS_TOWLOWER
+#define ACE_LACKS_ITOW
+#define ACE_LACKS_WCSICMP
+#define ACE_LACKS_WCSNICMP
+#define ACE_LACKS_WCSTOD
+#define ACE_LACKS_WCSTOL
+#define ACE_LACKS_WCSTOUL
+#define ACE_LACKS_WCSDUP
+
+#if !defined (ACE_MT_SAFE)
+# define ACE_MT_SAFE 1
+#endif
+
+#if !defined (ACE_NEEDS_HUGE_THREAD_STACKSIZE)
+# define ACE_NEEDS_HUGE_THREAD_STACKSIZE 65536
+#endif /* ACE_NEEDS_HUGE_THREAD_STACKSIZE */
+
+#if !defined (ACE_NTRACE)
+# define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+
+// By default, don't include RCS Id strings in object code.
+#if !defined (ACE_USE_RCSID)
+#define ACE_USE_RCSID 0
+#endif /* #if !defined (ACE_USE_RCSID) */
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_H */
diff --git a/ace/config-win32-borland.h b/ace/config-win32-borland.h
new file mode 100644
index 00000000000..7f49b3b2cec
--- /dev/null
+++ b/ace/config-win32-borland.h
@@ -0,0 +1,111 @@
+// -*- C++ -*-
+//$Id$
+
+// The following configuration file contains defines for Borland compilers.
+
+#ifndef ACE_CONFIG_WIN32_BORLAND_H
+#define ACE_CONFIG_WIN32_BORLAND_H
+#include "ace/pre.h"
+
+#ifndef ACE_CONFIG_WIN32_H
+#error Use config-win32.h in config.h instead of this header
+#endif /* ACE_CONFIG_WIN32_H */
+
+# if defined (ACE_HAS_PACE)
+# ifndef PACE_HAS_ALL_POSIX_FUNCS
+# define PACE_HAS_ALL_POSIX_FUNCS 1
+# endif /* PACE_HAS_ALL_POSIX_FUNCS */
+# endif /* ACE_HAS_PACE */
+
+# if (__BORLANDC__ == 0x540)
+// The linker in C++Builder 4 has trouble with the large number of DLL
+// function exports created when you compile without inline functions.
+// Therefore we will always use inline functions with this version of
+// the compiler.
+# if defined (__ACE_INLINE__)
+# undef __ACE_INLINE__
+# endif /* __ACE_INLINE__ */
+# define __ACE_INLINE__ 1
+# else /* __BORLANDC__ == 0x540 */
+// In later versions of C++Builder we will prefer inline functions by
+// default. The debug configuration of ACE is built with functions
+// out-of-line, so when linking your application against a debug ACE
+// build, you can choose to use the out-of-line functions by adding
+// ACE_NO_INLINE=1 to your project settings.
+# if !defined (__ACE_INLINE__)
+# define __ACE_INLINE__ 1
+# endif /* __ACE_INLINE__ */
+# endif /* __BORLANDC__ == 0x540 */
+
+// Automatically define WIN32 macro if the compiler tells us it is our
+// target platform.
+# if defined (__WIN32__) && !defined (WIN32)
+# define WIN32 1
+# endif
+
+// When building a VCL application, the main VCL header file should be
+// included before anything else. You can define ACE_HAS_VCL=1 in your
+// project settings to have this file included for you automatically.
+# if defined (ACE_HAS_VCL) && (ACE_HAS_VCL != 0)
+# include /**/ <vcl.h>
+# endif
+
+# include "ace/config-win32-common.h"
+
+# define ACE_CC_NAME ACE_LIB_TEXT ("Borland C++ Builder")
+# define ACE_CC_MAJOR_VERSION (__BORLANDC__ / 0x100)
+# define ACE_CC_MINOR_VERSION (__BORLANDC__ % 0x100)
+# define ACE_CC_BETA_VERSION (0)
+# define ACE_CC_PREPROCESSOR "CPP32.EXE"
+# define ACE_CC_PREPROCESSOR_ARGS "-q -P- -o%s"
+
+# define ACE_HAS_ITOA 1
+# define ACE_STRCASECMP_EQUIVALENT ::stricmp
+# define ACE_STRNCASECMP_EQUIVALENT ::strnicmp
+# define ACE_WCSDUP_EQUIVALENT ::_wcsdup
+
+# define ACE_EXPORT_NESTED_CLASSES 1
+# define ACE_HAS_ANSI_CASTS 1
+# define ACE_HAS_CPLUSPLUS_HEADERS 1
+# define ACE_HAS_EXCEPTIONS 1
+# define ACE_HAS_EXPLICIT_KEYWORD 1
+# define ACE_HAS_GNU_CSTRING_H 1
+# define ACE_HAS_MINIMUM_IOSTREAMH_INCLUSION 1
+# define ACE_HAS_MUTABLE_KEYWORD 1
+# define ACE_HAS_NONCONST_SELECT_TIMEVAL 1
+# define ACE_HAS_SIG_ATOMIC_T 1
+# define ACE_HAS_STANDARD_CPP_LIBRARY 1
+# if (__BORLANDC__ <= 0x540)
+# define ACE_HAS_STD_TEMPLATE_METHOD_SPECIALIZATION 1
+# endif
+# define ACE_HAS_STD_TEMPLATE_SPECIALIZATION 1
+# define ACE_HAS_STDCPP_STL_INCLUDES 1
+# define ACE_HAS_STRERROR 1
+# define ACE_HAS_STRING_CLASS 1
+# define ACE_HAS_STRPTIME 1
+# define ACE_HAS_TEMPLATE_SPECIALIZATION 1
+# define ACE_HAS_TEMPLATE_TYPEDEFS 1
+# define ACE_HAS_TYPENAME_KEYWORD 1
+# define ACE_HAS_USER_MODE_MASKS 1
+# define ACE_HAS_USING_KEYWORD 1
+# define ACE_LACKS_ACE_IOSTREAM 1
+# define ACE_LACKS_INLINE_ASSEMBLY 1
+# define ACE_LACKS_LINEBUFFERED_STREAMBUF 1
+# define ACE_LACKS_MODE_MASKS 1
+# define ACE_LACKS_NATIVE_STRPTIME 1
+# define ACE_LACKS_PLACEMENT_OPERATOR_DELETE 1
+# define ACE_LACKS_PRAGMA_ONCE 1
+# define ACE_LACKS_STRRECVFD 1
+# define ACE_NEW_THROWS_EXCEPTIONS 1
+# define ACE_SIZEOF_LONG_DOUBLE 10
+# define ACE_TEMPLATES_REQUIRE_SOURCE 1
+# define ACE_UINT64_FORMAT_SPECIFIER ACE_LIB_TEXT ("%Lu")
+# define ACE_INT64_FORMAT_SPECIFIER ACE_LIB_TEXT ("%Ld")
+# define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
+# define ACE_USES_STD_NAMESPACE_FOR_STDC_LIB 1
+# define ACE_WSTRING_HAS_USHORT_SUPPORT 1
+
+# define ACE_ENDTHREADEX(STATUS) ::_endthreadex ((DWORD) STATUS)
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_WIN32_BORLAND_H */
diff --git a/ace/config-win32-common.h b/ace/config-win32-common.h
new file mode 100644
index 00000000000..d3d58dd84cd
--- /dev/null
+++ b/ace/config-win32-common.h
@@ -0,0 +1,498 @@
+/* -*- C++ -*- */
+// $Id$
+
+#ifndef ACE_CONFIG_WIN32_COMMON_H
+#define ACE_CONFIG_WIN32_COMMON_H
+#include "ace/pre.h"
+
+#ifndef ACE_CONFIG_WIN32_H
+#error Use config-win32.h in config.h instead of this header
+#endif /* ACE_CONFIG_WIN32_H */
+
+// Complain if WIN32 is not already defined.
+#if !defined (WIN32) && !defined (ACE_HAS_WINCE)
+# error Please define WIN32 in your project settings.
+#endif
+
+#define ACE_WIN32
+
+// Define this if you're running NT >= 4.0 (Win2K == NT 5).
+// Setting applies to : building ACE
+// Runtime restrictions: System must be Windows NT => 4.0
+#if !defined (ACE_HAS_WINNT4)
+# define ACE_HAS_WINNT4 1 /* assuming Win NT 4.0 or greater */
+#endif
+
+#if (defined (ACE_HAS_WINNT4) && ACE_HAS_WINNT4 != 0)
+# if !defined (_WIN32_WINNT)
+# define _WIN32_WINNT 0x0400
+# endif
+#else
+// On Win9X, a shared address SHOULD be between the 2nd and 3rd Gb.
+// Note this will not work for NT: The addresses above 2Gb are
+// reserved for the system, so this one will fail.
+# define ACE_DEFAULT_BASE_ADDR ((char*) ((2048UL+512UL)*1024UL*1024UL))
+#endif
+
+// Define ACE_HAS_MFC to 1, if you want ACE to use CWinThread. This should
+// be defined, if your application uses MFC.
+// Setting applies to : building ACE
+// Runtime restrictions: MFC DLLs must be installed
+// Additonal notes : If both ACE_HAS_MFC and ACE_MT_SAFE are
+// defined, the MFC DLL (not the static lib)
+// will be used from ACE.
+#if !defined (ACE_HAS_MFC)
+# define ACE_HAS_MFC 0
+#endif
+
+// If the invoking procedure turned off debugging by setting NDEBUG, then
+// also set ACE_NDEBUG, unless the user has already set it.
+#if defined (NDEBUG)
+# if !defined (ACE_NDEBUG)
+# define ACE_NDEBUG
+# endif /* ACE_NDEBUG */
+#endif /* NDEBUG */
+
+// Define ACE_HAS_STRICT to 1 in your config.h file if you want to use
+// STRICT type checking. It is disabled by default because it will
+// break existing application code.
+// Setting applies to : building ACE, linking with ACE
+// Runtime restrictions: -
+// Additonal notes : ACE_HAS_MFC implies ACE_HAS_STRICT
+#if !defined (ACE_HAS_STRICT)
+# define ACE_HAS_STRICT 0
+#endif
+
+// Turn off the following define if you want to disable threading.
+// Compile using multi-thread libraries.
+// Setting applies to : building ACE, linking with ACE
+// Runtime restrictions: multithreaded runtime DLL must be installed
+#if !defined (ACE_MT_SAFE)
+# define ACE_MT_SAFE 1
+#endif
+
+// Build ACE services as DLLs. If you write a library and want it to
+// use ACE_Svc_Export, this will cause those macros to build dlls. If
+// you want your ACE service to be a static library, comment out this
+// line. As far as I know, the only reason to have a library be an
+// ACE "service" is to leverage the ACE_Svc_Export macros. It's just
+// as easy to define your own export macros.
+// #if !defined (ACE_SVC_HAS_DLL)
+// # define ACE_SVC_HAS_DLL 1
+// #endif
+
+// Define the special export macros needed to export symbols outside a dll
+#if !defined (__MINGW32__)
+#define ACE_HAS_CUSTOM_EXPORT_MACROS
+#define ACE_Proper_Export_Flag __declspec (dllexport)
+#define ACE_Proper_Import_Flag __declspec (dllimport)
+#define ACE_EXPORT_SINGLETON_DECLARATION(T) template class __declspec (dllexport) T
+#define ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) template class __declspec (dllexport) SINGLETON_TYPE<CLASS, LOCK>;
+#if defined (__BORLANDC__)
+#define ACE_IMPORT_SINGLETON_DECLARATION(T) template class __declspec (dllimport) T
+#define ACE_IMPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) template class __declspec (dllimport) SINGLETON_TYPE <CLASS, LOCK>;
+#else /* __BORLANDC__ */
+#define ACE_IMPORT_SINGLETON_DECLARATION(T) extern template class T
+#define ACE_IMPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) extern template class SINGLETON_TYPE <CLASS, LOCK>;
+#endif /* __BORLANDC__ */
+#endif /* !__MINGW32__ */
+
+// Define ACE_HAS_WINSOCK2 to 0 in your config.h file if you do *not*
+// want to compile with WinSock 2.0.
+// Setting applies to : building ACE
+// Runtime restrictions: winsock2 must be installed.
+// #define ACE_HAS_WINSOCK2 0
+
+// By default, we use non-static object manager on Win32. That is,
+// the object manager is allocated in main's stack memory. If this
+// does not suit your need, i.e., if your programs depend on the use
+// of static object manager, you neet to disable the behavior by adding
+//
+// #undef ACE_HAS_NONSTATIC_OBJECT_MANAGER
+//
+// in the config.h after including config-win32.h
+//
+// MFC users: the main function is defined within a MFC library and
+// therefore, ACE won't be able to meddle with main function and
+// instantiate the non-static object manager for you. To solve the
+// problem, you'll need to instantiate the ACE_Object_Manager by
+// either:
+//
+// 1. Using static object manager (as described above), however, using
+// the non-static object manager is prefered, therefore,
+// 2. Instantiate the non-static object manager yourself by either 1)
+// call ACE::init () at the beginning and ACE::fini () at the end,
+// _or_ 2) instantiate the ACE_Object_Manager in your CWinApp
+// derived class.
+//
+// Optionally, you can #define
+// ACE_DOESNT_INSTANTIATE_NONSTATIC_OBJECT_MANAGER in your
+// ace/config.h and always take care of the business by yourself.
+// ACE_DOESNT_INSTANTIATE_NONSTATIC_OBJECT_MANAGER has no effect when
+// using static object managers.
+#if !defined (ACE_HAS_NONSTATIC_OBJECT_MANAGER)
+# define ACE_HAS_NONSTATIC_OBJECT_MANAGER
+#elif (ACE_HAS_NONSTATIC_OBJECT_MANAGER == 0)
+# undef ACE_HAS_NONSTATIC_OBJECT_MANAGER
+#endif /* ACE_HAS_NONSTATIC_OBJECT_MANAGER */
+
+#define ACE_HAS_GPERF
+
+// By default, don't include RCS Id strings in object code.
+#if !defined (ACE_USE_RCSID)
+# define ACE_USE_RCSID 0
+#endif /* ! ACE_USE_RCSID */
+
+// ---------------- platform features or lack of them -------------
+
+// By default WIN32 has FD_SETSIZE of 64, which places the limit
+// between 61 and 64 on the number of clients a server using the
+// Select Reactor can support at the same time (i.e., 64 - standard in,
+// out, error). Here we raise the limit to 1024. Adjust the definition
+// below if you need to raise or lower it.
+
+#if defined (FD_SETSIZE)
+#undef FD_SETSIZE
+#endif /* FD_SETSIZE */
+#define FD_SETSIZE 1024
+
+// Windows doesn't like 65536 ;-) If 65536 is specified, it is
+// listenly ignored by the OS, i.e., setsockopt does not fail, and you
+// get stuck with the default size of 8k.
+#define ACE_DEFAULT_MAX_SOCKET_BUFSIZ 65535
+
+//
+// It seems like Win32 does not have a limit on the number of buffers
+// that can be transferred by the scatter/gather type of I/O
+// functions, e.g., WSASend and WSARecv. We are arbitrarily setting
+// this to be 1k for now. The typically use case is to create an I/O
+// vector array of size ACE_IOV_MAX on the stack and then filled in. Note
+// that we probably don't want too big a value for ACE_IOV_MAX since it
+// may mostly go to waste or the size of the activation record may
+// become excessively large.
+//
+#if !defined (ACE_IOV_MAX)
+# define ACE_IOV_MAX 1024
+#endif /* ACE_IOV_MAX */
+
+#if !defined (ACE_HAS_WINCE)
+// Platform supports pread() and pwrite()
+# define ACE_HAS_P_READ_WRITE
+# if !defined (__MINGW32__)
+# define ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS
+# endif /* __MINGW32__ */
+#endif /* ! ACE_HAS_WINCE */
+
+#define ACE_DEFAULT_THREAD_PRIORITY 0
+
+#define ACE_HAS_RECURSIVE_MUTEXES
+#define ACE_HAS_MSG
+#define ACE_HAS_DIRENT
+#define ACE_HAS_SOCKADDR_MSG_NAME
+#define ACE_LACKS_GETPGID
+#define ACE_LACKS_GETPPID
+#define ACE_LACKS_SETPGID
+#define ACE_LACKS_SETREGID
+#define ACE_LACKS_SETREUID
+#define ACE_HAS_THREAD_SAFE_ACCEPT
+#define ACE_LACKS_GETHOSTENT
+#define ACE_LACKS_SIGACTION
+#define ACE_LACKS_SIGSET
+#define ACE_LACKS_FORK
+#define ACE_LACKS_UNIX_SIGNALS
+#define ACE_LACKS_SBRK
+#define ACE_LACKS_UTSNAME_T
+#define ACE_LACKS_SEMBUF_T
+#define ACE_LACKS_MSGBUF_T
+#define ACE_LACKS_SYSV_SHMEM
+#define ACE_LACKS_UNISTD_H
+#define ACE_LACKS_RLIMIT
+#define ACE_LACKS_MKFIFO
+#define ACE_LACKS_TELLDIR
+#define ACE_LACKS_SEEKDIR
+#define ACE_LACKS_REWINDDIR
+#define ACE_LACKS_READDIR_R
+#define ACE_LACKS_INET_ATON
+
+#define ACE_HAS_VSWPRINTF
+#define ACE_HAS_VFWPRINTF
+
+#define ACE_SIZEOF_LONG_LONG 8
+// Green Hills Native x86 does not support __int64 keyword
+// Neither does mingw32.
+#if !defined (ACE_LACKS_LONGLONG_T) && !defined (__MINGW32__)
+typedef unsigned __int64 ACE_UINT64;
+#endif /* (ghs) */
+
+#if defined (__MINGW32__)
+typedef unsigned long long ACE_UINT64;
+#endif
+
+// Optimize ACE_Handle_Set for select().
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+
+// Win32 has wchar_t support
+#define ACE_HAS_WCHAR
+
+// Compiler/platform correctly calls init()/fini() for shared
+// libraries. - applied for DLLs ?
+//define ACE_HAS_AUTOMATIC_INIT_FINI
+
+// Platform supports POSIX O_NONBLOCK semantics.
+//define ACE_HAS_POSIX_NONBLOCK
+
+// Platform contains <poll.h>.
+//define ACE_HAS_POLL
+
+// Platform supports the /proc file system.
+//define ACE_HAS_PROC_FS
+
+#if (defined (ACE_HAS_WINNT4) && (ACE_HAS_WINNT4 != 0))
+// Platform supports the rusage struct.
+#define ACE_HAS_GETRUSAGE
+#endif /* (defined (ACE_HAS_WINNT4) && (ACE_HAS_WINNT4 != 0)) */
+
+// Compiler/platform supports SVR4 signal typedef.
+//define ACE_HAS_SVR4_SIGNAL_T
+
+// Platform provides <sys/filio.h> header.
+//define ACE_HAS_SYS_FILIO_H
+
+// Compiler/platform supports sys_siglist array.
+//define ACE_HAS_SYS_SIGLIST
+
+// Platform supports ACE_TLI timod STREAMS module.
+//define ACE_HAS_TIMOD_H
+
+// Platform supports ACE_TLI tiuser header.
+//define ACE_HAS_TIUSER_H
+
+// Platform provides ACE_TLI function prototypes.
+// For Win32, this is not really true, but saves a lot of hassle!
+#define ACE_HAS_TLI_PROTOTYPES
+
+// Platform supports ACE_TLI.
+//define ACE_HAS_TLI
+
+// I'm pretty sure NT lacks these
+#define ACE_LACKS_UNIX_DOMAIN_SOCKETS
+
+// Windows NT needs readv() and writev()
+#define ACE_LACKS_WRITEV
+#define ACE_LACKS_READV
+
+#define ACE_LACKS_COND_T
+#define ACE_LACKS_RWLOCK_T
+
+#define ACE_LACKS_KEY_T
+
+// No system support for replacing any previous mappings.
+#define ACE_LACKS_AUTO_MMAP_REPLACEMENT
+
+// Turns off the tracing feature.
+#if !defined (ACE_NTRACE)
+# define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+// #define ACE_NLOGGING
+
+// MFC itself defines STRICT.
+#if defined( ACE_HAS_MFC ) && (ACE_HAS_MFC != 0)
+# if !defined(ACE_HAS_STRICT)
+# define ACE_HAS_STRICT 1
+# endif
+# if (ACE_HAS_STRICT != 1)
+# undef ACE_HAS_STRICT
+# define ACE_HAS_STRICT 1
+# endif
+#endif
+
+// If you want to use highres timers, ensure that
+// Build.Settings.C++.CodeGeneration.Processor is
+// set to Pentium !
+#if !defined(ACE_HAS_PENTIUM) && (_M_IX86 > 400)
+# define ACE_HAS_PENTIUM
+#endif
+
+#if defined(ACE_MT_SAFE) && (ACE_MT_SAFE != 0)
+// Platform supports threads.
+# define ACE_HAS_THREADS
+
+// Platform supports Windows32 threads.
+# define ACE_HAS_WTHREADS
+
+// Compiler/platform has thread-specific storage
+# define ACE_HAS_THREAD_SPECIFIC_STORAGE
+
+// Win32 doesn't have fcntl
+#define ACE_LACKS_FCNTL
+
+// must have _MT defined to include multithreading
+// features from win32 headers
+# if !defined(_MT) && !defined (ACE_HAS_WINCE)
+// *** DO NOT *** defeat this error message by defining _MT yourself.
+// On MSVC, this is changed by selecting the Multithreaded
+// DLL or Debug Multithreaded DLL in the Project Settings
+// under C++ Code Generation.
+# error You must link against multi-threaded libraries when using ACE (check your project settings)
+# endif /* !_MT && !ACE_HAS_WINCE */
+#endif /* ACE_MT_SAFE && ACE_MT_SAFE != 0 */
+
+// We are using STL's min and max (in algobase.h). Therefore the
+// macros in window.h are extra
+#if !defined (NOMINMAX)
+# define NOMINMAX
+#endif /* NOMINMAX */
+
+#if !defined(_DEBUG)
+// If we are making a release, and the user has not specified
+// inline directives, we will default to inline
+# if ! defined (__ACE_INLINE__)
+# define __ACE_INLINE__ 1
+# endif /* __ACE_INLINE__ */
+#endif
+
+// If __ACE_INLINE__ is defined to be 0, we will undefine it
+#if defined (__ACE_INLINE__) && (__ACE_INLINE__ == 0)
+# undef __ACE_INLINE__
+#endif /* __ACE_INLINE__ */
+
+// ACE_USES_STATIC_MFC always implies ACE_HAS_MFC
+#if defined (ACE_USES_STATIC_MFC)
+# if defined (ACE_HAS_MFC)
+# undef ACE_HAS_MFC
+# endif
+# define ACE_HAS_MFC 1
+#endif /* ACE_USES_STATIC_MFC */
+
+// We are build ACE and want to use MFC (multithreaded)
+#if defined(ACE_HAS_MFC) && (ACE_HAS_MFC != 0) && defined (_MT)
+# if (ACE_HAS_DLL != 0) && defined(ACE_BUILD_DLL) && !defined (_WINDLL)
+// force multithreaded MFC DLL
+# define _WINDLL
+# endif /* _AFXDLL */
+# if !defined (_AFXDLL) && !defined (ACE_USES_STATIC_MFC)
+# define _AFXDLL
+# endif /* _AFXDLL */
+#endif
+
+// <windows.h> and MFC's <afxwin.h> are mutually
+// incompatible. <windows.h> is brain-dead about MFC; it doesn't check
+// to see whether MFC stuff is anticipated or already in progress
+// before doing its thing. ACE needs (practically always) <winsock.h>,
+// and winsock in turn needs support either from windows.h or from
+// afxwin.h. One or the other, not both.
+//
+// The MSVC++ V4.0 environment defines preprocessor macros that
+// indicate the programmer has chosen something from the
+// Build-->Settings-->General-->MFC combo-box. <afxwin.h> defines a
+// macro itself to protect against double inclusion. We'll take
+// advantage of all this to select the proper support for winsock. -
+// trl 26-July-1996
+
+// This is necessary since MFC users apparently can't #include
+// <windows.h> directly.
+#if defined (ACE_HAS_MFC) && (ACE_HAS_MFC != 0)
+# include /**/ <afxwin.h> /* He is doing MFC */
+// Windows.h will be included via afxwin.h->afx.h->afx_ver_.h->afxv_w32.h
+// #define _INC_WINDOWS // Prevent winsock.h from including windows.h
+#elif defined (ACE_HAS_WINCE)
+# include /**/ <windows.h>
+# include /**/ <wce.h>
+#endif
+
+#if !defined (_INC_WINDOWS) /* Already include windows.h ? */
+// Must define strict before including windows.h !
+# if defined (ACE_HAS_STRICT) && (ACE_HAS_STRICT != 0) && !defined (STRICT)
+# define STRICT 1
+# endif /* ACE_HAS_STRICT */
+
+# if !defined (WIN32_LEAN_AND_MEAN) && !defined (ACE_NO_WIN32_LEAN_AND_MEAN)
+# define WIN32_LEAN_AND_MEAN
+# endif /* WIN32_LEAN_AND_MEAN */
+
+#endif /* !defined (_INC_WINDOWS) */
+
+// Always use WS2 when available
+#if !defined(ACE_HAS_WINSOCK2)
+# define ACE_HAS_WINSOCK2 1
+#endif /* !defined(ACE_HAS_WINSOCK2) */
+
+
+#if defined (ACE_HAS_WINSOCK2) && (ACE_HAS_WINSOCK2 != 0)
+# if !defined (_WINSOCK2API_)
+// will also include windows.h, if not present
+# include /**/ <winsock2.h>
+# endif /* _WINSOCK2API */
+
+# if defined (ACE_HAS_FORE_ATM_WS2)
+# include /**/ <ws2atm.h>
+# endif /*ACE_HAS_FORE_ATM_WS2 */
+
+# if !defined _MSWSOCK_
+# include /**/ <mswsock.h>
+# endif /* _MSWSOCK_ */
+
+# if defined (_MSC_VER)
+# pragma comment(lib, "ws2_32.lib")
+# pragma comment(lib, "mswsock.lib")
+# endif /* _MSC_VER */
+
+# define ACE_WSOCK_VERSION 2, 0
+#else
+# if !defined (_WINSOCKAPI_)
+ // will also include windows.h, if not present
+# include /**/ <winsock.h>
+# endif /* _WINSOCKAPI */
+
+// PharLap ETS has its own winsock lib, so don't grab the one
+// supplied with the OS.
+# if defined (_MSC_VER) && !defined (UNDER_CE) && !defined (ACE_HAS_PHARLAP)
+# pragma comment(lib, "wsock32.lib")
+# endif /* _MSC_VER */
+
+// We can't use recvmsg and sendmsg unless WinSock 2 is available
+# define ACE_LACKS_RECVMSG
+# define ACE_LACKS_SENDMSG
+
+// Version 1.1 of WinSock
+# define ACE_WSOCK_VERSION 1, 1
+#endif /* ACE_HAS_WINSOCK2 */
+
+// mingw32 doesn't define this (yet...)
+#if defined(__MINGW32__) && !defined(MWMO_ALERTABLE)
+# define MWMO_ALERTABLE 0x0002
+#endif
+
+// Platform supports IP multicast on Winsock 2
+#if defined (ACE_HAS_WINSOCK2) && (ACE_HAS_WINSOCK2 != 0)
+# define ACE_HAS_IP_MULTICAST
+#endif /* ACE_HAS_WINSOCK2 */
+
+#if (defined (ACE_HAS_WINNT4) && (ACE_HAS_WINNT4 != 0)) && !defined (ACE_USES_WINCE_SEMA_SIMULATION)
+# define ACE_HAS_INTERLOCKED_EXCHANGEADD
+# define ACE_HAS_WIN32_TRYLOCK
+# define ACE_HAS_SIGNAL_OBJECT_AND_WAIT
+
+// If CancelIO is undefined get the updated sp2-sdk from MS
+# define ACE_HAS_CANCEL_IO
+#endif /* (defined (ACE_HAS_WINNT4) && (ACE_HAS_WINNT4 != 0)) && !defined (ACE_USES_WINCE_SEMA_SIMULATION) */
+
+#if !defined (ACE_SEH_DEFAULT_EXCEPTION_HANDLING_ACTION)
+# define ACE_SEH_DEFAULT_EXCEPTION_HANDLING_ACTION EXCEPTION_CONTINUE_SEARCH
+#endif /* ACE_SEH_DEFAULT_EXCEPTION_HANDLING_ACTION */
+
+// Try to make a good guess whether we are compiling with the newer version
+// of WinSock 2 that has GQOS support.
+#if !defined (ACE_HAS_WINSOCK2_GQOS)
+# if defined (WINSOCK_VERSION)
+# define ACE_HAS_WINSOCK2_GQOS 1
+# endif /* WINSOCK_VERSION */
+#endif /* ACE_HAS_WINSOCK2_GQOS */
+
+#define ACE_SIZEOF_WCHAR 2
+#define ACE_HAS_MUTEX_TIMEOUTS
+#define ACE_LACKS_STRUCT_DIR
+#define ACE_LACKS_MKSTEMP
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_WIN32_COMMON_H */
diff --git a/ace/config-win32-ghs.h b/ace/config-win32-ghs.h
new file mode 100644
index 00000000000..bebd8a53e70
--- /dev/null
+++ b/ace/config-win32-ghs.h
@@ -0,0 +1,110 @@
+// -*- C++ -*-
+// $Id$
+
+// The following configuration file contains defines for Green Hills compilers.
+
+#ifndef ACE_CONFIG_WIN32_GHS_H
+#define ACE_CONFIG_WIN32_GHS_H
+#include "ace/pre.h"
+
+#ifndef ACE_CONFIG_WIN32_H
+#error Use config-win32.h in config.h instead of this header
+#endif /* ACE_CONFIG_WIN32_H */
+
+#ifndef WIN32
+# define WIN32
+#endif /* WIN32 */
+
+#undef _M_IX86
+// This turns on ACE_HAS_PENTIUM
+#define _M_IX86 500
+// GHS does not provide DLL support
+#define ACE_HAS_DLL 0
+#define TAO_HAS_DLL 0
+#undef _DLL
+#define ACE_OS_HAS_DLL 0
+
+//Green Hills Native x86 does not support structural exceptions
+# undef ACE_HAS_WIN32_STRUCTURAL_EXCEPTIONS
+# undef ACE_HAS_WCHAR
+# define ACE_CONFIG_INCLUDE_GHS_COMMON
+# include "ace/config-ghs-common.h"
+
+// Changed ACE_TEXT to ACE_LIB_TEXT in the following line
+# define ACE_CC_NAME ACE_LIB_TEXT ("Green Hills C++")
+# define ACE_CC_MAJOR_VERSION (1)
+# define ACE_CC_MINOR_VERSION (8)
+# define ACE_CC_BETA_VERSION (9)
+# define ACE_CC_PREPROCESSOR "GCX.EXE"
+# define ACE_CC_PREPROCESSOR_ARGS "-E"
+
+// GHS uses Microsoft's standard cpp library, which has auto_ptr.
+# undef ACE_LACKS_AUTO_PTR
+// Microsoft's standard cpp library auto_ptr doesn't have reset ().
+# define ACE_AUTO_PTR_LACKS_RESET
+
+#define ACE_ENDTHREADEX(STATUS) ::_endthreadex ((DWORD) STATUS)
+
+// This section below was extracted from config-win32-msvc
+#define ACE_HAS_ITOA
+#define ACE_ITOA_EQUIVALENT ::_itoa
+#define ACE_STRCASECMP_EQUIVALENT ::_stricmp
+#define ACE_STRNCASECMP_EQUIVALENT ::_strnicmp
+#define ACE_WCSDUP_EQUIVALENT ::_wcsdup
+// This section above was extracted from config-win32-msvc
+
+# define ACE_EXPORT_NESTED_CLASSES 1
+# define ACE_HAS_ANSI_CASTS 1
+# define ACE_HAS_CPLUSPLUS_HEADERS 1
+//# define ACE_HAS_EXCEPTIONS 1
+# define ACE_HAS_EXPLICIT_KEYWORD 1
+# define ACE_HAS_GNU_CSTRING_H 1
+# define ACE_HAS_MINIMUM_IOSTREAMH_INCLUSION 1
+# define ACE_HAS_MUTABLE_KEYWORD 1
+# define ACE_HAS_NONCONST_SELECT_TIMEVAL 1
+# define ACE_HAS_SIG_ATOMIC_T 1
+# define ACE_HAS_STANDARD_CPP_LIBRARY 1
+//# if (__BORLANDC__ <= 0x540)
+//# define ACE_HAS_STD_TEMPLATE_METHOD_SPECIALIZATION 1
+//# endif
+# define ACE_HAS_STD_TEMPLATE_SPECIALIZATION 1
+# define ACE_HAS_STDCPP_STL_INCLUDES 1
+# define ACE_HAS_STRERROR 1
+# define ACE_HAS_STRING_CLASS 1
+# define ACE_HAS_STRPTIME 1
+# define ACE_HAS_TEMPLATE_SPECIALIZATION 1
+# define ACE_HAS_TEMPLATE_TYPEDEFS 1
+# define ACE_HAS_TYPENAME_KEYWORD 1
+//# define ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION
+# define ACE_HAS_USER_MODE_MASKS 1
+# define ACE_HAS_USING_KEYWORD 1
+# define ACE_LACKS_ACE_IOSTREAM 1
+//# define ACE_LACKS_LINEBUFFERED_STREAMBUF 1
+# define ACE_LACKS_MODE_MASKS 1
+# define ACE_LACKS_NATIVE_STRPTIME 1
+//# define ACE_LACKS_PLACEMENT_OPERATOR_DELETE 1
+//# define ACE_LACKS_PRAGMA_ONCE 1
+# define ACE_LACKS_STRRECVFD 1
+//# define ACE_NEW_THROWS_EXCEPTIONS 1
+# define ACE_SIZEOF_LONG_DOUBLE 10
+# define ACE_TEMPLATES_REQUIRE_SOURCE 1
+// Changed ACE_TEXT to ACE_LIB_TEXT in the following two lines
+# define ACE_UINT64_FORMAT_SPECIFIER ACE_LIB_TEXT ("%I64u")
+# define ACE_INT64_FORMAT_SPECIFIER ACE_LIB_TEXT ("%I64d")
+# define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
+// Set the following to zero to placate SString.h ACE_WString CTOR
+# undef ACE_WSTRING_HAS_USHORT_SUPPORT
+
+// Green Hills Native x86 does not support __int64 keyword
+# define ACE_LACKS_LONGLONG_T
+
+/* need to ensure these are included before <iomanip> */
+# include <time.h>
+# include <stdlib.h>
+
+# if !defined (ACE_LD_DECORATOR_STR) && defined (_DEBUG)
+# define ACE_LD_DECORATOR_STR ACE_LIB_TEXT ("d")
+# endif
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_WIN32_GHS_H */
diff --git a/ace/config-win32-mingw.h b/ace/config-win32-mingw.h
new file mode 100644
index 00000000000..e655efc3735
--- /dev/null
+++ b/ace/config-win32-mingw.h
@@ -0,0 +1,64 @@
+// -*- C++ -*-
+// $Id$
+
+//
+// The following configuration file is designed to work for win32
+// platforms using gcc/g++ with mingw32 (http://www.mingw.org).
+//
+
+#ifndef ACE_CONFIG_WIN32_MINGW_H
+#define ACE_CONFIG_WIN32_MINGW_H
+#include "ace/pre.h"
+
+#ifndef ACE_CONFIG_WIN32_H
+#error Use config-win32.h in config.h instead of this header
+#endif /* ACE_CONFIG_WIN32_H */
+
+#define ACE_CC_NAME ACE_LIB_TEXT ("g++")
+#define ACE_CC_PREPROCESSOR "cpp"
+#define ACE_CC_PREPROCESOR_ARGS ""
+
+#define ACE_HAS_BROKEN_SAP_ANY
+
+// Why all this is not in config-g++-common.h?
+#define ACE_CC_MAJOR_VERSION __GNUC__
+#define ACE_CC_MINOR_VERSION __GNUC_MINOR__
+#define ACE_CC_BETA_VERSION (0)
+
+#if !defined(__MINGW32__)
+# error You do not seem to be using mingw32
+#endif
+
+#include "ace/config-g++-common.h"
+
+#include /**/ <_mingw.h>
+
+#define ACE_LACKS_MODE_MASKS
+#define ACE_HAS_USER_MODE_MASKS
+
+#if (__MINGW32_MAJOR_VERSION == 0) && (__MINGW32_MINOR_VERSION < 5)
+#error You need a newer version (>= 0.5) of mingw32/w32api
+#endif
+
+#define ACE_LACKS_STRRECVFD
+#define ACE_HAS_STRERROR
+
+// We trust the user: He must have used -mpentiumpro or -mpentium
+// if that is what he wants.
+#if defined(pentiumpro) || defined(pentium)
+# define ACE_HAS_PENTIUM
+#endif
+
+#if !defined (ACE_HAS_WINNT4)
+# if (defined (WINNT) && WINNT == 1) \
+ || (defined (__WINNT__) && __WINNT__ == 1)
+# define ACE_HAS_WINNT4 1
+# else
+# define ACE_HAS_WINNT4 0
+# endif
+#endif
+
+#define ACE_ENDTHREADEX(STATUS) ::_endthreadex ((DWORD) (STATUS))
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_WIN32_MINGW_H */
diff --git a/ace/config-win32-msvc-5.h b/ace/config-win32-msvc-5.h
new file mode 100644
index 00000000000..1d0c624a970
--- /dev/null
+++ b/ace/config-win32-msvc-5.h
@@ -0,0 +1,197 @@
+/* -*- C++ -*- */
+//=============================================================================
+/**
+ * @file config-win32-msvc-5.h
+ *
+ * $Id$
+ *
+ * @brief Microsoft Visual C++ 5.0 configuration file.
+ *
+ * This file is the ACE configuration file for Microsoft Visual C++ version 5.
+ *
+ * @note Do not include this file directly, include config-win32.h instead.
+ *
+ * @author Darrell Brunsch <brunsch@cs.wustl.edu>
+ */
+//=============================================================================
+
+#ifndef ACE_CONFIG_WIN32_MSVC_5_H
+#define ACE_CONFIG_WIN32_MSVC_5_H
+#include "ace/pre.h"
+
+#ifndef ACE_CONFIG_WIN32_H
+#error Use config-win32.h in config.h instead of this header
+#endif /* ACE_CONFIG_WIN32_H */
+
+# if defined (ACE_HAS_PACE)
+# ifndef PACE_HAS_ALL_POSIX_FUNCS
+# define PACE_HAS_ALL_POSIX_FUNCS 1
+# endif /* PACE_HAS_ALL_POSIX_FUNCS */
+# endif /* ACE_HAS_PACE */
+
+# if !defined (ACE_HAS_STANDARD_CPP_LIBRARY)
+# define ACE_HAS_STANDARD_CPP_LIBRARY 0
+# endif
+
+// The STL that comes with ACE uses the std namespace. Note however, it is not
+// part of the standard C++ library
+# if !defined (ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB)
+# define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
+# endif /* ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB */
+
+# if !defined (ACE_HAS_BROKEN_NESTED_TEMPLATES)
+# define ACE_HAS_BROKEN_NESTED_TEMPLATES
+# endif /* ACE_HAS_BROKEN_NESTED_TEMPLATES */
+
+// By default, we disable the C++ casting because
+// it requires the RTTI support to be turned on which
+// is not something we usually do.
+# if !defined (ACE_HAS_ANSI_CASTS)
+# define ACE_HAS_ANSI_CASTS 0
+# endif
+
+# define ACE_HAS_EXPLICIT_KEYWORD
+# define ACE_HAS_MUTABLE_KEYWORD
+
+#define ACE_HAS_ITOA
+
+#define ACE_ITOA_EQUIVALENT ::_itoa
+#define ACE_STRCASECMP_EQUIVALENT ::_stricmp
+#define ACE_STRNCASECMP_EQUIVALENT ::_strnicmp
+#define ACE_WCSDUP_EQUIVALENT ::_wcsdup
+
+// VC5 doesn't support operator placement delete
+# if (_MSC_VER < 1200)
+# define ACE_LACKS_PLACEMENT_OPERATOR_DELETE
+# endif /* _MSC_VER < 1200 */
+
+# if !defined (ACE_HAS_WINCE)
+# define ACE_HAS_EXCEPTIONS
+# endif /* ACE_HAS_WINCE */
+# define ACE_HAS_BROKEN_NAMESPACES
+# define ACE_HAS_BROKEN_IMPLICIT_CONST_CAST
+# define ACE_HAS_WORKING_EXPLICIT_TEMPLATE_DESTRUCTOR
+
+# if defined (ACE_HAS_ANSI_CASTS) && (ACE_HAS_ANSI_CASTS == 0)
+# undef ACE_HAS_ANSI_CASTS
+# endif /* ACE_HAS_ANSI_CASTS && ACE_HAS_ANSI_CASTS == 0 */
+
+# if !defined (ACE_HAS_WINCE)
+# define ACE_HAS_SIG_ATOMIC_T
+# endif /* ACE_HAS_WINCE */
+
+// Only >= MSVC 6.0 definitions
+# if (_MSC_VER >= 1200)
+# define ACE_HAS_TYPENAME_KEYWORD
+# define ACE_HAS_STD_TEMPLATE_SPECIALIZATION
+# endif /* _MSC_VER >= 1200 */
+
+// Compiler doesn't support static data member templates.
+# define ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES
+
+# define ACE_LACKS_MODE_MASKS
+# define ACE_LACKS_STRRECVFD
+
+# if !defined (ACE_HAS_WINCE)
+# define ACE_HAS_LLSEEK
+# endif /* ACE_HAS_WINCE */
+
+// Compiler/platform has correctly prototyped header files.
+# define ACE_HAS_CPLUSPLUS_HEADERS
+
+// Platform supports POSIX timers via timestruc_t.
+//define ACE_HAS_POSIX_TIME
+# define ACE_HAS_STRPTIME
+# define ACE_LACKS_NATIVE_STRPTIME
+
+// Compiler/platform supports strerror ().
+# define ACE_HAS_STRERROR
+
+# define ACE_TEMPLATES_REQUIRE_SOURCE
+
+// Platform provides ACE_TLI function prototypes.
+// For Win32, this is not really true, but saves a lot of hassle!
+# define ACE_HAS_TLI_PROTOTYPES
+
+// Platform support linebuffered streaming is broken
+# define ACE_LACKS_LINEBUFFERED_STREAMBUF
+
+// Template specialization is supported.
+# define ACE_HAS_TEMPLATE_SPECIALIZATION
+
+// ----------------- "derived" defines and includes -----------
+
+# if defined (ACE_HAS_STANDARD_CPP_LIBRARY) && (ACE_HAS_STANDARD_CPP_LIBRARY != 0)
+
+// Platform has its Standard C++ library in the namespace std
+# if !defined (ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB)
+# define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
+# endif /* ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB */
+
+// Microsoft's auto_ptr in standard cpp library doesn't have reset ().
+# define ACE_AUTO_PTR_LACKS_RESET
+
+// ace/iostream.h does not work with the standard cpp library (yet).
+# if !defined (ACE_USES_OLD_IOSTREAMS)
+# define ACE_LACKS_ACE_IOSTREAM
+# endif /* ! ACE_USES_OLD_IOSTREAMS */
+# else
+// iostream header lacks ipfx (), isfx (), etc., declarations
+# define ACE_LACKS_IOSTREAM_FX
+# endif
+
+// While digging the MSVC 4.0 include files, I found how to disable
+// MSVC warnings: --Amos Shapira
+
+// "C4355: 'this' : used in base member initializer list"
+# pragma warning(disable:4355) /* disable C4514 warning */
+// #pragma warning(default:4355) // use this to reenable, if desired
+
+# pragma warning(disable:4201) /* winnt.h uses nameless structs */
+
+# pragma warning(disable:4231)
+// Disable warning of using Microsoft Extension.
+
+// MSVC allows throw keyword but complains about it.
+# pragma warning( disable : 4290 )
+
+// Inheritance by dominance is A-OK by us
+# pragma warning (disable:4250)
+
+// Compiler/Platform supports the "using" keyword.
+#define ACE_HAS_USING_KEYWORD
+
+# if !defined(ACE_HAS_WINCE)
+# if defined(ACE_HAS_DLL) && (ACE_HAS_DLL != 0)
+# if !defined(_DLL)
+// *** DO NOT *** DO NOT *** defeat this error message
+// by defining _DLL yourself. RTFM and see who set _DLL.
+# error You must link against (Debug) Multithreaded DLL run-time libraries.
+# endif /* !_DLL */
+# endif /* ACE_HAS_DLL && ACE_HAS_DLL != 0 */
+# endif /* !ACE_HAS_WINCE */
+
+# pragma warning(default: 4201) /* winnt.h uses nameless structs */
+
+// At least for Win32 - MSVC compiler (ver. 5)
+# define ACE_INT64_FORMAT_SPECIFIER ACE_LIB_TEXT ("%I64d")
+# define ACE_UINT64_FORMAT_SPECIFIER ACE_LIB_TEXT ("%I64u")
+
+# if !defined (ACE_LD_DECORATOR_STR)
+# if defined (_DEBUG)
+# if ACE_HAS_MFC == 1
+# define ACE_LD_DECORATOR_STR ACE_LIB_TEXT ("mfcd")
+# else
+# define ACE_LD_DECORATOR_STR ACE_LIB_TEXT ("d")
+# endif //ACE_HAS_MFC
+# else // _NDEBUG
+# if ACE_HAS_MFC == 1
+# define ACE_LD_DECORATOR_STR ACE_LIB_TEXT ("mfc")
+# endif //ACE_HAS_MFC
+# endif // _DEBUG
+# endif
+
+# define ACE_ENDTHREADEX(STATUS) ::_endthreadex ((DWORD) STATUS)
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_WIN32_MSVC_5_H */
diff --git a/ace/config-win32-msvc-6.h b/ace/config-win32-msvc-6.h
new file mode 100644
index 00000000000..3b21f5a8852
--- /dev/null
+++ b/ace/config-win32-msvc-6.h
@@ -0,0 +1,194 @@
+
+/* -*- C++ -*- */
+//=============================================================================
+/**
+ * @file config-win32-msvc-6.h
+ *
+ * $Id$
+ *
+ * @brief Microsoft Visual C++ 6.0 configuration file.
+ *
+ * This file is the ACE configuration file for Microsoft Visual C++ version 6.
+ *
+ * @note Do not include this file directly, include config-win32.h instead.
+ *
+ * @author Darrell Brunsch <brunsch@cs.wustl.edu>
+ */
+//=============================================================================
+
+#ifndef ACE_CONFIG_WIN32_MSVC_6_H
+#define ACE_CONFIG_WIN32_MSVC_6_H
+#include "ace/pre.h"
+
+#ifndef ACE_CONFIG_WIN32_H
+#error Use config-win32.h in config.h instead of this header
+#endif /* ACE_CONFIG_WIN32_H */
+
+# if defined (ACE_HAS_PACE)
+# ifndef PACE_HAS_ALL_POSIX_FUNCS
+# define PACE_HAS_ALL_POSIX_FUNCS 1
+# endif /* PACE_HAS_ALL_POSIX_FUNCS */
+# endif /* ACE_HAS_PACE */
+
+# if !defined (ACE_HAS_STANDARD_CPP_LIBRARY)
+# define ACE_HAS_STANDARD_CPP_LIBRARY 0
+# endif
+
+// The STL that comes with ACE uses the std namespace. Note however, it is not
+// part of the standard C++ library
+# if !defined (ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB)
+# define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
+# endif /* ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB */
+
+# if !defined (ACE_HAS_BROKEN_NESTED_TEMPLATES)
+# define ACE_HAS_BROKEN_NESTED_TEMPLATES
+# endif /* ACE_HAS_BROKEN_NESTED_TEMPLATES */
+
+// By default, we disable the C++ casting because
+// it requires the RTTI support to be turned on which
+// is not something we usually do.
+# if !defined (ACE_HAS_ANSI_CASTS)
+# define ACE_HAS_ANSI_CASTS 0
+# endif
+
+// Keywords
+
+# define ACE_HAS_EXPLICIT_KEYWORD
+# define ACE_HAS_MUTABLE_KEYWORD
+# define ACE_HAS_TYPENAME_KEYWORD
+# define ACE_HAS_USING_KEYWORD
+
+
+
+#define ACE_HAS_ITOA
+
+#define ACE_ITOA_EQUIVALENT ::_itoa
+#define ACE_STRCASECMP_EQUIVALENT ::_stricmp
+#define ACE_STRNCASECMP_EQUIVALENT ::_strnicmp
+#define ACE_WCSDUP_EQUIVALENT ::_wcsdup
+
+# if !defined (ACE_HAS_WINCE)
+# define ACE_HAS_EXCEPTIONS
+# endif /* ACE_HAS_WINCE */
+
+# define ACE_HAS_BROKEN_NAMESPACES
+# define ACE_HAS_BROKEN_IMPLICIT_CONST_CAST
+# define ACE_HAS_WORKING_EXPLICIT_TEMPLATE_DESTRUCTOR
+# define ACE_HAS_STD_TEMPLATE_SPECIALIZATION
+
+# if defined (ACE_HAS_ANSI_CASTS) && (ACE_HAS_ANSI_CASTS == 0)
+# undef ACE_HAS_ANSI_CASTS
+# endif /* ACE_HAS_ANSI_CASTS && ACE_HAS_ANSI_CASTS == 0 */
+
+# if !defined (ACE_HAS_WINCE)
+# define ACE_HAS_SIG_ATOMIC_T
+# endif /* ACE_HAS_WINCE */
+
+
+// Compiler doesn't support static data member templates.
+# define ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES
+
+# define ACE_LACKS_MODE_MASKS
+# define ACE_LACKS_STRRECVFD
+
+# if !defined (ACE_HAS_WINCE)
+# define ACE_HAS_LLSEEK
+# endif /* ACE_HAS_WINCE */
+
+// Compiler/platform has correctly prototyped header files.
+# define ACE_HAS_CPLUSPLUS_HEADERS
+
+// Platform supports POSIX timers via timestruc_t.
+# define ACE_HAS_STRPTIME
+# define ACE_LACKS_NATIVE_STRPTIME
+
+// Compiler/platform supports strerror ().
+# define ACE_HAS_STRERROR
+
+# define ACE_TEMPLATES_REQUIRE_SOURCE
+
+// Platform provides ACE_TLI function prototypes.
+// For Win32, this is not really true, but saves a lot of hassle!
+# define ACE_HAS_TLI_PROTOTYPES
+
+// Platform support linebuffered streaming is broken
+# define ACE_LACKS_LINEBUFFERED_STREAMBUF
+
+// Template specialization is supported.
+# define ACE_HAS_TEMPLATE_SPECIALIZATION
+
+// ----------------- "derived" defines and includes -----------
+
+# if defined (ACE_HAS_STANDARD_CPP_LIBRARY) && (ACE_HAS_STANDARD_CPP_LIBRARY != 0)
+
+// Platform has its Standard C++ library in the namespace std
+# if !defined (ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB)
+# define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
+# endif /* ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB */
+
+// Microsoft's auto_ptr in standard cpp library doesn't have reset ().
+# define ACE_AUTO_PTR_LACKS_RESET
+
+// ace/iostream.h does not work with the standard cpp library (yet).
+# if !defined (ACE_USES_OLD_IOSTREAMS)
+# define ACE_LACKS_ACE_IOSTREAM
+# endif /* ! ACE_USES_OLD_IOSTREAMS */
+# else
+// iostream header lacks ipfx (), isfx (), etc., declarations
+# define ACE_LACKS_IOSTREAM_FX
+# endif
+
+// While digging the MSVC 4.0 include files, I found how to disable
+// MSVC warnings: --Amos Shapira
+
+// "C4355: 'this' : used in base member initializer list"
+# pragma warning(disable:4355) /* disable C4514 warning */
+// #pragma warning(default:4355) // use this to reenable, if desired
+
+# pragma warning(disable:4201) /* winnt.h uses nameless structs */
+
+# pragma warning(disable:4231)
+// Disable warning of using Microsoft Extension.
+
+// MSVC allows throw keyword but complains about it.
+# pragma warning( disable : 4290 )
+
+// Inheritance by dominance is A-OK by us
+# pragma warning (disable:4250)
+
+
+# if !defined(ACE_HAS_WINCE)
+# if defined(ACE_HAS_DLL) && (ACE_HAS_DLL != 0)
+# if !defined(_DLL)
+// *** DO NOT *** DO NOT *** defeat this error message
+// by defining _DLL yourself. RTFM and see who set _DLL.
+# error You must link against (Debug) Multithreaded DLL run-time libraries.
+# endif /* !_DLL */
+# endif /* ACE_HAS_DLL && ACE_HAS_DLL != 0 */
+# endif /* !ACE_HAS_WINCE */
+
+# pragma warning(default: 4201) /* winnt.h uses nameless structs */
+
+# define ACE_INT64_FORMAT_SPECIFIER ACE_LIB_TEXT ("%I64d")
+# define ACE_UINT64_FORMAT_SPECIFIER ACE_LIB_TEXT ("%I64u")
+
+# if !defined (ACE_LD_DECORATOR_STR)
+# if defined (_DEBUG)
+# if ACE_HAS_MFC == 1
+# define ACE_LD_DECORATOR_STR ACE_LIB_TEXT ("mfcd")
+# else
+# define ACE_LD_DECORATOR_STR ACE_LIB_TEXT ("d")
+# endif //ACE_HAS_MFC
+# else // _NDEBUG
+# if ACE_HAS_MFC == 1
+# define ACE_LD_DECORATOR_STR ACE_LIB_TEXT ("mfc")
+# endif //ACE_HAS_MFC
+# endif // _DEBUG
+# endif
+
+# if !defined (ACE_ENDTHREADEX)
+# define ACE_ENDTHREADEX(STATUS) ::_endthreadex ((DWORD) STATUS)
+# endif
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_WIN32_MSVC_6_H */
diff --git a/ace/config-win32-msvc-7.h b/ace/config-win32-msvc-7.h
new file mode 100644
index 00000000000..14d7aaa2e43
--- /dev/null
+++ b/ace/config-win32-msvc-7.h
@@ -0,0 +1,119 @@
+/* -*- C++ -*- */
+//=============================================================================
+/**
+ * @file config-win32-msvc-7.h
+ *
+ * $Id$
+ *
+ * @brief Microsoft Visual C++ 7.0 configuration file.
+ *
+ * This file is the ACE configuration file for Microsoft Visual C++ version 7.
+ *
+ * @note Do not include this file directly, include config-win32.h instead.
+ *
+ * @author Darrell Brunsch <brunsch@cs.wustl.edu>
+ */
+//=============================================================================
+
+#ifndef ACE_CONFIG_WIN32_MSVC_7_H
+#define ACE_CONFIG_WIN32_MSVC_7_H
+#include "ace/pre.h"
+
+#ifndef ACE_CONFIG_WIN32_H
+#error Use config-win32.h in config.h instead of this header
+#endif /* ACE_CONFIG_WIN32_H */
+
+// Visual C++ 7.0 (.NET) deprecated the old iostreams
+#if !defined (ACE_HAS_STANDARD_CPP_LIBRARY)
+#define ACE_HAS_STANDARD_CPP_LIBRARY 1
+#endif
+
+#if !defined (ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB)
+#define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
+#endif
+
+#if !defined (ACE_HAS_BROKEN_NESTED_TEMPLATES)
+#define ACE_HAS_BROKEN_NESTED_TEMPLATES
+#endif
+
+// By default, we disable the C++ casting because
+// it requires the RTTI support to be turned on which
+// is not something we usually do.
+#if !defined (ACE_HAS_ANSI_CASTS)
+#define ACE_HAS_ANSI_CASTS 0
+#endif
+
+#define ACE_HAS_EXPLICIT_KEYWORD
+#define ACE_HAS_MUTABLE_KEYWORD
+#define ACE_HAS_TYPENAME_KEYWORD
+
+#define ACE_HAS_ITOA
+
+#define ACE_HAS_BROKEN_NAMESPACES
+#define ACE_HAS_BROKEN_IMPLICIT_CONST_CAST
+#define ACE_HAS_WORKING_EXPLICIT_TEMPLATE_DESTRUCTOR
+
+#define ACE_ITOA_EQUIVALENT ::_itoa
+#define ACE_STRCASECMP_EQUIVALENT ::_stricmp
+#define ACE_STRNCASECMP_EQUIVALENT ::_strnicmp
+#define ACE_WCSDUP_EQUIVALENT ::_wcsdup
+
+#if !defined (ACE_HAS_WINCE)
+#define ACE_HAS_EXCEPTIONS
+#endif /* ACE_HAS_WINCE */
+
+#if defined (ACE_HAS_ANSI_CASTS) && (ACE_HAS_ANSI_CASTS == 0)
+#undef ACE_HAS_ANSI_CASTS
+#endif /* ACE_HAS_ANSI_CASTS && ACE_HAS_ANSI_CASTS == 0 */
+
+#define ACE_HAS_STRERROR
+#define ACE_HAS_STRPTIME
+#define ACE_LACKS_NATIVE_STRPTIME
+
+#define ACE_HAS_SIG_ATOMIC_T
+#define ACE_HAS_STD_TEMPLATE_SPECIALIZATION
+#define ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES
+#define ACE_LACKS_MODE_MASKS
+#define ACE_LACKS_STRRECVFD
+#define ACE_HAS_CPLUSPLUS_HEADERS
+
+#define ACE_TEMPLATES_REQUIRE_SOURCE
+#define ACE_HAS_TEMPLATE_SPECIALIZATION
+
+#define ACE_INT64_FORMAT_SPECIFIER ACE_LIB_TEXT ("%I64d")
+#define ACE_UINT64_FORMAT_SPECIFIER ACE_LIB_TEXT ("%I64u")
+
+// Platform provides ACE_TLI function prototypes.
+// For Win32, this is not really true, but saves a lot of hassle!
+#define ACE_HAS_TLI_PROTOTYPES
+
+// Platform support linebuffered streaming is broken
+#define ACE_LACKS_LINEBUFFERED_STREAMBUF
+
+#if defined (ACE_HAS_STANDARD_CPP_LIBRARY) && (ACE_HAS_STANDARD_CPP_LIBRARY != 0)
+
+// Platform has its Standard C++ library in the namespace std
+# if !defined (ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB)
+# define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
+# endif /* ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB */
+
+// ace/iostream.h does not work with the standard cpp library (yet).
+# if !defined (ACE_USES_OLD_IOSTREAMS)
+# define ACE_LACKS_ACE_IOSTREAM
+# endif /* ! ACE_USES_OLD_IOSTREAMS */
+
+#else
+
+// iostream header lacks ipfx (), isfx (), etc., declarations
+# define ACE_LACKS_IOSTREAM_FX
+
+#endif
+
+// There are too many instances of this warning to fix it right now.
+// Maybe in the future.
+#pragma warning(disable:4355)
+
+#define ACE_ENDTHREADEX(STATUS) ::_endthreadex ((DWORD) STATUS)
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_WIN32_MSVC_7_H */
diff --git a/ace/config-win32-msvc.h b/ace/config-win32-msvc.h
new file mode 100644
index 00000000000..2e162554194
--- /dev/null
+++ b/ace/config-win32-msvc.h
@@ -0,0 +1,43 @@
+//=============================================================================
+/**
+ * @file config-win32-msvc.h
+ *
+ * $Id$
+ *
+ * @brief Microsoft Visual C++ configuration file.
+ *
+ * This file is the ACE configuration file for Microsoft Visual C++ versions
+ * 5.0, 6.0, and 7.0 (.NET)
+ *
+ * @author Darrell Brunsch <brunsch@cs.wustl.edu>
+ */
+//=============================================================================
+
+#ifndef ACE_CONFIG_WIN32_MSVC_H
+#define ACE_CONFIG_WIN32_MSVC_H
+#include "ace/pre.h"
+
+#ifndef ACE_CONFIG_WIN32_H
+#error Use config-win32.h in config.h instead of this header
+#endif /* ACE_CONFIG_WIN32_H */
+
+#define ACE_CC_NAME ACE_LIB_TEXT ("Visual C++")
+#define ACE_CC_PREPROCESSOR "CL.EXE"
+#define ACE_CC_PREPROCESSOR_ARGS "-nologo -E"
+
+#define ACE_CC_MAJOR_VERSION (_MSC_VER / 100 - 6)
+#define ACE_CC_MINOR_VERSION (_MSC_VER % 100)
+#define ACE_CC_BETA_VERSION (0)
+
+#if (_MSC_VER >= 1300)
+# include "ace/config-win32-msvc-7.h"
+#elif (_MSC_VER >= 1200)
+# include "ace/config-win32-msvc-6.h"
+#elif (_MSC_VER >= 1100)
+# include "ace/config-win32-msvc-5.h"
+#else
+# error This version of Microsoft Visual C++ not supported.
+#endif
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_WIN32_MSVC_H */
diff --git a/ace/config-win32-visualage.h b/ace/config-win32-visualage.h
new file mode 100644
index 00000000000..fab98161d8e
--- /dev/null
+++ b/ace/config-win32-visualage.h
@@ -0,0 +1,101 @@
+//=============================================================================
+/**
+ * @file config-win32-visualage.h
+ *
+ * $Id$
+ *
+ * @brief Configuration file for VisualAge compilers
+ *
+ * @note Do not include this file directly, include config-win32.h instead.
+ *
+ * @author Darrell Brunsch <brunsch@cs.wustl.edu>
+ */
+//=============================================================================
+
+#ifndef ACE_CONFIG_WIN32_VISUALAGE_H
+#define ACE_CONFIG_WIN32_VISUALAGE_H
+#include "ace/pre.h"
+
+#ifndef ACE_CONFIG_WIN32_H
+#error Use config-win32.h in config.h instead of this header
+#endif /* ACE_CONFIG_WIN32_H */
+
+#if defined (__IBMCPP__) && (__IBMCPP__ >= 400)
+
+#define ACE_CC_NAME ACE_LIB_TEXT ("IBM VisualAge C++")
+#define ACE_CC_MAJOR_VERSION (__IBMCPP__ / 0x100)
+#define ACE_CC_MINOR_VERSION (__IBMCPP__ % 0x100)
+#define ACE_CC_BETA_VERSION (0)
+#define ACE_CC_PREPROCESSOR ""
+#define ACE_CC_PREPROCESSOR_ARGS ""
+
+// By default WIN32 has FD_SETSIZE of 64, which places the limit
+// between 61 and 64 on the number of clients a server using the
+// Select Reactor can support at the same time (i.e., 64 - standard in,
+// out, error). He we raise the limit to 1024. Adjust the definition
+// below if you need to raise or lower it.
+//
+#define FD_SETSIZE 1024
+
+//These need to be defined for VisualAgeC++
+#define ERRMAX 256 /* Needed for following define */
+#define ACE_LACKS_SYS_NERR /* Needed for sys_nerr in Log_Msg.cpp */
+#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES /* For signal handling */
+#define ACE_LACKS_MKTEMP
+#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
+#define NSIG 23 /* Maximum no. of signals + 1 */
+#define ACE_HAS_ANSI_CASTS 1
+#define ACE_HAS_BROKEN_NESTED_TEMPLATES 1
+#define ACE_HAS_CPLUSPLUS_HEADERS 1
+#define ACE_HAS_EXCEPTIONS 1
+#define ACE_HAS_EXPLICIT_KEYWORD 1
+#define ACE_HAS_GNU_CSTRING_H 1
+#define ACE_HAS_MUTABLE_KEYWORD 1
+#define ACE_HAS_NONCONST_SELECT_TIMEVAL 1
+#define ACE_HAS_SIG_ATOMIC_T 1
+#define ACE_HAS_STANDARD_CPP_LIBRARY 1
+#define ACE_HAS_STDCPP_STL_INCLUDES 1
+#define ACE_HAS_STRERROR 1
+#define ACE_HAS_STRING_CLASS 1
+#define ACE_HAS_STRPTIME 1
+#define ACE_HAS_TEMPLATE_SPECIALIZATION 1
+#define ACE_HAS_TEMPLATE_TYPEDEFS 1
+#define ACE_HAS_TYPENAME_KEYWORD 1
+#define ACE_HAS_USING_KEYWORD 1
+#define ACE_LACKS_ACE_IOSTREAM 1
+#define ACE_LACKS_LINEBUFFERED_STREAMBUF 1
+#define ACE_LACKS_MODE_MASKS 1
+#define ACE_LACKS_NATIVE_STRPTIME 1
+#define ACE_LACKS_PRAGMA_ONCE 1
+#define ACE_LACKS_STRRECVFD 1
+#define ACE_NEW_THROWS_EXCEPTIONS 1
+#define ACE_SIZEOF_LONG_DOUBLE 10
+#define ACE_TEMPLATES_REQUIRE_SOURCE 1
+#define ACE_UINT64_FORMAT_SPECIFIER ACE_LIB_TEXT ("%I64u")
+#define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
+
+#undef WIFEXITED
+#undef WEXITSTATUS
+
+#define _O_RDWR O_RDWR
+#define _O_WRONLY O_WRONLY
+#define _O_RDONLY O_RDONLY
+#define _O_APPEND O_APPEND
+#define _O_BINARY O_BINARY
+#define _O_TEXT O_TEXT
+
+#define _endthreadex _endthread
+#define _beginthreadex _beginthread
+
+//Error codes that are in MS Visual C++
+#define EFAULT 99 /* Error code (should be in errno.h) */
+#define ENODEV 19
+#define EPIPE 32
+#define ENAMETOOLONG 38
+
+#define ACE_ENDTHREADEX(STATUS) ::_endthread ()
+
+#endif /* defined(__IBMCPP__) */
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_WIN32_VISUALAGE_H */
diff --git a/ace/config-win32.h b/ace/config-win32.h
new file mode 100644
index 00000000000..f193d5078bd
--- /dev/null
+++ b/ace/config-win32.h
@@ -0,0 +1,58 @@
+/* -*- C++ -*- */
+//=============================================================================
+/**
+ * @file config-win32.h
+ *
+ * $Id$
+ *
+ * @brief Microsoft Windows configuration file.
+ *
+ * This file is the ACE configuration file for all of Microsoft Windows
+ * platforms that ACE runs on. Based on preprocessor definitions, it
+ * includes other more specific configuration files.
+ *
+ * @author Darrell Brunsch <brunsch@cs.wustl.edu>
+ */
+//=============================================================================
+
+#ifndef ACE_CONFIG_WIN32_H
+#define ACE_CONFIG_WIN32_H
+#include "ace/pre.h"
+
+// NOTE: Please do not add anything besides #include's here. Put other stuff
+// (definitions, etc.) in the included headers
+
+// Include the platform specific config file (Windows CE is special)
+
+#if defined (_WIN32_WCE)
+# include "ace/config-WinCE.h"
+#endif /* _WIN32_WCE */
+
+// We need to ensure that for Borland vcl.h can be included before
+// windows.h. So we will not include config-win32-common.h from here,
+// but instead let it be included at the appropriate place in
+// config-win32-borland.h.
+#if !defined (__BORLANDC__)
+# include "ace/config-win32-common.h"
+#endif /* !__BORLANDC__ */
+
+// Include the config-win32-* file specific to the compiler
+
+#if defined (_MSC_VER)
+# include "ace/config-win32-msvc.h"
+#elif defined (__BORLANDC__)
+# include "ace/config-win32-borland.h"
+#elif defined (__IBMCPP__)
+# include "ace/config-win32-visualage.h"
+#elif defined (ghs)
+# include "ace/config-win32-ghs.h"
+#elif defined (__MINGW32__)
+# include "ace/config-win32-mingw.h"
+#elif defined (__CYGWIN32__)
+# include "ace/config-cygwin32.h"
+#else
+# error Compiler is not supported
+#endif
+
+#include "ace/post.h"
+#endif /* ACE_CONFIG_WIN32_H */