blob: 19cb586aa8fe675d1916c77edaaa153f5022edca (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
|
// -*- C++ -*-
// $Id$
// 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 <arpa/inet.h>
# define ACE_LACKS_SENDMSG
# define ACE_LACKS_RECVMSG
# define ACE_LACKS_STDINT_H
# define ACE_LACKS_INTTYPES_H
# define ACE_LACKS_PRAGMA_ONCE
# define ACE_LACKS_RWLOCK_T
# define ACE_LACKS_GETPGID // Don't have getpgid(), have setpgid() though...
# define ACE_LACKS_UCONTEXT_H
# define ACE_HAS_REENTRANT_FUNCTIONS
# define ACE_LACKS_NETDB_REENTRANT_FUNCTIONS // Don't have gethostbyaddr_r and friends.
# define ACE_HAS_DIRENT
# define ACE_HAS_STDCPP_STL_INCLUDES
# define ACE_HAS_STANDARD_CPP_LIBRARY 1
# define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1
# define ACE_HAS_NONCONST_SELECT_TIMEVAL
# define ACE_HAS_SIGWAIT
# define ACE_HAS_SIGINFO_T
#include "ace/config-g++-common.h"
#define ACE_HAS_NEW_NOTHROW // Need to know 'new's failure semantics.
#if defined (ACE_HAS_THREADS)
#define ACE_HAS_THREADS
#define ACE_HAS_PTHREADS
#define _THREAD_SAFE
#define ACE_MTSAFE 1
#define ACE_MT_SAFE 1
#define ACE_LACKS_PTHREAD_YIELD
#define ACE_HAS_MUTEX_TIMEOUTS
#else
error "You need to enable threads for this Interix port."
#endif /* ACE_HAS_THREADS */
// INTERIX has the following, just an issue with porting for the moment
#define ACE_LACKS_ACCESS
// END INTERIX has the following....
#define ACE_SIZEOF_LONG_DOUBLE 12
#define ACE_PAGE_SIZE 4096
#define ACE_HAS_SYSV_IPC
#define ACE_HAS_SVR4_SIGNAL_T
#define ACE_HAS_CONSISTENT_SIGNAL_PROTOTYPES
#define ACE_HAS_SVR4_DYNAMIC_LINKING
#define ACE_HAS_POSIX_TIME // Supports POSIX timers via struct timespec.
#define ACE_LACKS_TIMESPEC_T // Defines struct timespec but not timespec_t.
#define ACE_LACKS_STRRECVFD
#define ACE_LACKS_SETSCHED
#define ACE_HAS_SOCKADDR_IN_SIN_LEN
#define ACE_HAS_RTLD_LAZY_V
#define ACE_HAS_POSIX_NONBLOCK
#define ACE_HAS_GETRUSAGE
#define ACE_HAS_SIG_ATOMIC_T
#define ACE_HAS_SEMUN
#define ACE_HAS_SSIZE_T
#define ACE_HAS_STRERROR
#define ACE_HAS_SVR4_GETTIMEOFDAY
#define ACE_HAS_UALARM
#define ACE_HAS_TERMIOS
#define ACE_HAS_SIGWAIT
// 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 */
/*
The following tests do not run.
Dynamic_Priority_Test.log ACE_HAS_TIMED_MESSAGE_BLOCKS
Enum_Interfaces_Test.log
IOStream_Test.log ACE_IOSTREAM not supported on this platform
*/
|