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