SA and JDK ( was Re: JDK8 Preliminary Repository Layout)
Dr Andrew John Hughes
ahughes at redhat.com
Mon Mar 21 15:09:53 PDT 2011
On 11 March 2011 02:54, David Holmes <David.Holmes at oracle.com> wrote:
> Andrew,
>
> Just picking up on your SA comments and adding in the servicability folk and
> bcc'ing the build folk ...
>
> Dr Andrew John Hughes said the following on 03/11/11 10:46:
>>
>> Well HotSpot is one thing I think works well as a separate repository.
>> It allows us to have a stable branch for OpenJDK6 for example. The only
>> real thing that stops it being independent is the servicability agent,
>> which, IME, would be better held in the JDK. That would also mean that
>> the existing rules for building java classes could be used, rather than
>> reinventing it all in the HotSpot makefiles as at present.
>
> The SA is part of Hotspot because the SA is a Java interface to the Hotspot
> internals. Hence the SA Java files have to be updated when the hotspot
> source files are, hence they must be in the same repo or we'd have huge
> coordination problems. These files reside in sa-jdi.jar
>
> The SA classes are dependent on the com.sun.jdi interfaces/classes, so yes
> changes to JDI might require changes to the SA. But the SA is just a JDI
> client in that regard.
>
>> I've already run across one place where this is true. HotSpot builds
>> the servicability agent with -source 1.4 -target 1.4. Why? Because
>> of incompatibilies between its implementation and the com.sun.jdi
>> interfaces which require Comparable<T> not Comparable.
>
> My understanding is that the SA classes define their own Enum type which
> conflicts with the java.lang.Enum added in 1.5. To avoid all the warnings
> this would generate, plus the raw type warnings as the SA is not generified,
> it is compiled with -source 1.4.
>
> David
>
The first part of a fix for SA is:
http://hg.openjdk.java.net/icedtea/jdk7/hotspot/rev/e452443363a7
This drops the 1.4 options and gets it building by fixing compareTo.
The build doesn't turn on raw type warnings so there aren't any.
Instead, you just get the message from javac telling you how to turn
them on.
I'm planning a second fix to make it build with no warnings even when
JAVAC_MAX_WARNINGS is set to true.
--
Andrew :-)
Free Java Software Engineer
Red Hat, Inc. (http://www.redhat.com)
Support Free Java!
Contribute to GNU Classpath and the OpenJDK
http://www.gnu.org/software/classpath
http://openjdk.java.net
PGP Key: 94EFD9D8 (http://subkeys.pgp.net)
Fingerprint: F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8
More information about the serviceability-dev
mailing list