122 lines
3.6 KiB
Plaintext
122 lines
3.6 KiB
Plaintext
|
|
# $Id$
|
|
#
|
|
# This file is maintained by the EPICS community.
|
|
|
|
AR = $(VX_GNU_BIN)/ar68k
|
|
RANLIB = $(VX_GNU_BIN)/ranlib68k
|
|
YACC = $(EYACC)
|
|
LEX = $(ELEX)
|
|
CC = $(VX_GNU_BIN)/cc68k -B$(VX_GNU_LIB)/gcc-lib/ -nostdinc
|
|
CPP = $(VX_GNU_BIN)/cpp68k -nostdinc
|
|
#CPP = $(CC) -E
|
|
GCC = $(CC)
|
|
LD = $(VX_GNU_BIN)/ld68k -r
|
|
EPICS_LDLIBS =
|
|
MV=mv
|
|
RM=rm -f
|
|
MKDIR = mkdir
|
|
RMDIR=rm -rf
|
|
WHAT = what
|
|
|
|
#----------------------------
|
|
# Only G++ currently supported
|
|
CPLUSPLUS = G++
|
|
CXXCMPLR = NORMAL
|
|
VX_OPT = YES
|
|
BOARD = $(subst mv,MV,$(T_A))
|
|
CPU = 68000
|
|
OS = VXWORKS
|
|
#----------------------------
|
|
|
|
CCC = $(VX_GNU_BIN)/cc68k -B$(VX_GNU_LIB)/gcc-lib/ -nostdinc
|
|
AR_CCC = $(VX_GNU_BIN)/ar68k
|
|
CPP_CCC = $(VX_GNU_BIN)/cpp68k -nostdinc
|
|
RANLIB_CCC = $(VX_GNU_BIN)/ranlib68k
|
|
LD_CCC = $(VX_GNU_BIN)/ld68k
|
|
CCC_CCFLAGS =
|
|
CCC_ARCH_DEP_CCFLAGS =
|
|
CCC_ARCH_DEP_LDFLAGS =
|
|
|
|
G++ = $(GNU_BIN)/sun3-g++ -B$(GNU_LIB)/gcc-lib/ -nostdinc -DEXPL_TEMPL
|
|
AR_G++ = $(GNU_BIN)/sun3-ar
|
|
CPP_G++ = $(GNU_BIN)/sun3-cpp
|
|
RANLIB_G++ = $(GNU_BIN)/sun3-ranlib
|
|
LD_G++ = $(GNU_BIN)/sun3-ld
|
|
G++_ARCH_DEP_CCFLAGS = --no-builtin -Wa,"-m68040" -DOS_EQ_$(OS) \
|
|
-DBOARD_EQ_$(BOARD) -DCPU_EQ_$(CPU) -DBOARD=$(BOARD)
|
|
G++_ARCH_DEP_LDFLAGS = -Ur -N -T$(EPICS_BASE_BIN)/vxldscript.MRI
|
|
|
|
CCC_NORMAL = $(CCC)
|
|
CCC_STRICT = $(CCC) -ansi -pedantic -Wtraditional \
|
|
-Wmissing-prototypes -Woverloaded-virtual \
|
|
-Wwrite-strings -Wconversion -Wstrict-prototypes\
|
|
-Wpointer-arith -Winline
|
|
G++_NORMAL = $(G++)
|
|
G++_STRICT = $(G++) -ansi -pedantic -Wtraditional
|
|
|
|
CXX = $($(CPLUSPLUS)_$(CXXCMPLR))
|
|
AR_CXX = $(AR_$(CPLUSPLUS))
|
|
CPP_CXX = $(CPP_$(CPLUSPLUS))
|
|
RANLIB_CXX = $(RANLIB_$(CPLUSPLUS))
|
|
LD_CXX = $(LD_$(CPLUSPLUS))
|
|
|
|
ARCH_DEP_CXXFLAGS += $($(CPLUSPLUS)_ARCH_DEP_CCFLAGS) $(ARCH_DEP_CFLAGS)
|
|
ARCH_DEP_CXXLDFLAGS = $($(CPLUSPLUS)_ARCH_DEP_LDFLAGS) $(ARCH_DEP_LDFLAGS)
|
|
|
|
|
|
# special c library requirements
|
|
SPECIAL_LANG =
|
|
|
|
# Compiler flags, don't mess with this
|
|
# Optimization flags
|
|
VX_OPT_YES = -O
|
|
VX_OPT_NO =
|
|
VX_OPT_FLAGS = $(VX_OPT_$(VX_OPT))
|
|
|
|
# Include files
|
|
VX_INCLUDES = -I. -I.. $(USR_INCLUDES) -I$(INSTALL_INCLUDE) -I$(EPICS_BASE_INCLUDE) \
|
|
-I$(EPICS_BASE_INCLUDE)/os/vxWorks -I$(VX_INCLUDE)
|
|
|
|
# Warnings
|
|
#At some time we should turn on pedantic
|
|
VX_WARN_YES = -Wall -pedantic -ansi
|
|
#VX_WARN_YES = -Wall
|
|
VX_WARN_NO =
|
|
VX_WARN_FLAGS = $(VX_WARN_$(VX_WARN))
|
|
|
|
# Operating system flags
|
|
VX_OP_SYS_FLAGS = -DvxWorks -DV5_vxWorks
|
|
|
|
# Arch dependent flags are set in CONFIG_ARCH.*
|
|
VX_CFLAGS = $(VX_OPT_FLAGS) $(VX_WARN_FLAGS) \
|
|
$(VX_INCLUDES) $(VX_OP_SYS_FLAGS)
|
|
VX_CXXFLAGS += $(VX_CFLAGS)
|
|
|
|
TARGET_CFLAGS = $($(basename $@)_CFLAGS)
|
|
TARGET_CXXFLAGS = $($(basename $@)_CXXFLAGS)
|
|
TARGET_LDFLAGS = $($(basename $@)_LDFLAGS)
|
|
TARGET_CPPFLAGS = $($(basename $@)_CPPFLAGS)
|
|
TARGET_SNCFLAGS = $($(basename $@)_SNCFLAGS)
|
|
|
|
CFLAGS = $(TARGET_CFLAGS) $(USR_CFLAGS) $(ARCH_DEP_CFLAGS) $(VX_CFLAGS)
|
|
CXXFLAGS = $(TARGET_CXXFLAGS) $(USR_CXXFLAGS) $(ARCH_DEP_CXXFLAGS) $(VX_CXXFLAGS)
|
|
LDFLAGS = $(TARGET_LDFLAGS) $(USR_LDFLAGS) $(ARCH_DEP_LDFLAGS) $(VX_LDFLAGS)
|
|
LDLIBS = $(TARGET_LDLIBS) $(USR_LDLIBS) $(ARCH_DEP_LDLIBS) $(VX_LDLIBS)
|
|
CXXLDLIBS = $(TARGET_LDLIBS) $(USR_CXXLDLIBS) $(ARCH_DEP_LDLIBS) $(VX_LDLIBS)
|
|
CXXLDFLAGS = $(TARGET_LDFLAGS) $(USR_CXXLDFLAGS) $(ARCH_DEP_CXXLDFLAGS) $(VX_LDFLAGS)
|
|
CPPFLAGS += $(TARGET_CPPFLAGS) $(USR_CPPFLAGS)
|
|
# Build compile line here
|
|
COMPILE.c = $(CC) $(CFLAGS) $(CPPFLAGS) -c
|
|
LINK.c = $(LD) $(LDFLAGS) -o
|
|
COMPILE.cc = $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c
|
|
LINK.cc = $(LD_CXX) $(CXXLDFLAGS) -o
|
|
|
|
CPPSNCFLAGS = $(VX_INCLUDES)
|
|
|
|
DEPENDS_RULE.c = -$(COMPILE.c) -M $(SRCS.c) >> .DEPENDS
|
|
DEPENDS_RULE.cc = -$(COMPILE.cc) -M $(SRCS.cc) >> .DEPENDS
|
|
|
|
# Allow site host architecture specific overrides
|
|
-include $(EPICS_BASE)/config/CONFIG_SITE.$(BUILD_TYPE).$(ARCH_CLASS).$(HOST_ARCH)
|