If you have not previously unarchived the build tools, then you
will need to unarchive the build scripts at this point if you
plan to use bit_rtems to build RTEMS. If this is the
case, you will have to execute the following additional command
since you did not do it as part of building the tools.
cd tools
tar xzf ../archive/c_build_scripts-4.5.0.tgz
This script interprets the settings in the user.cfg file to
enable or disable the various RTEMS options. The RTEMS
specific entries described below must be set to
tailor the RTEMS configuration to meet your application requirements:
RTEMS
is the directory under tools that contains rtems-4.5.0.
ENABLE_RTEMS_POSIX
is set to "yes" if you want to enable the RTEMS POSIX API support.
At this time, this feature is not supported by the UNIX ports of RTEMS
and is forced to "no" for those targets. This corresponds to the
configure option --enable-posix.
ENABLE_RTEMS_ITRON
is set to "yes" if you want to enable the RTEMS ITRON API support.
At this time, this feature is not supported by the UNIX ports of RTEMS
and is forced to "no" for those targets. This corresponds to the
configure option --enable-itron.
ENABLE_RTEMS_MP
is set to "yes" if you want to enable the RTEMS multiprocessing
support. This feature is not supported by all RTEMS BSPs and
is automatically forced to "no" for those BSPs. This corresponds to the
configure option --enable-multiprocessing.
ENABLE_RTEMS_CXX
is set to "yes" if you want to build the RTEMS C++ support including
the C++ Wrapper for the Classic API. This corresponds to the
configure option --enable-cxx.
ENABLE_RTEMS_TESTS
is set to "yes" if you want to build the RTEMS Test Suite. If this
is set to "no", then only the Sample Tests will be built. Setting
this option to "yes" significantly increases the amount of disk
space required to build RTEMS.
This corresponds to the configure option --enable-tests.
ENABLE_RTEMS_TCPIP
is set to "yes" if you want to build the RTEMS TCP/IP Stack. If a
particular BSP does not support TCP/IP, then this feature is automatically
disabled. This corresponds to the configure option
--enable-tcpip.
ENABLE_RTEMS_NONDEBUG
is set to "yes" if you want to build RTEMS in a fully optimized
state. This corresponds to executing make after configuring
the source tree.
ENABLE_RTEMS_DEBUG
is set to "yes" if you want to build RTEMS in a debug version.
When built for debug, RTEMS will include run-time code to
perform consistency checks such as heap consistency checks.
Although the precise compilation arguments are BSP dependent,
the debug version of RTEMS is usually built at a lower optimization
level. This is usually done to reduce inlining which can make
tracing code execution difficult. This corresponds to executing
make VARIANT=debug after configuring
the source tree.
INSTALL_RTEMS
is set to "yes" if you want to install RTEMS after building it.
This corresponds to executing make install after configuring
and building the source tree.
ENABLE_RTEMS_MAINTAINER_MODE
is set to "yes" if you want to enabled maintainer mode functionality
in the RTEMS Makefile. This is disabled by default and it is not
expected that most users will want to enable this. When this option
is enabled, the build process may attempt to regenerate files that
require tools not required when this option is disabled.
This corresponds to the configure option
--enable-maintainer-mode.
After tailoring user.cfg for your application, the bit_rtems
script may be invoked as follows:
./bit_rtems CPU [BSP]
Where CPU is one of the RTEMS supported CPU families from the following
list:
hppa1.1
i386
i386-coff
i386-elf
i960
m68k
m68k-coff
mips64orion
powerpc
sh
sh-elf
sparc
BSP is a supported BSP for the selected CPU family. The list of
supported BSPs may be found in the file
tools/rtems-4.5.0/README.configure
in the RTEMS source tree. If the BSP parameter is not specified,
then all supported BSPs for the selected CPU family will be built.
NOTE: The POSIX API must be enabled to use GNAT/RTEMS.