Gentoo Archives: gentoo-portage-dev

From: Zac Medico <zmedico@g.o>
To: gentoo-portage-dev@l.g.o
Subject: Re: [gentoo-portage-dev] Moving ebuild-related where they belong
Date: Thu, 07 Sep 2006 17:23:29
Message-Id: 4500555E.2070006@gentoo.org
In Reply to: Re: [gentoo-portage-dev] Moving ebuild-related where they belong by Simon Stelling
1 -----BEGIN PGP SIGNED MESSAGE-----
2 Hash: SHA1
3
4 Simon Stelling wrote:
5 > Zac Medico wrote:
6 >> Well, if the metadata generation step is viewed as being separate from the rest,
7 >> and the helpers aren't needed during that step, then it's possible to get the
8 >> EAPI from the ebuild without the helpers being in the environment. Once the
9 >> EAPI is known, the package manager can use that to determine what else (if
10 >> anthing) needs to be added to the environment. Then you'd only need a way to
11 >> tell the package manager which EAPI levels the functions in your
12 >> install-helpers.eclass (or whatever) apply to.
13 >
14 > That is a workaround, but it makes a pretty hard link between the
15 > package manager and the functions, which is exactly what I am trying to
16 > cut through with the patch. Sure, it'd be a workaround, but just keeping
17 > them in the portage package until EAPI=1 is reached is one too...
18
19 It's not intended as a workaround and it shouldn't create a hard link between
20 the package manager and the functions. The idea is that the tree should provide
21 the necessary information for the package manager (portage or not) to determine
22 how it should setup the environment for a given EAPI. The file containing the
23 functions from install-helpers.eclass would have to be labeled in some way such
24 that any package manager would know that those functions are required when
25 EAPI=0 (and possible other EAPI levels).
26
27 >>>> So, the correct way to do it is to define an EAPI=1 that does no longer
28 >>>> include these helper functions and make the eclasses/ebuilds that use it
29 >>>> inherit the eclass manually. However, this will need to run through -dev
30 >>>> and I'm afraid the ebuild devs wouldn't like it at all :-/
31 >> They won't like it because it's expected that EAPI will provide the necessary
32 >> information. Why should they have to inherit some special eclass if it's
33 >> already implied by the EAPI that they've specified?
34 >
35 > It wouldn't be implied anymore. The install-helpers.eclass would
36 > actually be like every other eclass, like eutils fex.
37
38 Fine, but the EAPI can still be used to imply that some other functions may or
39 may not be available.
40
41 > Actually, the reason they won't like it for will more likely be that it
42 > requires adding another eclass to the inherit line for ~15'000 ebuilds.
43
44 See, that statement shows me that you've missed my point that EAPI can be used
45 to imply which functions are implicitly available. It would be redundant to
46 inherit an eclass containing functions that are already implied by the EAPI.
47
48 Zac
49
50 -----BEGIN PGP SIGNATURE-----
51 Version: GnuPG v1.4.5 (GNU/Linux)
52
53 iD8DBQFFAFVc/ejvha5XGaMRAoKBAKDPB+W/e1BVL11NJYWX3NlRdizJUwCfYI4l
54 dPKQMsEBZbs8qkBQBTeUVJU=
55 =1IQL
56 -----END PGP SIGNATURE-----
57 --
58 gentoo-portage-dev@g.o mailing list

Replies

Subject Author
Re: [gentoo-portage-dev] Moving ebuild-related where they belong Brian Harring <ferringb@×××××.com>