summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdam Mitz <mitza@ociweb.com>2015-05-22 17:08:16 -0500
committerAdam Mitz <mitza@ociweb.com>2015-05-22 17:12:05 -0500
commit49279311637960ce259ab32e2fc03775fdb5c161 (patch)
tree336a30e5a1e23370a1d332b7b3f28757c4c458e5
parentec6da64f25c36c22f97e522a5a3b7c872ec42019 (diff)
downloadATCD-49279311637960ce259ab32e2fc03775fdb5c161.tar.gz
Configuration files for VxWorks 7.
Tested x86 RTP shared libs.
-rw-r--r--ACE/ace/config-vxworks.h6
-rw-r--r--ACE/ace/config-vxworks7.0.h19
-rw-r--r--ACE/ace/os_include/sys/os_types.h2
-rw-r--r--ACE/include/makeinclude/platform_vxworks.GNU4
-rw-r--r--ACE/include/makeinclude/platform_vxworks7.0.GNU115
5 files changed, 143 insertions, 3 deletions
diff --git a/ACE/ace/config-vxworks.h b/ACE/ace/config-vxworks.h
index 9d0ea65e25c..e9b35930a27 100644
--- a/ACE/ace/config-vxworks.h
+++ b/ACE/ace/config-vxworks.h
@@ -34,6 +34,8 @@
# elif (_WRS_VXWORKS_MINOR == 9)
# define ACE_VXWORKS 0x690
# endif
+# elif (_WRS_VXWORKS_MAJOR == 7)
+# define ACE_VXWORKS 0x700
# endif
# endif
#endif /* ! ACE_VXWORKS */
@@ -50,8 +52,10 @@
# include "ace/config-vxworks6.8.h"
#elif (ACE_VXWORKS == 0x690)
# include "ace/config-vxworks6.9.h"
+#elif (ACE_VXWORKS == 0x700)
+# include "ace/config-vxworks7.0.h"
#else
-#error Unknown or unsupported VxWorks version
+# error Unknown or unsupported VxWorks version
#endif
// Adapt to system argument changes added at VxWorks 6.9 and 64-bit.
diff --git a/ACE/ace/config-vxworks7.0.h b/ACE/ace/config-vxworks7.0.h
new file mode 100644
index 00000000000..11057aaff24
--- /dev/null
+++ b/ACE/ace/config-vxworks7.0.h
@@ -0,0 +1,19 @@
+/* -*- C++ -*- */
+// The following configuration file is designed to work for VxWorks
+// 7.0 platforms using one of these compilers:
+// 1) The GNU g++ compiler that is shipped with VxWorks 7.0
+// (other compilers not yet tested)
+
+#ifndef ACE_CONFIG_VXWORKS_7_0_H
+#define ACE_CONFIG_VXWORKS_7_0_H
+#include /**/ "ace/pre.h"
+
+#if !defined (ACE_VXWORKS)
+# define ACE_VXWORKS 0x700
+#endif /* ! ACE_VXWORKS */
+
+#include "ace/config-vxworks6.9.h"
+
+#include /**/ "ace/post.h"
+#endif /* ACE_CONFIG_VXWORKS_7_0_H */
+
diff --git a/ACE/ace/os_include/sys/os_types.h b/ACE/ace/os_include/sys/os_types.h
index bff05e48e94..60a425b9252 100644
--- a/ACE/ace/os_include/sys/os_types.h
+++ b/ACE/ace/os_include/sys/os_types.h
@@ -74,7 +74,7 @@ typedef double ACE_timer_t;
typedef offset_t ACE_LOFF_T;
#elif defined (WIN32)
typedef __int64 ACE_LOFF_T;
-#elif (defined (ACE_VXWORKS) && (ACE_VXWORKS <= 0x690)) || \
+#elif (defined (ACE_VXWORKS) && (ACE_VXWORKS <= 0x700)) || \
defined (ACE_LYNXOS_MAJOR) || \
(defined (ACE_OPENVMS) && !defined (_LARGEFILE)) || \
defined (__TANDEM)
diff --git a/ACE/include/makeinclude/platform_vxworks.GNU b/ACE/include/makeinclude/platform_vxworks.GNU
index 3be39480e02..9e09aa9aa3b 100644
--- a/ACE/include/makeinclude/platform_vxworks.GNU
+++ b/ACE/include/makeinclude/platform_vxworks.GNU
@@ -30,4 +30,6 @@ endif
ifeq (vxworks-6.9, $(findstring vxworks-6.9,$(WIND_PLATFORM)))
include $(ACE_ROOT)/include/makeinclude/platform_vxworks6.9.GNU
endif
-
+ifeq (vxworks-7.0, $(findstring vxworks-7.0,$(WIND_PLATFORM)))
+ include $(ACE_ROOT)/include/makeinclude/platform_vxworks7.0.GNU
+endif
diff --git a/ACE/include/makeinclude/platform_vxworks7.0.GNU b/ACE/include/makeinclude/platform_vxworks7.0.GNU
new file mode 100644
index 00000000000..6d231944b6f
--- /dev/null
+++ b/ACE/include/makeinclude/platform_vxworks7.0.GNU
@@ -0,0 +1,115 @@
+# -*- Makefile -*-
+# VxWorks 7.0
+
+# Building ACE for VxWorks 7.0
+#
+# Unlike earlier versions, VxWorks 7 requires a VSB before application code
+# can be compiled (either kernel mode or RTP). See the VxWorks documentation
+# for information on creating a VSB (VxWorks Source Build).
+#
+# Create the file ace/config.h containing #include "ace/config-vxworks.h"
+# Create the file include/makeinclude/platform_macro.GNU containing...
+# VSB_DIR = <<absolute path to the VSB directory for the target system>>
+# HOST_ROOT = <<location of host tools if using tao_idl, etc.>>
+# << add other build settings here (debug, optimize, inline, rtp) >>
+# include $(ACE_ROOT)/include/makeinclude/platform_vxworks.GNU
+#
+# Use the wrenv script for your host system to start a VxWorks development shell
+# and build ACE from that shell using the normal procedure (set ACE_ROOT,
+# generate makefiles if necessary, etc.).
+#
+# Not all configurations supported on VxWorks 6.x have been brought forward
+# to this file. If you are building a configuration that has not yet been
+# attempted on VxWorks 7, this file may need to be changed.
+
+VXWORKS = 1
+CROSS-COMPILE = 1
+
+debug ?= 1
+optimize ?= 1
+threads ?= 1
+rtp ?= 1
+pthread ?= $(if $(findstring 1,$(rtp)),1,0)
+xerces ?= 0
+aio ?= 0
+versioned_so ?= 0
+footprint ?= 0
+rwho = 0
+templates ?= automatic
+
+ifeq (,$(WIND_BASE))
+ default:
+ @ERROR: you must set your WIND_BASE environment variable
+endif # WIND_BASE
+
+ifeq (,$(WIND_HOST_TYPE))
+ default:
+ @ERROR: you must set your WIND_HOST_TYPE environment variable
+endif # WIND_HOST_TYPE
+
+ifeq ($(WIND_HOST_TYPE),x86-win32)
+ vxworks_ntbuild ?= 0
+ mingw32 ?= 1
+ lacks_touch ?= 0
+ PWD = $(subst \,/,$(shell pwd))
+ ACE_ROOT := $(subst \,/,$(ACE_ROOT))
+ TAO_ROOT := $(subst \,/,$(TAO_ROOT))
+ CIAO_ROOT := $(subst \,/,$(CIAO_ROOT))
+ HOST_ROOT := $(subst \,/,$(HOST_ROOT))
+ override RM = rm -f
+ HOST_EXE_EXT = .exe
+endif # x86-win32
+
+ifneq (,$(HOST_ROOT))
+ TAO_IDLFLAGS += -g $(HOST_ROOT)/bin/ace_gperf
+ TAO_IDL = $(HOST_ROOT)/bin/tao_idl$(HOST_EXE_EXT)
+ TAO_IDL3_TO_IDL2 = $(HOST_ROOT)/bin/tao_idl3_to_idl2$(HOST_EXE_EXT)
+ TAO_IDL_DEP = $(TAO_IDL)
+ TAO_IDL3_TO_IDL2_DEP = $(TAO_IDL3_TO_IDL2)
+else
+ # Append the HOST_EXE_EXT if it's not already there
+ TAO_IDL_DEP = $(TAO_IDL:$(HOST_EXE_EXT)=)$(HOST_EXE_EXT)
+ TAO_IDL3_TO_IDL2_DEP = $(TAO_IDL3_TO_IDL2:$(HOST_EXE_EXT)=)$(HOST_EXE_EXT)
+endif
+
+VXWORKS_VERSION_FLAG ?= -DACE_VXWORKS=0x700
+CPPFLAGS += $(VXWORKS_VERSION_FLAG)
+
+ifeq ($(pthread),1)
+ CPPFLAGS += -DACE_HAS_PTHREADS
+endif
+
+ace_vx_mk_dir = $(if $(findstring 1,$(rtp)),$(WIND_USR_MK),$(WIND_KRNL_MK))
+
+#ace_vx_tool_dir = $(WIND_BUILD_TOOL)/$(TOOL_VERSION)/$(notdir $(ace_vx_mk_dir))
+#include $(ace_vx_mk_dir)/defs.default.mk
+#include $(ace_vx_tool_dir)/defs.$(CPU).mk
+#include $(ace_vx_mk_dir)/defs.$(WIND_HOST_TYPE).mk
+
+include $(ace_vx_mk_dir)/defs.library.mk
+
+CCFLAGS += $(C++FLAGS)
+PIC += $(OPTION_SHARED_CODE)
+
+OCFLAGS += $(filter -O%,$(CFLAGS))
+OCCFLAGS += $(filter -O%,$(CCFLAGS))
+ifneq ($(OCFLAGS),)
+ CFLAGS := $(filter-out $(OCFLAGS),$(CFLAGS))
+endif
+ifneq ($(OCCFLAGS),)
+ CCFLAGS := $(filter-out $(OCCFLAGS),$(CCFLAGS))
+endif
+
+DCFLAGS += -g
+DCCFLAGS += -g
+
+LD = $(CPLUS)
+DLD = $(CPLUS)
+
+SO_NAME = $(SHLIB)
+SOFLAGS += $(C++_COMPILER) $(OPTION_SHARED_CODE) $(LD_SHARED_LIB) \
+ $(LD_OPTION_SONAME)
+
+LDFLAGS := $(filter-out -X -N,$(LDFLAGS))
+LDFLAGS += -L$(VSB_DIR)/usr/lib/common$(if $(filter library,$(PRJ_TYPE)),/PIC)
+LIBS += -lstdc++