summaryrefslogblamecommitdiffstats
path: root/scripts/mkpkg
blob: 4db0fefbc06b46fb7bda128022d9faf7d606d78d (plain) (tree)




















                                              
                             
 


                              
                           
 
 

                           
                                         
 
 

                          

                                              
                                     
                                        







                                                 

                                          









                                                 


          

                         

                                                                 
                                                               

                                  
                                       
                                                               


                                       
                                                               

                                  
                                       
                                       

                                  
                                       
                                         




                                                 
                                           










                                                 


          

                             
 

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