summaryrefslogtreecommitdiff
path: root/src/exec/scala.unix.tmpl
diff options
context:
space:
mode:
Diffstat (limited to 'src/exec/scala.unix.tmpl')
-rw-r--r--src/exec/scala.unix.tmpl15
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