On Thu, 28 Oct 2004, Stefan Bodewig <[EMAIL PROTECTED]> wrote:
> Maybe we should change javac to automatically map 1.1 and 1.2 to
> -source 1.3 for JDK 1.4?
Looks trivial. Does anybody take issues with the appended patch?
Stefan
Index:
src/main/org/apache/tools/ant/taskdefs/compilers/DefaultCompilerAdapter.java
===================================================================
RCS file:
/home/cvs/ant/src/main/org/apache/tools/ant/taskdefs/compilers/DefaultCompilerAdapter.java,v
retrieving revision 1.49
diff -u -r1.49 DefaultCompilerAdapter.java
---
src/main/org/apache/tools/ant/taskdefs/compilers/DefaultCompilerAdapter.java
6 Oct 2004 22:41:52 -0000 1.49
+++
src/main/org/apache/tools/ant/taskdefs/compilers/DefaultCompilerAdapter.java
28 Oct 2004 13:59:04 -0000
@@ -297,7 +297,15 @@
setupJavacCommandlineSwitches(cmd, true);
if (attributes.getSource() != null && !assumeJava13()) {
cmd.createArgument().setValue("-source");
- cmd.createArgument().setValue(attributes.getSource());
+ String source = attributes.getSource();
+ if (assumeJava14() &&
+ (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
+ cmd.createArgument().setValue("1.3");
+ } else {
+ cmd.createArgument().setValue(source);
+ }
}
return cmd;
}
@@ -499,6 +507,20 @@
&& JavaEnvUtils.isJavaVersion(JavaEnvUtils.JAVA_1_3))
|| ("extJavac".equals(attributes.getCompilerVersion())
&& JavaEnvUtils.isJavaVersion(JavaEnvUtils.JAVA_1_3));
+ }
+
+ /**
+ * Shall we assume JDK 1.4 command line switches?
+ * @since Ant 1.6.3
+ */
+ protected boolean assumeJava14() {
+ return "javac1.4".equals(attributes.getCompilerVersion())
+ || ("classic".equals(attributes.getCompilerVersion())
+ && JavaEnvUtils.isJavaVersion(JavaEnvUtils.JAVA_1_4))
+ || ("modern".equals(attributes.getCompilerVersion())
+ && JavaEnvUtils.isJavaVersion(JavaEnvUtils.JAVA_1_4))
+ || ("extJavac".equals(attributes.getCompilerVersion())
+ && JavaEnvUtils.isJavaVersion(JavaEnvUtils.JAVA_1_4));
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]