show_env
echo "Running make IN build $(pwd)"
- make stage1=true ${MAKEOPTS[@]} DISTROMAKETAGS=${DISTROMAKETAGS} PLDISTRO=${DISTRO} ${MAKEVARS[@]} -C /build
+ make stage1=true "${MAKEOPTS[@]}" DISTROMAKETAGS=${DISTROMAKETAGS} PLDISTRO=${DISTRO} "${MAKEVARS[@]}" -C /build
# in case we use an older build
set +e
- make ${MAKEOPTS[@]} DISTROMAKETAGS=${DISTROMAKETAGS} PLDISTRO=${DISTRO} ${MAKEVARS[@]} -C /build versions
+ make "${MAKEOPTS[@]}" DISTROMAKETAGS=${DISTROMAKETAGS} PLDISTRO=${DISTRO} "${MAKEVARS[@]}" -C /build versions
set -e
- make ${MAKEOPTS[@]} DISTROMAKETAGS=${DISTROMAKETAGS} PLDISTRO=${DISTRO} ${MAKEVARS[@]} -C /build $MAKETARGETS
+ make "${MAKEOPTS[@]}" DISTROMAKETAGS=${DISTROMAKETAGS} PLDISTRO=${DISTRO} "${MAKEVARS[@]}" -C /build $MAKETARGETS
# restore silent mode - otherwise cron gets it
set +x
echo "Usage: $COMMAND [option] make-targets"
echo "This is revision $REVISION"
echo "Supported options"
- echo " -f FC_DISTRO - defaults to $DEFAULT_FC_DISTRO"
- echo " -b BASE - may include @, then replaced with current date"
- echo " -u : uses directory given as BASE as is, even if already exists"
+ echo " -n dry-run : -n passed to make - no mail sent"
echo " -d PLDISTRO"
+ echo " -b BASE - may include @, then replaced with current date"
echo " -t PLDISTROMAKETAGS"
echo " -r TAGSRELEASE - a release number that refers to PLDISTROMAKETAGS - defaults to HEAD"
- echo " -s MAKEVAR=value - spaces in value are not supported"
- echo " -n dry-run : -n passed to make - no mail sent"
+ echo " -s SVNPATH - where to fetch the build module"
+ echo " -f FC_DISTRO - defaults to $DEFAULT_FC_DISTRO"
+ echo " -u : uses directory given as BASE as is, even if already exists"
+ echo " -s MAKEVAR=value"
echo " -m MAILTO"
- echo " -s SVNPATH"
echo " -B : run build only"
echo " -T : run test only"
exit 1
function main () {
set -x
+
+ # preserve arguments for passing them again later
+ declare -a argv
+ for arg in "$@"; do argv=(${argv[@]} "$arg") ; done
+ # xxx
+ for x in "${argv[@]}"; do echo 'argv>'$x'<' ; done
+
# parse arguments
MAKEVARS=()
MAKEOPTS=()
d) DISTRO=$OPTARG ;;
t) DISTROMAKETAGS=$OPTARG ;;
r) TAGSRELEASE=$OPTARG ;;
- s) MAKEVARS=(${MAKEVARS[@]} $OPTARG) ;;
+ s) MAKEVARS=(${MAKEVARS[@]} "$OPTARG") ;;
n) MAILTO="" ; MAKEOPTS=(${MAKEOPTS[@]} -n) ;;
m) MAILTO=$OPTARG ;;
s) SVNPATH=$OPTARG ;;
echo "XXXXXXXXXX $COMMAND: preparation of vserver $BASE done" $(date) >> $LOG 2>&1
cp $COMMANDPATH /vservers/${BASE}/
# invoke this command in the vserver
- vserver ${BASE} exec /$COMMAND "$@" >> $LOG 2>&1
+ vserver ${BASE} exec /$COMMAND "${argv[@]}" >> $LOG 2>&1
else
- echo "In vserver : got args" "$@"
if [ -n "$DO_BUILD" ] ; then
build
touch /build-ok