#!/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"