#!/bin/bash

readlink(){
  local path=$1 ll

  if [ -L "$path" ]; then
    ll="$(LC_ALL=C ls -l "$path" 2> /dev/null)" &&
    echo "${ll/* -> }"
  else
    return 1
  fi
}

script=$0
count=0

while [ -L "$script" ]
do
  script=$(readlink "$script")
  count=`expr $count + 1`

  if [ $count -gt 100 ]
  then
    echo "Too many symbolic links"
    exit 1
  fi
done

TUXGUITAR_HOME=`dirname $script`
TUXGUITAR_HOME=`cd "$TUXGUITAR_HOME"; pwd`
cd $TUXGUITAR_HOME

CLASSPATH=$CLASSPATH:./:lib/swt.jar:lib/itext-1.4.jar
SOURCEPATH="./src/"
BINARYPATH="./bin/"

echo "***************************************************************"
echo "Building temp dir: $TUXGUITAR_HOME/$BINARYPATH" 
mkdir $TUXGUITAR_HOME/$BINARYPATH

echo "***************************************************************"
echo "Building java files"
javac -classpath :$CLASSPATH -sourcepath $SOURCEPATH -d $BINARYPATH $SOURCEPATH/org/herac/tuxguitar/gui/*.java
javac -classpath :$CLASSPATH -sourcepath $SOURCEPATH -d $BINARYPATH $SOURCEPATH/org/herac/tuxguitar/gui/*/*.java
javac -classpath :$CLASSPATH -sourcepath $SOURCEPATH -d $BINARYPATH $SOURCEPATH/org/herac/tuxguitar/io/*.java
javac -classpath :$CLASSPATH -sourcepath $SOURCEPATH -d $BINARYPATH $SOURCEPATH/org/herac/tuxguitar/io/*/*.java
javac -classpath :$CLASSPATH -sourcepath $SOURCEPATH -d $BINARYPATH $SOURCEPATH/org/herac/tuxguitar/play/*/*.java
javac -classpath :$CLASSPATH -sourcepath $SOURCEPATH -d $BINARYPATH $SOURCEPATH/org/herac/tuxguitar/play/*/*/*.java
javac -classpath :$CLASSPATH -sourcepath $SOURCEPATH -d $BINARYPATH $SOURCEPATH/org/herac/tuxguitar/song/*/*.java

echo "***************************************************************"
echo "Building TuxGuitar.jar" 
cd $TUXGUITAR_HOME/$BINARYPATH
jar cf $TUXGUITAR_HOME/TuxGuitar.jar org/

echo "***************************************************************"
echo "Removing temp dir: $TUXGUITAR_HOME/$BINARYPATH"
rm -rf $TUXGUITAR_HOME/$BINARYPATH

echo "***************************************************************"
echo "exec " $TUXGUITAR_HOME/TuxGuitar " to run the program"
echo "***************************************************************"