Robin H. Johnson | 16 Oct 02:17
Favicon
Gravatar

USE=multislot, xDEPEND-syntax in SLOT and Slot dependencies [Was: Re: [RFC] some global useflags]

I'm deliberately starting a new thread here, because this is meandering
well off the original topic of the global useflag proposals.

On Thu, Oct 16, 2008 at 02:18:16AM +0200, Marius Mauch wrote:
> There are also other issues, e.g. it breaks the generation of the
> @installed package set as the installed slots can't be found in the
> tree. As portage-2.2 makes increased use of slot atoms internally for
> vdb handling we got a few bugreports simply due to the cache constraint
> violation by USE=multislot.
Ok, I found bug #174184 on this matter.

kugelfang proposed to include this in EAPI=1, but I don't find it in
there, what happened?

The short-term fix of use.mask just stops current breakage, but we need
a real solution so that we can keep using it where we actually need it.

Ignoring Vapier's tirade against ciaranm there, we need the
xDEPEND-syntax for SLOTS as the real solution, however that still
wouldn't resolve the portion that has CTARGET as part of the SLOT, since
metadata generated on the rsyncmaster with a different CTARGET wouldn't
match on the clients.

I'm also wondering about a bad interaction with slot dependencies even
without having CTARGET:
Say gcc has two variants, SLOT=3.4 and SLOT=3.4.5. 
The language in the approved version of PMS (section 9.2.5) states: "A
specification with a named slot dependency matches only if the slot of
the matched package is squal to ths lot specified."

(Continue reading)

Marius Mauch | 16 Oct 03:58
Favicon

Re: USE=multislot, xDEPEND-syntax in SLOT and Slot dependencies [Was: Re: [RFC] some global useflags]

On Wed, 15 Oct 2008 17:20:32 -0700
"Robin H. Johnson" <robbat2 <at> gentoo.org> wrote:

> Ignoring Vapier's tirade against ciaranm there, we need the
> xDEPEND-syntax for SLOTS as the real solution, however that still
> wouldn't resolve the portion that has CTARGET as part of the SLOT,
> since metadata generated on the rsyncmaster with a different CTARGET
> wouldn't match on the clients.

Are there significant USE cases for conditionals in SLOT that aren't
related to multislot and multiple ABIs? (the whole DEPEND syntax in
SLOT doesn't make sense)

For allowing multiple ABIs for a package to be installed I'm not
convinced that using SLOT is the right solution, this should probably
be considered as part of a more general multilib / cross-compile
support (there have been different designs for that).

And maybe in the (distant) future we can even add real multislot support
(same version of a package installed in multiple slots), but that's
going to need _major_ vdb and portage API changes first.

Marius


Gmane