1 |
On Saturday 24 December 2005 02:18, Andrew Gaffney wrote: |
2 |
> Ricardo Loureiro wrote: |
3 |
> > -----BEGIN PGP SIGNED MESSAGE----- |
4 |
> > Hash: SHA1 |
5 |
> > |
6 |
> > Hi all, |
7 |
> > |
8 |
> > I'm the guy trying to put the portage tree in a relational database |
9 |
> > and making a portage-lite script to search and caculate deps from the |
10 |
> > database. I have currently some questions I couldn't find looking at |
11 |
> > the huge portage.py file: |
12 |
> > |
13 |
> > - - Where does portage saves information about installed files besides |
14 |
> > the world file, like versions installed and such? |
15 |
> |
16 |
> /var/db/pkg/ |
17 |
> |
18 |
> > - - I came across some dependancies like "useflag? ( || |
19 |
> > ( cat/package ) )". I can't find a logic in this and assume it's a |
20 |
> > mistake, or am I missing something? |
21 |
> |
22 |
> "|| ( cat/pkga cat/pkgb )" means that either pkga or pkgb will satisfy the |
23 |
> dependency. |
24 |
|
25 |
If there is only one atom, there is no point. Ie. "foo/bar" is equivalent to |
26 |
"|| ( foo/bar )". It says "you can choose any out of this 1 and only option." |
27 |
|
28 |
> > - - What exactly are CDEPEND, PDEPEND and EAPI specified on the cache |
29 |
> > format? |
30 |
> |
31 |
> I don't think CDEPEND is used anymore. PDEPEND is post-depend...packages |
32 |
> that should be installed *after* the current one is emerged. I'm not sure |
33 |
> about EAPI. |
34 |
|
35 |
CDEPEND was never used. It has now been removed although it's forever taken |
36 |
it's place within the flat_list keys. The value itself is now always empty |
37 |
and nothing in portage ever accesses it. |
38 |
|
39 |
PDEPEND is just RDEPEND. The only difference is that RDEPEND is currently |
40 |
treated the same as DEPEND; that is, it is treated as if it is needed during |
41 |
building even though it's only a runtime dependency. Usually (always?) you'll |
42 |
that if PkgA PDEPENDs on PkgB then PkgB will DEPEND on PkgA. |
43 |
|
44 |
EAPI is new. It specifies the version of the environment that is provided to |
45 |
ebuilds. For example, if a new phase is provided the EAPI is bumped. Ebuilds |
46 |
can use the new features before a supporting portage version is widely used |
47 |
(EAPI-aware portages will mask ebuilds with EAPIs that it can't support). |
48 |
Portage on the other hand can adjust how it deals with ebuilds based on the |
49 |
EAPI that the ebuild requests. |
50 |
|
51 |
-- |
52 |
Jason Stubbs |
53 |
-- |
54 |
gentoo-portage-dev@g.o mailing list |