#!/bin/sh
# PCP QA Test No. 484
# check pmlogrewrite archive copying (no config)
#
# Copyright (c) 2011 Ken McDonell.  All Rights Reserved.
#

seq=`basename $0`
echo "QA output created by $seq"


# get standard environment, filters and checks
. ./common.product
. ./common.filter
. ./common.check

which pmlogrewrite >/dev/null 2>&1 || _notrun "pmlogrewrite not installed"

status=0	# success is the default!
$sudo rm -rf $tmp.* $seq.full
trap "rm -f $tmp.*; exit \$status" 0 1 2 3 15

_filter()
{
    sed \
	-e "s;$tmp;TMP;g" \
	-e "s/^\([+-][+-][+-] TMP\...t*\).*/\1/"
}

_cmp()
{
    for file in $1.*
    do
	ls -l $file $2`echo $file | sed -e "s;$1;;"` >>$seq.full
    done
    pmdumplog -z -a $1 | tee -a $seq.full >$tmp.in
    pmdumplog -z -a $2 | tee -a $seq.full >$tmp.out
    echo "pmdumplog diffs ..."
    diff -u $tmp.in $tmp.out | _filter
}

# real QA test starts here

# Notes
#
# src/mirage ... diffs reflect semantically acceptable differences
#
for arch in src/ok-foo src/541380_v2 src/mirage src/bigbin \
	src/ok-mv-foo src/mirage-1 src/mirage-2 src/gap \
	src/gap2 '-Dall src/ok-foo'
do
    echo | tee -a $seq.full
    echo "=== $arch ===" | tee -a $seq.full
    rm -f $tmp.new.*
    pmlogrewrite -w -Dappl0 $arch $tmp.new 2>$tmp.err | _filter
    cat $tmp.err >>$seq.full
    # strip any command line options preceding the archive basename
    arch=`echo $arch | sed -e 's/.* //'`
    _cmp $arch $tmp.new
done

# success, all done
exit
