summaryrefslogtreecommitdiff
path: root/ACE
diff options
context:
space:
mode:
authorJohnny Willemsen <jwillemsen@remedy.nl>2006-12-05 15:24:24 +0000
committerJohnny Willemsen <jwillemsen@remedy.nl>2006-12-05 15:24:24 +0000
commit47a1ba88fffd0ef4fb1e0ec71ad54bc817eba427 (patch)
tree7d397308f8855a71adc23419a21d6ff05991fee5 /ACE
parentc14f8ccf1b9d90c8471ca420fa392915829135ea (diff)
downloadATCD-47a1ba88fffd0ef4fb1e0ec71ad54bc817eba427.tar.gz
Tue Dec 5 15:08:43 UTC 2006 Johnny Willemsen <jwillemsen@remedy.nl>
Diffstat (limited to 'ACE')
-rw-r--r--ACE/ChangeLog26
-rw-r--r--ACE/ace/ACE.cpp7
-rw-r--r--ACE/ace/Log_Msg.cpp17
-rw-r--r--ACE/ace/OS_NS_Thread.cpp13
-rw-r--r--ACE/ace/OS_NS_sys_wait.inl4
-rw-r--r--ACE/ace/config-aix-4.x.h347
-rw-r--r--ACE/ace/config-aix-5.x.h280
-rw-r--r--ACE/ace/os_include/sys/os_socket.h6
-rw-r--r--ACE/include/makeinclude/platform_aix.GNU109
-rw-r--r--ACE/include/makeinclude/platform_aix4.2.GNU3
-rw-r--r--ACE/include/makeinclude/platform_aix4_cset++.GNU110
11 files changed, 414 insertions, 508 deletions
diff --git a/ACE/ChangeLog b/ACE/ChangeLog
index 97c624a3767..29d45e38e7e 100644
--- a/ACE/ChangeLog
+++ b/ACE/ChangeLog
@@ -1,3 +1,29 @@
+Tue Dec 5 15:22:43 UTC 2006 Johnny Willemsen <jwillemsen@remedy.nl>
+
+ * include/makeinclude/makeinclude/platform_aix4_cset++.GNU:
+ * include/makeinclude/makeinclude/platform_aix.GNU:
+ Moved contents of cset++ method into the aix one, the aix
+ file just included the first one
+
+ * include/makeinclude/makeinclude/platform_aix4.2.GNU:
+ Removed, old
+
+ * ace/config-aix-4.x.h:
+ * ace/config-aix-5.x.h:
+ Moved contents of 4.x.h file into the 5.x.h file. Removed a lot
+ of old checks for AIX 4 so that we can maintain things easier.
+
+ * ace/ACE.cpp:
+ * ace/OS_NS_sys_wait.inl:
+ Removed ACE_HAS_UNION_WAIT, was only set for aix4
+
+ * ace/Log_Msg.cpp:
+ * ace/OS_NS_Thread.cpp:
+ Removed code for AIX 4.x to handle pthread_t
+
+ * ace/os_include/sys/os_socket.h:
+ Removed ACE_HAS_AIX_BROKEN_SOCKET_HEADER, was only set for aix 4
+
Tue Dec 5 15:08:43 UTC 2006 Johnny Willemsen <jwillemsen@remedy.nl>
* ace/config-aix-4.1.x.h:
diff --git a/ACE/ace/ACE.cpp b/ACE/ace/ACE.cpp
index bfc8a867d6c..ea4d8a7bf46 100644
--- a/ACE/ace/ACE.cpp
+++ b/ACE/ace/ACE.cpp
@@ -2888,13 +2888,8 @@ ACE::fork (const ACE_TCHAR *program_name,
}
// Parent process waits for child to terminate.
-#if defined (ACE_HAS_UNION_WAIT)
- union wait status;
- if (pid < 0 || ACE_OS::waitpid (pid, &(status.w_status), 0) < 0)
-#else
- ACE_exitcode status;
+ ACE_exitcode status;
if (pid < 0 || ACE_OS::waitpid (pid, &status, 0) < 0)
-#endif /* ACE_HAS_UNION_WAIT */
return -1;
// child terminated by calling exit()?
diff --git a/ACE/ace/Log_Msg.cpp b/ACE/ace/Log_Msg.cpp
index 0d399caa9ab..41b6e0bb4fb 100644
--- a/ACE/ace/Log_Msg.cpp
+++ b/ACE/ace/Log_Msg.cpp
@@ -1599,23 +1599,6 @@ ACE_Log_Msg::log (const ACE_TCHAR *format_str,
ACE_OS::sprintf (bp,
format,
static_cast <unsigned> (ACE_Thread::self ()));
-#elif defined (ACE_AIX_VERS) && (ACE_AIX_VERS <= 402)
- // AIX's pthread_t (ACE_hthread_t) is a pointer, and it's
- // a little ugly to send that through a %u format. So,
- // get the kernel thread ID (tid_t) via thread_self() and
- // display that instead.
- // This isn't conditionalized on ACE_HAS_THREAD_SELF because
- // 1. AIX 4.2 doesn't have that def anymore (it messes up
- // other things)
- // 2. OSF/1 V3.2 has that def, and I'm not sure what affect
- // this would have on that.
- // -Steve Huston, 19-Aug-97
- ACE_OS::strcpy (fp, ACE_LIB_TEXT ("u"));
- if (can_check)
- this_len = ACE_OS::snprintf
- (bp, bspace, format, thread_self());
- else
- this_len = ACE_OS::sprintf (bp, format, thread_self());
#elif defined (DIGITAL_UNIX)
ACE_OS::strcpy (fp, ACE_LIB_TEXT ("u"));
{
diff --git a/ACE/ace/OS_NS_Thread.cpp b/ACE/ace/OS_NS_Thread.cpp
index e3a0e9cc806..a9254962a6d 100644
--- a/ACE/ace/OS_NS_Thread.cpp
+++ b/ACE/ace/OS_NS_Thread.cpp
@@ -102,19 +102,6 @@ ACE_Thread_ID::to_string (char *thr_string) const
ACE_OS::sprintf (thr_string,
format,
static_cast <unsigned> (thread_id_));
-#elif defined (ACE_AIX_VERS) && (ACE_AIX_VERS <= 402)
- // AIX's pthread_t (ACE_hthread_t) is a pointer, and it's
- // a little ugly to send that through a %u format. So,
- // get the kernel thread ID (tid_t) via thread_self() and
- // display that instead.
- // This isn't conditionalized on ACE_HAS_THREAD_SELF because
- // 1. AIX 4.2 doesn't have that def anymore (it messes up
- // other things)
- // 2. OSF/1 V3.2 has that def, and I'm not sure what affect
- // this would have on that.
- // -Steve Huston, 19-Aug-97
- ACE_OS::strcpy (fp, "u");
- ACE_OS::sprintf (thr_string, format, thread_id_);
#elif defined (DIGITAL_UNIX)
ACE_OS::strcpy (fp, "u");
ACE_OS::sprintf (thr_string, format,
diff --git a/ACE/ace/OS_NS_sys_wait.inl b/ACE/ace/OS_NS_sys_wait.inl
index e273b5602d4..2503d509828 100644
--- a/ACE/ace/OS_NS_sys_wait.inl
+++ b/ACE/ace/OS_NS_sys_wait.inl
@@ -15,11 +15,7 @@ ACE_OS::wait (int *status)
ACE_UNUSED_ARG (status);
ACE_NOTSUP_RETURN (0);
#else
-# if defined (ACE_HAS_UNION_WAIT)
- ACE_OSCALL_RETURN (::wait ((union wait *) status), pid_t, -1);
-# else
ACE_OSCALL_RETURN (::wait (status), pid_t, -1);
-# endif /* ACE_HAS_UNION_WAIT */
#endif /* ACE_LACKS_WAIT */
}
diff --git a/ACE/ace/config-aix-4.x.h b/ACE/ace/config-aix-4.x.h
deleted file mode 100644
index d434ad61003..00000000000
--- a/ACE/ace/config-aix-4.x.h
+++ /dev/null
@@ -1,347 +0,0 @@
-/* -*- 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++.
-
-#ifndef ACE_CONFIG_H
-#define ACE_CONFIG_H
-#include /**/ "ace/pre.h"
-
-// Both IBM and g++ compilers set _THREAD_SAFE if compiler is asked to compile
-// threaded code (xlC_r, as opposed to xlC; and g++ -pthread)
-#if !defined (ACE_MT_SAFE) || (ACE_MT_SAFE != 0)
-# if defined (ACE_HAS_THREADS)
-# undef ACE_HAS_THREADS
-# endif
-# if defined (_THREAD_SAFE)
-# define ACE_HAS_THREADS 1
-// # else
-// # define ACE_HAS_THREADS 0
-# endif /* _THREAD_SAFE */
-#endif /* !ACE_MT_SAFE || (ACE_MT_SAFE != 0) */
-
-#if defined (__xlC__) || defined (__IBMCPP__)
- // AIX xlC, IBM C/C++, and Visual Age C++ compilers
- //********************************************************************
- //
-
-// Compiler does this with a builtin - it's not in libc.
-// Although ACE does have alloca() on this compiler/platform combination, it is
-// disabled by default since it can be dangerous. Uncomment the following line
-// if you ACE to use it.
-//# define ACE_HAS_ALLOCA
-
-// Compiler 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 */
-# endif
-
- // These are for Visual Age C++ only
-# if defined (__IBMCPP__) && (__IBMCPP__ >= 400)
-# define ACE_EXPLICIT_TEMPLATE_DESTRUCTOR_TAKES_ARGS
-# define ACE_HAS_TYPENAME_KEYWORD
- // When using -qtempinc, we don't need to see template implementation
- // source (though we do need a pragma to find the correct source file).
- // However, without -qtempinc (either -qnotempinc or -qtemplateregistry)
- // we do need to see the source.
-# if defined (__TEMPINC__)
-# if !defined ACE_TEMPLATES_REQUIRE_PRAGMA
-# define ACE_TEMPLATES_REQUIRE_PRAGMA
-# endif
-# else
-# if !defined (ACE_TEMPLATES_REQUIRE_SOURCE)
-# define ACE_TEMPLATES_REQUIRE_SOURCE
-# endif
-# endif /* __TEMPINC__ */
-
-# 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 */
-
-# if (__IBMCPP__ >= 600) /* Visual Age 6 and XL C/C++ 7 and up */
-# define ACE_HAS_TEMPLATE_TYPEDEFS
-# endif /* __IBMCPP__ >= 600 */
-# 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 (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ == 0))
-// We have to explicitly instantiate static template members prior to g++ 4.1
-# define ACE_HAS_EXPLICIT_STATIC_TEMPLATE_MEMBER_INSTANTIATION
-#endif /* g++ prior to 4.1 */
-
-# 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__ */
-# ifdef __cplusplus /* Let it slide for C compilers. */
-# error unsupported compiler in ace/config-aix-4.x.h
-# endif /* __cplusplus */
-#endif /* ! __xlC__ && ! __GNUG__ */
-
-
-// Compiling for AIX.
-#ifndef AIX
-# define AIX
-#endif /* AIX */
-
-// Pick up all the detectable settings.
-#include "ace/config-posix.h"
-
-#if defined (ACE_HAS_POSIX_SEM_TIMEOUT)
-# undef ACE_HAS_POSIX_SEM_TIMEOUT
-#endif /* ACE_HAS_POSIX_SEM_TIMEOUT */
-
-// 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 */
-
-#if (ACE_AIX_VERS >= 403)
-// AIX has AIO, but the functions don't match those of other AIO-enabled
-// platforms. If this is to work, it'll require some significant work,
-// maybe moving the OS-abstraction stuff to an OS_AIO or some such thing.
-//# define ACE_HAS_AIO_CALLS
-#endif /* ACE_AIX_VERS >= 403 */
-
-#define ACE_HAS_AIX_HI_RES_TIMER
-
-// 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_LACKS_STDINT_H
-#define ACE_LACKS_SYS_SYSCTL_H
-
-#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
-#define ACE_HAS_NONCONST_SELECT_TIMEVAL
-#define ACE_HAS_IP_MULTICAST
-
-// Lacks perfect filtering, must bind group address.
-#if !defined ACE_LACKS_PERFECT_MULTICAST_FILTERING
-# define ACE_LACKS_PERFECT_MULTICAST_FILTERING 1
-#endif /* ACE_LACKS_PERFECT_MULTICAST_FILTERING */
-
-#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)
-// 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
-#define ACE_HAS_SOCKADDR_IN_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_XTI
-#define ACE_HAS_BROKEN_T_ERROR
-#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. However, the size
-// of wchar_t changes for 32- vs. 64-bit builds (unsigned short vs. unsigned
-// int, respectively).
-#define ACE_HAS_XPG4_MULTIBYTE_CHAR
-#ifdef __64BIT__
-# define ACE_SIZEOF_WCHAR 4
-#else
-# define ACE_SIZEOF_WCHAR 2
-#endif /* __64BIT__ */
-
-#define ACE_LACKS_NETINET_TCP_H
-
-// AIX uses LIBPATH to search for libraries
-#define ACE_LD_SEARCH_PATH "LIBPATH"
-
-// 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.
-
-#if defined (ACE_HAS_THREADS)
-# 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
-# define ACE_HAS_PTHREAD_CONTINUE_NP
-# define ACE_HAS_PTHREAD_SUSPEND_NP
-# define ACE_HAS_RECURSIVE_MUTEXES
-# 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
-
-#if (defined _XOPEN_SOURCE && (_XOPEN_SOURCE - 0) >= 500) && !defined(_UNIX95)
-# define ACE_HAS_3_PARAM_WCSTOK
-#endif /* (_XOPEN_SOURCE -0) >= 500 && !_UNIX95 */
-
-#include /**/ "ace/post.h"
-#endif /* ACE_CONFIG_H */
diff --git a/ACE/ace/config-aix-5.x.h b/ACE/ace/config-aix-5.x.h
index 42cb40b96db..52aacd42404 100644
--- a/ACE/ace/config-aix-5.x.h
+++ b/ACE/ace/config-aix-5.x.h
@@ -26,7 +26,285 @@
#if !defined (ACE_HAS_AIO_CALLS)
# define _ACE_DISABLE_AIO_CALLS_
#endif
-#include "ace/config-aix-4.x.h"
+
+// Both IBM and g++ compilers set _THREAD_SAFE if compiler is asked to compile
+// threaded code (xlC_r, as opposed to xlC; and g++ -pthread)
+#if !defined (ACE_MT_SAFE) || (ACE_MT_SAFE != 0)
+# if defined (ACE_HAS_THREADS)
+# undef ACE_HAS_THREADS
+# endif
+# if defined (_THREAD_SAFE)
+# define ACE_HAS_THREADS 1
+// # else
+// # define ACE_HAS_THREADS 0
+# endif /* _THREAD_SAFE */
+#endif /* !ACE_MT_SAFE || (ACE_MT_SAFE != 0) */
+
+#if defined (__xlC__) || defined (__IBMCPP__)
+ // AIX xlC, IBM C/C++, and Visual Age C++ compilers
+ //********************************************************************
+ //
+
+// Compiler does this with a builtin - it's not in libc.
+// Although ACE does have alloca() on this compiler/platform combination, it is
+// disabled by default since it can be dangerous. Uncomment the following line
+// if you ACE to use it.
+//# define ACE_HAS_ALLOCA
+
+// Compiler 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 */
+# endif
+
+ // These are for Visual Age C++ only
+# if defined (__IBMCPP__) && (__IBMCPP__ >= 400)
+# define ACE_EXPLICIT_TEMPLATE_DESTRUCTOR_TAKES_ARGS
+# define ACE_HAS_TYPENAME_KEYWORD
+ // When using -qtempinc, we don't need to see template implementation
+ // source (though we do need a pragma to find the correct source file).
+ // However, without -qtempinc (either -qnotempinc or -qtemplateregistry)
+ // we do need to see the source.
+# if defined (__TEMPINC__)
+# if !defined ACE_TEMPLATES_REQUIRE_PRAGMA
+# define ACE_TEMPLATES_REQUIRE_PRAGMA
+# endif
+# else
+# if !defined (ACE_TEMPLATES_REQUIRE_SOURCE)
+# define ACE_TEMPLATES_REQUIRE_SOURCE
+# endif
+# endif /* __TEMPINC__ */
+
+# 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 */
+
+# if (__IBMCPP__ >= 600) /* Visual Age 6 and XL C/C++ 7 and up */
+# define ACE_HAS_TEMPLATE_TYPEDEFS
+# endif /* __IBMCPP__ >= 600 */
+# 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 (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ == 0))
+// We have to explicitly instantiate static template members prior to g++ 4.1
+# define ACE_HAS_EXPLICIT_STATIC_TEMPLATE_MEMBER_INSTANTIATION
+#endif /* g++ prior to 4.1 */
+
+# 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__ */
+# ifdef __cplusplus /* Let it slide for C compilers. */
+# error unsupported compiler in ace/config-aix-5.x.h
+# endif /* __cplusplus */
+#endif /* ! __xlC__ && ! __GNUG__ */
+
+// Compiling for AIX.
+#ifndef AIX
+# define AIX
+#endif /* AIX */
+
+// Pick up all the detectable settings.
+#include "ace/config-posix.h"
+
+#if defined (ACE_HAS_POSIX_SEM_TIMEOUT)
+# undef ACE_HAS_POSIX_SEM_TIMEOUT
+#endif /* ACE_HAS_POSIX_SEM_TIMEOUT */
+
+// 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"
+
+#define ACE_DEFAULT_BASE_ADDR ((char *) 0x80000000)
+
+#define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R
+
+#define ACE_HAS_SOCKLEN_T
+#define ACE_HAS_4_4BSD_SENDMSG_RECVMSG
+
+// AIX has AIO, but the functions don't match those of other AIO-enabled
+// platforms. If this is to work, it'll require some significant work,
+// maybe moving the OS-abstraction stuff to an OS_AIO or some such thing.
+//# define ACE_HAS_AIO_CALLS
+
+#define ACE_HAS_AIX_HI_RES_TIMER
+
+// Compiler/platform has correctly prototyped header files.
+#define ACE_HAS_CPLUSPLUS_HEADERS
+
+// 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_LACKS_STDINT_H
+#define ACE_LACKS_SYS_SYSCTL_H
+
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+#define ACE_HAS_NONCONST_SELECT_TIMEVAL
+#define ACE_HAS_IP_MULTICAST
+
+// Lacks perfect filtering, must bind group address.
+#if !defined ACE_LACKS_PERFECT_MULTICAST_FILTERING
+# define ACE_LACKS_PERFECT_MULTICAST_FILTERING 1
+#endif /* ACE_LACKS_PERFECT_MULTICAST_FILTERING */
+
+#define ACE_HAS_MSG
+
+// 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+
+# define ACE_HAS_BROKEN_POSIX_TIME
+// ... 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
+#define ACE_HAS_SIGINFO_T
+#define ACE_LACKS_SIGINFO_H
+#define ACE_HAS_P_READ_WRITE
+
+#define ACE_HAS_SIGWAIT
+#define ACE_HAS_SOCKADDR_IN_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_XTI
+#define ACE_HAS_BROKEN_T_ERROR
+#define ACE_TLI_TCP_DEVICE "/dev/xti/tcp"
+
+#define ACE_HAS_UALARM
+
+#define ACE_HAS_UCONTEXT_T
+
+#define ACE_HAS_UTIME
+
+// Platform has XPG4 wide character type and functions. However, the size
+// of wchar_t changes for 32- vs. 64-bit builds (unsigned short vs. unsigned
+// int, respectively).
+#define ACE_HAS_XPG4_MULTIBYTE_CHAR
+#ifdef __64BIT__
+# define ACE_SIZEOF_WCHAR 4
+#else
+# define ACE_SIZEOF_WCHAR 2
+#endif /* __64BIT__ */
+
+#define ACE_LACKS_NETINET_TCP_H
+
+// AIX uses LIBPATH to search for libraries
+#define ACE_LD_SEARCH_PATH "LIBPATH"
+
+// 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.
+
+#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_PTHREAD_CONTINUE_NP
+# define ACE_HAS_PTHREAD_SUSPEND_NP
+# define ACE_HAS_RECURSIVE_MUTEXES
+# 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
+
+#if (defined _XOPEN_SOURCE && (_XOPEN_SOURCE - 0) >= 500) && !defined(_UNIX95)
+# define ACE_HAS_3_PARAM_WCSTOK
+#endif /* (_XOPEN_SOURCE -0) >= 500 && !_UNIX95 */
+
#if defined (_ACE_DISABLE_AIO_CALLS_)
# if defined (ACE_HAS_AIO_CALLS)
# undef ACE_HAS_AIO_CALLS
diff --git a/ACE/ace/os_include/sys/os_socket.h b/ACE/ace/os_include/sys/os_socket.h
index 7e4f5e72fd0..b5a73486f58 100644
--- a/ACE/ace/os_include/sys/os_socket.h
+++ b/ACE/ace/os_include/sys/os_socket.h
@@ -27,13 +27,7 @@
#include "ace/os_include/sys/os_uio.h"
#if !defined (ACE_LACKS_SYS_SOCKET_H)
-# if defined (ACE_HAS_AIX_BROKEN_SOCKET_HEADER)
-# undef __cplusplus
-# endif /* ACE_HAS_AIX_BROKEN_SOCKET_HEADER */
# include /**/ <sys/socket.h>
-# if defined (ACE_HAS_AIX_BROKEN_SOCKET_HEADER)
-# define __cplusplus
-# endif /* ACE_HAS_AIX_BROKEN_SOCKET_HEADER */
#endif /* !ACE_LACKS_SYS_SOCKET_H */
#if defined (ACE_VXWORKS) && (ACE_VXWORKS < 0x620)
diff --git a/ACE/include/makeinclude/platform_aix.GNU b/ACE/include/makeinclude/platform_aix.GNU
index 675b1af991b..33e9c785263 100644
--- a/ACE/include/makeinclude/platform_aix.GNU
+++ b/ACE/include/makeinclude/platform_aix.GNU
@@ -1,3 +1,110 @@
# $Id$
-include $(ACE_ROOT)/include/makeinclude/platform_aix4_cset++.GNU
+# AIX 5.x using the IBM C Set++ compiler.
+#
+# NOTE! IBM is no longer supporting AIX at any version earlier than 4.3,
+# and Riverace is not testing or supporting ACE on them either. No steps
+# have been taken to intentionally disable anything, but it is not being
+# tested either.
+#
+# NOTE 2! This file is only for use with the older CSet++ compiler, which
+# IBM doesn't sell or support any longer. Riverace doesn't support ACE
+# with it either. This file is still here in case there is some site
+# still using the old compiler, but it is completely unsupported.
+#
+# On 4.1, this file assumes that the user has installed the AIX patch
+# containing the dl*() APIs. To use these APIs, IBM has created a
+# separate product (free to AIX licensees) called shared library
+# hookable symbols (or slhs/6000). If they don't have this patch, the
+# sv* commands for compiling and linking will not be present on the
+# system.
+#
+# On 4.2, the AIX fileset bos.rte.bind_cmds must be at version 4.2.0.2 or
+# higher in order to build libACEshr.a, and at 4.2.0.4 or higher for dl*()
+# routines to work properly. Best to apply the update available at:
+# ftp://service.boulder.ibm.com/aix/fixes/v4/os/bos.rte.bind_cmds.4.2.0.4.bff
+# or a successor.
+
+debug ?= 1
+distrib ?= 0
+exceptions ?= 1
+optimize ?= 0
+threads ?= 1
+
+# There's no way to turn off exceptions with IBM C/C++
+ifeq (0,$(exceptions))
+ exceptions = 1
+endif
+
+# In case anything here or in the config depends on OS version number,
+# grab it here and pass it all to the compiler as well.
+AIX_MAJOR_VERS := $(shell uname -v)
+AIX_MINOR_VERS := $(shell uname -r)
+
+# aix_build turns on the funky shared library building code.
+aix_build = 1
+# ibmcxx_build turns on the extra step for instantiating and compiling
+# template instances.
+ibmcxx_build = 1
+
+ifeq ($(threads),1)
+CC = xlc_r
+CXX = xlC_r
+DLD = makeC++SharedLib_r
+else
+CC = xlc
+CXX = xlC
+DLD = makeC++SharedLib
+endif
+
+# -qextchk is handy, but produces false type mismatches when linking
+# netsvcs with 3.1.4, so it's disabled. IBM reports this fixed in 3.6.4.
+TEMPINCDIR = tempinc
+CCFLAGS += $(CFLAGS) -qtempinc=$(TEMPINCDIR) -qinfo
+
+# IBM C/C++ compiler 3.6.x produces a bazillion warnings about 0-valued
+# preprocessor defs. Since both 3.1 and 3.4 could be installed, don't ask
+# lslpp for one or the other. Instead, compile a file and see which compiler
+# the user has set up for use. This trick was submitted by Craig Rodrigues
+# <rodrigc@mediaone.net>, originally from the vacpp compiler newsgroup.
+# It relies on the preprocessor defining __xlC__ to the proper version
+# number of the compiler.
+XLCVERSION := $(shell echo "__xlC__" > ./testAIXCompilerVersion.cpp)
+XLCVERSION := $(shell $(CXX) -E ./testAIXCompilerVersion.cpp | tail -1)
+ACE_AIX_CLEAN := $(shell $(RM) ./testAIXCompilerVersion.cpp)
+ifeq ($(XLCVERSION),0x0306)
+ CCFLAGS += -qflag=e:e
+else
+ CCFLAGS += -qflag=w:w
+endif
+CPPFLAGS += -qlanglvl=ansi -DACE_AIX_MAJOR_VERS=$(AIX_MAJOR_VERS) -DACE_AIX_MINOR_VERS=$(AIX_MINOR_VERS)
+
+# -qinitauto seems useful, but when built with -qinitauto=5F, the
+# Process_Strategy_Test went CPU bound in ostream, so I removed it (S. Huston)
+DCFLAGS += -g -qcheck=nobounds:div:null
+
+ACELIB = -lACE
+LD = $(CXX)
+
+ifeq ($(AIX_MINOR_VERS),1)
+LLIBS = -lsvld -ltli_r $(ACELIB)
+LIBS += $(filter-out $(SHLIBA:lib%.a=-l%), $(LLIBS))
+else
+LIBS += -ltli_r -ldl
+endif
+
+ARFLAGS = ruv
+AR = ar
+LDFLAGS += -bI:/lib/pse.exp
+# Default OCCFLAGS builds common code for all RS/6000 architectures but
+# this can be set to optimize for your particular computer. The commented
+# out example optimizes for RS/6000 43P.
+# OCCFLAGS is not used by default. To used it, set optimize=1
+# either in this file or on the command line.
+#OCCFLAGS += -qarch=ppc -qtune=604
+OCCFLAGS += -O2 -qarch=com
+RANLIB = ranlib
+SOFLAGS = -p 0
+
+SOVERSION =
+SONAME =
diff --git a/ACE/include/makeinclude/platform_aix4.2.GNU b/ACE/include/makeinclude/platform_aix4.2.GNU
deleted file mode 100644
index 395f30adbcb..00000000000
--- a/ACE/include/makeinclude/platform_aix4.2.GNU
+++ /dev/null
@@ -1,3 +0,0 @@
-# $Id$
-
-include $(ACE_ROOT)/include/makeinclude/platform_aix4_cset++.GNU \ No newline at end of file
diff --git a/ACE/include/makeinclude/platform_aix4_cset++.GNU b/ACE/include/makeinclude/platform_aix4_cset++.GNU
deleted file mode 100644
index 8bc2b0b3929..00000000000
--- a/ACE/include/makeinclude/platform_aix4_cset++.GNU
+++ /dev/null
@@ -1,110 +0,0 @@
-# $Id$
-
-# AIX 4.x using the IBM C Set++ compiler.
-#
-# NOTE! IBM is no longer supporting AIX at any version earlier than 4.3,
-# and Riverace is not testing or supporting ACE on them either. No steps
-# have been taken to intentionally disable anything, but it is not being
-# tested either.
-#
-# NOTE 2! This file is only for use with the older CSet++ compiler, which
-# IBM doesn't sell or support any longer. Riverace doesn't support ACE
-# with it either. This file is still here in case there is some site
-# still using the old compiler, but it is completely unsupported.
-#
-# On 4.1, this file assumes that the user has installed the AIX patch
-# containing the dl*() APIs. To use these APIs, IBM has created a
-# separate product (free to AIX licensees) called shared library
-# hookable symbols (or slhs/6000). If they don't have this patch, the
-# sv* commands for compiling and linking will not be present on the
-# system.
-#
-# On 4.2, the AIX fileset bos.rte.bind_cmds must be at version 4.2.0.2 or
-# higher in order to build libACEshr.a, and at 4.2.0.4 or higher for dl*()
-# routines to work properly. Best to apply the update available at:
-# ftp://service.boulder.ibm.com/aix/fixes/v4/os/bos.rte.bind_cmds.4.2.0.4.bff
-# or a successor.
-
-debug ?= 1
-distrib ?= 0
-exceptions ?= 1
-optimize ?= 0
-threads ?= 1
-
-# There's no way to turn off exceptions with IBM C/C++
-ifeq (0,$(exceptions))
- exceptions = 1
-endif
-
-# In case anything here or in the config depends on OS version number,
-# grab it here and pass it all to the compiler as well.
-AIX_MAJOR_VERS := $(shell uname -v)
-AIX_MINOR_VERS := $(shell uname -r)
-
-# aix_build turns on the funky shared library building code.
-aix_build = 1
-# ibmcxx_build turns on the extra step for instantiating and compiling
-# template instances.
-ibmcxx_build = 1
-
-ifeq ($(threads),1)
-CC = xlc_r
-CXX = xlC_r
-DLD = makeC++SharedLib_r
-else
-CC = xlc
-CXX = xlC
-DLD = makeC++SharedLib
-endif
-
-# -qextchk is handy, but produces false type mismatches when linking
-# netsvcs with 3.1.4, so it's disabled. IBM reports this fixed in 3.6.4.
-TEMPINCDIR = tempinc
-CCFLAGS += $(CFLAGS) -qtempinc=$(TEMPINCDIR) -qinfo
-
-# IBM C/C++ compiler 3.6.x produces a bazillion warnings about 0-valued
-# preprocessor defs. Since both 3.1 and 3.4 could be installed, don't ask
-# lslpp for one or the other. Instead, compile a file and see which compiler
-# the user has set up for use. This trick was submitted by Craig Rodrigues
-# <rodrigc@mediaone.net>, originally from the vacpp compiler newsgroup.
-# It relies on the preprocessor defining __xlC__ to the proper version
-# number of the compiler.
-XLCVERSION := $(shell echo "__xlC__" > ./testAIXCompilerVersion.cpp)
-XLCVERSION := $(shell $(CXX) -E ./testAIXCompilerVersion.cpp | tail -1)
-ACE_AIX_CLEAN := $(shell $(RM) ./testAIXCompilerVersion.cpp)
-ifeq ($(XLCVERSION),0x0306)
- CCFLAGS += -qflag=e:e
-else
- CCFLAGS += -qflag=w:w
-endif
-CPPFLAGS += -qlanglvl=ansi -DACE_AIX_MAJOR_VERS=$(AIX_MAJOR_VERS) -DACE_AIX_MINOR_VERS=$(AIX_MINOR_VERS)
-
-# -qinitauto seems useful, but when built with -qinitauto=5F, the
-# Process_Strategy_Test went CPU bound in ostream, so I removed it (S. Huston)
-DCFLAGS += -g -qcheck=nobounds:div:null
-
-ACELIB = -lACE
-LD = $(CXX)
-
-ifeq ($(AIX_MINOR_VERS),1)
-LLIBS = -lsvld -ltli_r $(ACELIB)
-LIBS += $(filter-out $(SHLIBA:lib%.a=-l%), $(LLIBS))
-else
-LIBS += -ltli_r -ldl
-endif
-
-ARFLAGS = ruv
-AR = ar
-LDFLAGS += -bI:/lib/pse.exp
-# Default OCCFLAGS builds common code for all RS/6000 architectures but
-# this can be set to optimize for your particular computer. The commented
-# out example optimizes for RS/6000 43P.
-# OCCFLAGS is not used by default. To used it, set optimize=1
-# either in this file or on the command line.
-#OCCFLAGS += -qarch=ppc -qtune=604
-OCCFLAGS += -O2 -qarch=com
-RANLIB = ranlib
-SOFLAGS = -p 0
-
-SOVERSION =
-SONAME =