[gentoo-dev] Re: Re: Re: Multislot dependencies

2008-06-30 Thread Tiziano Müller
Ciaran McCreesh wrote:

 On Sat, 28 Jun 2008 23:41:17 +0200
 Tiziano Müller [EMAIL PROTECTED] wrote:
  := only makes sense when something is both a DEPEND and an RDEPEND.
  Actual behaviour, for Paludis, is that it rewrites := deps to :=blah
  when writing to VDB any time it can, and leaves anything it can't
  as := deps. Verifying sanity of := use is left to developers and
  the QA tool.

 ... and the spec.
 
 The spec's well defined. It just tells you how := works, not how to use
 it in a sensible manner. Pretty much the same as for everything else.
Sorry, but I disagree.

 
  The only sensible thing you can do with multiple matches on := slots
  (and ||=, if that route is taken) is to take the slot of the best
  matching installed version, and require that ebuilds do that too. In
  real world cases, this works just fine.
  
 so, ebuilds should use best_version instead of has_version for
 example. That's what I meant and what I miss in the kdebuild-1
 spec :-)
 
 Generally, it just works, because packages are usually fairly good at
 picking up the best installed version themselves anyway. But yes, if
 you have to pass a version manually to a package, best_version is the
 way to do it.

And what about a function to tell the PM explicitly which slot of a
dependency has been used (as an alternative)? Or should that decision
always be left to the PM? (that's something I'd expect to be in the PMS)


-- 
gentoo-dev@lists.gentoo.org mailing list



[gentoo-dev] Re: Re: Re: Multislot dependencies

2008-06-30 Thread Tiziano Müller
Gilles Dartiguelongue wrote:

 Le lundi 30 juin 2008 à 19:01 +0200, Enrico Weigelt a écrit :
 big_snip
 
 Funny, how you all manage to make simple things complicated ;-o
 
 I guess nobody considered an trivial solutions like an useflag ...
 
 no, this is not the proper solution. Just consider how bad gtk/gtk2
 useflag was and that was with only 1 package with 2 slots. Now think
 about say db (berkeleydb) or gtkhtml (and I'm still probably overlooking
 the most important point).
Hehe, that'd be funny.

With python it already gets messy:

RDEPEND=python2.4? ( !python2.5 ( !python2.6? ( dev-lang/python:2.4 )
python2.6? ( dev-lang/python:2.6 ) ) python2.5? ( !python2.6? (
dev-lang/python:2.5 ) python2.6? ( dev-lang/python:2.6) ) ) python2.6? (
dev-lang/python:2.6 )

or something like that...


-- 
gentoo-dev@lists.gentoo.org mailing list