On Wed, 12 Aug 2015 14:24:06 -0400 Ian Stakenvicius <a...@gentoo.org> wrote:
> -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA256 > > On 12/08/15 02:19 PM, Alexis Ballier wrote: > > On Wed, 12 Aug 2015 20:00:42 +0200 Ulrich Mueller > > <u...@gentoo.org> wrote: > > > >>>>>>> On Wed, 12 Aug 2015, Ciaran McCreesh wrote: > >> > >>>> pkg_pretend() { if use qt4; then required_use -qt5 else > >>>> required_use qt5 fi } > >> > >>> And how would the PM understand that -qt5 is conditional upon > >>> qt4? Such knowledge is required if it's supposed to > >>> auto-resolve stuff... > >> > >> Right, the above was too simple (and wrong). It should have > >> been: > >> > >> pkg_pretend() { use qt4 && use qt5 && required_use -qt5 use qt4 > >> || use qt5 || required_use qt4 } > > > > what is the difference ? > > > > pkg_pretend still needs to be executed to guess what useflags > > are enabled or not, which information is needed before > > dependency calculation > > > > or are we talking about moving pkg_pretend into dependency > > calculation? > > > > > pkg_pretend is already executed during dependency calculation in > portage, although this doesn't seem to actually be specified in PMS: > "The pkg_pretend function is called some unspecified time before a > (possibly hypothetical) normal sequence." as per PMS sec.9.2 > that's definitely not the impression I've got with emerge -uDNa world: dep calculation, show result, wait for input, accept, and then pkg_pretend stuff gets executed.