summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@oarcorp.com>2014-05-02 16:28:39 -0500
committerJoel Sherrill <joel.sherrill@oarcorp.com>2014-05-02 16:28:39 -0500
commit5e5439a3efd5148b0adf2de82a2dfe192b71b3d2 (patch)
treef2b5ea3e056116db42f96c1122638ce1607b393a
parentc882ea6d972ee3d43947b4de4a87bdb2d5e378b5 (diff)
bit_rtems: Add SMP and keep going support
-rwxr-xr-xrtems/bit_rtems20
-rw-r--r--rtems/user.cfg25
2 files changed, 31 insertions, 14 deletions
diff --git a/rtems/bit_rtems b/rtems/bit_rtems
index fe31f44..3860dd9 100755
--- a/rtems/bit_rtems
+++ b/rtems/bit_rtems
@@ -281,6 +281,12 @@ else
POSIX_FLAG="--disable-posix"
fi
+if [ ${ENABLE_RTEMS_SMP} = yes ] ; then
+ SMP_FLAG="--enable-smp"
+else
+ SMP_FLAG="--disable-smp"
+fi
+
if [ ${ENABLE_RTEMS_ITRON} = yes ] ; then
ITRON_FLAG="--enable-itron"
else
@@ -351,7 +357,7 @@ fi
ENABLE_ARGS="\
--prefix=${INSTALL_POINT} \
- ${DISABLE_INLINES_FLAG} ${ENABLE_MP_FLAG} \
+ ${DISABLE_INLINES_FLAG} ${ENABLE_MP_FLAG} ${ENABLE_SMP_FLAG} \
${ENABLE_RTEMS_DEBUG} ${ENABLE_RTEMS_CXX} \
${ENABLE_RTEMS_RDBG} ${ENABLE_RTEMS_MAINTAINER_MODE} \
${RTEMS_TESTS_FLAG} ${TCPIP_FLAG} \
@@ -388,16 +394,24 @@ fi
njobs=`expr ${ncpus} / 2 + 1 + ${ncpus}`
echo "Using make ${njobs} parallel jobs"
+if [ ${ENABLE_KEEP_BUILDING} = "yes" ] ; then
+ MAKE_KEEP_GOING_ARG="-k"
+else
+ MAKE_KEEP_GOING_ARG=""
+fi
+
case ${BSP_TO_TEST} in
multilib)
echo "Executing ${MAKE} ${MAKE_DEBUG_ARG} ..."
- ${MAKE} -j${njobs} RTEMS_BSP= ${MAKE_DEBUG_ARG}
+ ${MAKE} -j${njobs} ${MAKE_KEEP_GOING_ARG} ${MAKE_DEBUG_ARG} \
+ RTEMS_BSP=
check_fatal $? "failed ${MAKE} ${MAKE_DEBUG_ARG}."
BSP_TO_TEST=
;;
*)
echo "Executing ${MAKE} ${MAKE_DEBUG_ARG} ..."
- ${MAKE} -j${njobs} RTEMS_BSP=${BSP_TO_TEST} ${MAKE_DEBUG_ARG}
+ ${MAKE} -j${njobs} ${MAKE_KEEP_GOING_ARG} ${MAKE_DEBUG_ARG} \
+ RTEMS_BSP=${BSP_TO_TEST}
check_fatal $? "failed ${MAKE} ${MAKE_DEBUG_ARG}."
;;
esac
diff --git a/rtems/user.cfg b/rtems/user.cfg
index 4ab8d54..52b95d4 100644
--- a/rtems/user.cfg
+++ b/rtems/user.cfg
@@ -15,10 +15,7 @@
# Recommended installation point for various OS's:
# Linux: /usr/local/rtems
# Solaris: /opt/gnu/rtems
-#INSTALL_POINT=/opt/rtems-4.10
-#INSTALL_POINT=/opt/rtems-test
-INSTALL_POINT=/home/joel/rtems-4.10-work/bsp-install/
-#INSTALL_POINT=/home/joel/work-gnat/svn/bsp-install/
+INSTALL_POINT=/home/joel/rtems-4.11-work/bsp-install/
#
# RTEMS Configuration Information
@@ -35,23 +32,34 @@ ENABLE_RTEMS_MULTILIB=no
# POSIX functionality including POSIX threads support.
ENABLE_RTEMS_POSIX=yes
+# Set this to yes if you want to build the TCP/IP stack and
+# associated clients and servers. This is automatically disabled
+# for BSPs that have no networking support.
+ENABLE_RTEMS_TCPIP=no
+
# Set this to yes if you want to enable the RTEMS uITRON 3.0 API
# implementation. This API is not completely implemented and
# volunteers are encouraged to assist in finishing it.
ENABLE_RTEMS_ITRON=no
-# Set this to yes if you want to enable multiprocessing support.
+# Set this to yes if you want to enable distributed multiprocessing support.
# Multiprocessing is automatically disabled for BSPs without MP support.
ENABLE_RTEMS_MP=no
+# Set this to yes if you want to enable SMP support.
+ENABLE_RTEMS_SMP=yes
+
# Set this to yes if you want to enable C++ support including
# the RTEMS Classic API class libraries
ENABLE_RTEMS_CXX=no
+# Set this to yes if you want to keep building (e.g. make -k)
+ENABLE_KEEP_BUILDING=yes
+
# Set this to yes if you want to build the full set of RTEMS
# tests appropriate for your configuration. Or set it to
# samples if you just want the samples
-# ENABLE_RTEMS_TESTS=no
+# ENABLE_RTEMS_TESTS=samples
# ENABLE_RTEMS_TESTS=samples
ENABLE_RTEMS_TESTS=yes
@@ -66,11 +74,6 @@ ENABLE_RTEMS_ADA=no
# Classic API Ada binding.
ENABLE_RTEMS_ADA_TESTS=yes
-# Set this to yes if you want to build the TCP/IP stack and
-# associated clients and servers. This is automatically disabled
-# for BSPs that have no networking support.
-ENABLE_RTEMS_TCPIP=yes
-
# Set this to yes if you want to enable a remote debugging
# via Ethernet. Currently this is not supported on all ports
# of RTEMS.