1 |
On Wed, 2009-03-25 at 14:14 +0100, Markus Duft wrote: |
2 |
> On Wed, 2009-03-25 at 12:00 +0100, Fabian Groffen wrote: |
3 |
> > On 20-03-2009 11:35:09 +0100, Markus Duft wrote: |
4 |
> > > i'll try and explain what i want in the first place: i'm porting things |
5 |
> > > to native windows. since windows isn't too cooperative, i'm unable to |
6 |
> > > merge most things (and with other things, i simply don't want to), and |
7 |
> > > thus i need to take those things from somewhere else (more or less the |
8 |
> > > complete @system). I _am_ able to build all those things for interix |
9 |
> > > (which is the host system in the windows case). So what i want is a |
10 |
> > > setup of two prefix instances with a certain relation to each other: the |
11 |
> > > native windows prefix should be able to recognize installed packages |
12 |
> > > from the other instance, and resolve dependencies by eventually using |
13 |
> > > the other .../var/db/... |
14 |
> > |
15 |
> > Since Windows and Interix seem to be two different things to me, can you |
16 |
> > explain why in this case Portage can resolve the dependencies from the |
17 |
> > Interix system to use for the Windows system? What dependencies are we |
18 |
> > talking about? Build tools? Libraries? Runtime dependencies? |
19 |
> |
20 |
> i'm using it to resolve DEPEND atoms only. of course my notion of valid |
21 |
> DEPENDs and RDEPENDs is influenced by this, and i'm alergic against |
22 |
> RDEPEND=$DEPEND and such :) since it doesn't work in this setup. however |
23 |
> right now most things i need don't make too much problems. |
24 |
> |
25 |
> > |
26 |
> > > This could be (and is) quite usefull for all other platforms too. For |
27 |
> > > exmaple i could use prefix chaining on a linux box. I could create a |
28 |
> > > prefix containing a base system, and then for testing of |
29 |
> > > i-don't-know-whatever, i could create another small prefix inheriting |
30 |
> > > all installed packages from the other one. this way new prefixes can |
31 |
> > > stay very slim, but still the "parent" prefix is not altered on merges. |
32 |
> > |
33 |
> > That potentially is useful, in the case where you want to upgrade a |
34 |
> > critical system package and test it out or something. Can't think of an |
35 |
> > example other than Portage itself for the moment, though. (And that one |
36 |
> > can be hairy, for instance if the vdb format changes NEEDED -> |
37 |
> > NEEDED.ELF.2) |
38 |
> |
39 |
> ++ :) |
40 |
> |
41 |
> > |
42 |
> > > one issue not handled by the current patch is, that prefixes can have |
43 |
> > > different CHOST/ARCH/... (which is the case with x86-interix and |
44 |
> > > x86-winnt for example). |
45 |
> > |
46 |
> > Then how does it work for you? |
47 |
> |
48 |
> as i said, i'm using DEPENDs only from the other prefix with the |
49 |
> different CHOST/ARCH. this works, since on interix i can execute windows |
50 |
> binaries, and vice versa (limited). |
51 |
> |
52 |
> the patch i proposed here and on gentoo-alt@ (btw. i have a fixed |
53 |
> version lying around since a few minutes ...) allows the user to set |
54 |
> which atoms should be resolve-able from the chain. for exmaple for |
55 |
> windows i'm doing this in /my/winnt/prefix/etc/make.conf: |
56 |
> |
57 |
> READONLY_EROOT=/my/interix/prefix:DEPEND |
58 |
> |
59 |
> on linux, if both prefixes are x86-linux for example i could to |
60 |
> in /my/prefix/two/etc/make.conf: |
61 |
> |
62 |
> READONLY_EROOT=/my/prefix/one:DEPEND,RDEPEND |
63 |
> |
64 |
> (btw. this forces PDEPENDs to merge in /my/prefix/two. i guess most of |
65 |
> the time this makes sense, since with a PDEPEND from a lib, i want the |
66 |
> PDEPEND package to link against this lib... you know what i mean? of |
67 |
> course PDEPEND can still be added to the above list...) |
68 |
> |
69 |
> (btw2. the name READONLY_EROOT is discussed on gentoo-alt@ already, so i |
70 |
> won't comment on it beeing cool/uncool here... ;) ) |
71 |
> |
72 |
> Cheers, Markus |
73 |
> |
74 |
> > |
75 |
> > |
76 |
> |
77 |
> \ |
78 |
|
79 |
|
80 |
While much of what you are talking about here mainly applies to prefix, |
81 |
it looks to me from glancing over the code that you might of solved a |
82 |
long standing problem in the embedded world with cross compiling via |
83 |
portage. 222895 If that is the case, then I owe you a beer. one about |
84 |
the size of a keg. |
85 |
|
86 |
|
87 |
-- |
88 |
Ned Ludd <solar@g.o> |
89 |
Gentoo Linux |