Add support for vxWorks 6.8.

This commit is contained in:
Andrew Johnson
2010-07-29 12:39:54 -05:00
parent f29bdb9d6e
commit 0f431edbe6
4 changed files with 23 additions and 7 deletions

View File

@@ -92,6 +92,7 @@ VX_GNU_VERSION_6.4 = 3.4.4
VX_GNU_VERSION_6.5 = 3.4.4
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 = $(VX_GNU_VERSION_$(VXWORKS_VERSION))
VX_GNU_MAJOR_VERSION = $(basename $(basename $(VX_GNU_VERSION)))
@@ -123,13 +124,16 @@ GNU_DIR_6 = $(WIND_BASE)/gnu/$(VX_GNU_VERSION)-vxworks-$(VXWORKS_VERSION)/$(WIND
GNU_DIR = $(GNU_DIR_$(VXWORKS_MAJOR_VERSION))
#--------------------------------------------------
# Wind River moved nm out of GNU_DIR in some versions
# Wind River moved nm out of GNU_BIN in some versions
WORKBENCH_BIN = $(WIND_BASE)/workbench-$(WORKBENCH_VERSION)/$(WIND_HOST_TYPE)/bin
UTILITIES_BIN = $(WIND_BASE)/utilities-$(UTILITIES_VERSION)/$(WIND_HOST_TYPE)/bin
NM_DIR_6.4 = $(WORKBENCH_BIN)
NM_DIR_6.5 = $(WORKBENCH_BIN)
NM_DIR_6.6 = $(WORKBENCH_BIN)
NM_DIR_6.7 = $(GNU_BIN)
NM_DIR_6.8 = $(UTILITIES_BIN)
NM_DIR = $(firstword $(NM_DIR_$(VXWORKS_VERSION)) $(GNU_BIN))
NM = $(NM_DIR)/$(CMPLR_PREFIX)nm$(CMPLR_SUFFIX)$(HOSTEXE)
@@ -155,12 +159,10 @@ export TOOL_FAMILY = GNU
#--------------------------------------------------
# Operating system flags
BSD_DEFINE_VERSION_6.7 = -DBSD=44
OP_BSD_DEFINE = $(BSD_DEFINE_VERSION_$(VXWORKS_VERSION))
OP_SYS_CPPFLAGS += -DvxWorks $(OP_BSD_DEFINE)
OP_SYS_CFLAGS += -fno-builtin $(OP_BSD_DEFINE)
OP_SYS_CPPFLAGS += -DvxWorks
OP_SYS_CFLAGS += -fno-builtin
# Fix for vxWorks headers that use macros defined in vxWorks.h but
# Fix for vxWorks 5 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
OP_SYS_INCLUDE_CPPFLAGS_5 += -include $(VX_DIR)/target/h/vxWorks.h

View File

@@ -18,6 +18,8 @@ VXWORKS_VERSION = 5.5
#VXWORKS_VERSION = 6.4
#VXWORKS_VERSION = 6.5
#VXWORKS_VERSION = 6.6
#VXWORKS_VERSION = 6.7
#VXWORKS_VERSION = 6.8
# Sites may override the following path for a particular host
@@ -37,3 +39,9 @@ WIND_BASE = /usr/local/vw/tornado22-$(ARCH_CLASS)
#WORKBENCH_VERSION = 2.6
#WORKBENCH_VERSION = 3.0
#WORKBENCH_VERSION = 3.2
# Utilities Version number, required from vxWorks 6.8 and later
#UTILITIES_VERSION = 1.0

View File

@@ -15,6 +15,8 @@
#error this is a vxWorks specific source code
#endif
/* This is needed for vxWorks 6.8 to prevent an obnoxious compiler warning */
#define _VSB_CONFIG_FILE <../lib/h/config/vsbConfig.h>
#include <hostLib.h>
#include <inetLib.h>

View File

@@ -26,6 +26,8 @@ extern "C" {
#include <sockLib.h>
#include <ioLib.h>
#include <sys/ioctl.h>
/* This is needed for vxWorks 6.8 to prevent an obnoxious compiler warning */
#define _VSB_CONFIG_FILE <../lib/h/config/vsbConfig.h>
#include <netinet/in.h>
#include <netinet/tcp.h>
#include <arpa/inet.h>
@@ -89,7 +91,9 @@ typedef int osiSocklen_t;
# define INADDR_NONE (0xffffffff)
#endif
#if ( defined (BSD) && ( BSD >= 44 ) )
#if defined(_SIZEOF_ADDR_IFREQ)
# define ifreq_size(pifreq) _SIZEOF_ADDR_IFREQ(*pifreq)
#elif ( defined (BSD) && ( BSD >= 44 ) )
# define ifreq_size(pifreq) (pifreq->ifr_addr.sa_len + sizeof(pifreq->ifr_name))
#else
# define ifreq_size(pifreq) sizeof(*pifreq)