[PATCH, libjava/classpath]: Fix overriding recipe for target 'gjdoc' build warning

Jeff Law law@redhat.com
Thu Aug 20 17:35:00 GMT 2015


On 08/20/2015 10:03 AM, Andrew Hughes wrote:
> ----- Original Message -----
>> On 08/20/2015 09:27 AM, Andrew Haley wrote:
>>> 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.
>> Right.  So the question is there some reason why OpenJDK can't be used
>> to bootstrap itself?  Ie, is there a fundamental reason why Andrew needs
>> to drop back down to GCJ and start the bootstrapping process from scratch.
>>
>> ISTM that ideally the previous version of OpenJDK would be used to
>> bootstrap the new version of OpenJDK.
>>
>> Which leaves the question of how to deal with new platforms, but it
>> sounds like there's a cross-compilation process starting with OpenJDK 8
>> which ought to solve that problem.
>>
>
> The issue is that we're still supporting a version of OpenJDK/IcedTea where
> there is no previous version (6). Once that goes, gcj could go too. This
> is still just a little too soon.
But surely OpenJDK6 can build OpenJDK6, right?  I don't see you're 
fundamentally getting anything from always starting with a GCJ bootstrap.

>
> That's where it comes unstuck. How do you get a JDK built when there are
> no JDK binaries for your architecture?
Cross compilation, just like folks do for Ada.


>>
>
> I'm not against this long-term, just not immediately. Deprecating it now
> and removing it in the next release cycle (7?) would probably be enough,
> but we need a little more time to wind down dependencies. I don't see us
> needing it in a GCC released in 2017.
I was of the opinion that we should remove it from the default languages 
to be built.  Others wanted to be more aggressive :-)

jeff



More information about the Java-patches mailing list