2 // The following configuration file is designed to work for VxWorks
3 // Based on ACE_VXWORKS it will select the correct config file
5 #ifndef ACE_CONFIG_VXWORKS_H
6 #define ACE_CONFIG_VXWORKS_H
7 #include /**/ "ace/pre.h"
9 #if !defined(ACE_VXWORKS_RELEASE)
10 # define ACE_VXWORKS_RELEASE ACE_VXWORKS
13 // If ACE_VXWORKS is not defined try to figure out the VxWorks version
14 #if !defined (ACE_VXWORKS)
16 # if !defined (_WRS_VXWORKS_MAJOR) && !defined (_WRS_VXWORKS_MINOR)
17 # error You must define ACE_VXWORKS
19 # if (_WRS_VXWORKS_MAJOR == 6)
20 # if (_WRS_VXWORKS_MINOR == 0)
21 # define ACE_VXWORKS 0x600
22 # elif (_WRS_VXWORKS_MINOR == 1)
23 # define ACE_VXWORKS 0x610
24 # elif (_WRS_VXWORKS_MINOR == 2)
25 # define ACE_VXWORKS 0x620
26 # elif (_WRS_VXWORKS_MINOR == 3)
27 # define ACE_VXWORKS 0x630
28 # elif (_WRS_VXWORKS_MINOR == 4)
29 # define ACE_VXWORKS 0x640
30 # elif (_WRS_VXWORKS_MINOR == 5)
31 # define ACE_VXWORKS 0x650
32 # elif (_WRS_VXWORKS_MINOR == 6)
33 # define ACE_VXWORKS 0x660
34 # elif (_WRS_VXWORKS_MINOR == 7)
35 # define ACE_VXWORKS 0x670
36 # elif (_WRS_VXWORKS_MINOR == 8)
37 # define ACE_VXWORKS 0x680
38 # elif (_WRS_VXWORKS_MINOR == 9)
39 # define ACE_VXWORKS 0x690
41 # elif (_WRS_VXWORKS_MAJOR == 7)
42 # define ACE_VXWORKS 0x700
45 #endif /* ! ACE_VXWORKS */
47 #if (ACE_VXWORKS == 0x640)
48 # include "ace/config-vxworks6.4.h"
49 #elif (ACE_VXWORKS == 0x650)
50 # include "ace/config-vxworks6.5.h"
51 #elif (ACE_VXWORKS == 0x660)
52 # include "ace/config-vxworks6.6.h"
53 #elif (ACE_VXWORKS == 0x670)
54 # include "ace/config-vxworks6.7.h"
55 #elif (ACE_VXWORKS == 0x680)
56 # include "ace/config-vxworks6.8.h"
57 #elif (ACE_VXWORKS == 0x690)
58 # include "ace/config-vxworks6.9.h"
59 #elif (ACE_VXWORKS == 0x700)
60 # if (ACE_VXWORKS_RELEASE == 0x2103)
61 # include "ace/config-vxworks21.03.h"
62 # elif (ACE_VXWORKS_RELEASE >= 0x2203)
63 # include "ace/config-vxworks22.03.h"
65 # include "ace/config-vxworks7.0.h"
68 # error Unknown or unsupported VxWorks version
71 // Adapt to system argument changes added at VxWorks 6.9 and 64-bit.
72 // It would be nicer to typedef the data types, but without including the
73 // applicable VxWorks headers here, that doesn't work.
74 #if (ACE_VXWORKS < 0x690)
75 # define ACE_VX_USR_ARG_T int
76 # define ACE_VX_TASK_ID int
77 # define ACE_VX_ARG_FORMAT "%x"
78 # define ACE_VX_TASK_ID_ERROR ERROR
80 # define ACE_VX_USR_ARG_T _Vx_usr_arg_t
81 # define ACE_VX_TASK_ID TASK_ID
82 # ifdef _WRS_CONFIG_LP64
83 # define ACE_VX_ARG_FORMAT "%lx"
85 # define ACE_VX_ARG_FORMAT "%x"
87 # define ACE_VX_TASK_ID_ERROR TASK_ID_ERROR
90 #include /**/ "ace/post.h"
91 #endif /* ACE_CONFIG_VXWORKS_H */