From: build <build@41d37cc5-eb28-0410-a9bf-d37491348ade> Date: Wed, 21 Feb 2007 10:32:55 +0000 (+0000) Subject: supports new options for make X-Git-Tag: foo~530 X-Git-Url: http://git.onelab.eu/?a=commitdiff_plain;h=376abace646f6a19e85c90c9728682c67edb13d6;p=infrastructure.git supports new options for make --- diff --git a/scripts/nightly-build.sh b/scripts/nightly-build.sh index 567a726..dd513f9 100755 --- a/scripts/nightly-build.sh +++ b/scripts/nightly-build.sh @@ -11,16 +11,6 @@ CHROOTDIR=/root/bin # plc chroot runs in UTC date=$(date -u +'%Y.%m.%d') -function usage () { - echo "$COMMAND [option]" - echo " -d CVSROOT" - echo " -r TAG" - echo " -m MAILTO" - echo " -f DISTRO" - echo " -b BASE" - exit 1 -} - ### in the root context function do_chroot () { chroot /plc/devel/root su - build <<EOF @@ -65,40 +55,6 @@ function use_base () { fi } -function manage_distro () { - - echo manage_distro disabled - -# both .mk and .xml inserted into princeton's cvs - -# DISTROFILE=$BUILD/$DISTRO.mk -# -# if [ -f $DISTROFILE ] ; then -# echo Using $DISTROFILE -# elif [ -f $ROOT/$DISTRO.mk ] ; then -# echo Using $ROOT/$DISTRO.mk -# ln -s $ROOT/$DISTRO.mk $DISTROFILE -# else -# echo Could not locate $DISTRO.mk -# exit 1 -# fi -# -# if [ "$DISTRO" != planetlab ] ; then -# DISTROFILE=$BUILD/$DISTRO.xml -# -# if [ -f $DISTROFILE ] ; then -# echo Using $DISTROFILE -# elif [ -f $ROOT/$DISTRO.xml ] ; then -# echo Using $ROOT/$DISTRO.xml -# ln -s $ROOT/$DISTRO.xml $DISTROFILE -# else -# echo Could not locate $DISTRO.xml -# exit 1 -# fi -# fi - -} - function build () { trap failure ERR INT set -x @@ -111,10 +67,8 @@ function build () { cd $ROOT cvs -d $CVSROOT co -d $BASE build - manage_distro - echo "Running make IN build $(pwd)" - make TAG=${TAG} PLDISTRO=${DISTRO} -C $BASE + make ${MAKEOPTS[@]} TAG=${TAG} PLDISTRO=${DISTRO} ${MAKEVARS[@]} -C $BASE $MAKETARGETS # only if successful rm -f latest @@ -130,22 +84,43 @@ function show_env () { echo DISTRO=$DISTRO } +function usage () { + echo "Usage: $COMMAND [option] make-targets" + echo "Supported options" + echo " -v verbose" + echo " -d CVSROOT" + echo " -r TAG" + echo " -m MAILTO" + echo " -f DISTRO" + echo " -b BASE" + echo " -s MAKEVAR=value - spaces in value are not supported" + echo " -n passed to make" + exit 1 +} + function main () { if [ -d /plc/devel/data ] ; then do_chroot "$@" else - while getopts "d:r:m:f:b:h" opt ; do + MAKEVARS=() + MAKEOPTS=() + while getopts "vd:r:m:f:b:s:nh" opt ; do case $opt in + v) set -x ;; d) CVSROOT=$OPTARG ;; r) TAG=$OPTARG ;; m) MAILTO=$OPTARG ;; f) DISTRO=$OPTARG ;; b) BASE=$OPTARG ;; - h) usage ;; + s) MAKEVARS=(${MAKEVARS[@]} $OPTARG) ;; + n) MAILTO="" ; MAKEOPTS=(${MAKEOPTS[@]} -n) ;; + h|*) usage ;; esac done shift $(($OPTIND - 1)) + + MAKETARGETS="$@" cd $ROOT ### determine BASE