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 |