summaryrefslogtreecommitdiff
path: root/bin/.nsc_wrapper
blob: 916011db6ceb92c40e58ed1a846036cc62f90b1c (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
#!/bin/bash

##############################################################################
# Copyright (C) 2002-05 LAMP/EPFL
#
# This is free software; see the distribution for copying conditions.
# There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
##############################################################################

cygwin=false;
darwin=false;
case "`uname`" in
    CYGWIN*) cygwin=true ;;
    Darwin*) darwin=true ;;
esac

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`;

VERSION="unknown version";

SCALAC_LIBDIR=/home/linuxsoft/apps/scala/share/scala/lib
SCALAC_SCALA=$SCALAC_LIBDIR/scala.jar
SCALAC_TOOLS=$SCALAC_LIBDIR/tools.jar

NSC_SCALA=$PREFIX/build/nslib:$PREFIX/build/pico-nslib
NSC_TOOLS=$PREFIX/build/osc-nstools

FJBG_JAR=/home/linuxsoft/apps/fjbg/jars/fjbg.jar
MSIL_JAR=/home/linuxsoft/apps/msil/lib/msil.jar

_JAVACMD=java

_CPATH=$SCALAC_SCALA:$SCALAC_TOOLS:$NSC_TOOLS:$FJBG_JAR
_NSC_CPATH=$PREFIX/sources:$PREFIX/newsources:$NSC_SCALA

# For Cygwin, switch paths to appropriate format before running java
if $cygwin; then
    if [ "$OS" = "Windows_NT" ] && cygpath -m .>/dev/null 2>/dev/null ; then
        format=mixed
    else
        format=windows
    fi
    _CPATH=`cygpath --path --$format "$_CPATH"`
    _NSC_CPATH=`cygpath --path --$format "$_NSC_CPATH"`
fi

main=
case "$SCRIPT" in
    ns         ) ;;
    nsc*       ) main=scala.tools.nsc.Main;;
    nsp*       ) main=scala.tools.scalap.Main;;
    *          ) abort "Don't know what to do for $SCRIPT.";;
esac;

if [ -z "$main" ]; then
    for arg in "" "$@"; do
        [ -z "$arg" ] && continue;
        if [ "$arg" = "-version" ]; then
            echo "$SCRIPT $VERSION -- (C) 2002-05 LAMP/EPFL";
            exit 0
        fi
    done;
    $_JAVACMD \
        -Xbootclasspath/a:"$NSC_SCALA" \
        "$@"
else
    $_JAVACMD \
        -Dscala.product="$SCRIPT" \
        -Dscala.version="$VERSION" \
        -Dscala.home="$PREFIX" \
        -cp "$_CPATH" \
        $main -classpath "$_NSC_CPATH" "$@"
fi