diff options
author | Gilles Dubochet <gilles.dubochet@epfl.ch> | 2006-03-21 17:43:21 +0000 |
---|---|---|
committer | Gilles Dubochet <gilles.dubochet@epfl.ch> | 2006-03-21 17:43:21 +0000 |
commit | 1d147fed1e9c19a42492ae97c64f7fb9ba09c909 (patch) | |
tree | 96793b03d8f9f416b57a83e1b5284bf5e23d809d | |
parent | 5725b720cc72af570f17c7a2a19686330e0f6154 (diff) | |
download | scala-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.xml | 8 | ||||
-rw-r--r-- | src/compiler/scala/tools/ant/templates/generic-unix.tmpl | 25 | ||||
-rw-r--r-- | src/compiler/scala/tools/ant/templates/tool-unix.tmpl | 26 |
3 files changed, 32 insertions, 27 deletions
@@ -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@ $@@ |