Gentoo Archives: gentoo-dev

From: Marc Schiffbauer <mschiff@g.o>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] RFD: EAPI specification in ebuilds
Date: Fri, 09 Mar 2012 11:29:38
Message-Id: 20120309112808.GB16949@lisa.schiffbauer.lan
In Reply to: Re: [gentoo-dev] RFD: EAPI specification in ebuilds by Zac Medico
1 * Zac Medico schrieb am 08.03.12 um 17:30 Uhr:
2 > On 03/08/2012 01:42 AM, Marc Schiffbauer wrote:
3 > > * Ulrich Mueller schrieb am 08.03.12 um 08:27 Uhr:
4 > >> Such constructs also cannot be used with any of the other proposed
5 > >> solutions. And in fact, nobody is using such things in practice.
6 > >> _All_ ebuilds in the Portage tree can be successfully parsed with the
7 > >> regexp proposed.
8 > >
9 > > Ebuilds are bash scripts. I think introducing exceptions or
10 > > constraints here is not straightforward.
11 >
12 > Given that ebuilds already have to conform to a vast number of
13 > constraints that ordinary bash scripts do not. I think that it's
14 > perfectly reasonable for ebuilds to have a constrained syntax for EAPI
15 > assignments.
16
17 There are constraints in ebuilds, right. But its an *ebuild* in the
18 end, not an ordinary shell script. Thats true.
19
20 So if EAPI is very special, and I am now convinced it is, then well,
21 this might be the most important contraint in an ebuild at all.
22
23 If that is true I would vote to keep this as simple as possible:
24
25 * EAPI *must* *be* the first non-Argument / shell code in an ebuild
26 * The value of EAPI in the assignment *MUST* *NOT* contain any
27 other variables or other shell substitutions.
28
29 Period. Done.
30
31 * That would be the least invasive change.
32 * Could easily be checked by repoman
33 * Is easy parsable by other programs (python code)
34
35 -Marc
36 --
37 8AAC 5F46 83B4 DB70 8317 3723 296C 6CCA 35A6 4134