#!/bin/sh

base=`pwd|sed -e 's,.*/,,'`
echo "using '$base' as basename"

all=/tmp/mktable-${base}-all.log
rm -f $all
analyze all -v -v|sed -e '/solver/,$d' -e '/discrepancy/,$d' > $all
echo "generated $all"
echo

solvers=`awk '{print $1}' $all|sort|uniq`
echo "splitting "
echo
for s in $solvers
do
  echo "$s "
  rm -f $s.log
  expand $all | \
  awk "/^$s /"'{print $2,$1,$4,$6,$8,$NF}' |sort -g -k 2 > /tmp/mktable-${base}-$s.log
done
echo
echo "splitted."
echo

first=yes
joined=/tmp/mktable-${base}-joined.log
echo "joining $joining"
echo
next=/tmp/mktable-${base}-next-joined.log
rm -f joined
for s in $solvers
do
  slog=/tmp/mktable-${base}-$s.log
  echo "$slog "
  if [ $first = yes ]
  then
    cp $slog $joined
    first=no
  else
    join $joined $slog > $next
    mv $next $joined
  fi
done
echo
echo "joined $joined"

awk '{print $1, $2, $4, $6, $8, $10}' $all | \
sed -e '1isolver;benchmark;real;time;mb;result' -e 's,  *,;,g' \
> ${base}-flat-table.csv
echo "generated ${base}-flat-table.csv"

echo -n "benchmark" > ${base}-joined-table.csv
for s in $solvers
do
  echo -n ";solver;real;time;mb;result" >> ${base}-joined-table.csv
done
echo >> ${base}-joined-table.csv
sed -e 's,  *,;,g' $joined >> ${base}-joined-table.csv
echo "generated ${base}-joined-table.csv"
