Incorporated vxWorks 6 settings from SNS.

Added the vxWorks-mpc8540 architecture.
Added the ppc604_altivec sub-architecture.
Some cleanup.
This commit is contained in:
Andrew Johnson
2006-12-09 00:01:57 +00:00
parent fc98fe2335
commit 682bb4150c
17 changed files with 130 additions and 109 deletions

View File

@@ -0,0 +1,21 @@
# $Id
#
# Definitions for vxWorks-mpc8540 targets: MPC8540 CPU with >32MB RAM.
# Site-specific overrides go in CONFIG_SITE.Common.vxWorks-mpc8540
#
# This file is maintained by the EPICS build community.
#-------------------------------------------------------
# Include definitions common to all vxWorks target archs
include $(CONFIG)/os/CONFIG.Common.vxWorksCommon
# Vx GNU cross compiler suffix
CMPLR_SUFFIX = ppc
ARCH_CLASS = ppc
# Architecture specific build flags
ARCH_DEP_CPPFLAGS = -DCPU=PPC32
ARCH_DEP_CFLAGS = -mcpu=8540 -msoft-float -mstrict-align -mlongcall
GNU_TARGET = powerpc-wrs-vxworks

View File

@@ -1,10 +1,9 @@
# CONFIG.Common.vxWorks-ppc603
#
# $Id$
# This file is maintained by the build community.
#
# Definitions for vxWorks-ppc603 target archs
# Sites may override these definitions in CONFIG_SITE.Common.vxWorks-ppc603
# Definitions for vxWorks-ppc603 targets: PPC603 and PMC8240 CPUs
# Site-specific overrides go in CONFIG_SITE.Common.vxWorks-ppc603
#
# This file is maintained by the EPICS build community.
#-------------------------------------------------------
# Include definitions common to all vxWorks target archs

View File

@@ -1,22 +1,13 @@
# CONFIG.Common.vxWorks-ppc603_long
#
# $Id$
# This file is maintained by the build community.
#
# Definitions for vxWorks-ppc603 target archs with at least 32MB
# Sites may override these definitions in CONFIG_SITE.Common.vxWorks-ppc603_long
# Definitions for vxWorks-ppc603 targets with >32MB of RAM
# Site-specific overrides go in CONFIG_SITE.Common.vxWorks-ppc603_long
#
# This file is maintained by the EPICS build community.
#-------------------------------------------------------
# Include definitions common to all vxWorks target archs
include $(CONFIG)/os/CONFIG.Common.vxWorksCommon
# Inherit the settings from vxWorks-ppc603
include $(CONFIG)/os/CONFIG.Common.vxWorks-ppc603
# Vx GNU cross compiler suffix
CMPLR_SUFFIX = ppc
ARCH_CLASS = ppc
# Architecture specific build flags
ARCH_DEP_CPPFLAGS = -DCPU=PPC603
ARCH_DEP_CFLAGS = -mcpu=603 -mstrict-align -mlongcall
GNU_TARGET = powerpc-wrs-vxworks
# Tell compiler to generate long branches
ARCH_DEP_CFLAGS += -mlongcall

View File

@@ -1,10 +1,9 @@
# CONFIG.Common.vxWorks-ppc604
#
# $Id$
# This file is maintained by the build community.
#
# Definitions for vxWorks-ppc604 target archs
# Sites may override these definitions in CONFIG_SITE.Common.vxWorks-ppc604
# Definitions for vxWorks-ppc604 targets: PPC604, MPC7xx and MPC74xx CPUs
# Site-specific overrides go in CONFIG_SITE.Common.vxWorks-ppc604
#
# This file is maintained by the EPICS build community.
#-------------------------------------------------------
# Include definitions common to all vxWorks target archs
@@ -12,11 +11,11 @@ include $(CONFIG)/os/CONFIG.Common.vxWorksCommon
# Vx GNU cross compiler suffix
CMPLR_SUFFIX = ppc
ARCH_CLASS = ppc
# Architecture specific build flags
ARCH_DEP_CPPFLAGS = -DCPU=PPC604
ARCH_DEP_CFLAGS = -mcpu=604 -mstrict-align
ARCH_DEP_CFLAGS = -mcpu=604 -mstrict-align -mno-implicit-fp
GNU_TARGET = powerpc-wrs-vxworks

View File

@@ -0,0 +1,21 @@
# $Id$
#
# Definitions for vxWorks-ppc604 targets with an Altivec and >32MB of RAM.
# Site-specific overrides go in CONFIG_SITE.Common.vxWorks-ppc604_altivec
#
# This file is maintained by the EPICS build community.
#-------------------------------------------------------
# Inherit the settings from vxWorks-ppc604_long
include $(CONFIG)/os/CONFIG.Common.vxWorks-ppc604_long
defval = $(if $(strip $(1),),$(1),$(2))
# Tell compiler to include altivec support
ALTIVEC_CFLAG_5 = -fvec
# From 6.1 the altivec compiler option changed
ALTIVEC_CFLAG_6.0 = -fvec
ALTIVEC_CFLAG_6 = $(call defval,$(ALTIVEC_CFLAG_$(VXWORKS_VERSION)),-maltivec)
ARCH_DEP_CFLAGS += $(ALTIVEC_CFLAG_$(VXWORKS_MAJOR_VERSION))

View File

@@ -1,22 +1,13 @@
# CONFIG.Common.vxWorks-ppc604_long
#
# $Id
# This file is maintained by the build community.
#
# Definitions for vxWorks-ppc604 target archs with at least 32MB
# Sites may override these definitions in CONFIG_SITE.Common.vxWorks-ppc604_long
# Definitions for vxWorks-ppc604 targets with >32MB of RAM
# Site-specific overrides go in CONFIG_SITE.Common.vxWorks-ppc604_long
#
# This file is maintained by the EPICS build community.
#-------------------------------------------------------
# Include definitions common to all vxWorks target archs
include $(CONFIG)/os/CONFIG.Common.vxWorksCommon
# Inherit the settings from vxWorks-ppc604
include $(CONFIG)/os/CONFIG.Common.vxWorks-ppc604
# Vx GNU cross compiler suffix
CMPLR_SUFFIX = ppc
ARCH_CLASS = ppc
# Architecture specific build flags
ARCH_DEP_CPPFLAGS = -DCPU=PPC604
ARCH_DEP_CFLAGS = -mcpu=604 -mstrict-align -mlongcall
GNU_TARGET = powerpc-wrs-vxworks
# Tell compiler to generate long branches
ARCH_DEP_CFLAGS += -mlongcall

View File

@@ -137,8 +137,6 @@ export TOOL_FAMILY = GNU
# Operating system flags
OP_SYS_CPPFLAGS += -DvxWorks
OP_SYS_CFLAGS += -fno-builtin
#OP_SYS_CFLAGS += -fno-builtin -fdollars-in-identifiers
OP_SYS_LDFLAGS +=
# Fix for vxWorks headers that use macros defined in vxWorks.h but
# which don't actually include vxWorks.h themselves, for example the
@@ -146,6 +144,11 @@ OP_SYS_LDFLAGS +=
OP_SYS_INCLUDE_CPPFLAGS_5 += -include $(VX_DIR)/target/h/vxWorks.h
OP_SYS_INCLUDE_CPPFLAGS = $(OP_SYS_INCLUDE_CPPFLAGS_$(VXWORKS_MAJOR_VERSION))
#--------------------------------------------------
# Optimization: Officially vxWorks only supports -O2 or less.
OPT_CFLAGS_YES = -O2
OPT_CXXFLAGS_YES = -O2
#--------------------------------------------------
# code flags
CODE_CFLAGS =
@@ -158,10 +161,6 @@ CODE_CXXFLAGS_6.2 = -fno-implicit-templates
CODE_CXXFLAGS_6 = $(CODE_CXXFLAGS_$(VXWORKS_VERSION))
CODE_CXXFLAGS = $(CODE_CXXFLAGS_$(VXWORKS_MAJOR_VERSION))
#--------------------------------------------------
# no posix c preprocessor flags
#POSIX_CPPFLAGS =
#--------------------------------------------------
# no shared libs for vxWorks
SHRLIB_CFLAGS =

View File

@@ -0,0 +1,6 @@
# $Id$
#
# Site Specific definitions for the vxWorks-mpc8540 target
#
# Only the local epics system manager should modify this file
#-------------------------------------------------------

View File

@@ -0,0 +1,7 @@
# $Id$
#
# Site Specific definitions for the vxWorks-ppc603 target
#
# Only the local epics system manager should modify this file
#-------------------------------------------------------

View File

@@ -0,0 +1,10 @@
# $Id$
#
# Site Specific definitions for the vxWorks-ppc603_long target
#
# Only the local epics system manager should modify this file
#-------------------------------------------------------
# Inherit the settings from vxWorks-ppc603
-include $(CONFIG)/os/CONFIG_SITE.Common.vxWorks-ppc603

View File

@@ -1,8 +1,7 @@
# CONFIG_SITE.Common.vxWorks-ppc604
#
# $Id$
#
# Site Specific definitions for vxWorks-ppc604 target
# Site Specific definitions for the vxWorks-ppc604 target
#
# Only the local epics system manager should modify this file
#-------------------------------------------------------

View File

@@ -0,0 +1,10 @@
# $Id$
#
# Site Specific definitions for the vxWorks-ppc604_altivec target
#
# Only the local epics system manager should modify this file
#-------------------------------------------------------
# Inherit the settings from vxWorks-ppc604_long
-include $(CONFIG)/os/CONFIG_SITE.Common.vxWorks-ppc604_long

View File

@@ -1,8 +1,10 @@
# CONFIG_SITE.Common.vxWorks-ppc604
#
# $Id$
#
# Site Specific definitions for vxWorks-ppc604 target
# Site Specific definitions for the vxWorks-ppc604_long target
#
# Only the local epics system manager should modify this file
#-------------------------------------------------------
# Inherit the settings from vxWorks-ppc604
-include $(CONFIG)/os/CONFIG_SITE.Common.vxWorks-ppc604

View File

@@ -1,16 +1,7 @@
# CONFIG_SITE.linux-x86.vxWorks-ppc603
#
# $Id$
# This file is maintained by the build community.
#
# Site override definitions for linux-x86 host - vxWorks-ppc603 target builds
# Site-specific definitions for linux-x86 builds of vxWorks-ppc603
#
# Only the local epics system manager should modify this file
#-------------------------------------------------------
# ORNL SNS overrides for cross compilers
#VX_DIR_YES = /opt/tornado20/
#VX_CONFIG_DIR_YES = $(VX_DIR)/target/config
#VX_INCLUDE_YES = /usr/local/crossgcc/ppc/powerpc-wrs-vxworks/sys-include
#VX_GNU_YES = /usr/local/crossgcc/ppc/
#VX_GNU_BIN_YES = $(VX_GNU)/bin
#VX_GNU_LIB_YES = /usr/local/crossgcc/ppc/lib/gcc-lib/powerpc-wrs-vxworks/2.95.2

View File

@@ -1,15 +1,9 @@
# CONFIG_SITE.linux-x86.vxWorks-ppc603_long
#
# $Id$
# This file is maintained by the build community.
#
# Site override definitions for linux-x86 host - vxWorks-ppc603_long target builds
# Site-specific definitions for linux-x86 builds of vxWorks-ppc603_long
#
# Only the local epics system manager should modify this file
#-------------------------------------------------------
# ORNL SNS overrides for cross compilers
#GNU_DIR=/ade/vxWorks/crossgcc-2.7.2-WRS/ppc
#GNU_TARGET_INCLUDE_DIR=/ade/vxWorks/crossgcc-2.7.2-WRS/ppc/powerpc-wrs-vxworks/sys-include
#CC = /ade/vxWorks/crossgcc-2.7.2-WRS/ppc/bin/cc$(CMPLR_SUFFIX)
#CCC = /ade/vxWorks/crossgcc-2.7.2-WRS/ppc/bin/g++$(CMPLR_SUFFIX)
# Inherit settings from vxWorks-ppc603
-include $(CONFIG)/os/CONFIG_SITE.linux-x86.vxWorks-ppc603

View File

@@ -1,17 +1,6 @@
# CONFIG_SITE.linux-x86_64.vxWorks-ppc603
#
# $Id$
# This file is maintained by the build community.
#
# Site override definitions for linux-x86_64 host - vxWorks-ppc603 target builds
# Site-specific definitions for linux-x86_64 builds of vxWorks-ppc603
#
# Only the local epics system manager should modify this file
#-------------------------------------------------------
# This file contains overrides for Vx builds
# ORNL SNS overrides for cross compilers
# The custom cross compiler for VxWorks on Linux
# has place in a directory structure like that of
# the Solaris distribution. So now the cross should
# only need the following line.
# cross-compiler from "Linux x86pc" host to a "ppc603" target
VX_DIR_YES = /ade/vxWorks/t202/ppc

View File

@@ -1,17 +1,9 @@
# CONFIG_SITE.linux-x86_64.vxWorks-ppc603_long
#
# $Id$
# This file is maintained by the build community.
#
# Site override definitions for linux-x86_64 host - vxWorks-ppc603 target builds
# Site-specific definitions for linux-x86 builds of vxWorks-ppc603_long
#
# Only the local epics system manager should modify this file
#-------------------------------------------------------
# This file contains overrides for Vx builds
# ORNL SNS overrides for cross compilers
# The custom cross compiler for VxWorks on Linux
# has place in a directory structure like that of
# the Solaris distribution. So now the cross should
# only need the following line.
# cross-compiler from "Linux x86pc" host to a "ppc603" target
VX_DIR_YES = /ade/vxWorks/t202/ppc
# Inherit settings from vxWorks-ppc603
-include $(CONFIG)/os/CONFIG_SITE.linux-x86_64.vxWorks-ppc603