summaryrefslogtreecommitdiff
path: root/ace/config-lynxos.h
diff options
context:
space:
mode:
Diffstat (limited to 'ace/config-lynxos.h')
-rw-r--r--ace/config-lynxos.h41
1 files changed, 17 insertions, 24 deletions
diff --git a/ace/config-lynxos.h b/ace/config-lynxos.h
index 2183ebf1d3d..a9394f87cdb 100644
--- a/ace/config-lynxos.h
+++ b/ace/config-lynxos.h
@@ -14,8 +14,6 @@
#define ACE_CONFIG_H
#include /**/ "ace/pre.h"
-#include <unistd.h> /* Get _POSIX_VERSION macro */
-
#if ! defined (__ACE_INLINE__)
# define __ACE_INLINE__
#endif /* ! __ACE_INLINE__ */
@@ -24,7 +22,7 @@
# include "ace/config-g++-common.h"
#endif /* __GNUG__ */
-#if _POSIX_VERSION >= 199506L
+#if ACE_LYNXOS_MAJOR > 3 || (ACE_LYNXOS_MAJOR == 3 && ACE_LYNXOS_MINOR > 0)
// LynxOS 3.1.0 or greater need ipc_1c.h to be included before net/if.h
// to avoid macro conflict.
# define ACE_NEEDS_IPC_1C_H
@@ -125,14 +123,14 @@
#if ACE_MT_SAFE == 1
// Platform supports threads.
# define ACE_HAS_PTHREADS
-# if _POSIX_VERSION >= 199506L
+# if ACE_LYNXOS_MAJOR > 3 || (ACE_LYNXOS_MAJOR == 3 && ACE_LYNXOS_MINOR > 0)
/* LynxOS 3.1.0 or greater */
# define ACE_HAS_PTHREADS_STD
# else /* LynxOS < 3.1.0 */
# define ACE_HAS_PTHREADS_DRAFT4
# define ACE_HAS_STDARG_THR_DEST
# define ACE_LACKS_MUTEXATTR_PSHARED
- // Without TSS emulation, you'll only have 3 native TSS keys, on
+ // 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 */
@@ -148,8 +146,7 @@
#define ACE_HAS_AIO_CALLS
#define ACE_POSIX_AIOCB_PROACTOR
-// AIOCB Proactor works on Lynx. But it is not
-// multi-threaded.
+// 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
@@ -164,13 +161,13 @@
#define ACE_HAS_USING_KEYWORD
#if __GNUC__ == 2 && __GNUC_MINOR__ == 9
- // config-g++-common.h defines these incorrectly for LynxOS 3.x
- // with G++ version 2.9-gnupro-98r2
-# define ACE_HAS_STD_TEMPLATE_CLASS_MEMBER_SPECIALIZATION
-# define ACE_HAS_STD_TEMPLATE_SPECIALIZATION
-# define ACE_HAS_TEMPLATE_SPECIALIZATION
-# define ACE_HAS_EXPLICIT_STATIC_TEMPLATE_MEMBER_INSTANTIATION
-# undef ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES
+ // config-g++-common.h defines these incorrectly for LynxOS 3.x
+ // with G++ version 2.9-gnupro-98r2
+# define ACE_HAS_STD_TEMPLATE_CLASS_MEMBER_SPECIALIZATION
+# define ACE_HAS_STD_TEMPLATE_SPECIALIZATION
+# define ACE_HAS_TEMPLATE_SPECIALIZATION
+# define ACE_HAS_EXPLICIT_STATIC_TEMPLATE_MEMBER_INSTANTIATION
+# undef ACE_LACKS_STATIC_DATA_MEMBER_TEMPLATES
#endif /* __GNUC__ == 2 && __GNUC_MINOR__ == 9 */
// By default, don't include RCS Id strings in object code.
@@ -181,19 +178,15 @@
// System include files are not in sys/, this gets rid of warning.
#define __NO_INCLUDE_WARN__
-// socket.h from LynxOS 4.0.x defines SOCK_MAXADDRLEN. Versions
-// of socket.h found on earlier releases of LynxOS do not define it.
-#include <socket.h>
-#if _POSIX_VERSION >= 199506L && defined (SOCK_MAXADDRLEN)
-
-// "changes signedness" error (OS.i and many other files)
+#if ACE_LYNXOS_MAJOR > 3 /* LynxOS 4.x */
+ // "changes signedness" error (OS.i and many other files)
# define ACE_HAS_SOCKLEN_T
-
-// LSOCK.cpp uses a macro from param.h, not included
+ // LSOCK.cpp uses a macro from param.h, not included
# define ALIGNBYTES (sizeof(int) - 1)
# define ALIGN(p) (((unsigned)p + ALIGNBYTES) & ~ALIGNBYTES)
-
-#endif /* _POSIX_VERSION && SOCK_MAXADDRLEN */
+#else /* LynxOS 3.x */
+# define ACE_LACKS_AUTO_PTR
+#endif /* ACE_LYNXOS_MAJOR > 3 */
#include /**/ "ace/post.h"
#endif /* ACE_CONFIG_H */