diff --git a/configure/os/CONFIG.Common.vxWorksCommon b/configure/os/CONFIG.Common.vxWorksCommon index 56c533400..b5cea700c 100644 --- a/configure/os/CONFIG.Common.vxWorksCommon +++ b/configure/os/CONFIG.Common.vxWorksCommon @@ -1,10 +1,9 @@ # CONFIG.Common.vxWorksCommon # # $Revision-Id$ -# This file is maintained by the build community. # # Definitions for vxWorks target archs -# Sites may override these definitions in CONFIG_SITE.Common.vxWorksCommon +# Override these definitions in CONFIG_SITE.Common.vxWorksCommon # or CONFIG_SITE..vxWorksCommon #------------------------------------------------------- @@ -66,8 +65,6 @@ VXWORKS_MAJOR_VERSION = $(basename $(basename $(VXWORKS_VERSION))) # These are needed for vxWorks 6.x; the GNU toolset version number # is in the path to the compiler tools: -VX_GNU_VERSION_5.4 = 2.95 -VX_GNU_VERSION_5.5 = 2.96 VX_GNU_VERSION_6.0 = 3.3.2 VX_GNU_VERSION_6.1 = 3.3.2 VX_GNU_VERSION_6.2 = 3.3.2 @@ -83,30 +80,21 @@ VX_GNU_VERSION = $(VX_GNU_VERSION_$(VXWORKS_VERSION)) VX_GNU_MAJOR_VERSION = $(basename $(basename $(VX_GNU_VERSION))) #-------------------------------------------------- -# Fix WIND_BASE for vxWorks 6.x on linux -# NB: We know the value of WIND_HOST_TYPE here, but not VXWORKS_VERSION +# Fix old Linux WIND_HOST_TYPE ifeq ($(WIND_HOST_TYPE),x86-linux) - WIND_HOST_TYPE_5 = x86-linux - WIND_HOST_TYPE_6 = x86-linux2 - WIND_HOST_TYPE = $(WIND_HOST_TYPE_$(VXWORKS_MAJOR_VERSION)) + WIND_HOST_TYPE = x86-linux2 endif #-------------------------------------------------- # vxWorks directory definitions -VX_DIR_5 = $(WIND_BASE) -VX_DIR_6 = $(WIND_BASE)/vxworks-$(VXWORKS_VERSION) -VX_DIR = $(VX_DIR_$(VXWORKS_MAJOR_VERSION)) +VX_DIR = $(WIND_BASE)/vxworks-$(VXWORKS_VERSION) -VX_INCLUDE_DIRS_5 = $(VX_DIR)/target/h -VX_INCLUDE_DIRS_6 = $(VX_DIR)/target/h $(VX_DIR)/target/h/wrn/coreip -GNU_TARGET_INCLUDE_DIR = $(VX_INCLUDE_DIRS_$(VXWORKS_MAJOR_VERSION)) +GNU_TARGET_INCLUDE_DIR = $(VX_DIR)/target/h $(VX_DIR)/target/h/wrn/coreip #-------------------------------------------------- # vxWorks GNU directories -GNU_DIR_5 = $(WIND_BASE)/host/$(WIND_HOST_TYPE) -GNU_DIR_6 = $(WIND_BASE)/gnu/$(VX_GNU_VERSION)-vxworks-$(VXWORKS_VERSION)/$(WIND_HOST_TYPE) -GNU_DIR = $(GNU_DIR_$(VXWORKS_MAJOR_VERSION)) +GNU_DIR = $(WIND_BASE)/gnu/$(VX_GNU_VERSION)-vxworks-$(VXWORKS_VERSION)/$(WIND_HOST_TYPE) #-------------------------------------------------- # Wind River moved nm out of GNU_BIN in some versions @@ -126,9 +114,7 @@ NM = $(NM_DIR)/$(CMPLR_PREFIX)nm$(CMPLR_SUFFIX)$(HOSTEXE) #-------------------------------------------------- # A linker script is essential for munching from vxWorks 6.6 onwards -# (i.e. with versions that use gcc 4.1.2 or later). It can be used -# with any vxWorks 5 or 6 version, but apparently should not be used -# when compiling for 68K (which isn't supported in vxWorks 6 anyway) +# (i.e. with versions that use gcc 4.1.2 or later). MUNCH_LDFLAGS_6 = -T $(VX_DIR)/target/h/tool/gnu/ldscripts/link.OUT MUNCH_LDFLAGS = $(MUNCH_LDFLAGS_$(VXWORKS_MAJOR_VERSION)) @@ -143,11 +129,10 @@ export TOOL_FAMILY = GNU OP_SYS_CPPFLAGS += -DvxWorks=vxWorks OP_SYS_CFLAGS += -fno-builtin -# Fix for vxWorks 5 headers that use macros defined in vxWorks.h but +# Fix for vxWorks headers that use macros defined in vxWorks.h but # which don't actually include vxWorks.h themselves, for example the # target/h/sys/stat.h file which uses ULONG. This also stops dbDefs.h -# from defining the OFFSET macro, which generates lots of warnings in -# both vxWorks 5 and 6. +# from defining the OFFSET macro, which generates lots of warnings. OP_SYS_INCLUDE_CPPFLAGS += -include $(VX_DIR)/target/h/vxWorks.h #-------------------------------------------------- @@ -160,7 +145,6 @@ OPT_CXXFLAGS_YES = -O2 CODE_CFLAGS = # # For vxWorks versions before 6.3 we need this g++ compiler flag -CODE_CXXFLAGS_5 = -fno-implicit-templates CODE_CXXFLAGS_6.0 = -fno-implicit-templates CODE_CXXFLAGS_6.1 = -fno-implicit-templates CODE_CXXFLAGS_6.2 = -fno-implicit-templates diff --git a/configure/os/CONFIG.linux-386.Common b/configure/os/CONFIG.linux-386.Common index 23c1d9403..e37483163 100644 --- a/configure/os/CONFIG.linux-386.Common +++ b/configure/os/CONFIG.linux-386.Common @@ -10,4 +10,4 @@ #Include definitions common to unix hosts include $(CONFIG)/os/CONFIG.UnixCommon.Common -WIND_HOST_TYPE = x86-linux +WIND_HOST_TYPE = x86-linux2 diff --git a/configure/os/CONFIG.linux-486.Common b/configure/os/CONFIG.linux-486.Common index 74563656a..f2aa5bd0f 100644 --- a/configure/os/CONFIG.linux-486.Common +++ b/configure/os/CONFIG.linux-486.Common @@ -10,4 +10,4 @@ #Include definitions common to unix hosts include $(CONFIG)/os/CONFIG.UnixCommon.Common -WIND_HOST_TYPE = x86-linux +WIND_HOST_TYPE = x86-linux2 diff --git a/configure/os/CONFIG.linux-586.Common b/configure/os/CONFIG.linux-586.Common index 2f1e82527..3c0e5e1a6 100644 --- a/configure/os/CONFIG.linux-586.Common +++ b/configure/os/CONFIG.linux-586.Common @@ -10,4 +10,4 @@ #Include definitions common to unix hosts include $(CONFIG)/os/CONFIG.UnixCommon.Common -WIND_HOST_TYPE = x86-linux +WIND_HOST_TYPE = x86-linux2 diff --git a/configure/os/CONFIG.linux-686.Common b/configure/os/CONFIG.linux-686.Common index 22da7d0b0..b17268457 100644 --- a/configure/os/CONFIG.linux-686.Common +++ b/configure/os/CONFIG.linux-686.Common @@ -10,4 +10,4 @@ #Include definitions common to unix hosts include $(CONFIG)/os/CONFIG.UnixCommon.Common -WIND_HOST_TYPE = x86-linux +WIND_HOST_TYPE = x86-linux2 diff --git a/configure/os/CONFIG.linux-x86.Common b/configure/os/CONFIG.linux-x86.Common index f6d94061f..16aa54986 100644 --- a/configure/os/CONFIG.linux-x86.Common +++ b/configure/os/CONFIG.linux-x86.Common @@ -10,4 +10,4 @@ #Include definitions common to unix hosts include $(CONFIG)/os/CONFIG.UnixCommon.Common -WIND_HOST_TYPE = x86-linux +WIND_HOST_TYPE = x86-linux2 diff --git a/configure/os/CONFIG.linux-x86_64.Common b/configure/os/CONFIG.linux-x86_64.Common index 23c105c46..6973d95bb 100644 --- a/configure/os/CONFIG.linux-x86_64.Common +++ b/configure/os/CONFIG.linux-x86_64.Common @@ -10,4 +10,4 @@ #Include definitions common to unix hosts include $(CONFIG)/os/CONFIG.UnixCommon.Common -WIND_HOST_TYPE = x86-linux +WIND_HOST_TYPE = x86-linux2 diff --git a/configure/os/CONFIG_SITE.Common.vxWorksCommon b/configure/os/CONFIG_SITE.Common.vxWorksCommon index 993694350..2259f9689 100644 --- a/configure/os/CONFIG_SITE.Common.vxWorksCommon +++ b/configure/os/CONFIG_SITE.Common.vxWorksCommon @@ -1,25 +1,17 @@ # CONFIG_SITE.Common.vxWorksCommon # # Site specific definitions for vxWorks target builds. -# Only the local epics system manager should modify this file # Compiler options can vary with the vxWorks version number, so we -# need to know that. However don't include any third-level digits -# (e.g. the .2 in 5.5.2) because we don't need them. +# need to know that. Do not include any third-level digits. -# Note: vxWorks 5.4.x (Tornado 2.0.x) is not supported +# Note: vxWorks 5.4.x and 5.5.x (Tornado 2.x) are not supported. +# VxWorks 6.0 through 6.5 use older, untested versions of GCC. -VXWORKS_VERSION = 5.5 -#VXWORKS_VERSION = 6.0 -#VXWORKS_VERSION = 6.1 -#VXWORKS_VERSION = 6.2 -#VXWORKS_VERSION = 6.3 -#VXWORKS_VERSION = 6.4 -#VXWORKS_VERSION = 6.5 #VXWORKS_VERSION = 6.6 #VXWORKS_VERSION = 6.7 #VXWORKS_VERSION = 6.8 -#VXWORKS_VERSION = 6.9 +VXWORKS_VERSION = 6.9 # Sites may override the following path for a particular host @@ -27,10 +19,8 @@ VXWORKS_VERSION = 5.5 # CONFIG_SITE.$(EPICS_HOST_ARCH).vxWorksCommon file. # WIND_BASE is where you installed the Wind River software. -# Under vxWorks 6.x this is *not* the same as the old VX_DIR setting -WIND_BASE = /usr/local/vw/tornado22-$(ARCH_CLASS) -#WIND_BASE = /usr/local/vw/vxWorks-$(VXWORKS_VERSION) +WIND_BASE = /usr/local/vw/vxWorks-$(VXWORKS_VERSION) #WIND_BASE = /ade/vxWorks/$(VXWORKS_VERSION) @@ -39,9 +29,9 @@ WIND_BASE = /usr/local/vw/tornado22-$(ARCH_CLASS) #WORKBENCH_VERSION = 2.6 #WORKBENCH_VERSION = 3.0 #WORKBENCH_VERSION = 3.2 -#WORKBENCH_VERSION = 3.3 +WORKBENCH_VERSION = 3.3 # Utilities Version number, required from vxWorks 6.8 and later -#UTILITIES_VERSION = 1.0 +UTILITIES_VERSION = 1.0 diff --git a/documentation/README.1st b/documentation/README.1st index db5fcf867..b74f6ae92 100644 --- a/documentation/README.1st +++ b/documentation/README.1st @@ -85,17 +85,17 @@ as processes on the host platform. vxWorks - You must have vxWorks 5.5.x or 6.x installed if any of your target - systems are vxWorks systems; the C++ compiler for vxWorks 5.4 is now too - old to support. The vxWorks installation provides the cross-compiler and - header files needed to build for these targets. The absolute path to and - the version number of the vxWorks installation must be set in the + You must have vxWorks 6 installed if any of your target systems are + vxWorks systems; the C++ compilers for vxWorks 5.x are now too old to + support. The vxWorks installation provides the cross-compiler and header + files needed to build for these targets. The absolute path to and the + version number of the vxWorks installation must be set in the base/configure/os/CONFIG_SITE.Common.vxWorksCommon file or in one of its target-specific overrides. - Consult the vxWorks 5.x or vxWorks 6.x EPICS web pages about and the - vxWorks documentation for information about configuring your vxWorks - operating system for use with EPICS. + Consult the vxWorks 6.x EPICS web pages and the vxWorks documentation + for information about configuring your vxWorks operating system for use + with EPICS. RTEMS For RTEMS targets, you need RTEMS core and toolset version 4.9.2 or diff --git a/documentation/README.html b/documentation/README.html index 08cadff9b..f717c3d47 100644 --- a/documentation/README.html +++ b/documentation/README.html @@ -90,17 +90,16 @@ as processes on the host platform.

vxWorks
- You must have vxWorks 5.5.x or 6.x installed if any of your target systems are - vxWorks systems; the C++ compiler for vxWorks 5.4 is now too old to support. - The vxWorks installation provides the cross-compiler and header files needed to + You must have vxWorks 6 installed if any of your target systems are vxWorks + systems; the C++ compilers for vxWorks 5.x are now too old to support. The + vxWorks installation provides the cross-compiler and header files needed to build for these targets. The absolute path to and the version number of the vxWorks installation must be set in the base/configure/os/CONFIG_SITE.Common.vxWorksCommon file or in one of its target-specific overrides.

-

Consult the vxWorks - 5.x or vxWorks - 6.x EPICS web pages about and the vxWorks documentation for information +

Consult the vxWorks + 6.x EPICS web pages and the vxWorks documentation for information about configuring your vxWorks operating system for use with EPICS.

RTEMS
diff --git a/src/libCom/osi/os/vxWorks/osdStdio.c b/src/libCom/osi/os/vxWorks/osdStdio.c index ed15221d9..20664a1a4 100644 --- a/src/libCom/osi/os/vxWorks/osdStdio.c +++ b/src/libCom/osi/os/vxWorks/osdStdio.c @@ -9,6 +9,7 @@ \*************************************************************************/ #include +#include #include #include "epicsStdio.h" #include "dbDefs.h" diff --git a/src/libCom/osi/os/vxWorks/osdWireConfig.h b/src/libCom/osi/os/vxWorks/osdWireConfig.h index b1aa6e232..408ec6758 100644 --- a/src/libCom/osi/os/vxWorks/osdWireConfig.h +++ b/src/libCom/osi/os/vxWorks/osdWireConfig.h @@ -9,6 +9,7 @@ #ifndef osdWireConfig_h #define osdWireConfig_h +#include #include #if _BYTE_ORDER == _LITTLE_ENDIAN