Gentoo Archives: gentoo-dev

From: Georg Rudoy <0xd34df00d@×××××.com>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] Re: RFC: c++14 global USE flag
Date: Sun, 03 May 2015 14:14:19
Message-Id: CAGbUWSL+zt9a67H3x_QbPstxZbXJ9c7pocXyGmw7Sox1QWxwvg@mail.gmail.com
In Reply to: [gentoo-dev] Re: RFC: c++14 global USE flag by Duncan <1i5t5.duncan@cox.net>
1 2015-05-03 13:51 GMT+03:00 Duncan <1i5t5.duncan@×××.net>:
2
3 > What about a somewhat more generic flag such as newcode? Like the bindist
4 > or minimal flags, this could be global, but with local descriptions very
5 > strongly recommended. Similarly, like minimal, setting it globally would
6 > be strongly discouraged.
7 >
8 > In this case, the newcode local description would be something like:
9 >
10 > C++14 related: gcc doesn't support yet, requires clang
11 >
12 > ... with an appropriate use-conditional dep.
13 >
14 > The newcode flag would however be generic enough that it could be reused
15 > for C++17, etc, as well, and could obviously be phased out for any
16 > particular package once its specific newcode dependencies are met in
17 > stable -- in this case, when a supporting gcc stabilizes.
18 >
19
20 Nice idea, thanks! There are a couple of corner cases though.
21
22
23 > newcode would even be generic enough to be used for say qt6 when the time
24 > comes, if it turns out to be stuck in the qt overlay for quite some time,
25 > as was qt5, for the longest time,
26
27
28 What if a package would support (optional) builds with C++17-related
29 features and (optional) builds with say Qt6, and these could be toggled
30 independently? Does that imply having something like newcode_cpp17 and
31 newcode_qt4 on per-package basis?
32
33
34 > and the good bit is, generic meaning,
35 > that USE=newcode requires a dep that's still generally problematic or
36 > might be considered excessive to get, for optional functionality that may
37 > or may not be considered worth it, should be pretty obvious.
38 >
39
40 Does that imply that merely pulling clang for builds is not a
41 newcode-concern then, and, back to the original topic, in case of
42 leechcraft C++14 can be enabled unconditionally, again with unconditional
43 pulling of clang?
44
45 That's probably a way to go, but feels like not Gentoo-way enough (just
46 removing an option).
47
48
49 > Making that meaning even more obvious would be the fact that the flag
50 > would likely be packageuse-masked for many users for much of the the
51 > time. That could for instance allow packages using it in-tree, before
52 > the dep it pulls in is itself in-tree, while still making it possible to
53 > unmask, for users who either already have the required overlay active, or
54 > who don't have it active ATM, but are willing to activate it to get the
55 > features it toggles.
56 >
57
58 Depending on the answer to the previous question, if all the deps are
59 in-tree, then there is no need in masking the useflag. It could be unmasked
60 on the per-package basis again, I guess? Then there is a question of the
61 default (globally unmasked and per-package masks vs globally masked and
62 per-package unmasks), but that's a relatively minor one.
63
64 --
65 Georg Rudoy

Replies

Subject Author
[gentoo-dev] Re: RFC: c++14 global USE flag Duncan <1i5t5.duncan@×××.net>