On Sat, 26 Jan 2013 18:06:32 +0100
Michał Górny <mgo...@gentoo.org> wrote:

> On Sat, 26 Jan 2013 12:30:16 -0300
> Alexis Ballier <aball...@gentoo.org> wrote:
> 
> > On Sat, 26 Jan 2013 16:08:45 +0100
> > Michał Górny <mgo...@gentoo.org> wrote:
> > 
> > > On Sat, 26 Jan 2013 11:54:44 -0300
> > > Alexis Ballier <aball...@gentoo.org> wrote:
> > > 
> > > > On Sat, 26 Jan 2013 13:11:41 +0100
> > > > Michał Górny <mgo...@gentoo.org> wrote:
> > > > 
> > > > > > (maybe protect it with has_multilib_profile if you wish)    
> > > > > 
> > > > > Well, the current code assumes that no flags == non-multilib
> > > > > profile.
> > > > 
> > > > .. and I hit send to quickly:
> > > > coming back to the skype example, with this assumption, on x86
> > > > libitneeds will have no abi useflag enabled while on amd64 it'll
> > > > have abi_x86_32, so you'll end with deps like: x86? ( libitneeds
> > > > ) !x86? ( libitneeds[abi_x86_32] )
> > > 
> > > Hmm, maybe we should make 'plain x86' use.force the abi_x86_32
> > > flag (though keeping it hidden). Then the following dep will work
> > > for both arches:
> > > 
> > >   libitneeds[abi_x86_32]
> > 
> > yep, that's the best thing to do IMHO, but then if you want no
> > multilib -> returns empty list then you'll have to check it with
> > has_multilib_profile :)
> 
> Is this really necessary? AFAIU from the endclass standpoint there's
> no real difference between non-multilib build and build for one ABI.
> I could even make the multilib code paths used only when at least 2
> ABIs are enabled.

I don't think it's necessary, but that's what your function had as a
spec :)
You could probably just use one code path, since, like you said,
non-multilib is multilib with only one abi :)

(not sure if it's safe to do non-multilib when there's only one abi, it
may not be the default abi and need multilib_toolchain_setup)

by the way, you'd probably want _autotools-multilib_get_enabled_abis to
return the default ABI last with the same trick as get_all_abis so that
in make install the default ABI gets 'preference' as it overwrites the
others upon collision (it should, in theory, not matter but think
about installed headers that get processed by autotools)

Reply via email to