Re: [patch] [java] bump libgcj soname
Matthias Klose <[email protected]> Sat, 2 Jan 2016 16:53:13 +0100
| Newsgroups | gmane.comp.gcc.java.patches,gmane.comp.gcc.patches |
|---|---|
| Message-ID | <[email protected]> |
On 02.01.2016 16:39, Andrew Haley wrote: > On 02/01/16 14:40, Matthias Klose wrote: >> >> preparing for a test rebuild of the archive, and trying to run gcj-dbtool (from >> GCC 5) with libgcj16 (from GCC 6): >> >> $ gcj-dbtool -n /tmp/foo.db >> libgcj failure: gcj linkage error. >> Incorrect library ABI version detected. Aborting. >> >> Aborted (core dumped) >> >> natClassLoader.cc:_Jv_CheckABIVersion checks the ABI version, which is defined as >> >> libjava/include/jvm.h:#define GCJ_CXX_ABI_VERSION (__GNUC__ * 100000 + >> __GNUC_MINOR__ * 1000) >> >> so this will be seen with everything directly linked to libgcj with a libgcj16 >> upgraded to GCC 6. So what to do? Bump the soname, or discard this check? > > I'd bump the soname. > >> 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? __GNUC_SUBMINOR__ wasn't encoded either for releases up to 4.9.x. Matthias