Gentoo Archives: gentoo-dev

From: Donnie Berkholz <spyderous@g.o>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] [RFC] Useflags: qt, qt3, qt4?
Date: Wed, 21 Jun 2006 06:32:16
Message-Id: 4498E666.4090502@gentoo.org
In Reply to: Re: [gentoo-dev] [RFC] Useflags: qt, qt3, qt4? by "Kevin F. Quinn"
1 Kevin F. Quinn wrote:
2 > On Tue, 20 Jun 2006 16:14:08 -0700
3 > Donnie Berkholz <spyderous@g.o> wrote:
4 >
5 >> Mike Owen wrote:
6 >>> From this user's perspective, simple is better. qt3 and qt4 as use
7 >>> flags are completely and utterly obvious as to what they mean, and
8 >>> there is no confusion about them. Adding a plain qt flag in there
9 >>> brings back the gtk/gtk2 mess that we've presumably been trying to
10 >>> avoid in the future.
11 >> That depends on how it's done. If it's done in a simple and obvious
12 >> way (USE=qt means use the best available qt, USE=qt# for other weird
13 >
14 > where "available" means "available in the tree for arch", not
15 > "already installed on build system" (just to be clear - correct me if
16 > I'm wrong)
17
18 Yes, but it's more than that.
19
20 Available will vary on a package-by-package basis. Package "A" may have
21 qt4 and qt3 available, package "B" only qt4, package "C" only qt3.
22
23 USE=qt would use qt4 on A, qt4 on B, qt3 on C.
24 USE=qt3 would only affect A.
25
26 >> stuff that most people don't care about and so can ignore), it
27 >> shouldn't be that bad.
28 >
29 > So are you suggesting something like:
30 >
31 > qt - Add support for QT/include QT GUI
32 > qt3 - build for version 3 of QT
33 >
34 > where dependencies might be something like:
35 >
36 > qt? ( qt3? ( >=dev-libs/qt-3.3.6
37 > <dev-libs/qt-4 )
38 > !qt3? ( >= dev-libs/qt-4.1 ) )
39
40 Well, I'm not sure of the best behavior. If they have USE="qt qt3",
41 they're saying they want both the best available qt and qt3. I'd suggest
42 the natural preference would be best available _over_ qt3, in cases
43 where both are available and mutually exclusive.
44
45 So more like:
46
47 qt? ( =qt-4* )
48 !qt? ( qt3? ( =qt-3* ) )
49
50 Your inital dep string may not do what you intend, though. Something
51 more like
52
53 =qt-3*
54 =qt-4* for the two sections
55
56 > for a package that can build against either qt3 (3.3.6 or higher) or
57 > qt4 (4.1 or higher) but not both simultaneously, and perhaps:
58 >
59 > qt? ( >= dev-libs/qt-4.1
60 > qt3? ( >=dev-libs/qt-3.3.6
61 > <dev-libs/qt-4 ) )
62 >
63 > for packages that can build simultaneously for both (is this situation
64 > realistic?).
65
66 Yes, e.g. poppler-bindings
67
68 > We'd need a qt4 to get just the qt3 package in that case:
69 >
70 > qt? ( qt4? ( >= dev-libs/qt-4.1 )
71 > qt3? ( >=dev-libs/qt-3.3.6
72 > <dev-libs/qt-4 ) )
73
74 No, this isn't right. The qt flag is only controlling whether the "best"
75 interface is built, has nothing to do with older interfaces.
76
77 qt? ( =qt-4* )
78 qt3? ( =qt-3* )
79
80 The goal is to avoid a double-flag combo to do a single thing. "qt"
81 always and only affects the _best_ available qt interface for that
82 package. "qt#" affects only _older_ available qt interfaces for that
83 package.
84
85 > Am I making sense? This looks a lot like the gtk/gtk2 flags, but
86 > inverted; according to use.desc, gtk builds gtk+-1 unless gtk2 is set,
87 > whereas the above builds highest version compatible with the
88 > package unless a lower version is specifically requested through USE.
89 >
90 > Ideally we should be consistent in handling this issue (which
91 > presumably isn't limited to just gtk and qt), although it may not be
92 > worth the disruption to rework gtk/gtk2 into gtk/gtk1.
93
94 Thanks,
95 Donnie

Attachments

File name MIME type
signature.asc application/pgp-signature

Replies

Subject Author
Re: [gentoo-dev] [RFC] Useflags: qt, qt3, qt4? "Kevin F. Quinn" <kevquinn@g.o>