+IdentityFile ~/.ssh/id_dsa-sourceware
[nethome.git] / bin / diffgdbdir
index ef1941b..2f2ab2d 100755 (executable)
@@ -13,7 +13,7 @@ while true;do
                shift
                continue
        fi
-       if [ "$1" = "log" ];then
+       if [ "$1" = "log" -o "$1" = "-l" ];then
                x="*.sum"
                o="-r"
                shift
@@ -28,34 +28,42 @@ if [ $# != 2 ];then
 fi
 
 diffed=false
-function diffit
+function diffitraw
 {
-       dir1=$1/out
-       dir2=$2/out
+       dir1=$1
+       dir2=$2
        if [ ! -e "$dir2" ];then
                echo "MISSING: $dir1 $dir2"
                return
        fi
-       diffgdb $o -x "$x" $dir1 $dir2
+       diffgdb $o -x rpm-qa -x "$x" $dir1 $dir2
        diffed=true
 }
+function diffit
+{
+       diffitraw $1/out $2/out
+}
 
-if [ -f "$1" -a ! -e "${1%.tar.xz}" ];then
-       (
-               cd "$(dirname "$1")"
-               tar xJf "$(basename "$1")"
-       )
+if [ -f "$1" ];then
+       if [ ! -e "${1%.tar.xz}" ];then
+               (
+                       cd "$(dirname "$1")"
+                       tar xJf "$(basename "$1")"
+               )
+       fi
        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")"
-       )
+if [ -f "$2" ];then
+       if [ ! -e "${2%.tar.xz}" ];then
+               (
+                       cd "$(dirname "$2")"
+                       tar xJf "$(basename "$2")"
+               )
+       fi
        set "$1" "${2%.tar.xz}"
        if [ ! -d "$2" ];then
                echo "! $2"
@@ -78,6 +86,10 @@ if [ -d $1/out ];then
        diffit $1 $2
        diffed=true
 fi
+if [ "$1" != "${1#tests/}" -a -d $1 ];then
+       diffitraw $1 $2
+       diffed=true
+fi
 if ! $diffed;then
        echo "NOT FOUND: $1 $2"
 fi