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 committed 1998-04-14 22:13:05 +00:00
1 parent 1504f71edf
commit 2758c9f20b
5 files changed
+317 -141

No files matched your search

Vendored
+79 -73
View File
File diff suppressed because it is too large. Load diff
+8 -2
View File
@@ -131,8 +131,11 @@ case "${target}" in
;;
i[[3456]]86-pc-linux*) # unix "simulator" port
target_cpu=unix
RTEMS_HAS_POSIX_API=no
RTEMS_HOST=Linux
# override these settings
RTEMS_HAS_POSIX_API=no
RTEMS_USE_GCC272=yes
RTEMS_LIBC_DIR=/usr
;;
no_cpu-*rtems*)
target_cpu=no_cpu
@@ -140,8 +143,11 @@ case "${target}" in
;;
sparc-sun-solaris*) # unix "simulator" port
target_cpu=unix
RTEMS_HAS_POSIX_API=no
RTEMS_HOST=Solaris
# override these settings
RTEMS_HAS_POSIX_API=no
RTEMS_USE_GCC272=yes
RTEMS_LIBC_DIR=/usr
;;
*)
RTEMS_CANONICAL_TARGET_CPU
+82 -14
View File
@@ -8,8 +8,6 @@
HOST_ARCH=o-$(RTEMS_HOST)
TARGET_ARCH=o-$(RTEMS_BSP)
include $(RTEMS_ROOT)/make/main.cfg
RTEMS_CPU=unix
RTEMS_CPU_FAMILY=hppa1_1
RTEMS_CPU_MODEL=hppa7200
@@ -18,23 +16,19 @@ RTEMS_UNIX_FLAVOR=hpux
# This is the actual bsp directory used during the build process.
RTEMS_BSP_FAMILY=posix
include $(RTEMS_ROOT)/make/custom/default.cfg
# use the macros instead of the inline functions
# The macros work better when mixed with other compilers.
INLINE=macros
INLINE_UPCASE=MACRO
# 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
## Target compiler config file, if any
CC_$(TARGET_ARCH)_DIR=$(CC_$(HOST_ARCH)_DIR)
CONFIG.$(TARGET_ARCH).CC = $(RTEMS_ROOT)/make/compilers/gcc-hpux9.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=yes
# RTEMS_LIBC_DIR must already be set (by configuration) DOES NOT MATTER
LIBC_DEFINES=-DRTEMS_UNIXLIB -DRTEMS_UNIX -DMALLOC_PROVIDED -DRTEMS_DEBUG
# The following define the memory reserved in the executable for the
# RTEMS Workspace and the C Program Heap.
@@ -42,9 +36,6 @@ RTEMS_USE_NEWLIB=yes
LIBC_DEFINES += -DWORKSPACE_MB=2
LIBC_DEFINES += -DHEAPSPACE_MB=1
# Uncomment the following line if want stack checking should be enabled
#LIBC_DEFINES += -DSTACK_CHECKER_ON
# Define this to yes if this target supports multiprocessor environments.
HAS_MP=yes
@@ -55,4 +46,81 @@ HAS_KA9Q=no
# This target does NOT support the POSIX API.
HAS_POSIX_API=no
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
# Setting formerly contained in gcc-hpux9.cfg
# Not applicable - let's override 'em
LINKCMDS=
START_FILE=
START_BASE=
# Here is the rule to actually build a $(ARCH)/foo.exe
# It also builds $(ARCH)/foo.sr and $(ARCH)/foo.nm
# Usage ref: src/tests/sptest/sp1/Makefile
#
# 'NODE' is set to 1 or 2 for multi cpu tests (ref: mptests/mp01/node1/Makefile)
# If NODE is set as an environment variable, don't trust it, zero it out.
# (NODE turns out to be a very common environment variable)
ifeq (,$(NODE))
NODE=0
else
ifeq "$(origin NODE)" "environment"
NODE=0
endif
endif
# Workaround for missing ranlib support in RTEMS
MKLIB=$(AR) s $(@) ; echo library is complete:
+88 -29
View File
@@ -4,12 +4,6 @@
# $Id$
#
# Specify here the host and target "architectures"
HOST_ARCH=o-$(RTEMS_HOST)
TARGET_ARCH=o-linux1
include $(RTEMS_ROOT)/make/main.cfg
RTEMS_CPU=unix
RTEMS_CPU_FAMILY=i386
RTEMS_CPU_MODEL=i486dx
@@ -18,45 +12,33 @@ RTEMS_UNIX_FLAVOR=linux
# 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-linux1
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/custom/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-linux1.cfg
CONFIG.$(TARGET_ARCH).CC = $(RTEMS_ROOT)/make/compilers/gcc-target-default.cfg
# DO NOT Use the LIBC support for CYGNUS newlib
# RTEMS_LIBC_DIR must already be set (by module file) DOES NOT MATTER
RTEMS_USE_NEWLIB=no
# RTEMS_LIBC_DIR must already be set (by configuration) DOES NOT MATTER
LIBC_DEFINES=-DRTEMS_UNIXLIB -DRTEMS_UNIX -DMALLOC_PROVIDED -DRTEMS_DEBUG
LIBC_INCLUDE=/usr/include
LIBC_LIBC=-lc
LIBC_LIBM=-lm
LIBC_EXTRA_LIBS=
# The following define the memory reserved in the executable for the
# RTEMS Workspace and the C Program Heap.
LIBC_DEFINES += -DWORKSPACE_MB=2
LIBC_DEFINES += -DHEAPSPACE_MB=1
# Define this to yes if C++ is included in the development environment
# This requires that at least the GNU C++ compiler and libg++ be installed.
ifeq ($(RTEMS_HAS_CPLUSPLUS),yes)
HAS_CPLUSPLUS=yes
LIBCC_INCLUDE=/usr/include/g++
# No need to set it, gcc knows about them
# LIBCC_INCLUDE=/usr/include/g++
CPLUS_LD_LIBS=-lstdc++
CPLUS_LD_LIBS += $(PROJECT_RELEASE)/lib/librtems++$(LIBSUFFIX_VA)
else
@@ -73,4 +55,81 @@ 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
# Setting formerly contained in gcc-linux1.cfg
# Not applicable - let's override 'em
LINKCMDS=
START_FILE=
START_BASE=
# Here is the rule to actually build a $(ARCH)/foo.exe
# It also builds $(ARCH)/foo.sr and $(ARCH)/foo.nm
# Usage ref: src/tests/sptest/sp1/Makefile
#
# 'NODE' is set to 1 or 2 for multi cpu tests (ref: mptests/mp01/node1/Makefile)
# If NODE is set as an environment variable, don't trust it, zero it out.
# (NODE turns out to be a very common environment variable)
ifeq (,$(NODE))
NODE=0
else
ifeq "$(origin NODE)" "environment"
NODE=0
endif
endif
# Workaround for missing ranlib support in RTEMS
MKLIB=$(AR) s $(@) ; echo library is complete:
+60 -23
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