113 lines
3.1 KiB
Plaintext
113 lines
3.1 KiB
Plaintext
# CONFIG.Common.vxWorksCommon
|
|
#
|
|
# $Id$
|
|
#
|
|
# Definitions for vxWorks target archs
|
|
#
|
|
# This file is maintained by the build community.
|
|
# Sites may override these definitions in CONFIG_SITE.Common.vxWorksCommon
|
|
# or CONFIG_SITE.<host>.vxWorksCommon
|
|
|
|
#-------------------------------------------------------
|
|
# Vx valid build types
|
|
VALID_BUILDS = Ioc
|
|
|
|
#--------------------------------------------------
|
|
# operating system class (include/os/<os_class>)
|
|
OS_CLASS = vxWorks
|
|
|
|
#-------------------------------------------------------
|
|
# Prefix and suffix definitions
|
|
EXE =
|
|
OBJ = .o
|
|
LIB_PREFIX =
|
|
LIB_SUFFIX = Library.o
|
|
MUNCH_SUFFIX = Library.munch
|
|
|
|
#-------------------------------------------------------
|
|
# Library definition
|
|
# Build both *.o and *.munch libraries
|
|
LIBNAME = $(BUILD_LIBRARY:%=$(LIB_PREFIX)%$(LIB_SUFFIX))
|
|
MUNCHNAME = $(BUILD_LIBRARY:%=$(LIB_PREFIX)%$(MUNCH_SUFFIX))
|
|
|
|
#--------------------------------------------------
|
|
# Library install location override
|
|
INSTALL_LOCATION_LIB=$(INSTALL_LOCATION)/bin
|
|
|
|
#--------------------------------------------------
|
|
# vxWorks directory definitions
|
|
# Tornado directory definitions
|
|
VX_INCLUDE = $(VX_DIR)/target/h
|
|
GNU_DIR = $(VX_DIR)/host/$(WIND_HOST_TYPE)
|
|
|
|
#-------------------------------------------------------
|
|
# Command definition overrides
|
|
GCC_LD = $(GNU_BIN)/$(CMPLR_PREFIX)ld$(CMPLR_SUFFIX) -r
|
|
|
|
# use ld partial linking not ar to create libraries)
|
|
GCC_AR = $(GCC_LD)
|
|
ARFLAGS = -o
|
|
GCC_RANLIB =
|
|
|
|
#--------------------------------------------------
|
|
# C++ host processing
|
|
NM = $(GNU_BIN)/$(CMPLR_PREFIX)nm$(CMPLR_SUFFIX)
|
|
ifneq ($(wildcard $(GNU_BIN)/munch.tcl),)
|
|
#tornado2
|
|
export WIND_BASE = $(VX_DIR)
|
|
export WIND_HOST_TYPE
|
|
ifneq ($(WIND_HOST_TYPE),x86-win32)
|
|
export PATH := $(GNU_BIN):$(PATH)
|
|
endif
|
|
MUNCH = $(GNU_BIN)/wtxtcl$(HOSTEXE) $(GNU_BIN)/munch.tcl -asm $(ARCH_CLASS)
|
|
else
|
|
#tornado101
|
|
MUNCH = $(GNU_BIN)/$(CMPLR_PREFIX)munch$(EXE)
|
|
endif
|
|
|
|
#-------------------------------------------------------
|
|
# Compile flag overrides
|
|
GCC_DEP_CPPFLAGS = -D_REENTRANT
|
|
G++_DEP_CPPFLAGS = -D_REENTRANT
|
|
|
|
#--------------------------------------------------
|
|
# Posix flags override
|
|
POSIX_CPPFLAGS =
|
|
|
|
#--------------------------------------------------
|
|
# Operating system flags
|
|
OP_SYS_INCLUDES = -I$(VX_INCLUDE)
|
|
OP_SYS_CPPFLAGS = -DvxWorks
|
|
OP_SYS_CFLAGS = -fno-builtin
|
|
OP_SYS_LDFLAGS =
|
|
OP_SYS_LDLIBS =
|
|
|
|
# Fix for vxWorks headers using macros defined in
|
|
# vxWorks.h but not including vxWorks.h
|
|
OP_SYS_CFLAGS += -include $(VX_INCLUDE)/vxWorks.h
|
|
|
|
#--------------------------------------------------
|
|
# Optimization flag overrides
|
|
GCC_OPT_YES = -O2
|
|
GCC_OPT_NO = -g
|
|
G++_OPT_YES = -O2
|
|
G++_OPT_NO = -g
|
|
|
|
#--------------------------------------------------
|
|
# c++ exceptions, YES or NO override
|
|
CXX_EXCEPTIONS = NO
|
|
|
|
#--------------------------------------------------
|
|
# osithead use default stack, YES or NO override
|
|
OSITHREAD_USE_DEFAULT_STACK = NO
|
|
|
|
#--------------------------------------------------
|
|
# Link definitions
|
|
LINK.c = $(GCC_LD) -o $@ $(LDFLAGS)
|
|
LINK.cpp = $(GCC_LD) -o $@ $(LDFLAGS)
|
|
|
|
#--------------------------------------------------
|
|
# Allow site overrides
|
|
-include $(CONFIG)/os/CONFIG_SITE.Common.vxWorksCommon
|
|
-include $(CONFIG)/os/CONFIG_SITE.$(EPICS_HOST_ARCH).vxWorksCommon
|