blob: af47f42283fbd9cf08a391a6199b1db5342c011f [file] [log] [blame]
#!/bin/bash
OK=0
FAIL=1
TOPDIR=`pwd`
LOG_FILE=$1.log
LOG_DIR=${TOPDIR}/log/
LOG=${LOG_DIR}/${LOG_FILE}
DEPENDENCY=${LOG_DIR}/DEPEND/$1.depend.txt
LOG_OK_DIR=${LOG_DIR}/OK
LOG_FAIL_DIR=${LOG_DIR}/FAIL
LOG_OK_FILE=${LOG_OK_DIR}/${LOG_FILE}.OK
LOG_FAIL_FILE=${LOG_FAIL_DIR}/${LOG_FILE}.FAIL
mkdir -p ${LOG_DIR}
mkdir -p ${LOG_OK_DIR}
mkdir -p ${LOG_FAIL_DIR}
mkdir -p ${LOG_DIR}/DEPEND
test=${OK}
function clean_files()
{
rm -f ${LOG}
rm -f ${LOG_OK_FILE}
rm -f ${LOG_FAIL_FILE}
rm -f ${DEPENDENCY}
}
function dirclean ()
{
make $1-dirclean > /dev/null 2>&1
}
function process ()
{
make $1 >> ${LOG} 2>&1 || test=${FAIL}
grep "\.tar\." ${LOG} > ${DEPENDENCY}
if [ ${test} == ${OK} ] ; then
mv ${LOG} ${LOG_OK_FILE}
printf "%-16s" "OK"
if [ "${2}X" != "X" ] ; then
printf "%-16s" "\"$2\"";
fi
if [ "${3}X" != "X" ] ; then
printf "%s" "\"$3\"";
fi
echo
else
mv ${LOG} ${LOG_FAIL_FILE}
printf "%-16s" "FAIL"
if [ "${2}X" != "X" ] ; then
printf "%-16s" "\"$2\"";
else
printf "%-16s" "\"\""
fi
if [ "${3}X" != "X" ] ; then
printf "%s" "\"$3\"";
fi
echo
fi
}
function build_package ()
{
# echo "BUILD PACKAGE:1=$1 2=$2 3=$3 4=$4 5=$5 6=$6 7=$7"
printf "mk %-32s" "$1"
if [ "$2X" == "X" ] ; then # no parameters
clean_files $1
dirclean $1
process $1 "$3"
elif [ "$2X" == "?X" ] ; then # no parameters
clean_files $1
dirclean $1
process $1 "$3"
elif [ "$2X" == "OKX" ] ; then # Previous build was OK
clean_files $1
dirclean $1
process $1 "$3"
elif [ "$2X" == "FAILX" ] ; then
clean_files $1
dirclean $1
process $1 "$3"
elif [ "$2X" == "BROKENX" ] ; then
printf "%-16s" "BROKEN"
if [ "${3}X" != "X" ] ; then
printf "%s" "\"$3\"";
fi
echo
elif [ "$2X" == "DISABLEDX" ] ; then
printf "%-16s" "DISABLED"
if [ "${3}X" != "X" ] ; then
printf "%s" "\"$3\"";
fi
echo
else
printf "%-16s" "?BROKEN"
if [ "${3}X" != "X" ] ; then
printf "%s" "\"$3\"";
fi
echo
fi
}
#build_package $1 $2 "\"$3\""
build_package $1 $2 "$3"