#! /bin/sh
# domkov - update all relevant .overview files from header stream
nawk=/usr/local/bin/gawk
NEWSCTL=/usr/lib/news; export NEWSCTL
NEWSBIN=/usr/lib/newsbin; export NEWSBIN
NEWSARTS=/usr/spool/news; export NEWSARTS
PATH=$NEWSCTL/bin:$NEWSBIN:$NEWSBIN/maint:$NEWSBIN/relay:/bin:/usr/bin:/usr/ucb; export PATH
temp=$NEWSCTL/L.$$
lock=$NEWSCTL/LOCKoverview

cd $NEWSCTL
echo $$ >$temp
trap "rm -f $temp; exit" 0 1 2 15
if newslock $temp $lock; then
	trap "rm -f $temp $lock; exit" 0 1 2 15
	SHELL=/bin/sh locknews <<'!'
		mv headers headers.old # move headers stream out of harm's way
		>>headers
!
	mkov headers.old | sort -t'	' +0 -1 +1n -2 |
		(
		cd $NEWSARTS; $nawk -F'	' '
# split input and append to .overview files
BEGIN	{ OFS="\t" }
$1 != dir {
	if (dir != "")
		close(dir "/.overview")
	dir = $1
}
{
	line = $2
	for (f = 3; f <= NF; f++)
		line = line "\t" $f
	print line >> (dir "/.overview")
}
'
		)
	rm -f headers.old
else
	: # just let the headers pile up; distribute them later
fi
