On 07/07/2012 11:54 AM, Peter Stuge wrote:
> Ian Stakenvicius wrote:
>>> Is it unrealistic to assume that upstream ABI providers will mark 
>>> their ABIs by using sonames correctly?
>>>
>>> Maybe that is at least the common case, then ABI_SLOT could be set 
>>> automatically.
>>
>> Although we have a lot of this information available (which is why/how
>> @preserved-libs works, for instance), there is no way for portage to
>> know *prior to emerging the update* if abi has changed.
> 
> Knowing that a library changes ABI before building is nice, but not
> relying on a human to encode this is nicer still.
> 
> After compile, before install, there is an opportunity to show the
> effects of installing the package.
> 
> I'm only talking about the context of the developer who is adding the
> new ebuild. So ABI_SLOT (or / SLOT) would be set automatically just
> once, in the process of committing the ebuild.

Well, if you're talking about having portage automatically edit the
ebuild, I don't think we want to do that. If developers use
portage-2.2_alpha with preserve-libs, then they'll know automatically
when there's an SONAME change that triggers preserve-libs. Part of the
beauty of the approach used in EAPI 4-slot-abi is that that it can be
used to trigger rebuilds in cases that don't even involve SONAME
dependencies (consider a "pure" perl module that only needs to be
rebuilt in order to install its interpreted *.pm files in a different
directory for a new version of perl).

> No need to repeat the
> binary analysis - except if one source package has different ABI for
> different ARCHes. Fun!

It might be nice to add some binary analysis things beyond preserve-libs
in the future. However, EAPI 4-slot-abi should work quite well even
without that. It just automates rebuilds [1] that the user was
previously required to handle manually, when prompted by elog messages,
or by running tools like revdep-rebuild and perl-cleaner. It's being
tested in the axs overlay [2], and it seems to be working pretty well.

[1]
http://blogs.gentoo.org/zmedico/2012/06/23/automatic-rebuilds-with-experimental-eapi-4-slot-abi/
[2] http://git.overlays.gentoo.org/gitweb/?p=dev/axs.git;a=summary
-- 
Thanks,
Zac


Reply via email to