197900Sbrian#! /bin/sh
297900Sbrian#
397900Sbrian# $FreeBSD$
497900Sbrian
597900Sbrianusage()
697900Sbrian{
797900Sbrian	echo "$*" >&2
897900Sbrian	echo "This script must be run from the top level package directory" >&2
997900Sbrian	exit 1
1097900Sbrian}
1197900Sbrian
1297900Sbrian[ $# -ge 1 ] && usage "usage: mkpkghier"
1397900Sbrian[ -f INDEX ] || usage "INDEX file not found"
1497900Sbrian[ -d All ] || usage "All directory not found"
1597900Sbrian
1697900Sbrianold=$(ls | egrep -v "^INDEX$|^All$|^Latest$")
1797900Sbrian
1897900Sbrian[ -n "$old" ] && { echo Removing old hierarchy; rm -fr $old; }
1997900Sbrian
2097900Sbrianecho Creating new hierarchy
2197900Sbrianawk -F'|' '{ print $1 " " $7; }' INDEX | while read pkg dirs
2297900Sbriando
23107681Smurray	[ -f All/$pkg.tbz ] || {
24107681Smurray		echo "All/$pkg.tbz: Non-existent" >&2
2597900Sbrian		continue
2697900Sbrian	}
2797900Sbrian	for dir in $dirs
2897900Sbrian	do
2997900Sbrian		mkdir -p $dir
30107681Smurray		[ -e $dir/$pkg.tbz ] && continue
31107681Smurray		ln -s ../All/$pkg.tbz $dir/$pkg.tbz
3297900Sbrian	done
3397900Sbriandone
34