diff options
Diffstat (limited to 'src/exec/scala.unix.tmpl')
-rw-r--r-- | src/exec/scala.unix.tmpl | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/src/exec/scala.unix.tmpl b/src/exec/scala.unix.tmpl index bbc2f55e93..58f547f926 100644 --- a/src/exec/scala.unix.tmpl +++ b/src/exec/scala.unix.tmpl @@ -15,7 +15,20 @@ case "`uname`" in Darwin*) darwin=true ;; esac -PREFIX=`dirname "$0"`/..; +SOURCE=$0; +SCRIPT=`basename "$SOURCE"`; +while [ -h "$SOURCE" ]; do + SCRIPT=`basename "$SOURCE"`; + LOOKUP=`ls -ld "$SOURCE"`; + TARGET=`expr "$LOOKUP" : '.*-> \(.*\)$'`; + if expr "${TARGET:-.}/" : '/.*/$' > /dev/null; then + SOURCE=${TARGET:-.}; + else + SOURCE=`dirname "$SOURCE"`/${TARGET:-.}; + fi; +done; +PREFIX=`dirname "$SOURCE"`/..; +prefix=$PREFIX; PREFIX=`cd "$PREFIX"; pwd`; JAVA=java |