summaryrefslogtreecommitdiff
path: root/ACE/ace/config-vxworks.h
diff options
context:
space:
mode:
Diffstat (limited to 'ACE/ace/config-vxworks.h')
-rw-r--r--ACE/ace/config-vxworks.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/ACE/ace/config-vxworks.h b/ACE/ace/config-vxworks.h
index ee4e2286c76..9d0ea65e25c 100644
--- a/ACE/ace/config-vxworks.h
+++ b/ACE/ace/config-vxworks.h
@@ -54,6 +54,25 @@
#error Unknown or unsupported VxWorks version
#endif
+// Adapt to system argument changes added at VxWorks 6.9 and 64-bit.
+// It would be nicer to typedef the data types, but without including the
+// applicable VxWorks headers here, that doesn't work.
+#if (ACE_VXWORKS < 0x690)
+# define ACE_VX_USR_ARG_T int
+# define ACE_VX_TASK_ID int
+# define ACE_VX_ARG_FORMAT "%x"
+# define ACE_VX_TASK_ID_ERROR ERROR
+#else
+# define ACE_VX_USR_ARG_T _Vx_usr_arg_t
+# define ACE_VX_TASK_ID TASK_ID
+# ifdef _WRS_CONFIG_LP64
+# define ACE_VX_ARG_FORMAT "%lx"
+# else
+# define ACE_VX_ARG_FORMAT "%x"
+# endif
+# define ACE_VX_TASK_ID_ERROR TASK_ID_ERROR
+#endif
+
#include /**/ "ace/post.h"
#endif /* ACE_CONFIG_VXWORKS_H */