aboutsummaryrefslogtreecommitdiff
path: root/dep/acelite/ace/config-win32-interix.h
diff options
context:
space:
mode:
Diffstat (limited to 'dep/acelite/ace/config-win32-interix.h')
-rw-r--r--dep/acelite/ace/config-win32-interix.h127
1 files changed, 127 insertions, 0 deletions
diff --git a/dep/acelite/ace/config-win32-interix.h b/dep/acelite/ace/config-win32-interix.h
new file mode 100644
index 00000000000..d0365ac0399
--- /dev/null
+++ b/dep/acelite/ace/config-win32-interix.h
@@ -0,0 +1,127 @@
+// -*- C++ -*-
+// $Id: config-win32-interix.h 87578 2009-11-16 14:41:47Z olli $
+
+// The following configuration file is designed to work for Interix
+// platforms using GNU g++ (Interix == Microsoft's Services for Unix)
+
+#ifndef ACE_CONFIG_WIN32_INTERIX_H
+#define ACE_CONFIG_WIN32_INTERIX_H
+
+#include /**/ "ace/pre.h"
+
+#include "ace/config-g++-common.h"
+
+#define ACE_HAS_2_PARAM_ASCTIME_R_AND_CTIME_R
+#define ACE_HAS_3_PARAM_READDIR_R
+#define ACE_HAS_4_4BSD_SENDMSG_RECVMSG
+#define ACE_HAS_AUTOMATIC_INIT_FINI
+#define ACE_HAS_BROKEN_T_ERROR
+#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
+#define ACE_HAS_DIRENT
+#define ACE_HAS_EXCEPTIONS
+#define ACE_HAS_GETPAGESIZE
+#define ACE_HAS_GETRUSAGE
+#define ACE_HAS_GETRUSAGE_PROTOTYPE
+#define ACE_HAS_GPERF
+#define ACE_HAS_HANDLE_SET_OPTIMIZED_FOR_SELECT
+#define ACE_HAS_ICMP_SUPPORT 1
+#define ACE_HAS_IP_MULTICAST
+#define ACE_HAS_MEMCHR
+#define ACE_HAS_MKDIR
+#define ACE_HAS_MSG
+#define ACE_HAS_NEW_NOTHROW
+#define ACE_HAS_NEW_NO_H
+#define ACE_HAS_NONCONST_SELECT_TIMEVAL
+#define ACE_HAS_POLL
+#define ACE_HAS_POSITION_INDEPENDENT_POINTERS 1
+#define ACE_HAS_POSIX_GETPWNAM_R
+#define ACE_HAS_POSIX_NONBLOCK
+#define ACE_HAS_POSIX_TIME
+#define ACE_HAS_PTHREADS_STD
+#define ACE_HAS_PTHREADS_UNIX98_EXT
+#define ACE_HAS_PTHREAD_GETCONCURRENCY
+#define ACE_HAS_PTHREAD_SETCONCURRENCY
+#define ACE_HAS_PTHREAD_SIGMASK_PROTOTYPE
+#define ACE_HAS_P_READ_WRITE
+#define ACE_HAS_RECURSIVE_THR_EXIT_SEMANTICS
+#define ACE_HAS_REENTRANT_FUNCTIONS
+#define ACE_HAS_RTLD_LAZY_V
+#define ACE_HAS_SEMUN
+#define ACE_HAS_SIGINFO_T
+#define ACE_HAS_SIGSUSPEND
+#define ACE_HAS_SIGWAIT
+#define ACE_HAS_SIG_ATOMIC_T
+#define ACE_HAS_SIG_C_FUNC
+#define ACE_HAS_SOCKADDR_MSG_NAME
+#define ACE_HAS_SOCKLEN_T
+#define ACE_HAS_SSIZE_T
+#define ACE_HAS_STANDARD_CPP_LIBRARY 1
+#define ACE_HAS_STDCPP_STL_INCLUDES
+#define ACE_HAS_STREAMS
+#define ACE_HAS_STRING_CLASS
+#define ACE_HAS_STRSIGNAL
+#define ACE_HAS_SVR4_DYNAMIC_LINKING
+#define ACE_HAS_SVR4_GETTIMEOFDAY
+#define ACE_HAS_SVR4_SIGNAL_T
+#define ACE_HAS_SYSV_IPC
+#define ACE_HAS_SYS_SYSCALL_H
+#define ACE_HAS_TERMIOS
+#define ACE_HAS_UALARM
+#define ACE_HAS_UCONTEXT_T
+#define ACE_HAS_VOIDPTR_GETTIMEOFDAY
+#define ACE_HAS_NONSTATIC_OBJECT_MANAGER
+
+#define ACE_LACKS_GETPGID
+#define ACE_LACKS_ISCTYPE
+#define ACE_LACKS_LOG2
+#define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS
+#define ACE_LACKS_NET_IF_H
+#define ACE_LACKS_PRAGMA_ONCE
+#define ACE_LACKS_SETSCHED
+#define ACE_LACKS_STRRECVFD
+#define ACE_LACKS_SYS_SYSCTL_H
+#define ACE_LACKS_TIMESPEC_T
+#define ACE_LACKS_WCSTOK
+#define ACE_LACKS_WCSTOLL
+#define ACE_LACKS_WCSTOULL
+
+// These are probably not needed with gcc 4.x
+#define ACE_LACKS_UNSETENV
+#define ACE_LACKS_STRTOLL
+#define ACE_LACKS_STRTOULL
+#define ACE_LACKS_SETEGID
+#define ACE_LACKS_SETEUID
+
+
+#define ACE_PAGE_SIZE 4096
+#define ACE_SIZEOF_LONG_LONG 8
+#define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
+
+#if defined (ACE_HAS_THREADS)
+# define ACE_HAS_MUTEX_TIMEOUTS
+# define ACE_HAS_PTHREADS
+# define ACE_MT_SAFE 1
+#else
+# error "You need to enable threads for this Interix port."
+#endif /* ACE_HAS_THREADS */
+
+// Turns off the tracing feature.
+#if !defined (ACE_NTRACE)
+#define ACE_NTRACE 1
+#endif /* ACE_NTRACE */
+
+// NOTE: In debugging some of the test apps they would all memory fault in using
+// ACE_Errno_Guard. Upon inspection of that code it uses TSS to save ERRNO in
+// a TSS pointer. Access to that pointer caused the fault. The work around here
+// is to tell ACE we have TSS and use emulation. More investigation is needed to
+// determine whether Interix TSS is broken or the correct semantics for usage under
+// Interix simply need to be ported.
+// To get around the issue ACE_HAS_TSS_EMULATION is defined to use TSS emulation
+// however while many test programs that use TSS pass the TSS_Test program fails.
+#define ACE_HAS_THREAD_SPECIFIC_STORAGE // We need thread specific storage even though...
+#define ACE_HAS_TSS_EMULATION // It would appear to be broken in Interix!
+
+
+#include /**/ "ace/post.h"
+
+#endif /* ACE_CONFIG_WIN32_INTERIX_H */