Gentoo Archives: gentoo-dev

From: Ian Stakenvicius <axs@g.o>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] Re: useflag policies
Date: Tue, 11 Aug 2015 14:57:05
Message-Id: 55CA0D39.1040306@gentoo.org
In Reply to: Re: [gentoo-dev] Re: useflag policies by Sergey Popov
1 -----BEGIN PGP SIGNED MESSAGE-----
2 Hash: SHA256
3
4 On 11/08/15 08:58 AM, Sergey Popov wrote:
5 > 11.08.2015 15:30, Michael Palimaka пишет:
6 >> On 11/08/15 20:10, Sergey Popov wrote:
7 >>> Err, i have read the whole thread and still does not get a
8 >>> point, why i am wrong.
9 >>
10 >> You clearly have not. The reasoning behind Qt team's policy is
11 >> described on the page and has been reiterated on this list. You
12 >> are undermining what little confidence there is in the QA team by
13 >> making decisions with no consultation about problems you do not
14 >> understand.
15 >>
16 >>> It's old battle like we have beforce with "gtk" meaning "any
17 >>> versions of GTK flag". This behaviour should be killed with
18 >>> fire.
19 >>>
20 >>> Let's me reiterate some of the cases:
21 >>>
22 >>> 1. Package can be build without Qt GUI at all, but either Qt4
23 >>> or Qt5 can be chosen, but not both.
24 >>>
25 >>> Fix this with REQUIRED_USE, do not enable any of Qt flags by
26 >>> default
27 >>
28 >> Problem: this requires manual intervention if the user has both
29 >> qt4 and qt5 USE flags enabled.
30 >>
31 >
32 > User choice of using USE flags is NOT a problem
33 >
34 >>>
35 >>> 2. Package can not be build without Qt GUI - either Qt4 or Qt5
36 >>> is required, but not both
37 >>>
38 >>> Same thing here, different REQUIRED_USE operator. But - enable
39 >>> one of the flags by default to ease life of users.
40 >>
41 >> Problem: this requires manual intervention if the user has both
42 >> qt4 and qt5 USE flags enabled.
43 >
44 > Same here
45 >
46 >>>
47 >>> 3. Package can be build with Qt4 or Qt5 or both AT THE SAME
48 >>> TIME(if such package even exists?)
49 >>>
50 >>> Do not use REQUIRED_USE here, not needed.
51 >>>
52 >>> Now, please tell me, where am i wrong?
53 >>>
54 >>
55 >> The problem is manual intervention is required if the user has
56 >> both qt4 and qt5 USE flags enabled - and this is a common
57 >> configuration. It is not acceptable to make a user manually add
58 >> numerous package.use entries when all they want to do is install
59 >> KDE.
60 >
61 > And here
62 >
63 >> I agree Qt's policy is not a perfect solution, but in the absence
64 >> of some feature allowing a preference to be set when there is a
65 >> conflict it's the best we've got.
66 >>
67 >
68 > If you want to go this way, then please provide helper functions
69 > in eclasses to set dependencies properly for all common use cases.
70 > That will ease life both of developers and users.
71 >
72
73 Why do you need this?
74
75 #1, if you really want RDEPEND to only include the deps the package
76 will actually use, then you do this:
77
78 old:
79
80 qt5? ( list of qt5 atoms )
81 qt4? ( list of qt4 atoms )
82
83 ..to new:
84
85 qt5? ( list of qt5 atoms )
86 !qt5? (
87 qt4? ( list of qt4 atoms )
88 )
89
90
91 BUT I would advise against this. If a user has specified both qt4 and
92 qt5 in USE, then I see no problem with the VDB having both qt4 and qt5
93 atoms listed as dependencies. End-users that want a clean VDB can
94 just make sure they only enable one flag, but end-users that don't
95 care will have packages that just work.
96
97
98 > Leaving constructing of dependencies to developers in all cases
99 > will cause only pain in your solution.
100
101 It really wont, see above. At minimum, it's barely any more work than
102 it is with a REQUIRED_USE based solution.
103
104
105 -----BEGIN PGP SIGNATURE-----
106 Version: GnuPG v2
107
108 iF4EAREIAAYFAlXKDTkACgkQAJxUfCtlWe09QAD/ST47V7i08k09c8o+dgMx8hQP
109 cRyBiTzxHKKtQ3aqmKIBAIdjBB4rGZLLMjiu9l0KfUOkOT1J+Z8oHPWQhzDPJpqv
110 =LCgR
111 -----END PGP SIGNATURE-----

Replies

Subject Author
Re: [gentoo-dev] Re: useflag policies Sergey Popov <pinkbyte@g.o>