Removed PROJECT_HOME and CONFIG_DIR variables.

This commit is contained in:
Joel Sherrill
1998-01-20 19:30:30 +00:00
parent 3294650cc3
commit bffb938799
53 changed files with 5718 additions and 0 deletions

View File

@@ -0,0 +1,62 @@
#
# Config file for HPUX running the posix bsp
#
# $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=hppa1_1
RTEMS_CPU_MODEL=hppa7200
RTEMS_UNIX_FLAVOR=hpux
# This is the actual bsp directory used during the build process.
RTEMS_BSP_FAMILY=posix
# 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
# Use the LIBC support for CYGNUS newlib
# RTEMS_LIBC_DIR must already be set (by module file)
RTEMS_USE_NEWLIB=yes
# The following define the memory reserved in the executable for the
# RTEMS Workspace and the C Program Heap.
# NOTE: some of the timing tests need > 1M workspace
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 C++ is included in the development environment.
# This requires that at least the GNU C++ compiler and libg++ be installed.
HAS_CPLUSPLUS=yes
# Define this to yes if this target supports multiprocessor environments.
HAS_MP=yes
# This target does NOT support the KA9Q TCP/IP stack so ignore requests
# to enable it.
HAS_KA9Q=no
# This target does NOT support the POSIX API.
HAS_POSIX_API=no
# Miscellaneous additions go here

View File

@@ -0,0 +1,76 @@
#
# Config file for the Linux 1.x based RTEMS UNIX
#
# $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
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
# 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-linux1.cfg
# DO NOT Use the LIBC support for CYGNUS newlib
# RTEMS_LIBC_DIR must already be set (by module file) 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++
CPLUS_LD_LIBS=-lstdc++
CPLUS_LD_LIBS += $(PROJECT_RELEASE)/lib/librtems++$(LIBSUFFIX_VA)
else
HAS_CPLUSPLUS=no
endif
# Define this to yes if this target supports multiprocessor environments.
HAS_MP=yes
# This target does NOT support the KA9Q TCP/IP stack so ignore requests
# to enable it.
HAS_KA9Q=no
# This target does NOT support the POSIX API.
HAS_POSIX_API=no
# Miscellaneous additions go here

View File

@@ -0,0 +1,60 @@
#
# Config file for the Solaris based RTEMS UNIX
#
# $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
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
# 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-solaris2.cfg
# Use the LIBC support for CYGNUS newlib
# RTEMS_LIBC_DIR must already be set (by module file)
RTEMS_USE_NEWLIB=yes
# 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.
HAS_CPLUSPLUS=no
# Define this to yes if this target supports multiprocessor environments.
HAS_MP=yes
# This target does NOT support the KA9Q TCP/IP stack so ignore requests
# to enable it.
HAS_KA9Q=no
# This target does NOT support the POSIX API.
HAS_POSIX_API=no
# Miscellaneous additions go here

87
make/custom/cvme961.cfg Normal file
View File

@@ -0,0 +1,87 @@
#
# Config file for the Cyclone i960ca CVME961 BSP
#
# $Id$
#
include $(RTEMS_ROOT)/make/custom/default.cfg
RTEMS_CPU=i960
RTEMS_CPU_MODEL=i960ca
# This is the actual bsp directory used during the build process.
RTEMS_BSP_FAMILY=cvme961
# This contains the compiler options necessary to select the CPU model
# and (hopefully) optimize for it.
#
CPU_CFLAGS = -mca
# -pipe does not work in our local configuration of FSF GCC 2.6.0
# configured on top of Intel Release 2.4. We did this to replace
# the GCC 2.4.5 shipped with Intel Release 2.4.
# optimize flag: typically -0, could use -O4 or -fast
# -O4 is ok for RTEMS
CFLAGS_OPTIMIZE_V=-O4 -mleaf-procedures
# Define this to yes if this target supports multiprocessor environments.
HAS_MP=yes
# This target does NOT support the KA9Q TCP/IP stack so ignore requests
# to enable it.
HAS_KA9Q=no
# 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.
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 */" >>$@
endef
# The following are definitions of make-exe which will work using ld as
# is currently required. It is expected that as of gcc 2.8, the end user
# will be able to override parts of the compilers specs and link using gcc.
ifeq ($(RTEMS_USE_GCC272),yes)
define make-exe
$(LD) -u _sbrk $(LDFLAGS) -N -T $(LINKCMDS) -o $(basename $@).exe \
$(START_FILE) $(LINK_OBJS) --start-group $(LINK_LIBS) --end-group
$(NM) -g -n $(basename $@).exe > $(basename $@).num
$(SIZE) $(basename $@).exe
endef
else
define make-exe
$(CC) $(CFLAGS) $(CFLAGS_LD) -o $(basename $@).exe $(LINK_OBJS)
$(NM) -g -n $(basename $@).exe > $(basename $@).num
$(SIZE) $(basename $@).exe
endef
endif
# Miscellaneous additions go here

73
make/custom/default.cfg Normal file
View File

@@ -0,0 +1,73 @@
# Default target settings
#
# Some of these values are redefined in the target specific .cfg files.
#
# Created by Jiri Gaisler, 16-03-97 (who is owed a debt of gratitude
# for converting RTEMS to autoconf. Thanks. --joel)
#
# $Id$
#
include $(PROJECT_ROOT)/make/target.cfg
include $(PROJECT_ROOT)/make/host.cfg
# Specify here the host and target "architectures"
HOST_ARCH=o-$(RTEMS_HOST)
TARGET_ARCH=o-$(RTEMS_BSP)
include $(RTEMS_ROOT)/make/main.cfg
# use the inline functions instead of the macros
# ref: src/exec/generic/Makefile
ifeq ($(RTEMS_USE_MACROS),yes)
INLINE=macros
INLINE_UPCASE=
else
INLINE=inline
INLINE_UPCASE=INLINE
endif
# HOST Compiler config file
# You may also want to specify where the compiler resides here.
CONFIG.$(HOST_ARCH).CC = $(RTEMS_ROOT)/make/compilers/gcc.cfg
## Target compiler config file, if any
CONFIG.$(TARGET_ARCH).CC = $(RTEMS_ROOT)/make/compilers/gcc-target-default.cfg
## GCC specs extension file location
RTEMS_BSP_SPECS = $(PROJECT_ROOT)/$(RTEMS_BSP)/lib/bsp_specs
## LIBC support
## Specify the one you want here and fill in the blanks.
## Currently CYGNUS newlib is supported.
## NOTE: RTEMS libcsupport.a includes RTEMS versions of stuff like
## malloc, gettimeofday, etc.
# Use the LIBC support for CYGNUS newlib
# RTEMS_LIBC_DIR must already be set (by module file)
RTEMS_USE_NEWLIB=yes
# 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
else
HAS_CPLUSPLUS=no
endif
# Define this to yes if this target supports multiprocessor environments.
HAS_MP=no
# Define this to yes if this target wants the KA9Q TCP/IP stack
ifeq ($(RTEMS_HAS_KA9Q),yes)
HAS_KA9Q=yes
endif
# Define this to yes if this target wants the posix api
ifeq ($(RTEMS_HAS_POSIX_API),yes)
HAS_POSIX_API=yes
endif
# Base name of start file
START_BASE=start

92
make/custom/dmv152.cfg Normal file
View File

@@ -0,0 +1,92 @@
#
# Config file for the dmv152 BSP
#
# $Id$
#
include $(RTEMS_ROOT)/make/custom/default.cfg
RTEMS_CPU=m68k
RTEMS_CPU_MODEL=m68020
# This is the actual bsp directory used during the build process.
RTEMS_BSP_FAMILY=dmv152
#
# This contains the compiler options necessary to select the CPU model
# and (hopefully) optimize for it.
#
CPU_CFLAGS =
# optimize flag: typically -0, could use -O4 or -fast
# -O4 is ok for RTEMS
CFLAGS_OPTIMIZE_V=-O4 -fomit-frame-pointer
# This target does NOT support the KA9Q TCP/IP stack so ignore requests
# to enable it.
HAS_KA9Q=no
# 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
#
# 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.
#
# USE_CHANNEL_A (DMV152)
# USE_CHANNEL_B (DMV152)
# One and only one of these should be set to 1 to indicate which
# serial port is used as the RTEMS console.
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 USE_CHANNEL_A 1" >>$@
@echo "#define USE_CHANNEL_B 0" >>$@
endef
# 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
# The following are definitions of make-exe which will work using ld as
# is currently required. It is expected that as of gcc 2.8, the end user
# will be able to override parts of the compilers specs and link using gcc.
ifeq ($(RTEMS_USE_GCC272),yes)
define make-exe
$(LD) $(LDFLAGS) -N -T $(LINKCMDS) -o $(basename $@).nxe \
$(START_FILE) $(LINK_OBJS) --start-group $(LINK_LIBS) --end-group
$(OBJCOPY) -O srec $(basename $@).nxe $(basename $@).i
$(SED) -e 's/.$$//' -e '/^S0/d' $(basename $@).i | \
$(PROJECT_TOOLS)/packhex > $(basename $@).exe
$(NM) -g -n $(basename $@).nxe > $(basename $@).num
$(SIZE) $(basename $@).nxe
endef
else
define make-exe
$(CC) $(CFLAGS) $(CFLAGS_LD) -o $(basename $@).nxe $(LINK_OBJS)
$(OBJCOPY) -O srec $(basename $@).nxe $(basename $@).i
$(SED) -e 's/.$$//' -e '/^S0/d' $(basename $@).i | \
$(PROJECT_TOOLS)/packhex > $(basename $@).exe
$(NM) -g -n $(basename $@).nxe > $(basename $@).num
$(SIZE) $(basename $@).nxe
endef
endif
# Miscellaneous additions go here

86
make/custom/efi332.cfg Normal file
View File

@@ -0,0 +1,86 @@
#
# Config file for the efi332 BSP
#
# $Id$
#
include $(RTEMS_ROOT)/make/custom/default.cfg
RTEMS_CPU=m68k
RTEMS_CPU_MODEL=m68332
# This is the actual bsp directory used during the build process.
RTEMS_BSP_FAMILY=efi332
# This contains the compiler options necessary to select the CPU model
# and (hopefully) optimize for it.
#
# XXX JRS - my gas does not grok -m68332
#CPU_CFLAGS = -m68332
CPU_CFLAGS = -m68020
# optimize flag: typically -0, could use -O4 or -fast, -O4 is ok for RTEMS
CFLAGS_OPTIMIZE_V=-O4 -fomit-frame-pointer
# This target does NOT support the KA9Q TCP/IP stack so ignore requests
# to enable it.
HAS_KA9Q=no
# Override default start file
START_BASE=start332
# 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
#
# 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.
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 */" >>$@
endef
# The following are definitions of make-exe which will work using ld as
# is currently required. It is expected that as of gcc 2.8, the end user
# will be able to override parts of the compilers specs and link using gcc.
ifeq ($(RTEMS_USE_GCC272),yes)
define make-exe
$(LD) $(LDFLAGS) -N -T $(LINKCMDS) -o $(basename $@).nxe \
$(START_FILE) $(LINK_OBJS) --start-group $(LINK_LIBS) --end-group
$(OBJCOPY) -O srec $(basename $@).nxe $(basename $@).i
$(SED) -e 's/.$$//' -e '/^S0/d' $(basename $@).i | \
$(PROJECT_TOOLS)/packhex > $(basename $@).exe
$(NM) -g -n $(basename $@).nxe > $(basename $@).num
$(SIZE) $(basename $@).nxe
endef
else
define make-exe
$(CC) $(CFLAGS) $(CFLAGS_LD) -o $(basename $@).nxe $(LINK_OBJS)
$(OBJCOPY) -O srec $(basename $@).nxe $(basename $@).i
$(SED) -e 's/.$$//' -e '/^S0/d' $(basename $@).i | \
$(PROJECT_TOOLS)/packhex > $(basename $@).exe
$(NM) -g -n $(basename $@).nxe > $(basename $@).num
$(SIZE) $(basename $@).nxe
endef
endif
# Miscellaneous additions go here

83
make/custom/efi68k.cfg Normal file
View File

@@ -0,0 +1,83 @@
#
# Config file for the efi68k BSP
#
# $Id$
#
include $(RTEMS_ROOT)/make/custom/default.cfg
RTEMS_CPU=m68k
RTEMS_CPU_MODEL=m68000
# This is the actual bsp directory used during the build process.
RTEMS_BSP_FAMILY=efi68k
# This contains the compiler options necessary to select the CPU model
# and (hopefully) optimize for it.
#
CPU_CFLAGS = -m68000 -msoft-float
# optimize flag: typically -0, could use -O4 or -fast
# -O4 is ok for RTEMS
CFLAGS_OPTIMIZE_V=-O4 -fomit-frame-pointer
# This target does NOT support the KA9Q TCP/IP stack so ignore requests
# to enable it.
HAS_KA9Q=no
# Override default start file
START_BASE=start68k
# 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
#
# 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.
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 */" >>$@
endef
# The following are definitions of make-exe which will work using ld as
# is currently required. It is expected that as of gcc 2.8, the end user
# will be able to override parts of the compilers specs and link using gcc.
ifeq ($(RTEMS_USE_GCC272),yes)
define make-exe
$(LD) $(LDFLAGS) -N -T $(LINKCMDS) -o $(basename $@).nxe \
$(START_FILE) $(LINK_OBJS) --start-group $(LINK_LIBS) --end-group
$(OBJCOPY) -O srec $(basename $@).nxe $(basename $@).i
$(SED) -e 's/.$$//' -e '/^S0/d' $(basename $@).i | \
$(PROJECT_TOOLS)/packhex > $(basename $@).exe
$(NM) -g -n $(basename $@).nxe > $(basename $@).num
$(SIZE) $(basename $@).nxe
endef
else
define make-exe
$(CC) $(CFLAGS) $(CFLAGS_LD) -o $(basename $@).nxe $(LINK_OBJS)
$(OBJCOPY) -O srec $(basename $@).nxe $(basename $@).i
$(SED) -e 's/.$$//' -e '/^S0/d' $(basename $@).i | \
$(PROJECT_TOOLS)/packhex > $(basename $@).exe
$(NM) -g -n $(basename $@).nxe > $(basename $@).num
$(SIZE) $(basename $@).nxe
endef
endif
# Miscellaneous additions go here

110
make/custom/erc32.cfg Normal file
View File

@@ -0,0 +1,110 @@
#
# Config file for the European Space Agency ERC32
# a V7 SPARC processor derived from the Cypress 601/602 set.
#
# $Id$
#
include $(RTEMS_ROOT)/make/custom/default.cfg
RTEMS_CPU=sparc
RTEMS_CPU_MODEL=erc32
# This is the actual bsp directory used during the build process.
RTEMS_BSP_FAMILY=erc32
# The -mflat avoids the use of save/restore instructions. It has
# a negative impact on the performance of RTEMS and should not be used.
ifeq ($(RTEMS_USE_GCC272),yes)
# -mno-v8 says not to use v8 level instructions. i.e. use v7 only
CPU_CFLAGS = -mno-v8 -mcypress
else
# -mcpu=cypress says to optimize for a Cypress 60x chipset
CPU_CFLAGS = -mcpu=cypress
endif
# optimize flag: typically -0, could use -O4 or -fast
# -O4 is ok for RTEMS
CFLAGS_OPTIMIZE_V=-O4
# This target does NOT support the KA9Q TCP/IP stack so ignore requests
# to enable it.
HAS_KA9Q=no
# Override default start file
START_BASE=startsis
# This 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.
#
# CONSOLE_USE_POLLED (erc32_bsp)
# CONSOLE_USE_INTERRUPTS (erc32_bsp)
# The erc32 console driver can operate in either polled or interrupt mode.
# Under the simulator (especially when FAST_UART is defined), polled seems
# to operate better. It is common for a task to print a line (like the
# end of test message) and then exit. In this case, the program returns
# control to the simulator command line before the program has even queued
# the output to the uart. Thus sis has no chance of getting the data out.
#
# SIMSPARC_FAST_IDLE (erc32_bsp)
# If defined, speed up the clock ticks while the idle task is running so
# time spent in the idle task is minimized. This significantly reduces
# the wall time required to execute the RTEMS test suites.
#
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 NO_TABLE_MOVE 1" >>$@
@echo "/* #define CONSOLE_USE_INTERRUPTS 1 */" >>$@
@echo "#define CONSOLE_USE_POLLED 1" >>$@
@echo "/* #define SIMSPARC_FAST_IDLE 1 */" >>$@
endef
# The following are definitions of make-exe which will work using ld as
# is currently required. It is expected that as of gcc 2.8, the end user
# will be able to override parts of the compilers specs and link using gcc.
ifeq ($(RTEMS_USE_GCC272),yes)
define make-exe
$(LD) -u _sbrk $(LDFLAGS) -N -T $(LINKCMDS) -o $(basename $@).exe \
$(START_FILE) $(LINK_OBJS) --start-group $(LINK_LIBS) --end-group
$(NM) -g -n $(basename $@).exe > $(basename $@).num
$(SIZE) $(basename $@).exe
endef
else
define make-exe
$(CC) $(CFLAGS) $(CFLAGS_LD) -o $(basename $@).exe $(LINK_OBJS)
$(NM) -g -n $(basename $@).exe > $(basename $@).num
$(SIZE) $(basename $@).exe
endef
endif
# Miscellaneous additions go here

88
make/custom/force386.cfg Normal file
View File

@@ -0,0 +1,88 @@
#
# Config file for the force386 BSP
#
# $Id$
#
include $(RTEMS_ROOT)/make/custom/default.cfg
RTEMS_CPU=i386
RTEMS_CPU_MODEL=i386_fp
# This is the actual bsp directory used during the build process.
RTEMS_BSP_FAMILY=force386
# This contains the compiler options necessary to select the CPU model
# and (hopefully) optimize for it.
#
CPU_CFLAGS =
# optimize flag: typically -0, could use -O4 or -fast
# -O4 is ok for RTEMS
CFLAGS_OPTIMIZE_V=-O4 -fomit-frame-pointer
# Define this to yes if this target supports multiprocessor environments.
HAS_MP=yes
# This target does NOT support the KA9Q TCP/IP stack so ignore requests
# to enable it.
HAS_KA9Q=no
# 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
#
# 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.
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 */" >>$@
endef
# 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
# The following are definitions of make-exe which will work using ld as
# is currently required. It is expected that as of gcc 2.8, the end user
# will be able to override parts of the compilers specs and link using gcc.
ifeq ($(RTEMS_USE_GCC272),yes)
define make-exe
$(LD) $(LDFLAGS) -N -T $(LINKCMDS) -o $(basename $@).nxe \
$(START_FILE) $(LINK_OBJS) --start-group $(LINK_LIBS) --end-group
$(OBJCOPY) -O srec $(basename $@).nxe $(basename $@).i
$(SED) -e 's/.$$//' -e '/^S0/d' $(basename $@).i | \
$(PROJECT_TOOLS)/packhex > $(basename $@).exe
$(NM) -g -n $(basename $@).nxe > $(basename $@).num
$(SIZE) $(basename $@).nxe
endef
else
define make-exe
$(CC) $(CFLAGS) $(CFLAGS_LD) -o $(basename $@).nxe $(LINK_OBJS)
$(OBJCOPY) -O srec $(basename $@).nxe $(basename $@).i
$(SED) -e 's/.$$//' -e '/^S0/d' $(basename $@).i | \
$(PROJECT_TOOLS)/packhex > $(basename $@).exe
$(NM) -g -n $(basename $@).nxe > $(basename $@).num
$(SIZE) $(basename $@).nxe
endef
endif
# Miscellaneous additions go here

79
make/custom/gen68302.cfg Normal file
View File

@@ -0,0 +1,79 @@
#
# Config file for a "generic 68302" BSP
#
# $Id$
#
include $(RTEMS_ROOT)/make/custom/default.cfg
RTEMS_CPU=m68k
RTEMS_CPU_MODEL=m68302
# This is the actual bsp directory used during the build process.
RTEMS_BSP_FAMILY=gen68302
#
# This contains the compiler options necessary to select the CPU model
# and (hopefully) optimize for it.
#
CPU_CFLAGS=-m68302 -msoft-float
# optimize flag: typically -0, could use -O4 or -fast
# -O4 is ok for RTEMS
CFLAGS_OPTIMIZE_V=-O4 -fomit-frame-pointer
# This target does NOT support the KA9Q TCP/IP stack so ignore requests
# to enable it.
HAS_KA9Q=no
# 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
#
# 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.
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 */" >>$@
endef
# The following are definitions of make-exe which will work using ld as
# is currently required. It is expected that as of gcc 2.8, the end user
# will be able to override parts of the compilers specs and link using gcc.
ifeq ($(RTEMS_USE_GCC272),yes)
# override default location of Standard C Library
LIBC_LIBC=$(RTEMS_LIBC_DIR)/lib/m68000/libc.a
LIBC_LIBM=$(RTEMS_LIBC_DIR)/lib/m68000/libm.a
define make-exe
$(LD) $(LDFLAGS) -N -T $(LINKCMDS) -o $(basename $@).exe \
$(START_FILE) $(LINK_OBJS) --start-group $(LINK_LIBS) --end-group
$(NM) -g -n $(basename $@).exe > $(basename $@).num
$(SIZE) $(basename $@).exe
endef
else
define make-exe
$(CC) $(CFLAGS) $(CFLAGS_LD) -o $(basename $@).exe $(LINK_OBJS)
$(NM) -g -n $(basename $@).exe > $(basename $@).num
$(SIZE) $(basename $@).exe
endef
endif
# Miscellaneous additions go here

124
make/custom/gen68360.cfg Normal file
View File

@@ -0,0 +1,124 @@
#
# Config file for a "generic 68360" BSP
#
# $Id$
#
RTEMS_CPU=m68k
ifeq ($(RTEMS_GEN68360_COMPANION_MODE),yes)
TARGET_ARCH=o-gen68360_040
RTEMS_CPU_MODEL=m68040
else
TARGET_ARCH=o-gen68360
RTEMS_CPU_MODEL=m68360
endif
include $(RTEMS_ROOT)/make/custom/default.cfg
# This is the actual bsp directory used during the build process.
RTEMS_BSP_FAMILY=gen68360
## Target compiler config file, if any
CONFIG.$(TARGET_ARCH).CC = $(RTEMS_ROOT)/make/compilers/gcc-target-default.cfg
# We may install in a CPU model based directory but this is still
# a gen68360 based bsp.
RTEMS_BSP=gen68360
#
# mc68360 notes:
# If your version of gcc supports the -mcpu32 option use the top
# version, otherwise use the bottom set of flags to accomplish the
# same thing.
#
# NOTE: Before binutils 2.6, the -mcpu32 flag was not available
# if your gas does understand this, then use the alternative.
ifeq ($(RTEMS_GEN68360_COMPANION_MODE),yes)
CPU_CFLAGS= -m68040
else
#CPU_CFLAGS = -mcpu32 -msoft-float
CPU_CFLAGS = -m68020 -mnobitfield -msoft-float
# When using the -m68020 cpu flag, we need to explicitly define these
CPU_DEFINES=-Dmcpu32 -D__mcpu32__ $(DEFINES)
endif
# optimize flag: typically -0, could use -O4 or -fast
# -O4 is ok for RTEMS
CFLAGS_OPTIMIZE_V=-O4 -fomit-frame-pointer
# Override default start file
START_BASE=start360
# 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
#
# 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.
#
# M360_SMC1_INTERRUPT (gen68360 BSP)
# If defined, then the console driver operates in interrupt mode.
# Otherwise it operates in polled mode.
#
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 M360_SMC1_INTERRUPT 1" >>$@
endef
# The following are definitions of make-exe which will work using ld as
# is currently required. It is expected that as of gcc 2.8, the end user
# will be able to override parts of the compilers specs and link using gcc.
ifeq ($(RTEMS_USE_GCC272),yes)
# override default location of Standard C Library
LIBC_LIBC=$(RTEMS_LIBC_DIR)/lib/m68000/msoft-float/libc.a
LIBC_LIBM=$(RTEMS_LIBC_DIR)/lib/m68000/msoft-float/libm.a
ifeq ($(RTEMS_GEN68360_COMPANION_MODE),yes)
RTEMS_GEN68360_EXTRA_LDFLAGS=--defsym RamSize=0x100000
else
RTEMS_GEN68360_EXTRA_LDFLAGS=
endif
define make-exe
$(LD) $(LDFLAGS) -N -T $(LINKCMDS) -o $(basename $@).exe \
$(START_FILE) $(LINK_OBJS) --start-group $(LINK_LIBS) --end-group
$(NM) -g -n $(basename $@).exe > $(basename $@).num
$(SIZE) $(basename $@).exe
endef
else
ifeq ($(RTEMS_GEN68360_COMPANION_MODE),yes)
CFLAGS_LD=-Wl,--defsym -Wl,RamSize=0x100000
else
CFLAGS_LD=
endif
define make-exe
$(CC) $(CFLAGS) $(CFLAGS_LD) -o $(basename $@).exe $(LINK_OBJS)
$(NM) -g -n $(basename $@).exe > $(basename $@).num
$(SIZE) $(basename $@).exe
endef
endif
# Miscellaneous additions go here

View File

@@ -0,0 +1,15 @@
#
# Configuration file for a 68040 using the 68360 in companion mode
#
# $Id$
#
#
# All gen68360 configurations share the same base file, only the cpu model
# differs.
#
RTEMS_GEN68360_COMPANION_MODE=yes
include $(RTEMS_ROOT)/make/custom/gen68360.cfg

106
make/custom/gensh1.cfg Normal file
View File

@@ -0,0 +1,106 @@
#
# gensh1.cfg
#
# default configuration for Hitachi sh1 processors
#
# 97/12/02 Ralf Corsepius (corsepiu@faw.uni-ulm.de)
#
include $(RTEMS_ROOT)/make/custom/default.cfg
RTEMS_CPU=sh
RTEMS_CPU_MODEL=sh7032
# This is the actual bsp directory used during the build process.
RTEMS_BSP_FAMILY=amos
## GCC specs extension file location
RTEMS_BSP_SPECS = $(PROJECT_ROOT)/$(RTEMS_BSP)/lib/bsp_specs
#
# This contains the compiler options necessary to select the CPU model
# and (hopefully) optimize for it.
#
CPU_CFLAGS=-m1
# Use the LIBC support for CYGNUS newlib
# RTEMS_LIBC_DIR must already be set (by module file)
RTEMS_USE_NEWLIB=yes
# 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.
#
# Need "main" in BSP so can't link C++ sample test or you will get
# duplicate symbol errors for main
#
# not yet supported
HAS_CPLUSPLUS=no
# Define this to yes if this target supports multiprocessor environments.
HAS_MP=no
# This target does NOT support the KA9Q TCP/IP stack so ignore requests
# to enable it.
HAS_KA9Q=no
# optimize flag: typically -0, could use -O4 or -fast
# -O4 is ok for RTEMS
CFLAGS_OPTIMIZE_V=-O4
# 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
#
# 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.
#
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 */" >>$@
endef
# The following are definitions of make-exe which will work using ld as
# is currently required. It is expected that as of gcc 2.8, the end user
# will be able to override parts of the compilers specs and link using gcc.
# -T$(PROJECT_RELEASE)/lib/linkcmds $(LINK_FILES) -lrtemsall -lc $(LD_PATHS:%=-L %)
ifeq ($(RTEMS_USE_GCC272),yes)
define make-exe
echo "MAKEING EXE 272"
$(CC) $(LDFLAGS) -nostdlib -o $(basename $@).exe \
-T$(PROJECT_RELEASE)/lib/linkcmds $(LINK_FILES) $(LD_PATHS:%=-L %)
$(NM) -n $(basename $@).exe > $(basename $@).num
$(SIZE) $(basename $@).exe
endef
else
define make-exe
echo "MAKEING EXE 28x"
$(CC) -v -Wl,-Map,$(basename $@).map $(CFLAGS) -o $(basename $@).exe $(LINK_OBJS)
$(NM) -n $(basename $@).exe > $(basename $@).num
$(SIZE) $(basename $@).exe
endef
endif
# Miscellaneous additions go here
# Workaround for missing ranlib
MKLIB=sh-coff-ranlib $@; echo library is complete

121
make/custom/go32.cfg Normal file
View File

@@ -0,0 +1,121 @@
#
# Config file for the go32 BSP .. CPU model defaults to an i486DX
# unless set otherwise by a custom configuration file which overrides.
#
# $Id$
#
# default to i486dx as cpu
ifeq ($(RTEMS_GO32_CPU_MODEL),)
TARGET_ARCH=o-go32_i486dx
RTEMS_CPU_MODEL=i486dx
else
ifeq ($(RTEMS_GO32_CPU_MODEL),pentium)
TARGET_ARCH=o-go32_p5
RTEMS_CPU_MODEL=pentium
endif # pentium
endif # i486dx
include $(RTEMS_ROOT)/make/custom/default.cfg
# Sharing a single bsp among multiple cpu models results in us having to
# explicitly set some values normally taken care of in the defaults.cfg
# file.
RTEMS_CPU=i386
# This is the actual bsp directory used during the build process.
RTEMS_BSP_FAMILY=go32
## Target compiler config file, if any
CONFIG.$(TARGET_ARCH).CC = $(RTEMS_ROOT)/make/compilers/gcc-target-default.cfg
# We may install in a CPU model based directory but this is still
# a go32 based bsp.
RTEMS_BSP=go32
# This contains the compiler options necessary to select the CPU model
# and (hopefully) optimize for it.
#
# NOTE: As gcc grows to include more options, this section should also grow.
#
ifeq ($(RTEMS_CPU_MODEL),i486dx)
CPU_CFLAGS = -m486
else
ifeq ($(RTEMS_CPU_MODEL),pentium)
CPU_CFLAGS = -m486
else
CPU_CFLAGS =
endif # pentium
endif # i486dx
# optimize flag: typically -0, could use -O4 or -fast
# -O4 is ok for RTEMS
CFLAGS_OPTIMIZE_V=-O4 -fomit-frame-pointer
# This target does NOT support the KA9Q TCP/IP stack so ignore requests
# to enable it.
HAS_KA9Q=no
# Base name of start file
# go32 does not use the rtems start file
START_BASE=
# 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
#
# 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.
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 */" >>$@
endef
# Ultimately, it would be nice to do this when in a cross environment:
# $(COFF2EXE) $(basename $@).out
# The following are definitions of make-exe which will work using ld as
# is currently required. It is expected that as of gcc 2.8, the end user
# will be able to override parts of the compilers specs and link using gcc.
# may need to reference libpc.a
ifeq ($(RTEMS_USE_GCC272),yes)
define make-exe
$(LD) $(LDFLAGS) -N -o $(basename $@).exe \
$(shell $(CC) $(CPU_CFLAGS) -print-file-name=crt0.o) \
$(LINK_OBJS) --start-group $(LINK_LIBS) --end-group \
$(shell $(CC) $(CPU_CFLAGS) -print-file-name=libcgo32.a) \
$(shell $(CC) $(CPU_CFLAGS) -print-file-name=libpc.a)
$(NM) -g -n $(basename $@).exe > $(basename $@).num
$(SIZE) $(basename $@).exe
endef
else
define make-exe
$(CC) $(CFLAGS) $(CFLAGS_LD) -o $(basename $@).exe $(LINK_OBJS)
$(NM) -g -n $(basename $@).exe > $(basename $@).num
$(SIZE) $(basename $@).exe
endef
endif
# Miscellaneous additions go here

15
make/custom/go32_p5.cfg Normal file
View File

@@ -0,0 +1,15 @@
#
# Configuration file for a Pentium using the go32 BSP
#
# $Id$
#
#
# All go32 configurations share the same base file, only the cpu model
# differs.
#
RTEMS_GO32_CPU_MODEL=pentium
include $(RTEMS_ROOT)/make/custom/go32.cfg

89
make/custom/i386ex.cfg Normal file
View File

@@ -0,0 +1,89 @@
#
# Config file for the force386 BSP
#
# $Id$
#
include $(RTEMS_ROOT)/make/custom/default.cfg
RTEMS_CPU=i386
RTEMS_CPU_MODEL=i386_nofp
# This is the actual bsp directory used during the build process.
RTEMS_BSP_FAMILY=i386ex
# This contains the compiler options necessary to select the CPU model
# and (hopefully) optimize for it.
#
CPU_CFLAGS =
# optimize flag: typically -0, could use -O4 or -fast
# -O4 is ok for RTEMS
CFLAGS_OPTIMIZE_V=-O4 -fomit-frame-pointer
# This target does NOT support the KA9Q TCP/IP stack so ignore requests
# to enable it.
HAS_KA9Q=no
# 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
#
# 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.
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 */" >>$@
endef
# Something like this should produce a map file but this does not work.
# -Xlinker "-Map $(basename $@).map" $(LINK_OBJS)
#
# This is a good way to get debug information. The rdmp file is large
# though (1.9 Mb for hello) and greatly slows the build process.
# $(OBJDUMP) -x -m i386 -d $(basename $@).nxe > $(basename $@).rdmp
# The following are definitions of make-exe which will work using ld as
# is currently required. It is expected that as of gcc 2.8, the end user
# will be able to override parts of the compilers specs and link using gcc.
ifeq ($(RTEMS_USE_GCC272),yes)
define make-exe
$(LD) $(LDFLAGS) -N -T $(LINKCMDS) -o $(basename $@).nxe \
-noinhibit-exec -Map $(basename $@).map \
$(START_FILE) $(LINK_OBJS) --start-group $(LINK_LIBS) --end-group
$(OBJCOPY) -O srec $(basename $@).nxe $(basename $@).i
$(SED) -e 's/.$$//' -e '/^S0/d' $(basename $@).i | \
$(PROJECT_TOOLS)/packhex > $(basename $@).exe
$(NM) -g -n $(basename $@).nxe > $(basename $@).num
$(SIZE) $(basename $@).nxe
endef
else
define make-exe
$(CC) $(CFLAGS) $(CFLAGS_LD) -o $(basename $@).nxe $(LINK_OBJS)
$(OBJCOPY) -O srec $(basename $@).nxe $(basename $@).i
$(SED) -e 's/.$$//' -e '/^S0/d' $(basename $@).i | \
$(PROJECT_TOOLS)/packhex > $(basename $@).exe
$(NM) -g -n $(basename $@).nxe > $(basename $@).num
$(SIZE) $(basename $@).nxe
endef
endif
# Miscellaneous additions go here

85
make/custom/idp.cfg Normal file
View File

@@ -0,0 +1,85 @@
#
# Config file for the IDP BSP
#
# $Id$
#
include $(RTEMS_ROOT)/make/custom/default.cfg
RTEMS_CPU=m68k
RTEMS_CPU_MODEL=m68ec040
# This is the actual bsp directory used during the build process.
RTEMS_BSP_FAMILY=idp
# This target does NOT support the KA9Q TCP/IP stack so ignore requests
# to enable it.
HAS_KA9Q=no
# 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
#
# 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.
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 */" >>$@
endef
# This contains the compiler options necessary to select the CPU model
# and (hopefully) optimize for it.
#
CPU_CFLAGS = -msoft-float
# optimize flag: typically -0, could use -O4 or -fast
# -O4 is ok for RTEMS
CFLAGS_OPTIMIZE_V=-O4 -fomit-frame-pointer
# The following are definitions of make-exe which will work using ld as
# is currently required. It is expected that as of gcc 2.8, the end user
# will be able to override parts of the compilers specs and link using gcc.
ifeq ($(RTEMS_USE_GCC272),yes)
# override default location of Standard C Library
LIBC_LIBC=$(RTEMS_LIBC_DIR)/lib/msoft-float/libc.a
LIBC_LIBM=$(RTEMS_LIBC_DIR)/lib/msoft-float/libm.a
define make-exe
$(LD) $(LDFLAGS) -N -T $(LINKCMDS) -o $(basename $@).nxe \
$(START_FILE) $(LINK_OBJS) --start-group $(LINK_LIBS) --end-group
$(OBJCOPY) -O srec $(basename $@).nxe $(basename $@).i
$(SED) -e 's/.$$//' -e '/^S0/d' $(basename $@).i | \
$(PROJECT_TOOLS)/packhex > $(basename $@).exe
$(NM) -g -n $(basename $@).nxe > $(basename $@).num
$(SIZE) $(basename $@).nxe
endef
else
define make-exe
$(CC) $(CFLAGS) $(CFLAGS_LD) -o $(basename $@).nxe $(LINK_OBJS)
$(OBJCOPY) -O srec $(basename $@).nxe $(basename $@).i
$(SED) -e 's/.$$//' -e '/^S0/d' $(basename $@).i | \
$(PROJECT_TOOLS)/packhex > $(basename $@).exe
$(NM) -g -n $(basename $@).nxe > $(basename $@).num
$(SIZE) $(basename $@).nxe
endef
endif
# Miscellaneous additions go here

86
make/custom/mvme136.cfg Normal file
View File

@@ -0,0 +1,86 @@
#
# Config file for the mvme136 BSP
#
# $Id$
#
include $(RTEMS_ROOT)/make/custom/default.cfg
RTEMS_CPU=m68k
RTEMS_CPU_MODEL=m68020
# This is the actual bsp directory used during the build process.
RTEMS_BSP_FAMILY=mvme136
#
# This contains the compiler options necessary to select the CPU model
# and (hopefully) optimize for it.
#
CPU_CFLAGS =
# optimize flag: typically -0, could use -O4 or -fast
# -O4 is ok for RTEMS
CFLAGS_OPTIMIZE_V=-O4 -fomit-frame-pointer
# Define this to yes if this target supports multiprocessor environments.
HAS_MP=yes
# This target does NOT support the KA9Q TCP/IP stack so ignore requests
# to enable it.
HAS_KA9Q=no
# 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
#
# 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.
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 */" >>$@
endef
# The following are definitions of make-exe which will work using ld as
# is currently required. It is expected that as of gcc 2.8, the end user
# will be able to override parts of the compilers specs and link using gcc.
ifeq ($(RTEMS_USE_GCC272),yes)
define make-exe
$(LD) $(LDFLAGS) -N -T $(LINKCMDS) -o $(basename $@).nxe \
$(START_FILE) $(LINK_OBJS) --start-group $(LINK_LIBS) --end-group
$(OBJCOPY) -O srec $(basename $@).nxe $(basename $@).i
$(SED) -e 's/.$$//' -e '/^S0/d' $(basename $@).i | \
$(PROJECT_TOOLS)/packhex > $(basename $@).exe
$(NM) -g -n $(basename $@).nxe > $(basename $@).num
$(SIZE) $(basename $@).nxe
endef
else
define make-exe
$(CC) $(CFLAGS) $(CFLAGS_LD) -o $(basename $@).nxe $(LINK_OBJS)
$(OBJCOPY) -O srec $(basename $@).nxe $(basename $@).i
$(SED) -e 's/.$$//' -e '/^S0/d' $(basename $@).i | \
$(PROJECT_TOOLS)/packhex > $(basename $@).exe
$(NM) -g -n $(basename $@).nxe > $(basename $@).num
$(SIZE) $(basename $@).nxe
endef
endif
# Miscellaneous additions go here

79
make/custom/mvme147.cfg Normal file
View File

@@ -0,0 +1,79 @@
#
# Config file for the mvme147 BSP
#
# $Id$
#
include $(RTEMS_ROOT)/make/custom/default.cfg
RTEMS_CPU=m68k
RTEMS_CPU_MODEL=m68030
# This is the actual bsp directory used during the build process.
RTEMS_BSP_FAMILY=mvme147
# default flags
CPU_CFLAGS=
# optimize flag: typically -0, could use -O4 or -fast
# -O4 is ok for RTEMS
CFLAGS_OPTIMIZE_V=-O4 -fomit-frame-pointer
# This target does NOT support the KA9Q TCP/IP stack so ignore requests
# to enable it.
HAS_KA9Q=no
# 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
#
# 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.
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 */" >>$@
endef
# The following are definitions of make-exe which will work using ld as
# is currently required. It is expected that as of gcc 2.8, the end user
# will be able to override parts of the compilers specs and link using gcc.
ifeq ($(RTEMS_USE_GCC272),yes)
define make-exe
$(LD) $(LDFLAGS) -N -T $(LINKCMDS) -o $(basename $@).nxe \
$(START_FILE) $(LINK_OBJS) --start-group $(LINK_LIBS) --end-group
$(OBJCOPY) -O srec $(basename $@).nxe $(basename $@).i
$(SED) -e 's/.$$//' -e '/^S0/d' $(basename $@).i | \
$(PROJECT_TOOLS)/packhex > $(basename $@).exe
$(NM) -g -n $(basename $@).nxe > $(basename $@).num
$(SIZE) $(basename $@).nxe
endef
else
define make-exe
$(CC) $(CFLAGS) $(CFLAGS_LD) -o $(basename $@).nxe $(LINK_OBJS)
$(OBJCOPY) -O srec $(basename $@).nxe $(basename $@).i
$(SED) -e 's/.$$//' -e '/^S0/d' $(basename $@).i | \
$(PROJECT_TOOLS)/packhex > $(basename $@).exe
$(NM) -g -n $(basename $@).nxe > $(basename $@).num
$(SIZE) $(basename $@).nxe
endef
endif
# Miscellaneous additions go here

19
make/custom/mvme147s.cfg Normal file
View File

@@ -0,0 +1,19 @@
#
# Config file for the mvme147s BSP
#
# $Id$
#
#
# mvme147s and mvme147 use the same toolset
#
include $(RTEMS_ROOT)/make/custom/mvme147.cfg
# This is the actual bsp directory used during the build process.
RTEMS_BSP_FAMILY=mvme147s
# Define this to yes if this target supports multiprocessor environments.
HAS_MP=yes
# Miscellaneous additions go here

122
make/custom/mvme162.cfg Normal file
View File

@@ -0,0 +1,122 @@
#
# Config file for the mvme162 BSP
#
# $Id$
#
include $(RTEMS_ROOT)/make/custom/default.cfg
RTEMS_CPU=m68k
ifeq ($(RTEMS_MVME162_MODEL),mvme162lx)
TARGET_ARCH=o-mvme162lx
RTEMS_CPU_MODEL=m68lc040
else
ifeq ($(RTEMS_MVME162_MODEL),)
RTEMS_MVME162_MODEL=mvme162
TARGET_ARCH=o-mvme162
RTEMS_CPU_MODEL=m68040
endif # mvme162 - mc68040
endif # mvme162lx - mc68lc040
# This is the actual bsp directory used during the build process.
RTEMS_BSP_FAMILY=mvme162
## Target compiler config file, if any
CONFIG.$(TARGET_ARCH).CC = $(RTEMS_ROOT)/make/compilers/gcc-target-default.cfg
# We may install in a CPU model based directory but this is still
# a mvme162 based bsp.
RTEMS_BSP=mvme162
# This contains the compiler options necessary to select the CPU model
# and (hopefully) optimize for it.
#
ifeq ($(RTEMS_CPU_MODEL),m68040)
CPU_CFLAGS = -m68040
else
ifeq ($(RTEMS_CPU_MODEL),m68lc040)
CPU_CFLAGS = -m68040 -msoft-float
endif # mc68040
endif # mc68lc040
# optimize flag: typically -0, could use -O4 or -fast
# -O4 is ok for RTEMS
CFLAGS_OPTIMIZE_V=-O4 -fomit-frame-pointer
# This target does NOT support the KA9Q TCP/IP stack so ignore requests
# to enable it.
HAS_KA9Q=no
# 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.
define make-target-options
@echo "#undef $(RTEMS_MVME162_MODEL)" >>$@
@echo "#define $(RTEMS_MVME162_MODEL)" >>$@
@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 */" >>$@
endef
# The following are definitions of make-exe which will work using ld as
# is currently required. It is expected that as of gcc 2.8, the end user
# will be able to override parts of the compilers specs and link using gcc.
ifeq ($(RTEMS_USE_GCC272),yes)
ifeq ($(RTEMS_CPU_MODEL),m68lc040)
# override default location of Standard C Library
LIBC_LIBC=$(RTEMS_LIBC_DIR)/lib/msoft-float/libc.a
LIBC_LIBM=$(RTEMS_LIBC_DIR)/lib/msoft-float/libm.a
endif # mc68lc040
define make-exe
$(LD) $(LDFLAGS) -N -T $(LINKCMDS) -o $(basename $@).nxe \
$(START_FILE) $(LINK_OBJS) --start-group $(LINK_LIBS) --end-group
$(OBJCOPY) -O srec $(basename $@).nxe $(basename $@).i
$(SED) -e 's/.$$//' -e '/^S0/d' $(basename $@).i | \
$(PROJECT_TOOLS)/packhex > $(basename $@).exe
$(NM) -g -n $(basename $@).nxe > $(basename $@).num
$(SIZE) $(basename $@).nxe
endef
else
define make-exe
$(CC) $(CFLAGS) $(CFLAGS_LD) -o $(basename $@).nxe $(LINK_OBJS)
$(OBJCOPY) -O srec $(basename $@).nxe $(basename $@).i
$(SED) -e 's/.$$//' -e '/^S0/d' $(basename $@).i | \
$(PROJECT_TOOLS)/packhex > $(basename $@).exe
$(NM) -g -n $(basename $@).nxe > $(basename $@).num
$(SIZE) $(basename $@).nxe
endef
endif
# Miscellaneous additions go here

17
make/custom/mvme162lx.cfg Normal file
View File

@@ -0,0 +1,17 @@
#
# Configuration file for a MVME162LX
#
# This is an MVME162 model with ...
#
# $Id$
#
#
# All mvme162 configurations share the same base file, only the cpu model
# differs.
#
RTEMS_MVME162_MODEL=mvme162lx
include $(RTEMS_ROOT)/make/custom/mvme162.cfg

62
make/custom/no_bsp.cfg Normal file
View File

@@ -0,0 +1,62 @@
#
# Configuration file for the "no_bsp" board
#
# $Id$
#
# Specify here the host and target "architectures"
HOST_ARCH=o-$(RTEMS_HOST)
TARGET_ARCH=o-$(RTEMS_BSP)
RTEMS_CPU=no_cpu
RTEMS_CPU_MODEL=no_cpu_model
# This is the actual bsp directory used during the build process.
RTEMS_BSP_FAMILY=no_bsp
# 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
# 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=$(RTEMS_GNUTOOLS)
CONFIG.$(TARGET_ARCH).CC = $(RTEMS_ROOT)/make/compilers/gcc-$(RTEMS_BSP).cfg
# Use the LIBC support for CYGNUS newlib
# RTEMS_LIBC_DIR must already be set (by module file)
RTEMS_USE_NEWLIB=no
# 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.
#
# Need "main" in BSP so can't link C++ sample test or you will get
# duplicate symbol errors for main
#
HAS_CPLUSPLUS=no
# Define this to yes if this target supports multiprocessor environments.
HAS_MP=yes
# This target does NOT support the KA9Q TCP/IP stack so ignore requests
# to enable it.
HAS_KA9Q=no
# Define this to yes if this target wants the posix api
ifeq ($(RTEMS_HAS_POSIX_API),yes)
HAS_POSIX_API=yes
endif
# Miscellaneous additions go here

129
make/custom/ods68302.cfg Normal file
View File

@@ -0,0 +1,129 @@
#
# Config file for a "ODS 68302" BSP
#
# Differs from the gen68302 by providing most of the boot code as C
# code. This allows separate board definitions to be based on C
# header files. The file is based on the VARIANT defined.
#
# $Id$
#
include $(RTEMS_ROOT)/make/custom/default.cfg
RTEMS_CPU=m68k
RTEMS_CPU_MODEL=m68302
# This is the actual bsp directory used during the build process.
RTEMS_BSP_FAMILY=ods68302
#
# This contains the compiler options necessary to select the CPU model
# and (hopefully) optimize for it.
#
CPU_CFLAGS=-g -m68302 -msoft-float \
-DVARIANT=$(BSP_VARIANT) -DMC68302_BASE=$(MC68302_BASE) \
-DRAM_BASE=$(RAM_BASE) -DRAM_SIZE=$(RAM_SIZE) \
-DROM_BASE=$(ROM_BASE) -DROM_SIZE=$(ROM_SIZE)
# optimize flag: typically -0, could use -O4 or -fast
# -O4 is ok for RTEMS
CFLAGS_OPTIMIZE_V=-O4 -fomit-frame-pointer
# debugging please
CFLAGS_DEBUG_V+=-g
# This target does not support the ka9q tcp/ip stack so ignore requests
# to enable it.
HAS_KA9Q=no
# 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
# no standard C++ libs provided by default
#LIBCC_INCLUDE=/usr/include/g++
#CPLUS_LD_LIBS=-lstdc++ -lrtems++
CPLUS_LD_LIBS=$(PROJECT_RELEASE)/lib/librtems++$(LIBSUFFIX_VA)
else
HAS_CPLUSPLUS=no
endif
START_BASE=start302
# 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
#
# 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.
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" >>$@
endef
# The following are definitions of make-exe which will work using ld as
# is currently required. It is expected that as of gcc 2.8, the end user
# will be able to override parts of the compilers specs and link using gcc.
ifeq ($(RTEMS_USE_GCC272),yes)
# override default location of Standard C Library
LIBC_LIBC=$(RTEMS_LIBC_DIR)/lib/m68000/libc.a
LIBC_LIBM=$(RTEMS_LIBC_DIR)/lib/m68000/libm.a
define make-exe
$(LD) $(LDFLAGS) -N -Ttext $(ROM_BASE) \
-defsym MC68302_BASE=$(MC68302_BASE) \
-T $(LINKCMDS) -o $(basename $@).exe \
$(START_FILE) $(LINK_OBJS) --start-group $(LINK_LIBS) --end-group
$(NM) -g -n $(basename $@).exe > $(basename $@).num
$(SIZE) $(basename $@).exe
endef
else
define make-exe
$(CC) $(CFLAGS) $(CFLAGS_LD) \
-Wl,-defsym -Wl,MC68302_BASE=$(MC68302_BASE) \
-o $(basename $@).exe $(LINK_OBJS)
$(NM) -g -n $(basename $@).exe > $(basename $@).num
$(SIZE) $(basename $@).exe
endef
endif
# Miscellaneous additions go here
ifeq "$(strip $(BSP_VARIANT))" ""
BSP_VARIANT=bare
MC68302_BASE=0x00700000
RAM_BASE=0x00000000
RAM_SIZE=0x00100000
ifeq ($(RTEMS_DEBUGGER),yes)
ROM_BASE=0x00010000
LINKCMDS=$(PROJECT_RELEASE)/lib/debugrom
else
ROM_BASE=0x00C00000
LINKCMDS=$(PROJECT_RELEASE)/lib/rom
endif
ROM_SIZE=0x00100000
else
# pattern match the variant to set the memory map
endif

85
make/custom/p4000.cfg Normal file
View File

@@ -0,0 +1,85 @@
#
# Config file for the algorithmics p4000 evaluation board
#
# $Id$
#
# Override default start file
START_BASE=idt_csu
CPU_DEFINES+=-DP4000 -DCPU_R4000 -DP3_DIAG -D_R4000 -D__mips=3
# This is the actual bsp directory used during the build process.
RTEMS_BSP_FAMILY=p4000
# This target does NOT support the KA9Q TCP/IP stack so ignore requests
# to enable it.
HAS_KA9Q=no
# 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
#
# 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.
#
# WORKSPACE_MB (p4000)
# Defines the size in Megabytes of the RTEMS Workspace.
#
# HEAPSPACE_MB (p4000)
# Defines the size in Megabytes of the C Program Heap.
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 WORKSPACE_MB 2" >>$@
@echo "#define HEAPSPACE_MB 1" >>$@
endef
# optimize flag: typically -0, could use -O4 or -fast
# -O4 is ok for RTEMS
CFLAGS_OPTIMIZE_V=-O4 -fomit-frame-pointer
# The following are definitions of make-exe which will work using ld as
# is currently required. It is expected that as of gcc 2.8, the end user
# will be able to override parts of the compilers specs and link using gcc.
ifeq ($(RTEMS_USE_GCC272),yes)
define make-exe
$(CC) $(LDFLAGS) -nostdlib -o $(basename $@).exe \
-T$(PROJECT_RELEASE)/lib/linkcmds $(LINK_FILES) $(LD_PATHS:%=-L %)
$(OBJCOPY) -O srec $(basename $@).exe $(basename $@).srec1
$(PACKHEX) < $(basename $@).srec1 > $(basename $@).srec
$(RM) $(basename $@).srec1
$(NM) -n $(basename $@).exe > $(basename $@).num
$(SIZE) $(basename $@).exe
endef
else
define make-exe
$(CC) $(CFLAGS) $(CFLAGS_LD) -o $(basename $@).exe $(LINK_OBJS)
$(OBJCOPY) -O srec $(basename $@).exe $(basename $@).srec1
$(PACKHEX) < $(basename $@).srec1 > $(basename $@).srec
$(RM) $(basename $@).srec1
$(NM) -n $(basename $@).exe > $(basename $@).num
$(SIZE) $(basename $@).exe
endef
endif
# Miscellaneous additions go here

105
make/custom/p4600.cfg Normal file
View File

@@ -0,0 +1,105 @@
#
# Config file for the algorithmics p4000 evaluation board with R4600 cpu
#
# $Id$
#
include $(RTEMS_ROOT)/make/custom/default.cfg
RTEMS_CPU=mips64orion
RTEMS_CPU_MODEL=R4600
# This is the actual bsp directory used during the build process.
RTEMS_BSP_FAMILY=p4000
CPU_CFLAGS=-mcpu=4600 -G0
CCMIPS_CFLAGS_CPU=-cpu=r4600
# Override default start file
START_BASE=idt_csu
CPU_DEFINES+=-DP4000 -DCPU_R4000 -DP3_DIAG -D_R4000 -D__mips=3
# The p4600 and p4600 share the p4000 bsp.
TARGET_ARCH=o-p4600
RTEMS_BSP=p4000
## Target compiler config file, if any
CONFIG.$(TARGET_ARCH).CC = $(RTEMS_ROOT)/make/compilers/gcc-target-default.cfg
# This target does NOT support the KA9Q TCP/IP stack so ignore requests
# to enable it.
HAS_KA9Q=no
# 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
#
# 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.
#
# WORKSPACE_MB (p4000)
# Defines the size in Megabytes of the RTEMS Workspace.
#
# HEAPSPACE_MB (p4000)
# Defines the size in Megabytes of the C Program Heap.
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 WORKSPACE_MB 2" >>$@
@echo "#define HEAPSPACE_MB 1" >>$@
endef
# optimize flag: typically -0, could use -O4 or -fast
# -O4 is ok for RTEMS
CFLAGS_OPTIMIZE_V=-O4 -fomit-frame-pointer
# The following are definitions of make-exe which will work using ld as
# is currently required. It is expected that as of gcc 2.8, the end user
# will be able to override parts of the compilers specs and link using gcc.
ifeq ($(RTEMS_USE_GCC272),yes)
# This rule was used in 3.6.0
# $(CC) $(LDFLAGS) -nostdlib -o $(basename $@).exe \
# -T$(PROJECT_RELEASE)/lib/linkcmds $(LINK_FILES) $(LD_PATHS:%=-L %)
define make-exe
$(LD) $(LDFLAGS) -N -T $(LINKCMDS) -o $(basename $@).exe \
$(START_FILE) $(LINK_OBJS) --start-group $(LINK_LIBS) --end-group
$(OBJCOPY) -O srec $(basename $@).exe $(basename $@).srec1
$(PACKHEX) < $(basename $@).srec1 > $(basename $@).srec
$(RM) $(basename $@).srec1
$(NM) -n $(basename $@).exe > $(basename $@).num
$(SIZE) $(basename $@).exe
endef
else
define make-exe
$(CC) $(CFLAGS) $(CFLAGS_LD) -o $(basename $@).exe $(LINK_OBJS)
$(OBJCOPY) -O srec $(basename $@).exe $(basename $@).srec1
$(PACKHEX) < $(basename $@).srec1 > $(basename $@).srec
$(RM) $(basename $@).srec1
$(NM) -n $(basename $@).exe > $(basename $@).num
$(SIZE) $(basename $@).exe
endef
endif
# Miscellaneous additions go here

108
make/custom/p4650.cfg Normal file
View File

@@ -0,0 +1,108 @@
#
# Config file for the algorithmics p4000 evaluation board with R4650 cpu
#
# $Id$
#
include $(RTEMS_ROOT)/make/custom/default.cfg
RTEMS_CPU=mips64orion
RTEMS_CPU_MODEL=R4650
# This is the actual bsp directory used during the build process.
RTEMS_BSP_FAMILY=p4000
CPU_CFLAGS=-m4650 -G0
CCMIPS_CFLAGS_CPU=-cpu=r4650
# Override default start file
START_BASE=idt_csu
CPU_DEFINES+=-DP4000 -DCPU_R4000 -DP3_DIAG -D_R4000 -D__mips=3
# The p4600 and p4600 share the p4000 bsp.
TARGET_ARCH=o-p4650
RTEMS_BSP=p4000
## Target compiler config file, if any
CONFIG.$(TARGET_ARCH).CC = $(RTEMS_ROOT)/make/compilers/gcc-target-default.cfg
# This target does NOT support the KA9Q TCP/IP stack so ignore requests
# to enable it.
HAS_KA9Q=no
# 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
#
# 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.
#
# WORKSPACE_MB (p4000)
# Defines the size in Megabytes of the RTEMS Workspace.
#
# HEAPSPACE_MB (p4000)
# Defines the size in Megabytes of the C Program Heap.
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 WORKSPACE_MB 2" >>$@
@echo "#define HEAPSPACE_MB 1" >>$@
endef
# optimize flag: typically -0, could use -O4 or -fast
# -O4 is ok for RTEMS
CFLAGS_OPTIMIZE_V=-O4 -fomit-frame-pointer
# The following are definitions of make-exe which will work using ld as
# is currently required. It is expected that as of gcc 2.8, the end user
# will be able to override parts of the compilers specs and link using gcc.
ifeq ($(RTEMS_USE_GCC272),yes)
# This rule was used in 3.6.0
# $(CC) $(LDFLAGS) -nostdlib -o $(basename $@).exe \
# -T$(PROJECT_RELEASE)/lib/linkcmds $(LINK_FILES) $(LD_PATHS:%=-L %)
define make-exe
$(LD) $(LDFLAGS) -N -T $(LINKCMDS) -o $(basename $@).exe \
$(START_FILE) $(LINK_OBJS) --start-group $(LINK_LIBS) --end-group
$(OBJCOPY) -O srec $(basename $@).exe $(basename $@).srec1
$(PACKHEX) < $(basename $@).srec1 > $(basename $@).srec
$(RM) $(basename $@).srec1
$(NM) -n $(basename $@).exe > $(basename $@).num
$(SIZE) $(basename $@).exe
endef
else
define make-exe
$(CC) $(CFLAGS) $(CFLAGS_LD) -o $(basename $@).exe $(LINK_OBJS)
$(OBJCOPY) -O srec $(basename $@).exe $(basename $@).srec1
$(PACKHEX) < $(basename $@).srec1 > $(basename $@).srec
$(RM) $(basename $@).srec1
$(NM) -n $(basename $@).exe > $(basename $@).num
$(SIZE) $(basename $@).exe
endef
endif
# Miscellaneous additions go here

87
make/custom/papyrus.cfg Normal file
View File

@@ -0,0 +1,87 @@
#
# Config file for a PowerPC 403 based papyrus card
#
# $Id$
#
include $(RTEMS_ROOT)/make/custom/default.cfg
RTEMS_CPU=ppc
RTEMS_CPU_MODEL=ppc403
# This is the actual bsp directory used during the build process.
RTEMS_BSP_FAMILY=papyrus
CPU_DEFINES=-DPPC_ABI=PPC_ABI_POWEROPEN \
-DPPC_ASM=PPC_ASM_ELF -DPPC_VECTOR_FILE_BASE=0x0100
# This target does NOT support the KA9Q TCP/IP stack so ignore requests
# to enable it.
HAS_KA9Q=no
# 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
#
# 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.
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 */" >>$@
endef
# This contains the compiler options necessary to select the CPU model
# and (hopefully) optimize for it.
#
CPU_CFLAGS = -mcpu=403
# optimize flag: typically -0, could use -O4 or -fast
# -O4 is ok for RTEMS
# NOTE: some level of -O may be actually required by inline assembler
CFLAGS_OPTIMIZE_V=-O4 -fno-keep-inline-functions
# No start file
START_BASE=
# The following are definitions of make-exe which will work using ld as
# is currently required. It is expected that as of gcc 2.8, the end user
# will be able to override parts of the compilers specs and link using gcc.
ifeq ($(RTEMS_USE_GCC272),yes)
# The --defsym arguments define arguments which are required by the linkcmds
# file which is designed for gcc 2.8
define make-exe
$(LD) $(XLDFLAGS) -T $(LINKCMDS) \
--defsym __fini=0 --defsym __init=0 \
-o $@ -u atexit -u __vectors -u download_entry \
$(START_FILE) $(LINK_OBJS) --start-group $(LINK_LIBS) --end-group
$(NM) -g -n $@ > $(basename $@).num
$(SIZE) $@
endef
else
define make-exe
$(CC) $(CFLAGS) $(CFLAGS_LD) -o $(basename $@).exe $(LINK_OBJS)
$(NM) -g -n $@ > $(basename $@).num
$(SIZE) $@
endef
endif
# Miscellaneous additions go here

96
make/custom/pc386.cfg Normal file
View File

@@ -0,0 +1,96 @@
#
# Config file for the PC 386 BSP
#
# $Id$
#
include $(RTEMS_ROOT)/make/custom/default.cfg
RTEMS_CPU=i386
RTEMS_CPU_MODEL=i386_fp
# This is the actual bsp directory used during the build process.
RTEMS_BSP_FAMILY=pc386
# This contains the compiler options necessary to select the CPU model
# and (hopefully) optimize for it.
#
CPU_CFLAGS =
# optimize flag: typically -0, could use -O4 or -fast
# -O4 is ok for RTEMS
CFLAGS_OPTIMIZE_V=-O4 -fomit-frame-pointer
# Define this to yes if this target supports multiprocessor environments.
HAS_MP=no
# This target does NOT support the KA9Q TCP/IP stack so ignore requests
# to enable it.
HAS_KA9Q=no
# 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
#
# 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.
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 */" >>$@
endef
# 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
#+--------------------------------------------------------------------------+
#| Relocation address. Set this to the linear address where you want your code
#| to start. It should abide to the following constraints:
#| RELOCADDR >= 0x10200
#| RELOCADDR + 'image file size' < 0xA0000
#| RELOCADDR % 4 = 0 (i.e. aligned on a 4 byte boundary)
#+--------------------------------------------------------------------------+
RELOCADDR=0x00020200
# The following are definitions of make-exe which will work using ld as
# is currently required. It is expected that as of gcc 2.8, the end user
# will be able to override parts of the compilers specs and link using gcc.
ifeq ($(RTEMS_USE_GCC272),yes)
define make-exe
$(LD) -N -T $(LINKCMDS) -Ttext $(RELOCADDR) -e start -nostdlib \
-o $(basename $@).elf \
$(START_FILE) $(LINK_OBJS) --start-group $(LINK_LIBS) --end-group
$(OBJCOPY) -O binary --set-start $(RELOCADDR) $(basename $@).elf $@
$(PROJECT_TOOLS)/bin2boot -v $@ $(basename $@).bin -s $(RELOCADDR)
$(NM) -g -n $(basename $@).elf > $(basename $@).num
$(SIZE) $(basename $@).elf
endef
else
define make-exe
$(CC) $(CFLAGS) $(CFLAGS_LD) -o $(basename $@).elf $(LINK_OBJS)
$(OBJCOPY) -O binary --set-start $(RELOCADDR) $(basename $@).elf $@
$(PROJECT_TOOLS)/bin2boot -v $@ $(basename $@).bin -s $(RELOCADDR)
$(NM) -g -n $(basename $@).elf > $(basename $@).num
$(SIZE) $(basename $@).elf
endef
endif
# Miscellaneous additions go here

64
make/custom/portsw.cfg Normal file
View File

@@ -0,0 +1,64 @@
#
# Custom file for "portsw" -- AMD 29205 based board
#
# $Id$
#
# Specify here the host and target "architectures"
HOST_ARCH=o-$(RTEMS_HOST)
TARGET_ARCH=o-$(RTEMS_BSP)
RTEMS_CPU=a29k
RTEMS_CPU_MODEL=a29205
# This is the actual bsp directory used during the build process.
RTEMS_BSP_FAMILY=portsw
# 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
INLINE=macros
INLINE_UPCASE=
# The makefiles all use PROJECT_xxx for variables.
# Ie: $(PROJECT_RELEASE) is the install point.
# Externally, we think of these as "RTEMS" variables.
# Here is where we convert from RTEMS forms to PROJECT forms
# See also make/main.cfg, which derives some more.
PROJECT_ROOT=$(RTEMS_ROOT)/c
# 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=$(RTEMS_GNUTOOLS)
CONFIG.$(TARGET_ARCH).CC = $(RTEMS_ROOT)/make/compilers/gcc-$(RTEMS_BSP).cfg
# Use the LIBC support for CYGNUS newlib
# RTEMS_LIBC_DIR must already be set (by module file)
RTEMS_USE_NEWLIB=yes
# 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.
#
# Need "main" in BSP so can't link C++ sample test or you will get
# duplicate symbol errors for main
#
HAS_CPLUSPLUS=no
# Define this to yes if this target supports multiprocessor environments.
HAS_MP=no
# This target does NOT support the KA9Q TCP/IP stack so ignore requests
# to enable it.
HAS_KA9Q=no
# Define this to yes if this target wants the posix api
ifeq ($(RTEMS_HAS_POSIX_API),yes)
HAS_POSIX_API=yes
endif
# Miscellaneous additions go here

12
make/custom/posix.cfg Normal file
View File

@@ -0,0 +1,12 @@
#
# Config file for the posix based RTEMS
#
# $Id$
#
include $(PROJECT_ROOT)/make/target.cfg
include $(PROJECT_ROOT)/make/host.cfg
include $(RTEMS_ROOT)/make/custom/$(RTEMS_HOST)-posix.cfg

145
make/custom/simhppa.cfg Normal file
View File

@@ -0,0 +1,145 @@
#
# Config file for the 7100 pa-risc simulator
#
# $Id$
#
include $(RTEMS_ROOT)/make/custom/default.cfg
RTEMS_CPU=hppa1_1
RTEMS_CPU_MODEL=hppa7200
# This is the actual bsp directory used during the build process.
RTEMS_BSP_FAMILY=simhppa
# This contains the compiler options necessary to select the CPU model
# and (hopefully) optimize for it.
#
# Possibles:
# -mpa-risc-1-1 -- HPPA 1.1 instead of 1.0
# -mportable-runtime
#
CPU_CFLAGS = -mpa-risc-1-1 -mportable-runtime
# Possibles:
# -Wall -- lots of warnings
# -pipe -- compiler uses pipes to talk to phases (usually faster)
# -ansi -- ANSI C compliance
# -fasm -- ANSI, but allow inline assembler
# -mgas -- we are using gas as assembler
# -fno-keep-inline-functions -- do not emit any inlines as static
CFLAGS_DEFAULT = $(CPU_CFLAGS) -Wall -ansi -fasm -mgas
# optimize flag: typically -0, could use -O4 or -fast
# -O4 is ok for RTEMS
# NOTE: some level of -O may be actually required by inline assembler
CFLAGS_OPTIMIZE_V=-O4 -fno-keep-inline-functions
# Define this to yes if this target supports multiprocessor environments.
HAS_MP=yes
# This target does NOT support the KA9Q TCP/IP stack so ignore requests
# to enable it.
HAS_KA9Q=no
# This 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
#
# 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.
#
# SIMHPPA_FAST_IDLE (simhppa)
# If defined, speed up the clock ticks while the idle task is running so
# time spent in the idle task is minimized. This significantly reduces
# the wall time required to execute the RTEMS test suites.
#
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 SIMHPPA_FAST_IDLE 1 " >>$@
endef
#
# GNU ld options
# `-Tbss ORG'
# `-Tdata ORG'
# `-Ttext ORG'
# Use ORG as the starting address for--respectively--the `bss',
# `data', or the `text' segment of the output file. ORG must be a
# single hexadecimal integer; for compatibility with other linkers,
# you may omit the leading `0x' usually associated with hexadecimal
# values.
# '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
# XXX some/all of this should move into 'linkcmds'
# single processor
DATA_0_BASE=0x40001000
TEXT_0_BASE=0x00001000
# first node (mptests number them from 1)
DATA_1_BASE=$(DATA_0_BASE)
TEXT_1_BASE=$(TEXT_0_BASE)
# second node (mptests number them from 1)
DATA_2_BASE=0x48001000
TEXT_2_BASE=0x08001000
# for hpux ld
#LD_LOC_OPTIONS=-D $(DATA_$(NODE)_BASE) -R $(TEXT_$(NODE)_BASE)
# for gnu ld
LD_LOC_OPTIONS=-Tdata $(DATA_$(NODE)_BASE) -Ttext $(TEXT_$(NODE)_BASE)
GCC_LD_LOC_OPTIONS=-W,l-T -W,ldata -W,l$(DATA_$(NODE)_BASE) \
-W,l-T -W,ltext -W,l$(TEXT_$(NODE)_BASE)
# The following are definitions of make-exe which will work using ld as
# is currently required. It is expected that as of gcc 2.8, the end user
# will be able to override parts of the compilers specs and link using gcc.
ifeq ($(RTEMS_USE_GCC272),yes)
define make-exe
$(LDARGS) $(LD) $(LD_LOC_OPTIONS) $(XLDFLAGS) -a archive \
-o $@ -u atexit \
$(START_FILE) $(LINK_OBJS) --start-group $(LINK_LIBS) --end-group
$(NM) -g -n $@ > $(basename $@).num
$(SIZE) $@
endef
else
define make-exe
$(CC) $(CFLAGS) $(CFLAGS_LD) $(GCC_LD_LOC_OPTIONS) \
-o $(basename $@).exe $(LINK_OBJS)
$(NM) -g -n $@ > $(basename $@).num
$(SIZE) $@
endef
endif
define make-rel
$(LDARGS) $(LD) $(LDFLAGS_INCOMPLETE) $(XLDFLAGS) -o $@ $(OBJS)
endef