[patch] [java] bump libgcj soname

Matthias Klose doko@ubuntu.com
Sun Jan 3 15:52:00 GMT 2016


On 03.01.2016 15:17, Andrew Haley wrote:
> On 03/01/16 11:38, Matthias Klose wrote:
>> On 02.01.2016 17:11, Andrew Haley wrote:
>>> On 02/01/16 15:53, Matthias Klose wrote:
>>>>>> In any case, GCJ_CXX_ABI_VERSION should be changed to not include __GNUC_MINOR__
>>>>>>>> anymore.  Maybe for the gcc-5-branch, set it unconditionally to 3 so that it
>>>>>>>> won't change anymore with future releases from the gcc-5 branch?
>>>>>>
>>>>>> That's safe only if Classpath and libgcj are not changed at all.
>>>> why?
>>>
>>> Because of the way that gcj's linkage works.  If you change any of the
>>> vtable/itable indexes your program will crash.
>>
>> Right, but this no change compared to the 4.x.y releases.
>>
>> This is what I committed to the trunk.
>>
>> So what to do with the gcc-5 branch? Apply the same patch to jvm.h, or fix the
>> minor version to 3? The latter would be compatible at least with the 5.3 release.
>
> Neither.  If you link a program with libgcj then you need to recompile
> it when a new version of libgcj comes along.  It has always been this
> way.

No, libgcj versions up to 4.9.3 didn't change the value for releases taken from 
the same branch. All of 4.9.0, 4.9.1, 4.9.2, 4.9.3 have the same 
GCJ_CXX_ABI_VERSION. But 5.1, 5.2 and 5.3 have *different* GCJ_CXX_ABI_VERSIONs.

> Why change this rule now, at this stage of GCJ's life?

This was changed by the change of the version schema, an unintential change for 
GCJ_CXX_ABI_VERSION.  I want to keep it that way, not change it with every 
release from the gcc-5 branch.

Matthias



More information about the Gcc-patches mailing list