#!/bin/sh usage() { echo 'Usage: ...' echo '-u svn update' echo '-j jobs to be handled' echo 'default to ' ${jarg} echo '---------------------' } parse() { RED='\033[0;31m' NC='\033[0m' # No Color while getopts "uj:" option do case ${option} in u) update="1" ;; j) case ${OPTARG} in (*[!0-9]*|'') echo -e "${RED}number expected for jobs${NC}; default value used." ;; (*) jarg=${OPTARG} ;; esac ;; esac done } jarg=`sysctl -n hw.ncpu` if [ $? -ne 0 ] then usage else parse ${*} fi [ ${update} ] && svn update /usr/src echo Cleaning chflags -R noschg /usr/obj/* && rm -rf /usr/obj echo building process on ${jarg} jobs cd /usr/src && \ make -j${jarg} buildworld && make -j${jarg} kernel KERNCONF=PEPINS && \ echo "Reboot the system."