#!/bin/sh

export LANG=C
export LANGUAGE=C

PROG=`basename $0`

show_help()
{
#  -q, --quiet                       try to be more quiet;
#  -v, --verbose                     print a message for each action;
	cat <<EOF
$PROG - script to build the set of packages. Current path must be valid autorepo directory.

Usage: $PROG [options]

Options:
  -d,--drop     drop package at first unsuccessful build
  -r,--rm-good	remove built pkgs from INDIR
  -h, --help    show this text and exit.

Report bugs to http://bugzilla.altlinux.org/
EOF
	exit
}

continuous_integration_mode=
rapid_drop_mode=
rm_good_from_indir=

TEMP=`getopt -n $PROG -o drh -l drop,help,rm-good,no-rm-good -- "$@"` ||
	show_help
eval set -- "$TEMP"

while :; do
	case "$1" in
		-d|--drop) rapid_drop_mode=1
			;;
		-r|--rm-good) rm_good_from_indir=1
			;;
		--no-rm-good) rm_good_from_indir=
			;;
		-h|--help) show_help
			;;
		--) shift; break
			;;
		*) echo "Error parsing arguments. see --help" ; exit 1
			;;
	esac
	shift
done

. autorepo-build-config
. parentlock-sh-functions
# remove if use your own trap
parentlock_set_unlock_workdir_trap_on_int_term_exit
parentlock_lock_workdir_or_exit

INDIR=$AUTOREPO_HOME/OUT
[ -d OUT ] && INDIR=OUT

for pkg in $INDIR/*.{src.rpm,tar,transaction}; do
    # or nullglob
    if [ -e "$pkg" ]; then
	autorepo-buildhelper-do-atomic-build \
	    ${hashernumber:+--number $hashernumber} \
	    ${rapid_drop_mode:+--drop} "$pkg" || exit 1
    fi
done

[ -z "$rm_good_from_indir" ] || autorepo-buildhelper-rm-good-from-out

parentlock_unlock_workdir_safe
