#!/bin/bash

set -e

if [ -z "$LINGDEF" ]; then
  LINGDEF=$HOME/olivex/lingdef.xml
fi
export LINGDEF


if [ $# == 0 ]; then
  echo "usage: $0 [-f] <maingraph> <dir>"
  exit 1
fi

FORCE="no"
if [ "$1" = "-f" ]; then
  FORCE="yes"
  shift
fi

#GFST2PAT=gfst2rtnpat
#PAT2RTN=pat2rtn

GFST2PAT=gfst2wrtnpat
PAT2RTN=pat2wrtn

if [ "$#" != 2 ]; then
  echo "bad args"
  exit 1
fi

MAIN=$1
GRFDIR=$2
RESDIR=$MAIN.rtn

function die () {
 echo "error!: $1"
 exit 1
}

if [ $FORCE = "yes" -a -e "$RESDIR" ]; then
  rm -r $RESDIR
fi

if [ -e "$RESDIR" ]; then
  echo "$RESDIR exist, please remove it"
  exit 1
fi
mkdir $RESDIR

echo "grf to gfst ..."
for i in $GRFDIR/*.grf8; do
  echo -n "$i "
  grf2gfst -r -p -d $i
done
echo

mv $GRFDIR/*.gfst $RESDIR

cd $RESDIR

echo "To pattern..."
for i in *.gfst; do
  echo -n "$i "
  $GFST2PAT $i
done
echo

echo
echo "making grammar ..."
$PAT2RTN $MAIN

echo "done. rtn grammar in $RESDIR"

