Bug#673538: libobjc3 -> libobjc4 transition
Adam D. Barratt wrote:
> On 29.06.2012 14:29, Jeroen Dekkers wrote:
> > I just read that there might not be time to do the transition, but
> > this bug actually combined two transitions: the libobjc transition
> > and the gnustep transition. If the gnustep transition isn't going
> > to happen, we still need to finish libobjc4 transition on the
> > archs that have gcc 4.7 as default, right?
I don't think we *have* to, see below.
> My understanding was that if necessary (which given that the freeze is
> tomorrow it might be), this could be resolved without a transition by
> having gnustep-make explicitly depend on gobjc-4.6 for the wheezy cycle;
> see #676229.
> Yavor, is that correct?
You are correct that if the Release Team decides to postpone the
transition after the wheezy release, we we will resolve the current
problem without a transition (neither libgnustep-* nor libobjc).
You are not correct that we'll have to revert the change in
gnustep-make (the dependency on gobjc-4.6). It was a hack in the
first place, and depending on gobjc-4.6 implies a transition -- at
least all GNUstep packages that were built since gcc-4.7 became the
default need to be rebuilt. I don't see any benefit in doing this; we
may as well have a full GNUstep & libobjc transition instead.
Uploading gnustep-base/1.22.1 with the libobjc4 patch will allow the
package to be built with gcc-4.7 on x86 archs, and with gcc-4.6 on the
other (where 4.6 is still the default). Thus, all GNUstep packages
that were recently built will depend on libobjc4 on x86, and on
libobjc3 on the rest of the architectures, as is expected. The patch
is ABI compatible, so no recompilation should be necessary; I can
confirm this after my runtime tests.
Some GNUstep packages that were built with gcc-4.6 during the last
transition and were not touched since then (such as gtamsanalyzer.app)
will still depend on both libobjc3 on x86 (via their Depends:) and
libobjc4 (indirectly via their libgnustep-base1.22 dependency), but
libobjc.so.4 will be loaded first during GNUstep Base initialization,
so there won't be runtime issues.
The only problem for these apps is cosmetic (useless dependency on
libobjc3), but since gcc-4.6 is going to be shipped in wheezy anyway
and libobjc3 is of small size (presumably not a big problem for most
users), it is in no way critical.