#!/bin/sh

cd /home/willy/public_html/gcc-transition

produce_deps() {
	apt-cache -c apt.conf showpkg $1 |grep '^  ' | \
		sed -e 's/^  //' -e 's/,.*$//' |sort -u >bin-packages-$2.tmp
	mv bin-packages-$2 bin-packages-$2.old
	comm -23 bin-packages-$2.tmp exceptions >bin-packages-$2
	rm -f src-packages-$2.tmp lib-packages-$2.tmp maint-packages-$2.tmp \
		bin-packages-$2.tmp
	touch lib-packages-$2.tmp
	for i in `cat bin-packages-$2`; do
		source=`apt-cache -c apt.conf show $i | \
				grep Source: |sed 's/.*Source: //'`
		maintainer=`apt-cache -c apt.conf show $i | \
				grep ^Maintainer: |sed 's/^Maintainer: //'`
		lib=`apt-cache -c apt.conf show $i | grep 'Section: libs'`

		source=${source:-$i}
		echo $source \(${maintainer}\) >>src-packages-$2.tmp
		echo $maintainer >>maint-packages-$2.tmp
		if [ -n "$lib" ]; then
			echo $source >>lib-packages-$2.tmp
		fi
	done

	if [ -f src-packages-$2.tmp ]; then
		sort -u src-packages-$2.tmp >src-packages-$2
		sort -u maint-packages-$2.tmp >maint-packages-$2
		sort -u lib-packages-$2.tmp >lib-packages-$2
	fi

	rm -f src-packages-$2.tmp lib-packages-$2.tmp maint-packages-$2.tmp
}

apt-get -c apt.conf update
rm dpkg-statuslock 

produce_deps libstdc++2.10-glibc2.2 2.95
produce_deps libstdc++3 3.0

date=$(date '+%d %B %Y')
bin295=$(grep -c . bin-packages-2.95)
src295=$(grep -c . src-packages-2.95)
bin30=$(grep -c . bin-packages-3.0)
src30=$(grep -c . bin-packages-3.0)

sed -e "s/&date;/$date/" -e "s/&bin295;/$bin295/" -e "s/&src295;/$src295/" -e "s/&bin30;/$bin30/" -e "s/&src30;/$src30/" <index.html.in >index.html

echo $date $bin295 $src295 $bin30 $src30 |tee -a log
gnuplot log.plot
