Gentoo Archives: gentoo-dev

From: Fabian Groffen <grobian@g.o>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] [gentoo-portage-dev] About forcing rebuilds of other packages issue
Date: Thu, 06 Sep 2012 09:02:53
Message-Id: 20120906090144.GS74867@gentoo.org
In Reply to: [gentoo-dev] [gentoo-portage-dev] About forcing rebuilds of other packages issue by Pacho Ramos
1 Replying to this email since it seems to be the discussion behind
2 the "sub-slot" feature proposed for EAPI 5.
3
4 On 04-06-2012 23:26:18 +0200, Pacho Ramos wrote:
5 > This is why I think we should try to push a bit my first suggestion for
6 > the short term until "the perfect one" is ready as, until then, we are
7 > having for years a problem that, personally, I think it should be
8 > handled a bit better.
9
10 After reading this thread, I have seen numerous occasions where has been
11 asked what this proposal actually solves. Unless I've accidentially
12 skipped over it, the answer has yet to be given. It appears to me now
13 sub-slot is a feature that makes it easy to express a situation that
14 could be expressed today as well, but requiring more work. As such
15 "syntactic sugar", it seems not well bounded, allowing possibly for
16 doing things that result in a big mess (I cannot prove this atm, and
17 there is no specification afaict.)
18
19 So, I'm looking for a specification what the components in the sub-slot
20 exactly mean, and what behaviour they trigger. To me, it seems right
21 now that sub-slot is simply ${SLOT}/${PV}, and some fancy sub-part
22 matching (up to the '/' actually). It would be nice to have a sound and
23 clear definition of that the SLOT value means, and what the sub-slot
24 value means. How can one make it up? Could one also just start with 1
25 as sub-slot? Or use names? (SLOT="2/$(use fnord && echo fnord)"). I
26 have no clue how to use this correctly, as well as what problems I
27 should have that it solves.
28
29 To clarify the last bit, could you please explain how the following
30 situation benefits from sub-slot.
31
32 Consider the packages libfnord, foo and bar. libfnord being a library,
33 used by foo and bar, which are simple executables. libfnord has 6
34 versions (not necessarily all at the same time in the tree), with ELF
35 soname and library versions:
36
37 libfnord-1 libfnord.so.3 libfnord.so.3.0
38 libfnord-2 libfnord.so.5 libfnord.so.5.1
39 libfnord-2.1 libfnord.so.5 libfnord.so.5.2
40 libfnord-2.1-r5 libfnord.so.5 libfnord.so.5.2
41 libfnord-3 libfnord.so.5 libfnord.so.5.8
42 libfnord-3.5 libfnord.so.5 libfnord.so.5.12
43
44 Package foo and bar have the following versions and {,R}DEPEND:
45
46 foo-3.0 >=libfnord-2
47 bar-1.234b =libfnord-1*
48 bar-2.4 >=libfnord-3
49
50 How would the SLOT and {,R}DEPEND values for these ebuilds look like,
51 what happens when libfnord 2 and 3 are introduced in the tree, etc.
52 Please show for both EAPI 4, EAPI 4+slot-deps and EAPI 4+sub-slot.
53 What if libfnord-2.1 or libfnord-3.5 would be masked due to some problem
54 not noticed prior to stabling that makes it useless for many users.
55 bar-2.4 during configure checks for a new function in libfnord-3.5 and
56 uses it if available, or uses an alternative code-path instead.
57 libfnord-2.1-r5 fixes a crash in some function of the library.
58 (Note: this whole example/question sounds like an ebuild-quiz question
59 that any dev should be able to answer then.)
60
61 What would be the advantage of sub-slot here, assuming the versioning of
62 the libraries follows ABI versioning rules defined by e.g. libtool.
63
64
65 Please enlighten me.
66 Fabian
67
68 --
69 Fabian Groffen
70 Gentoo on a different level

Attachments

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

Replies