# $Id$
# Extract gdb.sum+gdb.log from the Fedora/Red Hat gdb rpm build log.
+rc=0
+
force=false
if [ "$1" = "-f" ];then
force=true
fi
for log in $args;do
base="${log%.log}"
+ if [ "$base" = "$log" ];then
+ base="${log%/log}"
+ if [ "$base" != "$log" ];then
+ base="$base/out"
+ fi
+ fi
if [ "$base" = "$log" -o "$log" != "${log%/gdb.log}" -o "$log" = "gdb.log" ];then
echo >&2 "file has no .log suffix or is gdb.log: $log"
+ rc=1
continue
fi
if ($force || $clean) && test -d "$base";then
fi
if ! mkdir "$base";then
echo >&2 "Error <$log>: mkdir"
- exit 1
+ rc=1
+ continue
fi
if ! (cd "$base";uudecode) <"$log";then
echo >&2 "Error <$log>: uudecode"
- exit 1
+ rm -rf "$base"
+ rc=1
+ continue
fi
if echo -n "$base"/*|grep ' ';then
echo >&2 "Error <$log>: Too many files in: $base"
- exit 1
+ rm -rf "$base"
+ rc=1
+ continue
fi
if ! (echo -n "$base"/*|grep -q '[.]tar[.]bz2$');then
echo >&2 "Error <$log>: Invalid file:" "$base"/*
- exit 1
+ rm -rf "$base"
+ rc=1
+ continue
fi
if ! (cd "$base";tar xjf *);then
echo >&2 "Error <$log>: tar xjf"
- exit 1
+ rm -rf "$base"
+ rc=1
+ continue
fi
rm -f "$base"/*.tar.bz2
chmod -x "$base"/*
- if ! (echo "$base"/*|grep -q '^[^ ]*[.]log [^ ]*[.]sum$');then
- echo >&2 "Error <$log>: Not two files .log+.sum:" "$base"/*
- exit 1
- fi
- mv -f "$base"/*.log "$base"/gdb.log
- mv -f "$base"/*.sum "$base"/gdb.sum
+ perl -i -pe 's{\Q'"$HOME"'\E/.*?/build/[^/]*/}{}g' "$base"/*
+# if ! (echo "$base"/*|grep -q '^[^ ]*[.]log [^ ]*[.]sum$');then
+# echo >&2 "Error <$log>: Not two files .log+.sum:" "$base"/*
+# exit 1
+# fi
+# mv -f "$base"/*.log "$base"/gdb.log
+# mv -f "$base"/*.sum "$base"/gdb.sum
done
-echo OK
+if [ $rc -eq 0 ];then
+ echo OK
+fi
+exit $rc