Gentoo Archives: gentoo-dev

From: "Michał Górny" <mgorny@g.o>
To: gentoo-dev@l.g.o
Cc: graaff@g.o
Subject: Re: [gentoo-dev] [RFC] Dynamic SLOTs
Date: Sun, 17 Jun 2012 15:38:57
Message-Id: 20120617173928.67206206@pomiocik.lan
In Reply to: Re: [gentoo-dev] [RFC] Dynamic SLOTs by Hans de Graaff
1 On Sun, 17 Jun 2012 11:43:30 +0200
2 Hans de Graaff <graaff@g.o> wrote:
3
4 > On Sun, 2012-06-17 at 09:26 +0200, Michał Górny wrote:
5 >
6 > > I'm attaching a reStructuredText version of the spec. You can view
7 > > it rendered as a gist[1]. But please keep the replies on the list,
8 > > rather than forking the gist.
9 >
10 > I don't like the approach taken in 6. I'd rather state that there
11 > should not be file collisions between the dynamic slots. We already
12 > handle things this way in ruby (with a common 'all' and specific
13 > version builds).
14
15 That is impossible for most of the build systems. If Ruby has a nice
16 ability to split between building common and ABI-specific stuff, that's
17 great. But Python doesn't have one. Bindings built using other
18 languages don't have that either.
19
20 The usual way of handling that is through letting all the ABIs install
21 to the same image, and then installing whatever got merged as a result.
22 The spec practically suggests the same yet split in time.
23
24 Shortly saying, we can't do that or we will be stuck installing
25 everything by hand, which will practically make this idea useless.
26
27 > For 9c I can't see us limiting users to a single ruby implementation
28 > by default (the only current exception is www-apache/passenger), so a
29 > combined ||() block makes no sense to me. I think it is better to be
30 > explicit here and express the real situation with multiple ||() blocks
31 > if needed.
32
33 I think you misunderstand the concept of combined block. It was mostly
34 supposed to be useful when a single package provides bindings for
35 multiple languages, so that a single build would involve building
36 bindings for one ABI of one language.
37
38 Multiple blocks would involve building bindings for both one Python ABI
39 and one Ruby ABI at a time which means scary results. That probably
40 even won't work, so splitting it is the only alternative to one big
41 block.
42
43 > Finally, I don't expect ruby to use this unless we can ensure that
44 > this works with our current ebuilds without changes. I'm fine with
45 > supporting some code in the eclass to determine which mechanism to
46 > use in which way, but we won't be spending huge amounts of time
47 > switching to yet another system. To me the perceived benefits aren't
48 > big enough.
49
50 I'm trying hard to make this as painless as possible but I can't
51 guarantee single ebuilds (uncommon cases) wouldn't need changes.
52 However, I'm trying hard to ensure that majority would be clearly
53 handled by eclasses.
54
55 --
56 Best regards,
57 Michał Górny

Attachments

File name MIME type
signature.asc application/pgp-signature

Replies

Subject Author
Re: [gentoo-dev] [RFC] Dynamic SLOTs Luca Barbato <lu_zero@g.o>