+option pie
[nethome.git] / bin / diffgdbdir
index 4bf370c..ad10958 100755 (executable)
@@ -1,10 +1,32 @@
 #! /bin/sh
 
 x="*.log"
-if [ "$1" = "log" ];then
-       x="*.sum"
-       shift
-fi
+x2="foobar"
+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" -o "$1" = "-l" ];then
+               x="*.sum"
+               o="-r"
+               shift
+               continue
+       fi
+       if [ "$1" = "pie" ];then
+               x2="*pie*"
+               shift
+               continue
+       fi
+       break
+done
 
 if [ $# != 2 ];then
        echo >&2 "$0 hammock/xxxxyyzzname hammock/XXXXYYZZothername"
@@ -12,34 +34,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 -x "$x" $dir1 $dir2
+       diffgdb $o -x rpm-qa -x "$x" -x "$x2" $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"
@@ -62,6 +92,11 @@ 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"
+       diffitraw $1 $2
+       #echo "NOT FOUND: $1 $2"
 fi