summaryrefslogtreecommitdiffstats
path: root/make/custom
diff options
context:
space:
mode:
Diffstat (limited to 'make/custom')
-rw-r--r--make/custom/HPUX9-posix.cfg62
-rw-r--r--make/custom/Linux-posix.cfg76
-rw-r--r--make/custom/Solaris-posix.cfg60
-rw-r--r--make/custom/cvme961.cfg87
-rw-r--r--make/custom/default.cfg73
-rw-r--r--make/custom/dmv152.cfg92
-rw-r--r--make/custom/efi332.cfg86
-rw-r--r--make/custom/efi68k.cfg83
-rw-r--r--make/custom/erc32.cfg110
-rw-r--r--make/custom/force386.cfg88
-rw-r--r--make/custom/gen68302.cfg79
-rw-r--r--make/custom/gen68360.cfg124
-rw-r--r--make/custom/gen68360_040.cfg15
-rw-r--r--make/custom/gensh1.cfg106
-rw-r--r--make/custom/go32.cfg121
-rw-r--r--make/custom/go32_p5.cfg15
-rw-r--r--make/custom/i386ex.cfg89
-rw-r--r--make/custom/idp.cfg85
-rw-r--r--make/custom/mvme136.cfg86
-rw-r--r--make/custom/mvme147.cfg79
-rw-r--r--make/custom/mvme147s.cfg19
-rw-r--r--make/custom/mvme162.cfg122
-rw-r--r--make/custom/mvme162lx.cfg17
-rw-r--r--make/custom/no_bsp.cfg62
-rw-r--r--make/custom/ods68302.cfg129
-rw-r--r--make/custom/p4000.cfg85
-rw-r--r--make/custom/p4600.cfg105
-rw-r--r--make/custom/p4650.cfg108
-rw-r--r--make/custom/papyrus.cfg87
-rw-r--r--make/custom/pc386.cfg96
-rw-r--r--make/custom/portsw.cfg64
-rw-r--r--make/custom/posix.cfg12
-rw-r--r--make/custom/simhppa.cfg145
33 files changed, 2667 insertions, 0 deletions
diff --git a/make/custom/HPUX9-posix.cfg b/make/custom/HPUX9-posix.cfg
new file mode 100644
index 0000000000..9331e13185
--- /dev/null
+++ b/make/custom/HPUX9-posix.cfg
@@ -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
diff --git a/make/custom/Linux-posix.cfg b/make/custom/Linux-posix.cfg
new file mode 100644
index 0000000000..c339d4e670
--- /dev/null
+++ b/make/custom/Linux-posix.cfg
@@ -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
diff --git a/make/custom/Solaris-posix.cfg b/make/custom/Solaris-posix.cfg
new file mode 100644
index 0000000000..af8d0c1cfe
--- /dev/null
+++ b/make/custom/Solaris-posix.cfg
@@ -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
diff --git a/make/custom/cvme961.cfg b/make/custom/cvme961.cfg
new file mode 100644
index 0000000000..bcf2d1e38c
--- /dev/null
+++ b/make/custom/cvme961.cfg
@@ -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
+
diff --git a/make/custom/default.cfg b/make/custom/default.cfg
new file mode 100644
index 0000000000..f73241ceb9
--- /dev/null
+++ b/make/custom/default.cfg
@@ -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
+
diff --git a/make/custom/dmv152.cfg b/make/custom/dmv152.cfg
new file mode 100644
index 0000000000..fc4fce6979
--- /dev/null
+++ b/make/custom/dmv152.cfg
@@ -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
diff --git a/make/custom/efi332.cfg b/make/custom/efi332.cfg
new file mode 100644
index 0000000000..4df0ca48a8
--- /dev/null
+++ b/make/custom/efi332.cfg
@@ -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
diff --git a/make/custom/efi68k.cfg b/make/custom/efi68k.cfg
new file mode 100644
index 0000000000..7ae0fc0485
--- /dev/null
+++ b/make/custom/efi68k.cfg
@@ -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
diff --git a/make/custom/erc32.cfg b/make/custom/erc32.cfg
new file mode 100644
index 0000000000..91adc1ad77
--- /dev/null
+++ b/make/custom/erc32.cfg
@@ -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
+
+
+
diff --git a/make/custom/force386.cfg b/make/custom/force386.cfg
new file mode 100644
index 0000000000..bb4b4ca489
--- /dev/null
+++ b/make/custom/force386.cfg
@@ -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
+
diff --git a/make/custom/gen68302.cfg b/make/custom/gen68302.cfg
new file mode 100644
index 0000000000..8d420f183d
--- /dev/null
+++ b/make/custom/gen68302.cfg
@@ -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
diff --git a/make/custom/gen68360.cfg b/make/custom/gen68360.cfg
new file mode 100644
index 0000000000..ec6be076a4
--- /dev/null
+++ b/make/custom/gen68360.cfg
@@ -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
diff --git a/make/custom/gen68360_040.cfg b/make/custom/gen68360_040.cfg
new file mode 100644
index 0000000000..66c120c803
--- /dev/null
+++ b/make/custom/gen68360_040.cfg
@@ -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
+
diff --git a/make/custom/gensh1.cfg b/make/custom/gensh1.cfg
new file mode 100644
index 0000000000..0a2ee9aef9
--- /dev/null
+++ b/make/custom/gensh1.cfg
@@ -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
+
diff --git a/make/custom/go32.cfg b/make/custom/go32.cfg
new file mode 100644
index 0000000000..d7c91db343
--- /dev/null
+++ b/make/custom/go32.cfg
@@ -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
diff --git a/make/custom/go32_p5.cfg b/make/custom/go32_p5.cfg
new file mode 100644
index 0000000000..45668dfaa4
--- /dev/null
+++ b/make/custom/go32_p5.cfg
@@ -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
+
diff --git a/make/custom/i386ex.cfg b/make/custom/i386ex.cfg
new file mode 100644
index 0000000000..de2fa90a29
--- /dev/null
+++ b/make/custom/i386ex.cfg
@@ -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
+
diff --git a/make/custom/idp.cfg b/make/custom/idp.cfg
new file mode 100644
index 0000000000..fc02e984be
--- /dev/null
+++ b/make/custom/idp.cfg
@@ -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
diff --git a/make/custom/mvme136.cfg b/make/custom/mvme136.cfg
new file mode 100644
index 0000000000..778d37cb28
--- /dev/null
+++ b/make/custom/mvme136.cfg
@@ -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
+
+
+
diff --git a/make/custom/mvme147.cfg b/make/custom/mvme147.cfg
new file mode 100644
index 0000000000..2e97606042
--- /dev/null
+++ b/make/custom/mvme147.cfg
@@ -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
+
+
diff --git a/make/custom/mvme147s.cfg b/make/custom/mvme147s.cfg
new file mode 100644
index 0000000000..95dfa70f29
--- /dev/null
+++ b/make/custom/mvme147s.cfg
@@ -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
diff --git a/make/custom/mvme162.cfg b/make/custom/mvme162.cfg
new file mode 100644
index 0000000000..e94780b5a8
--- /dev/null
+++ b/make/custom/mvme162.cfg
@@ -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
+
+
+
diff --git a/make/custom/mvme162lx.cfg b/make/custom/mvme162lx.cfg
new file mode 100644
index 0000000000..881df8202c
--- /dev/null
+++ b/make/custom/mvme162lx.cfg
@@ -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
+
diff --git a/make/custom/no_bsp.cfg b/make/custom/no_bsp.cfg
new file mode 100644
index 0000000000..dc252f0560
--- /dev/null
+++ b/make/custom/no_bsp.cfg
@@ -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
diff --git a/make/custom/ods68302.cfg b/make/custom/ods68302.cfg
new file mode 100644
index 0000000000..6b97980bf2
--- /dev/null
+++ b/make/custom/ods68302.cfg
@@ -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
diff --git a/make/custom/p4000.cfg b/make/custom/p4000.cfg
new file mode 100644
index 0000000000..f0745883d6
--- /dev/null
+++ b/make/custom/p4000.cfg
@@ -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
+
diff --git a/make/custom/p4600.cfg b/make/custom/p4600.cfg
new file mode 100644
index 0000000000..98174cd4ed
--- /dev/null
+++ b/make/custom/p4600.cfg
@@ -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
+
diff --git a/make/custom/p4650.cfg b/make/custom/p4650.cfg
new file mode 100644
index 0000000000..cc3877f5e2
--- /dev/null
+++ b/make/custom/p4650.cfg
@@ -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
+
+
+
+
+
diff --git a/make/custom/papyrus.cfg b/make/custom/papyrus.cfg
new file mode 100644
index 0000000000..8607f9ae44
--- /dev/null
+++ b/make/custom/papyrus.cfg
@@ -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
+
+
diff --git a/make/custom/pc386.cfg b/make/custom/pc386.cfg
new file mode 100644
index 0000000000..d014dbc866
--- /dev/null
+++ b/make/custom/pc386.cfg
@@ -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
+
diff --git a/make/custom/portsw.cfg b/make/custom/portsw.cfg
new file mode 100644
index 0000000000..18c69f0479
--- /dev/null
+++ b/make/custom/portsw.cfg
@@ -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
diff --git a/make/custom/posix.cfg b/make/custom/posix.cfg
new file mode 100644
index 0000000000..05f6a56cdd
--- /dev/null
+++ b/make/custom/posix.cfg
@@ -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
+
+
diff --git a/make/custom/simhppa.cfg b/make/custom/simhppa.cfg
new file mode 100644
index 0000000000..0976b4d3f6
--- /dev/null
+++ b/make/custom/simhppa.cfg
@@ -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