#! /bin/sh
x="*.log"
-if [ "$1" = "log" ];then
- x="*.sum"
- shift
-fi
+o=""
+while true;do
+ if [ "$1" = "-r" ];then
+ o="$o -r"
+ shift
+ continue
+ fi
+ if [ "$1" = "-N" ];then
+ o="$o -N"
+ shift
+ continue
+ fi
+ if [ "$1" = "log" ];then
+ x="*.sum"
+ o="-r"
+ shift
+ continue
+ fi
+ break
+done
if [ $# != 2 ];then
echo >&2 "$0 hammock/xxxxyyzzname hammock/XXXXYYZZothername"
echo "MISSING: $dir1 $dir2"
return
fi
- diffgdb -x "$x" $dir1 $dir2
+ diffgdb $o -x "$x" $dir1 $dir2
diffed=true
}
+if [ -f "$1" -a ! -e "${1%.tar.xz}" ];then
+ (
+ cd "$(dirname "$1")"
+ tar xJf "$(basename "$1")"
+ )
+ set "${1%.tar.xz}" "$2"
+ if [ ! -d "$1" ];then
+ echo "! $1"
+ exit 1
+ fi
+fi
+if [ -f "$2" -a ! -e "${2%.tar.xz}" ];then
+ (
+ cd "$(dirname "$2")"
+ tar xJf "$(basename "$2")"
+ )
+ set "$1" "${2%.tar.xz}"
+ if [ ! -d "$2" ];then
+ echo "! $2"
+ exit 1
+ fi
+fi
+
for arch in x86_64 i386;do
if [ -d $1-$arch ];then
diffit $1-$arch $2-$arch
done
if [ -d $1/out ];then
diffit $1 $2
+ diffed=true
fi
if ! $diffed;then
echo "NOT FOUND: $1 $2"