Files
m68k-bdm/m68k/local_scripts/build-it
Bernd Mueller adfd70813f initial push
2026-06-17 13:44:30 +02:00

136 lines
2.5 KiB
Bash
Executable File

#!/bin/sh
#
# Checks the status returned by executables and exits if it is non-zero.
#
check_fatal()
{
if [ $1 -ne 0 ] ; then
shift
echo "error: $*" >&2
exit 1
fi
}
#
# What OS are we on.
#
OS=`uname`
case ${OS} in
Linux)
DO_DRIVER=Yes
DRIVER=linux
DO_LIB=Yes
DO_SERVER=Yes
DO_TEST=Yes
DO_UTILS=Yes
;;
FreeBSD)
DO_DRIVER=Yes
DRIVER=freebsd
DO_LIB=Yes
DO_SERVER=Yes
DO_TEST=Yes
DO_UTILS=Yes
;;
CYGWIN*)
DO_LIB=Yes
DO_TEST=Yes
DO_UTILS=Yes
;;
*)
echo "error: operating system not supported"
exit 1
;;
esac
#
# Figure out if GNU make is available. This is for FreeBSD.
#
gmake_found=no
for name in gmake make
do
if [ ${gmake_found} = "no" ] ; then
${name} --version > /dev/null 2>&1
if [ $? -eq 0 ] ; then
MAKE=${name}
gmake_found=yes
fi
fi
done
if [ ${gmake_found} = "no" ] ; then
echo "Unable to locate a version of GNU make in your PATH"
echo "GNU Make is required to build these tools."
exit 1
fi
if [ x${DO_DRIVER} = "xYes" ]; then
echo "Building BDM Driver for ${OS}"
cd driver/${DRIVER}
check_fatal $? "cannot cd to \`driver/${DRIVER}'."
echo ${MAKE} clean
${MAKE} clean
check_fatal $? "cannot clean \`driver/${DRIVER}'."
echo ${MAKE}
${MAKE}
check_fatal $? "cannot make \`driver/${DRIVER}'."
cd ../../
fi
if [ x${DO_LIB} = "xYes" ]; then
echo "Building BDM Library for ${OS}"
cd lib
check_fatal $? "cannot cd to \`lib'."
echo ${MAKE} clean
${MAKE} clean
check_fatal $? "cannot clean \`lib'."
echo ${MAKE}
${MAKE}
check_fatal $? "cannot make \`lib'."
cd ../
fi
if [ x${DO_SERVER} = "xYes" ]; then
echo "Building BDM Server for ${OS}"
cd server
check_fatal $? "cannot cd to \`server'."
echo ${MAKE} clean
${MAKE} clean
check_fatal $? "cannot clean \`server'."
echo ${MAKE}
${MAKE}
check_fatal $? "cannot make \`server'."
cd ../
fi
if [ x${DO_TEST} = "xYes" ]; then
echo "Building BDM Tests for ${OS}"
cd test
check_fatal $? "cannot cd to \`test'."
echo ${MAKE} clean
${MAKE} clean
check_fatal $? "cannot clean \`test'."
echo ${MAKE}
${MAKE}
check_fatal $? "cannot make \`test'."
cd ../
fi
if [ x${DO_UTILS} = "xYes" ]; then
echo "Building BDM Utilites for ${OS}"
cd utils
check_fatal $? "cannot cd to \`utils'."
echo ${MAKE} clean
${MAKE} clean
check_fatal $? "cannot clean \`utils'."
echo ${MAKE}
${MAKE}
check_fatal $? "cannot make \`utils'."
cd ../
fi