Ralf Corsepius suggested a way to get rid of UNIX compiler files and use gcc-target-default.cfg

This commit is contained in:
Joel Sherrill
1998-04-14 22:13:05 +00:00
parent 1504f71edf
commit 2758c9f20b
5 changed files with 317 additions and 141 deletions

View File

@@ -4,12 +4,6 @@
# $Id$
#
# Specify here the host and target "architectures"
HOST_ARCH=o-$(RTEMS_HOST)
TARGET_ARCH=o-$(RTEMS_BSP)
include $(RTEMS_ROOT)/make/main.cfg
RTEMS_CPU=unix
RTEMS_CPU_FAMILY=sparc
RTEMS_CPU_MODEL=sparc_v8
@@ -18,31 +12,20 @@ RTEMS_UNIX_FLAVOR=solaris
# This is the actual bsp directory used during the build process.
RTEMS_BSP_FAMILY=posix
# use the inline functions instead of the macros
# ref: src/exec/generic/Makefile
# Need INLINE_UPCASE set to uppercase value of INLINE variable
# ref: make/compilers/gcc-force386.cfg
ifeq (${RTEMS_USE_MACROS},yes)
INLINE=macros
INLINE_UPCASE=
else
INLINE=inline
INLINE_UPCASE=INLINE
endif
# share the posix bsp
TARGET_ARCH=o-solaris2
RTEMS_BSP=posix
# HOST Compiler config file
# You may also want to specify where the compiler resides here.
CC_$(HOST_ARCH)_DIR=$(RTEMS_GNUTOOLS_HOST)
CONFIG.$(HOST_ARCH).CC = $(RTEMS_ROOT)/make/compilers/gcc.cfg
include $(RTEMS_ROOT)/make/default.cfg
## Target compiler config file, if any
CC_$(TARGET_ARCH)_DIR=$(CC_$(HOST_ARCH)_DIR)
CONFIG.$(TARGET_ARCH).CC = $(RTEMS_ROOT)/make/compilers/gcc-solaris2.cfg
CONFIG.$(TARGET_ARCH).CC = $(RTEMS_ROOT)/make/compilers/gcc-target-default.cfg
# Use the LIBC support for CYGNUS newlib
# RTEMS_LIBC_DIR must already be set (by module file)
RTEMS_USE_NEWLIB=no
LIBC_DEFINES=-DRTEMS_UNIXLIB -DRTEMS_UNIX -DMALLOC_PROVIDED -DRTEMS_DEBUG
LIBC_LIBM=-lm
# Define this to yes if C++ is included in the development environment
@@ -67,4 +50,58 @@ HAS_KA9Q=no
# This target does NOT support the POSIX API.
HAS_POSIX_API=no
# optimize flag: typically -0, could use -O4 or -fast
# -O4 is ok for RTEMS
CFLAGS_OPTIMIZE_V = -O2
# This section makes the target dependent options file.
# NDEBUG (C library)
# if defined asserts do not generate code. This is commonly used
# as a command line option.
#
# RTEMS_TEST_NO_PAUSE (RTEMS tests)
# do not pause between screens of output in the rtems tests
#
# NO_TABLE_MOVE (SPARC PORT)
# do not have a second trap table -- use the BSP's
#
# STACK_CHECKER_ON (RTEMS support code)
# If defined, stack bounds checking is enabled.
#
# STACK_CHECKER_REPORT_USAGE (RTEMS support code)
# If this and STACK_CHECKER_ON are defined, then a report on stack usage
# per task is printed when the program exits.
#
# RTEMS_DEBUG (RTEMS)
# If defined, debug checks in RTEMS and support library code are enabled.
#
# RTEMS_UNIX (unix)
# Define this to indicate this is an RTEMS UNIX port.
define make-target-options
echo "/* #define NDEBUG 1 */ " >>$@
echo "#define RTEMS_TEST_NO_PAUSE 1" >>$@
echo "/* #define STACK_CHECKER_ON 1 */" >>$@
echo "/* #define STACK_CHECKER_REPORT_USAGE 1 */" >>$@
echo "/* #define RTEMS_DEBUG 1 */" >>$@
echo "#define RTEMS_UNIX 1 " >>$@
endef
ifeq ($(RTEMS_USE_GCC272),yes)
define make-exe
$(CC) -o $@ $(LINK_FILES) $(LD_LIBS) $(LIBC_LIBM) $(LIBC_LIBC)
$(NM) -ng $@ > $(basename $@).num
$(SIZE) $@
endef
else
#
# gcc28 not yet supported
#
endif
# *****************************************************************
# Miscellaneous additions go here