summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGilles Dubochet <gilles.dubochet@epfl.ch>2006-03-21 17:43:21 +0000
committerGilles Dubochet <gilles.dubochet@epfl.ch>2006-03-21 17:43:21 +0000
commit1d147fed1e9c19a42492ae97c64f7fb9ba09c909 (patch)
tree96793b03d8f9f416b57a83e1b5284bf5e23d809d
parent5725b720cc72af570f17c7a2a19686330e0f6154 (diff)
downloadscala-1d147fed1e9c19a42492ae97c64f7fb9ba09c909.tar.gz
scala-1d147fed1e9c19a42492ae97c64f7fb9ba09c909.tar.bz2
scala-1d147fed1e9c19a42492ae97c64f7fb9ba09c909.zip
Corrected scripts to circumvent class loader bu...
Corrected scripts to circumvent class loader bug in scala runtime. Every class loads in the same classloader so that boxed arrays can load their content.
-rw-r--r--build.xml8
-rw-r--r--src/compiler/scala/tools/ant/templates/generic-unix.tmpl25
-rw-r--r--src/compiler/scala/tools/ant/templates/tool-unix.tmpl26
3 files changed, 32 insertions, 27 deletions
diff --git a/build.xml b/build.xml
index bfca04c7e5..6654dd41a8 100644
--- a/build.xml
+++ b/build.xml
@@ -607,7 +607,7 @@ BUILD QUICK-TEST LAYER
class="scala.tools.nsc.Main"
version="${version.number}"
copyright="${copyright}"
- extclasspath="#SCALA_HOME#/${lib.dir.name}:#SCALA_HOME#/${comp.dir.name}:#SCALA_HOME#/${fjbg.name}"
+ extclasspath="#SCALA_HOME#/${lib.dir.name}:#SCALA_HOME#/${comp.dir.name}:#SCALA_HOME#/${fjbg.name}:#SCALA_HOME#/${dbc.dir.name}"
javaFlags="-Xmx256M -Xms16M"
/>
<lockertool
@@ -617,7 +617,7 @@ BUILD QUICK-TEST LAYER
toolflags="-doc"
version="${version.number}"
copyright="${copyright}"
- extclasspath="#SCALA_HOME#/${lib.dir.name}:#SCALA_HOME#/${comp.dir.name}:#SCALA_HOME#/${fjbg.name}"
+ extclasspath="#SCALA_HOME#/${lib.dir.name}:#SCALA_HOME#/${comp.dir.name}:#SCALA_HOME#/${fjbg.name}:#SCALA_HOME#/${dbc.dir.name}"
javaFlags="-Xmx256M -Xms16M"
/>
<lockertool
@@ -767,7 +767,7 @@ TEST
class="scala.tools.nsc.Main"
version="${version.number}"
copyright="${copyright}"
- extclasspath="#SCALA_HOME#/${lib.dir.name}:#SCALA_HOME#/${comp.dir.name}:#SCALA_HOME#/${fjbg.name}"
+ extclasspath="#SCALA_HOME#/${lib.dir.name}:#SCALA_HOME#/${comp.dir.name}:#SCALA_HOME#/${fjbg.name}:#SCALA_HOME#/${dbc.dir.name}"
javaFlags="-Xmx256M -Xms16M"
/>
<quicktool
@@ -777,7 +777,7 @@ TEST
toolflags="-doc"
version="${version.number}"
copyright="${copyright}"
- extclasspath="#SCALA_HOME#/${lib.dir.name}:#SCALA_HOME#/${comp.dir.name}:#SCALA_HOME#/${fjbg.name}"
+ extclasspath="#SCALA_HOME#/${lib.dir.name}:#SCALA_HOME#/${comp.dir.name}:#SCALA_HOME#/${fjbg.name}:#SCALA_HOME#/${dbc.dir.name}"
javaFlags="-Xmx256M -Xms16M"
/>
<quicktool
diff --git a/src/compiler/scala/tools/ant/templates/generic-unix.tmpl b/src/compiler/scala/tools/ant/templates/generic-unix.tmpl
index b4271fc929..dd25bac505 100644
--- a/src/compiler/scala/tools/ant/templates/generic-unix.tmpl
+++ b/src/compiler/scala/tools/ant/templates/generic-unix.tmpl
@@ -72,6 +72,19 @@ else
fi
fi
+BOOT_CLASSPATH=""
+if [ -f "$SCALA_HOME/lib/scala-library.jar" ] ; then
+ BOOT_CLASSPATH="$SCALA_HOME/lib/scala-library.jar"
+fi
+
+if [ "$BOOT_CLASSPATH" != "" ] ; then
+ if [ "$MYCLASSPATH" == "" ] ; then
+ MYCLASSPATH="$BOOT_CLASSPATH"
+ else
+ MYCLASSPATH="$BOOT_CLASSPATH:$MYCLASSPATH"
+ fi
+fi
+
for flag in "$@@" ; do
if [ "$flag" == '-version' ] ; then
echo "Scala runtime version @version@ -- @copyright@"
@@ -80,11 +93,6 @@ for flag in "$@@" ; do
fi
done
-BOOT_CLASSPATH=""
-if [ -f "$SCALA_HOME/lib/scala-library.jar" ] ; then
- BOOT_CLASSPATH="$SCALA_HOME/lib/scala-library.jar"
-fi
-
if $cygwin; then
if [ "$OS" = "Windows_NT" ] && cygpath -m .>/dev/null 2>/dev/null ; then
format=mixed
@@ -98,9 +106,4 @@ if $cygwin; then
MYCLASSPATH=`cygpath --path --$format "$MYCLASSPATH"`
fi
-QQ_BOOT_ARG=""
-if [ "$BOOT_CLASSPATH" != "" ] ; then
- QQ_BOOT_ARG="-Xbootclasspath/a:$BOOT_CLASSPATH"
-fi
-
-${JAVACMD:=java} $QQ_BOOT_ARG @javaflags@ -cp "$MYCLASSPATH" -Dscala.home="$SCALA_HOME" -Dscala.class.path="$USER_CLASSPATH" -Dscala.boot.class.path="$BOOT_CLASSPATH" -Dscala.ext.path="$EXTENSION_CLASSPATH" @properties@ $USER_ARGS
+${JAVACMD:=java} @javaflags@ -cp "$MYCLASSPATH" -Dscala.home="$SCALA_HOME" -Dscala.class.path="$USER_CLASSPATH" -Dscala.boot.class.path="$BOOT_CLASSPATH" -Dscala.ext.path="$EXTENSION_CLASSPATH" -Denv.classpath="$CLASSPATH" @properties@ $USER_ARGS
diff --git a/src/compiler/scala/tools/ant/templates/tool-unix.tmpl b/src/compiler/scala/tools/ant/templates/tool-unix.tmpl
index bc86f3ea03..766864d183 100644
--- a/src/compiler/scala/tools/ant/templates/tool-unix.tmpl
+++ b/src/compiler/scala/tools/ant/templates/tool-unix.tmpl
@@ -44,6 +44,19 @@ fi
MYCLASSPATH="$EXTENSION_CLASSPATH"
+BOOT_CLASSPATH=""
+if [ -f "$SCALA_HOME/lib/scala-library.jar" ] ; then
+ BOOT_CLASSPATH="$SCALA_HOME/lib/scala-library.jar"
+fi
+
+if [ "$BOOT_CLASSPATH" != "" ] ; then
+ if [ "$MYCLASSPATH" == "" ] ; then
+ MYCLASSPATH="$BOOT_CLASSPATH"
+ else
+ MYCLASSPATH="$BOOT_CLASSPATH:$MYCLASSPATH"
+ fi
+fi
+
for flag in "$@@" ; do
if [ "$flag" == '-version' ] ; then
echo "@name@ version @version@ -- @copyright@"
@@ -51,11 +64,6 @@ for flag in "$@@" ; do
fi
done
-BOOT_CLASSPATH=""
-if [ -f "$SCALA_HOME/lib/scala-library.jar" ] ; then
- BOOT_CLASSPATH="$SCALA_HOME/lib/scala-library.jar"
-fi
-
if $cygwin; then
if [ "$OS" = "Windows_NT" ] && cygpath -m .>/dev/null 2>/dev/null ; then
format=mixed
@@ -63,15 +71,9 @@ if $cygwin; then
format=windows
fi
SCALA_HOME=`cygpath --$format "$SCALA_HOME"`
- USER_CLASSPATH=`cygpath --path --$format "$USER_CLASSPATH"`
BOOT_CLASSPATH=`cygpath --path --$format "$BOOT_CLASSPATH"`
EXTENSION_CLASSPATH=`cygpath --path --$format "$EXTENSION_CLASSPATH"`
MYCLASSPATH=`cygpath --path --$format "$MYCLASSPATH"`
fi
-QQ_BOOT_ARG=""
-if [ "$BOOT_CLASSPATH" != "" ] ; then
- QQ_BOOT_ARG="-Xbootclasspath/a:$BOOT_CLASSPATH"
-fi
-
-${JAVACMD:=java} $QQ_BOOT_ARG @javaflags@ -cp "$MYCLASSPATH" -Dscala.home="$SCALA_HOME" -Dscala.class.path="$USER_CLASSPATH" -Dscala.boot.class.path="$BOOT_CLASSPATH" -Dscala.ext.path="$EXTENSION_CLASSPATH" -Dscala.tool.name="@name@" -Dscala.tool.version="@version@" @properties@ @class@ @toolflags@ $@@
+${JAVACMD:=java} @javaflags@ -cp "$MYCLASSPATH" -Dscala.home="$SCALA_HOME" -Dscala.boot.class.path="$BOOT_CLASSPATH" -Dscala.ext.path="$EXTENSION_CLASSPATH" -Denv.classpath="$CLASSPATH" -Dscala.tool.name="@name@" -Dscala.tool.version="@version@" @properties@ @class@ @toolflags@ $@@