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 22:05:52
Message-Id: Pine.LNX.4.64.0611221616120.20138@iabervon.org
In Reply to: Re: [gentoo-portage-dev] [RFC] Mask packages that don't cross-compile by Brian Harring
1 On Wed, 22 Nov 2006, Brian Harring wrote:
2
3 > What is annoying there is that since package.keywords is under
4 > *very* weird rules, you can't do the usual incremental tricks there.
5 >
6 > Try specifying that you want to run only stable arch via
7 > package.keywords sometime; it's not possible.
8
9 In any case, I'm not proposing any change to package.keywords or
10 ACCEPT_KEYWORDS. Maybe I ought to, because the situation is confusing and
11 some useful things aren't possible, but that's a separate issue.
12
13 > You're proposing further overloading of ACCEPT_KEYWORDS; how would
14 > this fly for package.keywords?
15
16 I wouldn't change ACCEPT_KEYWORDS at all or anything in the computation of
17 pgroups or mygroups in portdbapi.gvisible(), so package.keywords is
18 unchanged and the whole incremental ACCEPT_KEYWORDS is also unchanged.
19
20 The present documentation (Ebuild HOWTO, for example) says "If the
21 KEYWORDS flag has a preceding -, then the package does not work with the
22 given keyword." But this is ignored by portage, because "Packages that do
23 not support the native architecture are automatically masked by Portage",
24 which means that "-x86" has no effect, because an ebuild with "-x86" won't
25 have "x86" or "~x86", and is therefore masked. I'm proposing that "-foo"
26 be taken seriously as meaning that the package does not work with the
27 "foo" keyword, even if the ebuild would otherwise be visible.
28
29 > Alternative that comes to mind (and is cleaner) is to actually have
30 > portage *know* it's doing cross compilation; eliminates a fair bit of
31 > the nasty ROOT detection it has to do; that cleans up the innards a
32 > bit, but for it to work you would need a RESTRICT=cross-compile to
33 > mark packages that can't be x-compiled as unusable (yet another
34 > visibility filter, yay!) :)
35
36 I don't think adding a RESTRICT option that's a visibility filter, unlike
37 all of the existing ones (which affect what steps in building a package
38 portage can take), would clarify anything. Having portage automatically
39 enable whatever visibility filter there is for ebuilds that don't
40 cross-compile would be nice, but that's a separate step.
41
42 > Downside, such a restrict isn't fine grained per arch; pkg may
43 > cross-compile fine for arches running linux, but explode targettubg
44 > gfbsd for example.
45
46 That's an issue with any proposal, but I bet that actually getting that
47 level of details into ebuilds is going to be impractical anyway.
48
49 -Daniel
50 *This .sig left intentionally blank*
51 --
52 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>