Gentoo Archives: gentoo-portage-dev

From: Daniel Barkalow <barkalow@××××××××.org>
To: gentoo-portage-dev@l.g.o
Subject: Re: [gentoo-portage-dev] [RFC] Mask packages that don't cross-compile
Date: Wed, 22 Nov 2006 18:47:38
Message-Id: Pine.LNX.4.64.0611221317070.20138@iabervon.org
In Reply to: Re: [gentoo-portage-dev] [RFC] Mask packages that don't cross-compile by Marius Mauch
1 On Wed, 22 Nov 2006, Marius Mauch wrote:
2
3 > No. -foo is reserved for incremental negation. Maybe that isn't widely
4 > used in ACCEPT_KEYWORDS, but it has valid uses there and there can't be
5 > repurposed.
6
7 Oh, so -foo in package.keywords is used to override foo in
8 ACCEPT_KEYWORDS? That makes sense, although I'm not entirely convinced
9 that the logic currently in there actually works. I think the actually
10 effect seems to be that it lets you try to build a known-broken (for
11 your arch) ebuild, even in the current trunk. Both meanings make some
12 sense, and I'm not clear why people would want to do either; I was just
13 trying to be consistant with current behaviour. (I think it's a legacy
14 from using "-*" in packages to mask them, and "-*" in package.keywords to
15 unmask packages masked this way.)
16
17 > Is there a particular reason why you don't use the normal
18 > keyword logic (KEYWORDS=cross and setting -cross in p.keywords to mask a
19 > package), or simply a package.mask entry?
20
21 I don't want to use a package.mask entry because then you'd need a profile
22 for cross-compiling every current profile, and these would all have the
23 same set of changes to the underlying profiles: mask packages that try to
24 run the programs they build.
25
26 I don't want to use ACCEPT_KEYWORDS=cross, because then I don't get only
27 packages that are stable for my target architecture, and I want to use the
28 normal package keyword information as to what versions are good for what
29 architectures.
30
31 Using ACCEPT_KEYWORDS="cross arm" (which might be what you're suggesting;
32 portage would automatically insert "arm" if that's my target ARCH, so
33 ACCEPT_KEYWORDS="cross" actually means ACCEPT_KEYWORDS="cross $ARCH")
34 would be great, but that gives packages which have "arm" or "cross" (or
35 "~arm" if I have that in package.keywords), when I want packages that have
36 "arm" (or "cross", but they shouldn't) and don't have "-arm" (doesn't
37 matter) or "-cross" (the important one).
38
39 I.e., my only change is really to the situation where your keywords are
40 "foo bar" and a package has "foo -bar". Currently, the package is not
41 masked (because "foo" matches "foo"); I want it masked (because "bar"
42 negatively matches "-bar"). (In fact, the current truck totally ignores
43 "-bar" in a package's keywords, assuming that no package has "-bar" and
44 either "bar" or "~bar" and that simply failing to match any keyword you
45 have, since you won't have "-bar", is sufficient.)
46
47 -Daniel
48 *This .sig left intentionally blank*
49 --
50 gentoo-portage-dev@g.o mailing list

Replies

Subject Author
Re: [gentoo-portage-dev] [RFC] Mask packages that don't cross-compile Brian Harring <ferringb@×××××.com>