bodewig 2004/10/29 00:35:17
Modified: . build.xml
src/main/org/apache/tools/ant/taskdefs/compilers
DefaultCompilerAdapter.java
Log:
Make handling of javac -source easier. Simply make JDK 1.4.1's
interface upwards compatible.
Revision Changes Path
1.438 +7 -27 ant/build.xml
Index: build.xml
===================================================================
RCS file: /home/cvs/ant/build.xml,v
retrieving revision 1.437
retrieving revision 1.438
diff -u -r1.437 -r1.438
--- build.xml 28 Oct 2004 09:38:24 -0000 1.437
+++ build.xml 29 Oct 2004 07:35:17 -0000 1.438
@@ -376,28 +376,6 @@
<!--
===================================================================
- Set up a preset def for javac depending on
- the java version
- ===================================================================
- -->
-
- <target name="javac.preset" depends="javac.preset.1.5+,javac.preset.1.5-"/>
- <target name="javac.preset.1.5+" depends="check_for_optional_packages"
- if="jdk1.5+">
- <presetdef name="javac.preset">
- <javac source="${javac.source}"/>
- </presetdef>
- </target>
- <target name="javac.preset.1.5-" depends="check_for_optional_packages"
- unless="jdk1.5+">
- <presetdef name="javac.preset">
- <javac/>
- </presetdef>
- </target>
-
-
- <!--
- ===================================================================
Check to see what optional dependencies are available
===================================================================
-->
@@ -642,17 +620,18 @@
===================================================================
-->
<target name="build"
- depends="prepare, check_for_optional_packages, javac.preset"
+ depends="prepare, check_for_optional_packages"
description="--> compiles the source code">
<mkdir dir="${build.dir}"/>
<mkdir dir="${build.classes}"/>
<mkdir dir="${build.lib}"/>
- <javac.preset srcdir="${java.dir}"
+ <javac srcdir="${java.dir}"
destdir="${build.classes}"
debug="${debug}"
deprecation="${deprecation}"
target="${javac.target}"
+ source="${javac.source}"
optimize="${optimize}" >
<classpath refid="classpath"/>
@@ -701,7 +680,7 @@
</or>
</not>
</selector>
- </javac.preset>
+ </javac>
<copy todir="${build.classes}">
<fileset dir="${java.dir}">
@@ -1406,15 +1385,16 @@
<target name="compile-tests" depends="build" if="junit.present">
<mkdir dir="${build.tests}"/>
- <javac.preset srcdir="${tests.dir}"
+ <javac srcdir="${tests.dir}"
destdir="${build.tests}"
debug="${debug}"
target="${javac.target}"
+ source="${javac.source}"
deprecation="${deprecation}" >
<classpath refid="tests-classpath"/>
<selector refid="conditional-patterns"/>
- </javac.preset>
+ </javac>
<!-- Used by AntlibTest.testAntlibResource: -->
<jar
jarfile="${build.tests}/org/apache/tools/ant/taskdefs/test2-antlib.jar">
1.50 +23 -1
ant/src/main/org/apache/tools/ant/taskdefs/compilers/DefaultCompilerAdapter.java
Index: DefaultCompilerAdapter.java
===================================================================
RCS file:
/home/cvs/ant/src/main/org/apache/tools/ant/taskdefs/compilers/DefaultCompilerAdapter.java,v
retrieving revision 1.49
retrieving revision 1.50
diff -u -r1.49 -r1.50
--- DefaultCompilerAdapter.java 6 Oct 2004 22:41:52 -0000 1.49
+++ DefaultCompilerAdapter.java 29 Oct 2004 07:35:17 -0000 1.50
@@ -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]