Gentoo Archives: gentoo-project

From: Samuli Suominen <ssuominen@g.o>
To: gentoo-project@l.g.o
Subject: Re: [gentoo-project] Re: Call for agenda items -- Council meeting 2012-06-12
Date: Sun, 03 Jun 2012 06:02:39
Message-Id: 4FCAD7F3.9010101@gentoo.org
In Reply to: [gentoo-project] Re: Call for agenda items -- Council meeting 2012-06-12 by Ulrich Mueller
1 On 06/03/2012 03:01 AM, Ulrich Mueller wrote:
2 >>>>>> On Sun, 03 Jun 2012, Samuli Suominen wrote:
3 >
4 >>> On 05/29/2012 10:09 AM, Fabian Groffen wrote:
5 >> http://archives.gentoo.org/gentoo-dev/msg_920c6d6daafe7702bfa3b8a2bc21e0c1.xml
6 >
7 >>> Can you indicate what the council has to vote on/decide for this one?
8 >
9 >> EAPI=5
10 >
11 >> optional: "$@" placement in default for src_configure()
12 >
13 >> econf "$@"
14 >
15 >> optional: "$@" placement in default for src_compile()
16 >
17 >> emake "$@"
18 >
19 > I still don't see the point of it. econf or emake could just be called
20 > directly. We won't gain anything by allowing arguments, but only
21 > complicate things.
22 >
23 >> this one is what I'm really after for:
24 >
25 >> default for src_install() in EAPI=5 should accept "$@" in correct place
26 >> to avoid usage of EXTRA_EMAKE within ebuilds/eclasses and to avoid
27 >> duplicating the Portage code for DOCS.
28 >> NOTE: When this was last voted on for EAPI=3, we didn't have this DOCS
29 >> handling, and this wasn't important yet.
30 >
31 >> emake DESTDIR="${D}" "$@" install
32 >
33 > Again, this could be called directly, which has the advantage that it
34 > makes it obvious that src_install isn't the default.
35
36 The difference is working the tree when you have to alter ebuilds which
37 have been written like:
38
39 DOCS=( AUTHORS README.NOW "${FILESDIR}"/README.Gentoo )
40
41 src_install() {
42 default
43
44 echo "Some command here."
45 }
46
47 At this point you have to move content of DOCS which may or may not rely
48 on the ""quoting with array"". Remove the call to default. And then
49 duplicate the EAPI=4 default into the ebuild.
50
51 And then replicate that every month dozen times and keep on doing it for
52 some months. Get frustrated.
53
54 If that's not enough, then you get all excited about EAPI=4 and finally
55 think you have a replacement for base.eclass to port xfconf.eclass away
56 from the thing when you only used it for default src_install() to avoid
57 code duplication...
58
59 Think you are all done, and then get complainment that support for extra
60 arguments for xfconf_src_install was killed, and was required for things
61 like:
62
63 xfconf_src_install htmldirectory=/usr/share/doc/${PF}/html
64 imagesdir=/usr/share/doc/${PF}/html/images
65
66 Where sedding the build system runs maintainer mode at .in level, and
67 runnning autotools (.am level) requires heavy documentation dependencies.
68 You go back to base.eclass and get frustrated more.
69
70 I hope that clears things up ;-)
71
72 - Samuli

Replies