summaryrefslogtreecommitdiff
path: root/ace/config-hpux-10.x-decthreads.h
blob: 387e319044819004ac2808562b62dd24d3857825 (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
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
/* -*- C++ -*- */
// $Id$

// The following configuration file is designed to work for HP
// platforms running HP/UX 10.x with DCE threads.  Contributed by
// Shankar Krishnamoorthy <kshankar@lucent.com>.
//
// 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.

#if !defined (ACE_CONFIG_H)
#define ACE_CONFIG_H

// Compiling for HPUX.
#if !defined (HPUX)
#define HPUX
#endif /* HPUX */

// The HP/UX compiler doesn't support volatile!!!!
#define volatile

#define ACE_HAS_BROKEN_ENUMS

#define _HPUX_SOURCE
#include /**/ <sys/stdsyms.h>
#include /**/ <sched.h>                              /*  pthread.h doesn't include this */

// Compiler's template mechanism must see source code (i.e., .C files).
#define ACE_TEMPLATES_REQUIRE_SOURCE
#define ACE_TEMPLATES_REQUIRE_SPECIALIZATION

#define ACE_HAS_BROKEN_CONVERSIONS

// They forgot a const in the prototype of const_timewait...
#define ACE_LACKS_CONST_TIMESPEC_PTR

#define ACE_LACKS_SYSCALL
#define ACE_HAS_POSIX_TIME
#define ACE_HAS_IP_MULTICAST
#define ACE_HAS_CLOCK_GETTIME

// 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

// If you don't want to use threads make sure to comment out the
// folowing block of #defines 
#define ACE_HAS_THREADS
// #define ACE_HAS_PTHREADS
#define ACE_HAS_DCETHREADS /* added by shankar */
#define ACE_HAS_PTHREAD_T /* added by shankar */
#define ACE_SELECT_USES_INT /* added by shankar */
#define ACE_HAS_TID_T /* added by shankar */
#define ACE_LACKS_SETSCHED /* added by shankar */
#define ACE_LACKS_RWLOCK_T
#if !defined (ACE_MT_SAFE)
	#define ACE_MT_SAFE 1
#endif
#define ACE_HAS_SIGINFO_T
#define ACE_LACKS_PTHREAD_THR_SIGSETMASK
#define ACE_HAS_SETKIND_NP
#define ACE_LACKS_CONDATTR_PSHARED
#define ACE_LACKS_SI_ADDR
#define ACE_LACKS_SETDETACH                     /*  new */
#define ACE_LACKS_KEYDELETE                     /*  new */
#define ACE_LACKS_THREAD_PROCESS_SCOPING
#define ACE_LACKS_THREAD_STACK_ADDR
#define ACE_HAS_THREAD_SPECIFIC_STORAGE
#define ACE_HAS_STREAMS

// Compiler/platform supports struct strbuf.
#define ACE_HAS_STRBUF_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

#define ACE_HAS_SIGINFO_T
#define ACE_HAS_UCONTEXT_T

// Platform uses int for select() rather than fd_set.
// #define ACE_SELECT_USES_INT

// Platform has the XLI version of ACE_TLI.
// #define ACE_HAS_XLI

// 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 */

#endif /* ACE_CONFIG_H */