summaryrefslogtreecommitdiff
path: root/src/mono/bin/scalac.net
diff options
context:
space:
mode:
authormichelou <michelou@epfl.ch>2007-06-18 08:26:33 +0000
committermichelou <michelou@epfl.ch>2007-06-18 08:26:33 +0000
commita6ffdf699226a145b06ef542ca44575ed3b5245d (patch)
tree90b5133beac667e6a64b939576d1481c887262a5 /src/mono/bin/scalac.net
parent41d984037ab6eff6f5931bdadff833df569c17f5 (diff)
downloadscala-a6ffdf699226a145b06ef542ca44575ed3b5245d.tar.gz
scala-a6ffdf699226a145b06ef542ca44575ed3b5245d.tar.bz2
scala-a6ffdf699226a145b06ef542ca44575ed3b5245d.zip
removed .NET specifics from Scala commands
Diffstat (limited to 'src/mono/bin/scalac.net')
-rwxr-xr-xsrc/mono/bin/scalac.net86
1 files changed, 86 insertions, 0 deletions
diff --git a/src/mono/bin/scalac.net b/src/mono/bin/scalac.net
new file mode 100755
index 0000000000..e3442b3606
--- /dev/null
+++ b/src/mono/bin/scalac.net
@@ -0,0 +1,86 @@
+#!/bin/sh
+
+##############################################################################
+# @NAME@ @VERSION@
+##############################################################################
+# @COPYRIGHT@
+#
+# 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
+
+# Finding the root folder for this Scala distribution
+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;
+SCALA_HOME=`dirname "$SOURCE"`/..;
+SCALA_HOME=`cd "$SCALA_HOME"; pwd`;
+if $cygwin; then
+ SCALA_HOME=`cygpath --windows --short-name "$SCALA_HOME"`
+ SCALA_HOME=`cygpath --unix "$SCALA_HOME"`
+fi
+
+# Constructing the extension classpath
+EXTENSION_CLASSPATH=""
+if [ -z "$EXTENSION_CLASSPATH" ] ; then
+ for ext in `ls -d "$SCALA_HOME"/lib/*` ; do
+ if [ -z "$EXTENSION_CLASSPATH" ] ; then
+ EXTENSION_CLASSPATH="$ext"
+ else
+ EXTENSION_CLASSPATH="$EXTENSION_CLASSPATH:$ext"
+ fi
+ done
+fi
+
+# Setting the boot class-path to be the standard library (either as a JAR or a folder)
+BOOT_CLASSPATH=""
+if [ -z "$BOOT_CLASSPATH" ] ; then
+ if [ -f "$SCALA_HOME/lib/scala-library.jar" ] ; then
+ BOOT_CLASSPATH="$SCALA_HOME/lib/scala-library.jar"
+ elif [ -d "$SCALA_HOME/lib/library" ] ; then
+ BOOT_CLASSPATH="$SCALA_HOME/lib/library"
+ fi
+fi
+
+if [ ! -x "$ILASM" ] ; then
+ if [ -d "$MONO_HOME" ] ; then
+ ILASM="$MONO_HOME/bin/ilasm"
+ else
+ ILASM="ilasm"
+ fi
+fi
+
+MSIL_LIBPATH="$SCALA_HOME/lib/predef.dll:$SCALA_HOME/lib/scalaruntime.dll:$SCALA_HOME/lib/mscorlib.dll"
+[ -z "$MONO_PATH" ] || MSIL_LIBPATH="$MSIL_LIBPATH:$MONO_PATH"
+
+if $cygwin; then
+ if [ "$OS" = "Windows_NT" ] && cygpath -m .>/dev/null 2>/dev/null ; then
+ format=mixed
+ else
+ format=windows
+ fi
+ SCALA_HOME=`cygpath --$format "$SCALA_HOME"`
+ EXTENSION_CLASSPATH=`cygpath --path --$format "$EXTENSION_CLASSPATH"`
+ BOOT_CLASSPATH=`cygpath --path --$format "$BOOT_CLASSPATH"`
+ MSIL_LIBPATH=`cygpath --path --$format "$MSIL_LIBPATH"`
+ ILASM=`cygpath --$format "$COMSPEC"`" /C "`cygpath --windows "$ILASM"`
+fi
+
+${JAVACMD:=java} ${JAVA_OPTS:=-Xmx256M -Xms16M} -Xbootclasspath/a:"$BOOT_CLASSPATH" -cp "$EXTENSION_CLASSPATH" -Dscala.home="$SCALA_HOME" -Denv.classpath="$CLASSPATH" -Dmsil.libpath="$MSIL_LIBPATH" -Dmsil.ilasm="$ILASM" scala.tools.nsc.Main -target:msil "$@"