ant-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Stefan Bodewig <bode...@apache.org>
Subject Bootclasspath and external compiles (was Re: cvs commit: ant/src/main/org/apache/tools/ant/taskdefs/compilers Jikes.java)
Date Mon, 13 Dec 2004 14:42:55 GMT
On 10 Dec 2004, <bodewig@apache.org> wrote:

+        // this is a quick hack to make things work in a
+        // Gump/Kaffe/Jikes combo.  I promise I'll explain it later -
+        // and add a real solution as well

This is the first part of the promise.

Gump currently places Xerces and various other stuff that can also
be found in the JDK onto the bootclasspath to ensure it uses the
latest versions.

When Ant invokes an external compiler, it may pass the CLASSPATH
it have been invoked with (depending on build.sysclasspath and
includenantruntime), but it never passes the bootclasspath, so it
swallows whatever is there.

In the Gump/Jikes combination this means, Xerces is no longer on
the classpath when Jikes runs.

I think Ant's behavior is wrong and thus propose the following
changes (that I'll perform unless you tell me I'm wrong):

* If includejavaruntime is true in <javac>, add the full
  bootclasspath of the current VM.

* If build.sysclasspath has the value "only" (i.e. ignore all
  classpath defintions in the build file, use the system), add the
  full bootclasspath of the current VM.

In both cases, if the external compiler supports -bootclasspath,
add it there - otherwise add it to -classpath.

This would apply to <javac> but also to <rmic>.

Stefan

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org
For additional commands, e-mail: dev-help@ant.apache.org


Mime
View raw message