Gentoo Archives: gentoo-dev

From: Ben de Groot <yngwin@g.o>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] Re: example conversion of gentoo-x86 current deps to unified dependencies
Date: Wed, 03 Oct 2012 04:01:28
Message-Id: CAB9SyzQY1CF9F5JQk38FWvm-kPZKmQ3x-vmtaaGsJNLxweuJRg@mail.gmail.com
In Reply to: Re: [gentoo-dev] Re: example conversion of gentoo-x86 current deps to unified dependencies by Ian Stakenvicius
1 > On 30/09/12 06:15 PM, Brian Harring wrote:
2 >
3 >>>>> yngwin has a point that I've not seen addressed.
4 >>>>>
5 >>>>> What /is/ wrong with the whole CDEPEND intermediate var idea?
6 >>>>>
7 >>>>
8 >>>> The problem appears as we introduce more DEPEND variables
9 >>>> (which is what prompted the proposal, IIRC). If we have
10 >>>> ADEPEND, BDEPEND, CDEPEND, and DDEPEND, and there's only some
11 >>>> (i.e. not total) sharing going on then the COMMON_DEPEND
12 >>>> pattern starts to fall apart. You potentially need,
13 >>>>
14 >>>> AB_DEPEND AC_DEPEND AD_DEPEND BC_DEPEND BD_DEPEND CD_DEPEND
15 >>>> ABC_DEPEND ABD_DEPEND ACD_DEPEND BCD_DEPEND ABCD_DEPEND
16 >>>> (COMMON_DEPEND)
17 >>>>
18 >>>> This obviously gets worse as more DEPEND vars are introduced.
19 >>>>
20 >>>
21 >>> Well not really, no -- the additional *DEPENDs that are being
22 >>> proposed (or at least mentioned) for new EAPI will either remove
23 >>> atoms from COMMON_DEPEND/DEPEND/RDEPEND or will be used so
24 >>> tersely that a COMMON_DEPEND or other intermediate variable won't
25 >>> really be necessary for them.
26
27 Another thing I wanted to point out is that those "potential" extra
28 variables are not needed in practice. We already have 98% of the tree
29 (if I got the previously mentioned stats right) that does fine with
30 just one or two ({R,}DEPEND). The majority of that other 2% needs just
31 one more variable. There may be corner cases where more vars would be
32 needed, but those will never be more than a few ebuilds.
33
34 It's just not worth it to completely change the way we do things (or
35 use two systems in parallel) just for a few ebuilds that would
36 significantly benefit.
37
38 If we were a new distro and designing our ebuild format from scratch,
39 then yes, I would say your proposal has merit. But we aren't. We have
40 hundreds of people and tens of thousands of ebuilds using *DEPEND just
41 fine. There are no big problems, only corner-cases. We're not talking
42 about incremental improvements either (such as was the case e.g. with
43 use deps).
44
45 Let's just keep things simple, and refrain from "fixing" what isn't broken.
46 --
47 Cheers,
48
49 Ben | yngwin
50 Gentoo developer
51 Gentoo Qt project lead, Gentoo Wiki admin