Gentoo Archives: gentoo-dev

From: Paul de Vrieze <pauldv@g.o>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] Dynamic SLOTs
Date: Fri, 06 Aug 2004 15:18:35
Message-Id: 200408061718.34261.pauldv@gentoo.org
In Reply to: Re: [gentoo-dev] Dynamic SLOTs by Jason Stubbs
1 On Friday 06 August 2004 14:41, Jason Stubbs wrote:
2 > On Friday 06 August 2004 20:56, Paul de Vrieze wrote:
3 > > On Saturday 31 July 2004 08:46, Mike Frysinger wrote:
4 > > > On Saturday 31 July 2004 12:09 am, Jason Stubbs wrote:
5 > > > > I added support for USE-based SLOTs to
6 > > > > support the third and fourth.
7 > > >
8 > > > i know this is off topic of your e-mail, but could you go more into
9 > > > depth on this ?
10 > > > CHOST / CCHOST / cross compiling dynamic SLOTs interest embedded very
11 > > > much -mike
12 > >
13 > > I'm working on my own portage_ng version. It includes a c++ parser that
14 > > replaces the bash cruft, is a lot faster, and parses most existing
15 > > ebuilds. (compilation etc. still happens in bash) (It does not allow at
16 > > all dynamic behaviour on the toplevel, but it will include a much more
17 > > flexible dependency structure. On top of that the parser itself does not
18 > > (yet at least) perform the variable substitution, so the variables are
19 > > still available for reading. Once I get to that point I will also include
20 > > some kind of dynamic slot/ multislot feature based on some conditions. It
21 > > will certainly allow multiple installation of the same version of the
22 > > same package (think crosscompiling, php for apache1 and apache2) given
23 > > that they have different MULTISLOT values
24 >
25 > Are you going to share information or just offer another sales pitch? For
26 > example, what algorithm(s) are you going use to handle the following?
27 >
28 > pkg-a-1.0:SLOT="foo? ( 2 ) !foo ( 1 )"
29 > pkg-a-1.1:SLOT="foo? ( 1 ) !foo ( 2 )"
30 > pkg-b-1.0:DEPEND="foo? ( pkg-a:2 )"
31 > pkg-c-1.0:DEPEND="pkg-b[foo]"
32 > USE="-foo" emerge pkg-c
33
34 For one thing, I'm going to introduce a prefix based notation (similar to
35 lisp) for dependencies, with the current syntax as a shortcut. I'm not yet
36 very clear on how the MULTISLOT will work exactly, but variable based
37 MULTISLOT should not be any problem
38
39 >
40 > How about if pkg-a is installed in both slot 1 and slot 2 and the user
41 > issues "emerge -u pkg-a" ?
42
43 I have not thought about this yet at all. Probably update both, or give a big
44 fat warning/error message
45
46 >
47 > How about if we add pkg-d-1.0:DEPEND="pkg-a[-foo]" and the user issues
48 > "emerge pkg-c pkg-d" ?
49
50 Then we check whether pkg-a[-foo] can be satisfied in the current installed
51 tree. If it can it will be (possibly by remerging it), else there is a
52 conflict and an error message will be produced
53
54 >
55 > All those have a definite solution, but doing it in code that isn't as slow
56 > as hell is another matter.
57
58 Well, I'll try to work on it with fast code
59
60 Paul
61
62 --
63 Paul de Vrieze
64 Gentoo Developer
65 Mail: pauldv@g.o
66 Homepage: http://www.devrieze.net

Replies

Subject Author
Re: [gentoo-dev] Dynamic SLOTs Mike Frysinger <vapier@g.o>
Re: [gentoo-dev] Dynamic SLOTs Jason Stubbs <jstubbs@g.o>