lw-build-system/skel/scripts/functions.sh

65 lines
1.1 KiB
Bash
Raw Normal View History

2006-07-24 14:24:06 +01:00
#!/bin/bash
# @P@/scripts/functions.sh
#
# (c)2006, Laurence Withers. Released under the GNU GPL. See file
# COPYING for more information / terms of license.
#
# Common functions
# Print a success message
print_success() {
if [ -z "${TERM}" -o "${TERM}" == "dumb" ]
then
echo -n " - "
else
(echo -n -e " \E[32m* "; tput sgr0)
fi
echo $*
}
# Print a failure message
print_failure() {
if [ -z "${TERM}" -o "${TERM}" == "dumb" ]
then
echo -n " *** "
else
(echo -n -e " \E[31m*** "; tput sgr0)
fi
echo $*
}
# This function carries out a command, but reports its failure if
# necessary.
do_cmd() {
[ "${VERBOSE}" != "0" ] && echo "$@"
"$@"
if [ $? -ne 0 ]
then
print_failure "'$@' failed."
return 1
fi
}
# This function carries out a command, but reports its failure if
# necessary.
do_cmd_redir() {
DEST=$1
shift
[ "${VERBOSE}" != "0" ] && echo "$@ \>\> ${DEST}"
"$@" >> ${DEST}
if [ $? -ne 0 ]
then
print_failure "'$@' failed."
return 1
fi
}