#!/bin/sh
# -*- shell-script -*-
cmdPath=$1
cmdName=`expr "$cmdPath" : '.*/\(.*\)'`
execDir=`expr "$cmdPath" : '\(.*\)/'`

if [ -z $execDir ]; then
  execDir="./"
fi

shift

cwd=$PWD
cd $execDir
projectDir=''
done=0
prev=''
while [ $done != 1 ]; do
  if [ -f Hermes.db ]; then
    done=1
    projectDir=$PWD
  else
    prev=$PWD
    cd ..
    if [ $PWD = '/' -o $prev = $PWD ]; then
      echo Did not find 'Hermes.db', Hermes must be in a project.
      exit;
    fi
  fi
done

cd $cwd


execLuaPath="$projectDir/lib/?.lua;$projectDir/tools/?.lua"
extra=
if [ "x$LUA_PATH" != x ]; then
  extra=";$LUA_PATH"
else
  extra=";`lua -e 'print(package.path)'`"
fi

export LUA_PATH="$execLuaPath$extra"

for i in "$@"; do
  if [ "$i" = "-v" -o "$i" = "-D" ]; then
    echo "projectDir : $projectDir"
    echo "LUA_PATH   : $LUA_PATH"
    echo "LUA_CPATH  : $LUA_CPATH"
    echo "execDir    : $execDir"
    echo "cmdPath    : $cmdPath"
    echo
    break
  fi
done

$projectDir/lib/tool.lua $cmdPath "$@"

