#! /bin/sh -e

# DP: updated class files from the 4.2 branch upto 20070804.

dir=
if [ $# -eq 3 -a "$2" = '-d' ]; then
    pdir="-d $3"
    dir="$3/"
elif [ $# -ne 1 ]; then
    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
    exit 1
fi
case "$1" in
    -patch)
	set -x
	uudecode class-files.tar.bz2.uue
	tar -xv -f class-files.tar.bz2 -C $dir
	rm -f class-files.tar.bz2
        ;;
    -unpatch)
	echo "cannot undo patch $(basename $0)"
        ;;
    *)
        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
        exit 1
esac
exit 0


#! /bin/sh

dir=gcc-4_2-ubuntu-branch
tag=ubuntu/gcc-4_2_1-release
branch=ubuntu/gcc-4_2-branch

tmplist=files$$

svn diff --summarize \
        svn://gcc.gnu.org/svn/gcc/tags/$tag \
        svn://gcc.gnu.org/svn/gcc/branches/$branch \
    | grep '\.class$' > $tmplist

sed -n '/^[AM].*\.class$/s,.*/'$tag'/\(.*\),\1,p' $tmplist \
    > neworchanged.list
sed -n '/^[D].*\.class$/s,.*/'$tag'/\(.*\),\1,p' $tmplist \
    > removed.list
sed -n '/^[^ADM].*\.class$/s,.*/'$tag'/\(.*\),\1,p' $tmplist \
    > unknown.list

echo "new or changed: $(wc -l neworchanged.list | cut '-d ' -f1), removed $(wc -l removed.list | cut '-d ' -f1): , unknown: $(wc -l unknown.list | cut '-d ' -f1)"
tar -c -j -f class-files.tar.bz2 -C $dir -T neworchanged.list
uuencode class-files.tar.bz2 class-files.tar.bz2 > class-files.tar.bz2.uue

rm -f $tmplist neworchanged.list removed.list unknown.list