# 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..vxWorksCommon #------------------------------------------------------- # Vx valid build types VALID_BUILDS = Ioc #-------------------------------------------------- # operating system class (include/os/) 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)$(HOSTEXE) ifeq ($(wildcard $(GNU_BIN)/munch.tcl),$(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$(HOSTEXE) endif #-------------------------------------------------- # Posix flags override GCC_POSIX_CPPFLAGS = -D_POSIX_SOURCE G++_POSIX_CPPFLAGS = -D_POSIX_SOURCE #-------------------------------------------------- # 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++_OPT_YES = -O2 G++_OPT_NO = #-------------------------------------------------- # 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.cpp = $(GCC_LD) -o $@ $(LDFLAGS) #-------------------------------------------------- # Allow site overrides -include $(CONFIG)/os/CONFIG_SITE.Common.vxWorksCommon -include $(CONFIG)/os/CONFIG_SITE.$(EPICS_HOST_ARCH).vxWorksCommon