forked from Imagelibrary/rtems
Removed targets and configurations that are no longer functional
and not likely to become so. Comments on each configuration
are below.
+ Force CPU386 - This BSP was developed as part of the initial
port of RTEMS to the i386. This board has been unavailable
for a long time now.
+ GO32 - This BSP and some CPU code supported djgpp v1.x. This
version is now quite old. No one has stepped forward to
update the code to v2.x which may be technically impossible
anyway. More importantly, go32 has been superceded by the pc386 BSP.
This commit is contained in:
@@ -186,8 +186,7 @@ The following bsps are supported:
|
|||||||
host-based : posix (on linux, solaris and hpux)
|
host-based : posix (on linux, solaris and hpux)
|
||||||
|
|
||||||
a29k : portsw
|
a29k : portsw
|
||||||
i386 : force386 i386ex pc386
|
i386 : i386ex pc386
|
||||||
i386-go32 : go32 go32_p5
|
|
||||||
i960 : cvme961
|
i960 : cvme961
|
||||||
hppa1.1 : simhppa
|
hppa1.1 : simhppa
|
||||||
m68k : dmv152 efi332 efi68k gen68302 gen68340 gen68360
|
m68k : dmv152 efi332 efi68k gen68302 gen68340 gen68360
|
||||||
|
|||||||
@@ -96,20 +96,20 @@
|
|||||||
All binary targets are placed in a sub-directory whose name is (for
|
All binary targets are placed in a sub-directory whose name is (for
|
||||||
example):
|
example):
|
||||||
|
|
||||||
o-force386/ -- binaries (no debug, no profile)
|
o-pc386/ -- binaries (no debug, no profile)
|
||||||
o-force386-debug/ -- debug binaries
|
o-pc386-debug/ -- debug binaries
|
||||||
o-force386-profile/ -- profiling binaries
|
o-pc386-profile/ -- profiling binaries
|
||||||
|
|
||||||
Using the template Makefiles, this will all happen automatically.
|
Using the template Makefiles, this will all happen automatically.
|
||||||
|
|
||||||
Within a Makefile, the ${ARCH} variable is set to o-force386,
|
Within a Makefile, the ${ARCH} variable is set to o-pc386,
|
||||||
o-force386-debug, etc., as appropriate.
|
o-pc386-debug, etc., as appropriate.
|
||||||
|
|
||||||
Typing 'make' will place objects in o-force386.
|
Typing 'make' will place objects in o-pc386.
|
||||||
'make debug' will place objects in o-force386-debug.
|
'make debug' will place objects in o-pc386-debug.
|
||||||
'make profile' will place objects in o-force386-profile.
|
'make profile' will place objects in o-pc386-profile.
|
||||||
|
|
||||||
NOTE: For RTEMS work, the word 'force386' is the specified
|
NOTE: For RTEMS work, the word 'pc386' is the specified
|
||||||
RTEMS_BSP (specified in the modules file)
|
RTEMS_BSP (specified in the modules file)
|
||||||
|
|
||||||
The debug and profile targets are equivalent to 'all' except that
|
The debug and profile targets are equivalent to 'all' except that
|
||||||
@@ -188,7 +188,7 @@
|
|||||||
compiler and host operating system. The environment variable
|
compiler and host operating system. The environment variable
|
||||||
RTEMS_CUSTOM must point to this file; eg:
|
RTEMS_CUSTOM must point to this file; eg:
|
||||||
|
|
||||||
/.../make/custom/force386.cfg
|
/.../make/custom/pc386.cfg
|
||||||
|
|
||||||
All leaf Makefile's also include either 'make/leaf.cfg' (or
|
All leaf Makefile's also include either 'make/leaf.cfg' (or
|
||||||
'make/lib.cfg' for building libraries). These config files provide
|
'make/lib.cfg' for building libraries). These config files provide
|
||||||
@@ -217,7 +217,7 @@
|
|||||||
Your own private configuration file. Specifies which of the above
|
Your own private configuration file. Specifies which of the above
|
||||||
files you want to include.
|
files you want to include.
|
||||||
|
|
||||||
Example: custom/force386.cfg
|
Example: custom/pc386.cfg
|
||||||
|
|
||||||
CONFIG.$(HOST_ARCH).OS = $(RTEMS_ROOT)/make/os/HPUX-9.0.cfg
|
CONFIG.$(HOST_ARCH).OS = $(RTEMS_ROOT)/make/os/HPUX-9.0.cfg
|
||||||
|
|
||||||
@@ -228,7 +228,7 @@
|
|||||||
|
|
||||||
## Target compiler config file, if any
|
## Target compiler config file, if any
|
||||||
CC_$(TARGET_ARCH)_DIR=$(RTEMS_GNUTOOLS)
|
CC_$(TARGET_ARCH)_DIR=$(RTEMS_GNUTOOLS)
|
||||||
CONFIG.$(TARGET_ARCH).CC = $(RTEMS_ROOT)/make/compilers/gcc-force386.cfg
|
CONFIG.$(TARGET_ARCH).CC = $(RTEMS_ROOT)/make/compilers/gcc-pc386.cfg
|
||||||
|
|
||||||
generic rules file
|
generic rules file
|
||||||
------------------
|
------------------
|
||||||
@@ -276,7 +276,7 @@
|
|||||||
Environment Variables
|
Environment Variables
|
||||||
---------------------
|
---------------------
|
||||||
|
|
||||||
RTEMS_BSP -- name of your 'bsp' eg: force386
|
RTEMS_BSP -- name of your 'bsp' eg: pc386
|
||||||
|
|
||||||
RTEMS_ROOT -- The root of your source tree.
|
RTEMS_ROOT -- The root of your source tree.
|
||||||
All other file names are derived from this.
|
All other file names are derived from this.
|
||||||
@@ -327,7 +327,7 @@
|
|||||||
obsolete and should not be referenced
|
obsolete and should not be referenced
|
||||||
|
|
||||||
ARCH -- target sub-directory for object code
|
ARCH -- target sub-directory for object code
|
||||||
[ eg: o-force386 or o-force386-debug ]
|
[ eg: o-pc386 or o-pc386-debug ]
|
||||||
|
|
||||||
HOST_ARCH
|
HOST_ARCH
|
||||||
-- host machine architecture name
|
-- host machine architecture name
|
||||||
@@ -335,7 +335,7 @@
|
|||||||
|
|
||||||
VARIANTS -- full list of all possible values for $(ARCH);
|
VARIANTS -- full list of all possible values for $(ARCH);
|
||||||
used mainly for 'make clean'
|
used mainly for 'make clean'
|
||||||
[ eg: "o-force386 o-force386-debug o-force386-profile" ]
|
[ eg: "o-pc386 o-pc386-debug o-pc386-profile" ]
|
||||||
|
|
||||||
VARIANT_VA -- Variant name.
|
VARIANT_VA -- Variant name.
|
||||||
Normally "", but for 'make debug' it is "debug",
|
Normally "", but for 'make debug' it is "debug",
|
||||||
@@ -455,7 +455,7 @@
|
|||||||
Since 'make clobber' includes 'make clean',
|
Since 'make clobber' includes 'make clean',
|
||||||
you don't need to duplicate items in both.
|
you don't need to duplicate items in both.
|
||||||
|
|
||||||
TARGET_ARCH -- target architecture (eg: o-force386)
|
TARGET_ARCH -- target architecture (eg: o-pc386)
|
||||||
leaf makefiles only.
|
leaf makefiles only.
|
||||||
Should be specified before 'include leaf.cfg'.
|
Should be specified before 'include leaf.cfg'.
|
||||||
Only needs to be specified if your target is
|
Only needs to be specified if your target is
|
||||||
|
|||||||
32
make/README
32
make/README
@@ -96,20 +96,20 @@
|
|||||||
All binary targets are placed in a sub-directory whose name is (for
|
All binary targets are placed in a sub-directory whose name is (for
|
||||||
example):
|
example):
|
||||||
|
|
||||||
o-force386/ -- binaries (no debug, no profile)
|
o-pc386/ -- binaries (no debug, no profile)
|
||||||
o-force386-debug/ -- debug binaries
|
o-pc386-debug/ -- debug binaries
|
||||||
o-force386-profile/ -- profiling binaries
|
o-pc386-profile/ -- profiling binaries
|
||||||
|
|
||||||
Using the template Makefiles, this will all happen automatically.
|
Using the template Makefiles, this will all happen automatically.
|
||||||
|
|
||||||
Within a Makefile, the ${ARCH} variable is set to o-force386,
|
Within a Makefile, the ${ARCH} variable is set to o-pc386,
|
||||||
o-force386-debug, etc., as appropriate.
|
o-pc386-debug, etc., as appropriate.
|
||||||
|
|
||||||
Typing 'make' will place objects in o-force386.
|
Typing 'make' will place objects in o-pc386.
|
||||||
'make debug' will place objects in o-force386-debug.
|
'make debug' will place objects in o-pc386-debug.
|
||||||
'make profile' will place objects in o-force386-profile.
|
'make profile' will place objects in o-pc386-profile.
|
||||||
|
|
||||||
NOTE: For RTEMS work, the word 'force386' is the specified
|
NOTE: For RTEMS work, the word 'pc386' is the specified
|
||||||
RTEMS_BSP (specified in the modules file)
|
RTEMS_BSP (specified in the modules file)
|
||||||
|
|
||||||
The debug and profile targets are equivalent to 'all' except that
|
The debug and profile targets are equivalent to 'all' except that
|
||||||
@@ -188,7 +188,7 @@
|
|||||||
compiler and host operating system. The environment variable
|
compiler and host operating system. The environment variable
|
||||||
RTEMS_CUSTOM must point to this file; eg:
|
RTEMS_CUSTOM must point to this file; eg:
|
||||||
|
|
||||||
/.../make/custom/force386.cfg
|
/.../make/custom/pc386.cfg
|
||||||
|
|
||||||
All leaf Makefile's also include either 'make/leaf.cfg' (or
|
All leaf Makefile's also include either 'make/leaf.cfg' (or
|
||||||
'make/lib.cfg' for building libraries). These config files provide
|
'make/lib.cfg' for building libraries). These config files provide
|
||||||
@@ -217,7 +217,7 @@
|
|||||||
Your own private configuration file. Specifies which of the above
|
Your own private configuration file. Specifies which of the above
|
||||||
files you want to include.
|
files you want to include.
|
||||||
|
|
||||||
Example: custom/force386.cfg
|
Example: custom/pc386.cfg
|
||||||
|
|
||||||
CONFIG.$(HOST_ARCH).OS = $(RTEMS_ROOT)/make/os/HPUX-9.0.cfg
|
CONFIG.$(HOST_ARCH).OS = $(RTEMS_ROOT)/make/os/HPUX-9.0.cfg
|
||||||
|
|
||||||
@@ -228,7 +228,7 @@
|
|||||||
|
|
||||||
## Target compiler config file, if any
|
## Target compiler config file, if any
|
||||||
CC_$(TARGET_ARCH)_DIR=$(RTEMS_GNUTOOLS)
|
CC_$(TARGET_ARCH)_DIR=$(RTEMS_GNUTOOLS)
|
||||||
CONFIG.$(TARGET_ARCH).CC = $(RTEMS_ROOT)/make/compilers/gcc-force386.cfg
|
CONFIG.$(TARGET_ARCH).CC = $(RTEMS_ROOT)/make/compilers/gcc-pc386.cfg
|
||||||
|
|
||||||
generic rules file
|
generic rules file
|
||||||
------------------
|
------------------
|
||||||
@@ -276,7 +276,7 @@
|
|||||||
Environment Variables
|
Environment Variables
|
||||||
---------------------
|
---------------------
|
||||||
|
|
||||||
RTEMS_BSP -- name of your 'bsp' eg: force386
|
RTEMS_BSP -- name of your 'bsp' eg: pc386
|
||||||
|
|
||||||
RTEMS_ROOT -- The root of your source tree.
|
RTEMS_ROOT -- The root of your source tree.
|
||||||
All other file names are derived from this.
|
All other file names are derived from this.
|
||||||
@@ -327,7 +327,7 @@
|
|||||||
obsolete and should not be referenced
|
obsolete and should not be referenced
|
||||||
|
|
||||||
ARCH -- target sub-directory for object code
|
ARCH -- target sub-directory for object code
|
||||||
[ eg: o-force386 or o-force386-debug ]
|
[ eg: o-pc386 or o-pc386-debug ]
|
||||||
|
|
||||||
HOST_ARCH
|
HOST_ARCH
|
||||||
-- host machine architecture name
|
-- host machine architecture name
|
||||||
@@ -335,7 +335,7 @@
|
|||||||
|
|
||||||
VARIANTS -- full list of all possible values for $(ARCH);
|
VARIANTS -- full list of all possible values for $(ARCH);
|
||||||
used mainly for 'make clean'
|
used mainly for 'make clean'
|
||||||
[ eg: "o-force386 o-force386-debug o-force386-profile" ]
|
[ eg: "o-pc386 o-pc386-debug o-pc386-profile" ]
|
||||||
|
|
||||||
VARIANT_VA -- Variant name.
|
VARIANT_VA -- Variant name.
|
||||||
Normally "", but for 'make debug' it is "debug",
|
Normally "", but for 'make debug' it is "debug",
|
||||||
@@ -455,7 +455,7 @@
|
|||||||
Since 'make clobber' includes 'make clean',
|
Since 'make clobber' includes 'make clean',
|
||||||
you don't need to duplicate items in both.
|
you don't need to duplicate items in both.
|
||||||
|
|
||||||
TARGET_ARCH -- target architecture (eg: o-force386)
|
TARGET_ARCH -- target architecture (eg: o-pc386)
|
||||||
leaf makefiles only.
|
leaf makefiles only.
|
||||||
Should be specified before 'include leaf.cfg'.
|
Should be specified before 'include leaf.cfg'.
|
||||||
Only needs to be specified if your target is
|
Only needs to be specified if your target is
|
||||||
|
|||||||
@@ -1,74 +0,0 @@
|
|||||||
#
|
|
||||||
# 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
|
|
||||||
# -fomit-frame-pointer breaks debugging and C++ exceptions
|
|
||||||
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
|
|
||||||
#
|
|
||||||
# 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 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 | \
|
|
||||||
$(PACKHEX) > $(basename $@).exe
|
|
||||||
$(NM) -g -n $(basename $@).nxe > $(basename $@).num
|
|
||||||
$(SIZE) $(basename $@).nxe
|
|
||||||
endef
|
|
||||||
else
|
|
||||||
define make-exe
|
|
||||||
$(CC) $(CPPFLAGS) $(CFLAGS) $(CFLAGS_LD) -o $(basename $@).nxe \
|
|
||||||
$(LINK_OBJS) $(LINK_LIBS)
|
|
||||||
$(OBJCOPY) -O srec $(basename $@).nxe $(basename $@).i
|
|
||||||
$(SED) -e 's/.$$//' -e '/^S0/d' $(basename $@).i | \
|
|
||||||
$(PACKHEX) > $(basename $@).exe
|
|
||||||
$(NM) -g -n $(basename $@).nxe > $(basename $@).num
|
|
||||||
$(SIZE) $(basename $@).nxe
|
|
||||||
endef
|
|
||||||
endif
|
|
||||||
|
|
||||||
# Miscellaneous additions go here
|
|
||||||
|
|
||||||
@@ -1,110 +0,0 @@
|
|||||||
#
|
|
||||||
# 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
|
|
||||||
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
|
|
||||||
# -fomit-frame-pointer breaks debugging and C++ exceptions
|
|
||||||
CFLAGS_OPTIMIZE_V=-O4
|
|
||||||
|
|
||||||
# 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
|
|
||||||
#
|
|
||||||
# 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 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 $(GCCSED)) \
|
|
||||||
$(shell $(CC) $(CPU_CFLAGS) -print-file-name=libpc.a $(GCCSED))
|
|
||||||
$(NM) -g -n $(basename $@).exe > $(basename $@).num
|
|
||||||
$(SIZE) $(basename $@).exe
|
|
||||||
endef
|
|
||||||
|
|
||||||
else
|
|
||||||
define make-exe
|
|
||||||
$(CC) $(CPPFLAGS) $(CFLAGS) $(CFLAGS_LD) -o $(basename $@).exe \
|
|
||||||
$(LINK_OBJS) $(LINK_LIBS)
|
|
||||||
$(NM) -g -n $(basename $@).exe > $(basename $@).num
|
|
||||||
$(SIZE) $(basename $@).exe
|
|
||||||
endef
|
|
||||||
|
|
||||||
endif
|
|
||||||
|
|
||||||
|
|
||||||
# Miscellaneous additions go here
|
|
||||||
@@ -1,15 +0,0 @@
|
|||||||
#
|
|
||||||
# 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
|
|
||||||
|
|
||||||
Reference in New Issue
Block a user