summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--build.xml4
-rw-r--r--src/partest/scala/tools/partest/PartestTask.scala6
-rw-r--r--src/partest/scala/tools/partest/nest/AntRunner.scala2
-rw-r--r--src/partest/scala/tools/partest/nest/ConsoleFileManager.scala2
-rw-r--r--src/partest/scala/tools/partest/nest/FileManager.scala1
-rw-r--r--src/partest/scala/tools/partest/nest/Worker.scala14
-rwxr-xr-xtest/partest2
-rwxr-xr-xtest/partest.bat2
8 files changed, 20 insertions, 13 deletions
diff --git a/build.xml b/build.xml
index 8dd855096f..9eef99c5f6 100644
--- a/build.xml
+++ b/build.xml
@@ -131,6 +131,8 @@ PROPERTIES
<property name="scalacfork.maxmemory" value="512m"/>
+ <property name="javac.cmd" value="${env.JAVA_HOME}/bin/javac"/>
+
<!-- ===========================================================================
INITIALISATION
============================================================================ -->
@@ -997,7 +999,7 @@ BOOTRAPING TEST AND TEST SUITE
<target name="test.suite" depends="pack.done">
<partest showlog="yes" erroronfailed="yes" javacmd="${java.home}/bin/java"
- timeout="1200000">
+ timeout="1200000" javaccmd="${javac.cmd}">
<classpath>
<path refid="pack.classpath"/>
<fileset dir="${test.dir}/files/lib" includes="*.jar"/>
diff --git a/src/partest/scala/tools/partest/PartestTask.scala b/src/partest/scala/tools/partest/PartestTask.scala
index 5821a5c734..abd1ef1969 100644
--- a/src/partest/scala/tools/partest/PartestTask.scala
+++ b/src/partest/scala/tools/partest/PartestTask.scala
@@ -64,6 +64,9 @@ class PartestTask extends Task {
def setJavaCmd(input: File): Unit =
javacmd = Some(input)
+ def setJavacCmd(input: File): Unit =
+ javaccmd = Some(input)
+
def setScalacOpts(opts: String): Unit =
scalacOpts = Some(opts)
@@ -72,6 +75,7 @@ class PartestTask extends Task {
private var classpath: Option[Path] = None
private var javacmd: Option[File] = None
+ private var javaccmd: Option[File] = None
private var showDiff: Boolean = false
private var showLog: Boolean = false
private var runFailed: Boolean = false
@@ -194,6 +198,8 @@ class PartestTask extends Task {
setFileManagerBooleanProperty("failed", runFailed)
if (!javacmd.isEmpty)
setFileManagerStringProperty("JAVACMD", javacmd.get.getAbsolutePath)
+ if (!javaccmd.isEmpty)
+ setFileManagerStringProperty("JAVAC_CMD", javaccmd.get.getAbsolutePath)
setFileManagerStringProperty("CLASSPATH", classpath.get.list.mkString(File.pathSeparator))
setFileManagerStringProperty("LATEST_LIB", scalaLibrary.get.getAbsolutePath)
if (!scalacOpts.isEmpty)
diff --git a/src/partest/scala/tools/partest/nest/AntRunner.scala b/src/partest/scala/tools/partest/nest/AntRunner.scala
index 8206e55ae2..7371adb637 100644
--- a/src/partest/scala/tools/partest/nest/AntRunner.scala
+++ b/src/partest/scala/tools/partest/nest/AntRunner.scala
@@ -23,7 +23,7 @@ class AntRunner extends DirectRunner {
val fileManager = new FileManager {
var JAVACMD: String = "java"
-
+ var JAVAC_CMD: String = "javac"
var CLASSPATH: String = _
var EXT_CLASSPATH: String = _
var LATEST_LIB: String = _
diff --git a/src/partest/scala/tools/partest/nest/ConsoleFileManager.scala b/src/partest/scala/tools/partest/nest/ConsoleFileManager.scala
index 85bd103b09..55f74dd1d3 100644
--- a/src/partest/scala/tools/partest/nest/ConsoleFileManager.scala
+++ b/src/partest/scala/tools/partest/nest/ConsoleFileManager.scala
@@ -43,6 +43,8 @@ class ConsoleFileManager extends FileManager {
NestUI.verbose("CLASSPATH: "+CLASSPATH)
var JAVACMD = System.getProperty("scalatest.javacmd", "java")
+ var JAVAC_CMD = System.getProperty("scalatest.javac_cmd", "javac")
+
val prefixFile = {
val cwd = System.getProperty("user.dir")
if (cwd != null)
diff --git a/src/partest/scala/tools/partest/nest/FileManager.scala b/src/partest/scala/tools/partest/nest/FileManager.scala
index 1c69bc7527..9a959b428b 100644
--- a/src/partest/scala/tools/partest/nest/FileManager.scala
+++ b/src/partest/scala/tools/partest/nest/FileManager.scala
@@ -50,6 +50,7 @@ trait FileManager {
var JAVACMD: String
+ var JAVAC_CMD: String
var CLASSPATH: String
var LATEST_LIB: String
diff --git a/src/partest/scala/tools/partest/nest/Worker.scala b/src/partest/scala/tools/partest/nest/Worker.scala
index 01d17950bc..b3aedc82ff 100644
--- a/src/partest/scala/tools/partest/nest/Worker.scala
+++ b/src/partest/scala/tools/partest/nest/Worker.scala
@@ -167,16 +167,12 @@ class Worker(val fileManager: FileManager) extends Actor {
def javac(outDir: File, files: List[File], output: File) {
// compile using command-line javac compiler
- val javaHome = System.getenv("JAVA_HOME")
- NestUI.verbose("JAVA_HOME: "+javaHome)
- val javacCmd = if (javaHome == null) {
- // assume the compiler is in the PATH
+ val javacCmd = if ((fileManager.JAVAC_CMD.indexOf("${env.JAVA_HOME}") != -1) ||
+ fileManager.JAVAC_CMD.equals("/bin/javac") ||
+ fileManager.JAVAC_CMD.equals("\\bin\\javac"))
"javac"
- } else {
- // otherwise use the location suggested by JAVA_HOME
- val sep = File.separator
- javaHome + sep + "bin" + sep + "javac"
- }
+ else
+ fileManager.JAVAC_CMD
val cmd = javacCmd+
" -d "+outDir.getAbsolutePath+
diff --git a/test/partest b/test/partest
index 88729ac8c6..339f1fe792 100755
--- a/test/partest
+++ b/test/partest
@@ -74,4 +74,4 @@ fi
[ -n "$JAVA_OPTS" ] || JAVA_OPTS="-Xmx256M -Xms16M"
[ -n "$SCALAC_OPTS" ] || SCALAC_OPTS="-deprecation"
-${JAVACMD:=java} $JAVA_OPTS -cp "$EXT_CLASSPATH" -Dpartest.debug="${PARTEST_DEBUG}" -Dscala.home="${SCALA_HOME}" -Dscalatest.javacmd="${JAVACMD}" -Dscalatest.java_opts="${JAVA_OPTS}" -Dscalatest.scalac_opts="${SCALAC_OPTS}" scala.tools.partest.nest.NestRunner "$@"
+${JAVACMD:=java} $JAVA_OPTS -cp "$EXT_CLASSPATH" -Dpartest.debug="${PARTEST_DEBUG}" -Dscala.home="${SCALA_HOME}" -Dscalatest.javacmd="${JAVACMD}" -Dscalatest.java_opts="${JAVA_OPTS}" -Dscalatest.scalac_opts="${SCALAC_OPTS}" -Dscalatest.javac_cmd="${JAVA_HOME}/bin/javac" scala.tools.partest.nest.NestRunner "$@"
diff --git a/test/partest.bat b/test/partest.bat
index 8b01e03c7f..098553fad8 100755
--- a/test/partest.bat
+++ b/test/partest.bat
@@ -53,7 +53,7 @@ if "%_EXTENSION_CLASSPATH%"=="" (
)
)
-set _PROPS=-Dscala.home="%_SCALA_HOME%" -Dscalatest.javacmd="%_JAVACMD%" -Dscalatest.java_options="%_JAVA_OPTS%" -Dscalatest.scalac_options="%_SCALAC_OPTS%"
+set _PROPS=-Dscala.home="%_SCALA_HOME%" -Dscalatest.javacmd="%_JAVACMD%" -Dscalatest.java_options="%_JAVA_OPTS%" -Dscalatest.scalac_options="%_SCALAC_OPTS%" -Dscalatest.javac_cmd="%JAVA_HOME%\bin\javac"
rem echo %_JAVACMD% %_JAVA_OPTS% %_PROPS% -cp "%_EXTENSION_CLASSPATH%" scala.tools.partest.nest.NestRunner %_ARGS%
%_JAVACMD% %_JAVA_OPTS% %_PROPS% -cp "%_EXTENSION_CLASSPATH%" scala.tools.partest.nest.NestRunner %_ARGS%