2 # Create .patch based on $1 for $2
9 *.tgz|*.tar.[Zz]|*.tar.gz) tar zx${verbose:+v}f "$1" ;;
10 *.tar) tar x${verbose:+v}f "$1" ;;
11 *.tbz2|*.tbz|*.tar.bz2) tar jx${verbose:+v}f "$1" ;;
12 *.tar.xz) xz -dc "$1" | tar x${verbose:+v} ;;
13 *.tar) tar x${verbose:+v}f "$1" ;;
15 echo >&2 "Don't know how to unpack $1"
21 # unpack all sources in commandline
28 srcdir=$(basename $src $ext)
29 dstdir=$(basename $dst $ext)
32 test -d $srcdir || unpack $src
33 test -d $dstdir || unpack $dst
34 if diff -Nur $srcdir $dstdir > $patch; then
39 diffstat $patch | tee $patch.diff
40 cat $patch.diff $patch | xz -9 > $patch.xz
43 rm -rf $dstdir $srcdir