git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@566990 13f79535-47bb-0310-9956-ffa450edef68master
@@ -131,6 +131,36 @@ public class Jikes extends DefaultCompilerAdapter { | |||
cmd.createArgument().setValue(target); | |||
} | |||
addPropertyParams(cmd); | |||
if (attributes.getSource() != null) { | |||
cmd.createArgument().setValue("-source"); | |||
String source = attributes.getSource(); | |||
if (source.equals("1.1") || source.equals("1.2")) { | |||
// support for -source 1.1 and -source 1.2 has been | |||
// added with JDK 1.4.2, Jikes doesn't like it | |||
attributes.log("Jikes doesn't support '-source " + source | |||
+ "', will use '-source 1.3' instead"); | |||
cmd.createArgument().setValue("1.3"); | |||
} else { | |||
cmd.createArgument().setValue(source); | |||
} | |||
} | |||
addCurrentCompilerArgs(cmd); | |||
int firstFileName = cmd.size(); | |||
Path boot = getBootClassPath(); | |||
if (boot.size() > 0) { | |||
cmd.createArgument().setValue("-bootclasspath"); | |||
cmd.createArgument().setPath(boot); | |||
} | |||
logAndAddFilesToCompile(cmd); | |||
return executeExternalCompile(cmd.getCommandline(), firstFileName) == 0; | |||
} | |||
private void addPropertyParams(Commandline cmd) { | |||
/** | |||
* XXX | |||
* Perhaps we shouldn't use properties for these | |||
@@ -186,32 +216,6 @@ public class Jikes extends DefaultCompilerAdapter { | |||
&& Project.toBoolean(fullDependProperty)) { | |||
cmd.createArgument().setValue("+F"); | |||
} | |||
if (attributes.getSource() != null) { | |||
cmd.createArgument().setValue("-source"); | |||
String source = attributes.getSource(); | |||
if (source.equals("1.1") || source.equals("1.2")) { | |||
// support for -source 1.1 and -source 1.2 has been | |||
// added with JDK 1.4.2, Jikes doesn't like it | |||
attributes.log("Jikes doesn't support '-source " + source | |||
+ "', will use '-source 1.3' instead"); | |||
cmd.createArgument().setValue("1.3"); | |||
} else { | |||
cmd.createArgument().setValue(source); | |||
} | |||
} | |||
addCurrentCompilerArgs(cmd); | |||
int firstFileName = cmd.size(); | |||
Path boot = getBootClassPath(); | |||
if (boot.size() > 0) { | |||
cmd.createArgument().setValue("-bootclasspath"); | |||
cmd.createArgument().setPath(boot); | |||
} | |||
logAndAddFilesToCompile(cmd); | |||
return executeExternalCompile(cmd.getCommandline(), firstFileName) == 0; | |||
} | |||
} |
@@ -926,34 +926,9 @@ public class JUnitTask extends Task { | |||
cmd.createArgument().setValue(Constants.HALT_ON_ERROR + test.getHaltonerror()); | |||
cmd.createArgument().setValue(Constants.HALT_ON_FAILURE | |||
+ test.getHaltonfailure()); | |||
if (includeAntRuntime) { | |||
Vector v = Execute.getProcEnvironment(); | |||
Enumeration e = v.elements(); | |||
while (e.hasMoreElements()) { | |||
String s = (String) e.nextElement(); | |||
if (s.startsWith(CLASSPATH)) { | |||
cmd.createClasspath(getProject()).createPath() | |||
.append(new Path(getProject(), | |||
s.substring(CLASSPATH.length() | |||
))); | |||
} | |||
} | |||
log("Implicitly adding " + antRuntimeClasses + " to CLASSPATH", | |||
Project.MSG_VERBOSE); | |||
cmd.createClasspath(getProject()).createPath() | |||
.append(antRuntimeClasses); | |||
} | |||
checkIncludeAntRuntime(cmd); | |||
if (summary) { | |||
String prefix = ""; | |||
if ("withoutanderr".equalsIgnoreCase(summaryValue)) { | |||
prefix = "OutErr"; | |||
} | |||
cmd.createArgument() | |||
.setValue(Constants.FORMATTER | |||
+ "org.apache.tools.ant.taskdefs.optional.junit." | |||
+ prefix + "SummaryJUnitResultFormatter"); | |||
} | |||
checkIncludeSummary(cmd); | |||
cmd.createArgument().setValue(Constants.SHOWOUTPUT | |||
+ String.valueOf(showOutput)); | |||
@@ -1072,6 +1047,42 @@ public class JUnitTask extends Task { | |||
return result; | |||
} | |||
/** | |||
* Adding ant runtime. | |||
*/ | |||
private void checkIncludeAntRuntime(CommandlineJava cmd) { | |||
if (includeAntRuntime) { | |||
Vector v = Execute.getProcEnvironment(); | |||
Enumeration e = v.elements(); | |||
while (e.hasMoreElements()) { | |||
String s = (String) e.nextElement(); | |||
if (s.startsWith(CLASSPATH)) { | |||
cmd.createClasspath(getProject()).createPath() | |||
.append(new Path(getProject(), | |||
s.substring(CLASSPATH.length() | |||
))); | |||
} | |||
} | |||
log("Implicitly adding " + antRuntimeClasses + " to CLASSPATH", | |||
Project.MSG_VERBOSE); | |||
cmd.createClasspath(getProject()).createPath() | |||
.append(antRuntimeClasses); | |||
} | |||
} | |||
private void checkIncludeSummary(CommandlineJava cmd) { | |||
if (summary) { | |||
String prefix = ""; | |||
if ("withoutanderr".equalsIgnoreCase(summaryValue)) { | |||
prefix = "OutErr"; | |||
} | |||
cmd.createArgument() | |||
.setValue(Constants.FORMATTER | |||
+ "org.apache.tools.ant.taskdefs.optional.junit." | |||
+ prefix + "SummaryJUnitResultFormatter"); | |||
} | |||
} | |||
/** | |||
* Check the path for multiple different versions of | |||
* ant. | |||