Gentoo Archives: gentoo-dev

From: Michael Palimaka <kensington@g.o>
To: gentoo-dev@l.g.o
Subject: [gentoo-dev] Re: useflag policies
Date: Tue, 11 Aug 2015 13:30:59
Message-Id: mqctdp$8u2$1@ger.gmane.org
In Reply to: Re: [gentoo-dev] Re: useflag policies by Sergey Popov
1 On 11/08/15 22:58, Sergey Popov wrote:
2 > 11.08.2015 15:30, Michael Palimaka пишет:
3 >> On 11/08/15 20:10, Sergey Popov wrote:
4 >>> Err, i have read the whole thread and still does not get a point, why i
5 >>> am wrong.
6 >>
7 >> You clearly have not. The reasoning behind Qt team's policy is described
8 >> on the page and has been reiterated on this list. You are undermining
9 >> what little confidence there is in the QA team by making decisions with
10 >> no consultation about problems you do not understand.
11 >>
12 >>> It's old battle like we have beforce with "gtk" meaning "any versions of
13 >>> GTK flag". This behaviour should be killed with fire.
14 >>>
15 >>> Let's me reiterate some of the cases:
16 >>>
17 >>> 1. Package can be build without Qt GUI at all, but either Qt4 or Qt5 can
18 >>> be chosen, but not both.
19 >>>
20 >>> Fix this with REQUIRED_USE, do not enable any of Qt flags by default
21 >>
22 >> Problem: this requires manual intervention if the user has both qt4 and
23 >> qt5 USE flags enabled.
24 >>
25 >
26 > User choice of using USE flags is NOT a problem
27
28 I invite you to reproduce the problem yourself then make the judgement.
29 Using REQUIRED_USE like this makes the affected packages unusable.
30
31 >>>
32 >>> 2. Package can not be build without Qt GUI - either Qt4 or Qt5 is
33 >>> required, but not both
34 >>>
35 >>> Same thing here, different REQUIRED_USE operator. But - enable one of
36 >>> the flags by default to ease life of users.
37 >>
38 >> Problem: this requires manual intervention if the user has both qt4 and
39 >> qt5 USE flags enabled.
40 >
41 > Same here
42 >
43 >>>
44 >>> 3. Package can be build with Qt4 or Qt5 or both AT THE SAME TIME(if such
45 >>> package even exists?)
46 >>>
47 >>> Do not use REQUIRED_USE here, not needed.
48 >>>
49 >>> Now, please tell me, where am i wrong?
50 >>>
51 >>
52 >> The problem is manual intervention is required if the user has both qt4
53 >> and qt5 USE flags enabled - and this is a common configuration. It is
54 >> not acceptable to make a user manually add numerous package.use entries
55 >> when all they want to do is install KDE.
56 >
57 > And here
58 >
59 >> I agree Qt's policy is not a perfect solution, but in the absence of
60 >> some feature allowing a preference to be set when there is a conflict
61 >> it's the best we've got.
62 >>
63 >
64 > If you want to go this way, then please provide helper functions in
65 > eclasses to set dependencies properly for all common use cases. That
66 > will ease life both of developers and users.
67 >
68 > Leaving constructing of dependencies to developers in all cases will
69 > cause only pain in your solution.
70 >
71 > Look at the example with berkdb/gdbm, that i have posted recently.
72 >
73 > If both of flags are not set - we stick to default.
74 > Should this be set in EVERY ebuild explicitly?
75 >
76 > Maybe provide some sugar like $(qt_use_default qtgui 5), where
77 > qt_use_default is the name of function, qtgui is the package and 5 is
78 > the slot for default choice, where either BOTH of flags(qt4, qt5) are
79 > enabled or disabled
80
81 How does this solve the REQUIRED_USE problem? Or is your only objection
82 is that resulting dependency string is "too hard"?
83
84 Don't forget that as a project with no special authority, Qt's policy
85 remains a suggestion for the vast majority of maintainers. If someone
86 wishes to provide support for only one Qt version or abuse their users
87 with REQUIRED_USE they are still free to do so.

Replies

Subject Author
Re: [gentoo-dev] Re: useflag policies Sergey Popov <pinkbyte@g.o>
Re: [gentoo-dev] Re: useflag policies Ciaran McCreesh <ciaran.mccreesh@××××××××××.com>