#!/bin/sh

#GB_ARCH
#GB_REPO_COMPONENT_NAMES
#GOOD
#AUTOREPO_ROOT
#AUTOREPO_COMPONENT_NAME
#AUTOREPO_DEBUGINFO_COMPONENT_NAME
#AUTOREPO_FILES_SRPMS

. autorepo-config

[ -d $GOOD ] || exit

tmplist=
cleanup_trap() {
    rm -f $tmplist
    exit
}
trap cleanup_trap INT TERM EXIT
tmplist=`mktemp`

for arch in noarch $GB_ARCH; do
    for component in $GB_REPO_COMPONENT_NAMES; do
	mkdir -p "$AUTOREPO_ROOT/$arch/RPMS.$component"
    done
done


# 2>/dev/null because $GOOD/* may not expand.
rpmquery --queryformat '%{NAME}\n' -p $GOOD/*/SRPMS.hasher/*.src.rpm > $tmplist 2>/dev/null
if [ -s $tmplist ];then 
    autorepo-clean-names `cat $tmplist`
    rm -f $tmplist
    pushd $GOOD >/dev/null
    for dname in */; do
	if [ -d $dname ]; then
	    #name=`basename $dname`
	    #echo $name
	    for arch in $GB_ARCH; do
		mv -f "$dname"/$arch/RPMS.hasher/*.noarch.rpm "$AUTOREPO_ROOT/noarch/RPMS.$AUTOREPO_COMPONENT_NAME"/ 2>/dev/null

		[ -n "$AUTOREPO_DEBUGINFO_COMPONENT_NAME" ] && \
		mv -f "$dname"/$arch/RPMS.hasher/*-debuginfo-*-*.rpm "$AUTOREPO_ROOT/$arch/RPMS.$AUTOREPO_DEBUGINFO_COMPONENT_NAME"/ 2>/dev/null
		mv -f "$dname"/$arch/RPMS.hasher/*.rpm "$AUTOREPO_ROOT/$arch/RPMS.$AUTOREPO_COMPONENT_NAME"/ 2>/dev/null
		mv -f "$dname"/SRPMS.hasher/*.src.rpm $AUTOREPO_FILES_SRPMS/ 2>/dev/null
	    done
	    rm -rf "$dname"
	fi
    done
    popd >/dev/null
fi
rm -f $tmplist
