This is the mail archive of the
java-patches@gcc.gnu.org
mailing list for the Java project.
Re: [PATCH, libjava/classpath]: Fix overriding recipe for target 'gjdoc' build warning
- From: Andrew Haley <aph at redhat dot com>
- To: Andrew Hughes <gnu dot andrew at redhat dot com>
- Cc: Matthias Klose <doko at ubuntu dot com>, Tom Tromey <tom at tromey dot com>, Jeff Law <law at redhat dot com>, Uros Bizjak <ubizjak at gmail dot com>, gcc-patches at gcc dot gnu dot org, java-patches at gcc dot gnu dot org
- Date: Thu, 20 Aug 2015 16:27:04 +0100
- Subject: Re: [PATCH, libjava/classpath]: Fix overriding recipe for target 'gjdoc' build warning
- Authentication-results: sourceware.org; auth=none
- References: <CAFULd4YCSbA_2V8jNF1QtcM8b4EF8mJzTD7PyU9ETZ-uSyemsw at mail dot gmail dot com> <CAFULd4bj7q=U+yHrd=+U9NgB=wMQtarvAEw-uAW9xL6SC09keQ at mail dot gmail dot com> <55CA44C8 dot 7000209 at redhat dot com> <87mvxxdxys dot fsf at tromey dot com> <141970419 dot 12686720 dot 1440038099721 dot JavaMail dot zimbra at redhat dot com> <87y4h68tk3 dot fsf at tromey dot com> <55D58ED0 dot 1020402 at ubuntu dot com> <55D5909B dot 3080207 at redhat dot com> <401143105 dot 13318272 dot 1440082676204 dot JavaMail dot zimbra at redhat dot com>
On 08/20/2015 03:57 PM, Andrew Hughes wrote:
> ----- Original Message -----
>> On 20/08/15 09:24, Matthias Klose wrote:
>>> On 08/20/2015 06:36 AM, Tom Tromey wrote:
>>>> Andrew> No, it isn't. It's still a necessity for initial bootstrapping of
>>>> Andrew> OpenJDK/IcedTea.
>>>>
>>>> Andrew Haley said the opposite here:
>>>>
>>>> https://gcc.gnu.org/ml/gcc-patches/2015-08/msg00537.html
>>>
>>> if you need bootstrapping OpenJDK 6 or OpenJDK 7, then having gcj
>>> available for the target platform is required. Starting with OpenJDK
>>> 8 you should be able to cross build OpenJDK 8 with an OpenJDK 8
>>> available on the cross platform. It might be possible to cross
>>> build older OpenJDK versions, but this usually is painful.
>>
>> Sure, but we don't need GCJ going forward. I don't think that there
>> are any new platforms to which OpenJDK has not been ported which will
>> require GCJ to bootstrap. And even if there are, anybody who needs to
>> do that can (and, indeed, should) use an earlier version of GCJ. It's
>> not going to go away; it will always be in the GCC repos. And because
>> newer versions of GCC may break GCJ (and maybe OpenJDK) it makes more
>> sense to use an old GCC/GCJ for the bootstrapping of an old OpenJDK.
>
> I don't see how we don't at present. How else do you solve the
> chicken-and-egg situation of needing a JDK to build a JDK? I don't
> see crossing your fingers and hoping there's a binary around
> somewhere as a very sustainable system.
That's what we do with GCC, binutils, etc: we bootstrap.
> From a personal point of view, I need gcj to make sure each new
> IcedTea 1.x and 2.x release bootstraps.
Sure, but all that does is test that the GCJ bootstrap still works.
And it's probably the only serious use of GCJ left.
> I don't plan to hold my system GCC at GCC 5 for the next decade or
> however long we plan to support IcedTea 2.x / OpenJDK 7. It's also
> still noticeably faster building with a native ecj than OpenJDK's
> javac. It would cause me and others a lot of pain to remove gcj at
> this point. What exactly is the reason to do so, other than some
> sudden whim?
It's not a sudden whim: it's something we've been discussing for years.
The only reason GCJ is still alive is that I committed to keep it
going while we still needed it boot bootstrap OpenJDK. Maintaining
GCJ in GCC is a significant cost, and GCJ has reached the end of its
natural life. Classpath is substantially unmaintained, and GCJ
doesn't support any recent versions of Java.
Andrew.