El sáb, 11-04-2015 a las 14:28 +0200, Michał Górny escribió:
> Hello,
> 
> I know of two cases of circular deps that can be solved -- as far as I
> know -- only by bundling:
> 
> 1. dev-util/pkgconfig <-> dev-libs/glib:2,
> 
> 2. dev-util/cmake <-> dev-libs/jsoncpp.
> 
> The former is solved via having USE=internal-glib on pkgconfig,
> the latter is yet unsolved [1].
> 
> I suspect we can expect more of this kind of issues in non-systemd
> world over time, and I feel like it'd be good to develop a generic
> policy for handling them. Something that could avoid having users go
> through this on a case-by-case basis.
> 
> I think the simplest solution would be to develop a generic USE flag
> that would only serve the purpose of forcing bundled dependencies for
> bootstrapping/initial install.
> 
> We have already:
> 
> build - !!internal use only!! DO NOT SET THIS FLAG YOURSELF!, used for
> creating build images and the first half of bootstrapping [make stage1]
> 
> bootstrap - !!internal use only!! DO NOT SET THIS FLAG YOURSELF!, used
> during original system bootstrapping [make stage2]
> 
> However, since both are marked for 'internal use only', I don't think
> it's a good idea to use them here. So I guess we need a new flag. Does
> anyone have suggestions how to name it?
> 
> Any other ideas?
> 
> [1]:https://bugs.gentoo.org/show_bug.cgi?id=546130
> 

As that USE flag should only be used for being able to install the
package the first time, maybe it should be treated in a "special" way. I
mean, it shouldn't be easily changed by users but, instead, switched
"internally" by the package manager to allow to unbreak the cycle. 

Otherwise, we could end up with people having packages built with
"bundled" libs forever because they enabled that USE at some point and
later they forgot (or were too lazy) to revert that :|


Reply via email to