diff --git a/configure/os/CONFIG.Common.vxWorksCommon b/configure/os/CONFIG.Common.vxWorksCommon index 50f626959..2a1365697 100644 --- a/configure/os/CONFIG.Common.vxWorksCommon +++ b/configure/os/CONFIG.Common.vxWorksCommon @@ -63,6 +63,7 @@ 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 = 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 @@ -73,9 +74,17 @@ VX_GNU_VERSION_6.6 = 4.1.2 VX_GNU_VERSION_6.7 = 4.1.2 VX_GNU_VERSION_6.8 = 4.1.2 VX_GNU_VERSION_6.9 = 4.3.3 -VX_GNU_VERSION = $(VX_GNU_VERSION_$(VXWORKS_VERSION)) +VX_GNU_VERSION_6 = $(VX_GNU_VERSION_$(VXWORKS_VERSION)) +VX_GNU_VERSION = $(VX_GNU_VERSION_$(VXWORKS_MAJOR_VERSION)) VX_GNU_MAJOR_VERSION = $(basename $(basename $(VX_GNU_VERSION))) +VX_GNU_MINOR_VERSION = $(basename $(patsubst $(VX_GNU_MAJOR_VERSION).%,%,$(VX_GNU_VERSION))) + +# gcc version before 3.4 are "old" and need special treatment +VX_OLD_GCC_2 = OLD +VX_OLD_GCC_3.3 = OLD +VX_OLD_GCC_3 = $(VX_OLD_GCC_3.$(VX_GNU_MINOR_VERSION)) +VX_OLD_GCC = $(VX_OLD_GCC_$(VX_GNU_MAJOR_VERSION)) #-------------------------------------------------- # Fix old Linux WIND_HOST_TYPE @@ -85,14 +94,20 @@ endif #-------------------------------------------------- # vxWorks directory definitions -VX_DIR = $(WIND_BASE)/vxworks-$(VXWORKS_VERSION) +VX_DIR_5 = $(WIND_BASE) +VX_DIR_6 = $(WIND_BASE)/vxworks-$(VXWORKS_VERSION) +VX_DIR = $(VX_DIR_$(VXWORKS_MAJOR_VERSION)) -GNU_TARGET_INCLUDE_DIR = $(VX_DIR)/target/h $(VX_DIR)/target/h/wrn/coreip +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)) #-------------------------------------------------- # vxWorks GNU directories -GNU_DIR = $(WIND_BASE)/gnu/$(VX_GNU_VERSION)-vxworks-$(VXWORKS_VERSION)/$(WIND_HOST_TYPE) +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)) #-------------------------------------------------- # This finds nm on any supported VxWorks version @@ -133,12 +148,18 @@ OPT_CXXFLAGS_YES = -O2 # code flags CODE_CFLAGS = # -# For vxWorks versions before 6.3 we need this g++ compiler flag -CODE_CXXFLAGS_6.0 = -fno-implicit-templates -CODE_CXXFLAGS_6.1 = -fno-implicit-templates -CODE_CXXFLAGS_6.2 = -fno-implicit-templates -CODE_CXXFLAGS_6 = $(CODE_CXXFLAGS_$(VXWORKS_VERSION)) -CODE_CXXFLAGS = $(CODE_CXXFLAGS_$(VXWORKS_MAJOR_VERSION)) +# For gcc versions before 3.4 we need this g++ compiler flag +CODE_CXXFLAGS_OLD = -fno-implicit-templates +CODE_CXXFLAGS = $(CODE_CXXFLAGS_$(VX_OLD_GCC)) + +#-------------------------------------------------- +# Modules we cannot build with old compiler + +PV_MODULES = pv% normativeTypes +SKIP_BUILDS_5 = $(PV_MODULES) +SKIP_BUILDS_OLD = $(PV_MODULES) +SKIP_BUILDS_6 = $(SKIP_BUILDS_$(VX_OLD_GCC)) +SKIP_BUILDS = $(SKIP_BUILDS_$(VXWORKS_MAJOR_VERSION)) #-------------------------------------------------- # no shared libs for vxWorks diff --git a/documentation/RELEASE_NOTES.html b/documentation/RELEASE_NOTES.html index 6e1a3f3a4..7ec1fa64e 100644 --- a/documentation/RELEASE_NOTES.html +++ b/documentation/RELEASE_NOTES.html @@ -18,13 +18,14 @@ --> -

Skipping build of modules

+

Skipping build of modules and re-enabling vxWorks 5

Any module can be skipped during the build for a given architecture by setting -the variable SKIP_BUILDS to a list of patterns matching the +the Makfile variable SKIP_BUILDS to a list of patterns matching the module directories to skip. For example to skip building any pvAccess related modules set SKIP_BUILDS=pv% normativeTypes in the CONFIG.Common.<arch> file for that architecture. +The builds for vxWorks 5 and up to 6.2 do that.

Git Branches Recombined