#!/bin/sh

case $# in
0) echo make_patch old new name
	exit 1;;
esac

old=$1
new=$2
nm=$3-

newarc=../releases/$nm$new.tar.gz
oldarc=../releases/$nm$old.tar.gz


if [ ! -x  $nm$new ]
then
   echo untarring ..
  if [ ! -f $newarc ]
  then
	echo cant find $newarc
	exit
  fi
  tar zfx $newarc
fi
if [ ! -x  $nm$old ]
then
   echo untarring

  if [ ! -f $oldarc ]
  then
	echo cant find $oldarc
	exit
  fi
   tar zfx $oldarc
fi

# not interested in auto generated files.
for a in lilypond.lsm INSTALL.text AUTHORS.text lilypond.spec configure; do
    rm `find  $nm$old $nm$new  -name $a`
done    

cat <<EOF > patch-$new
Generated with 

	make_patch $1 $2 $3

usage 

	cd lilypond-source-dir; patch -E -p0 < patch-$new
	
Patches do not contain automatically generated files, 
i.e. you should rerun configure
EOF

(cd $nm$new; diff -urN  ../$nm$old . >> ../patch-$new)
rm -rf $nm$old $nm$new
