Gentoo Archives: gentoo-dev

From: "W. Trevor King" <wking@×××××××.us>
To: gentoo-dev@l.g.o
Subject: [gentoo-dev] Binary package dependencies for sub-slot-less EAPIs
Date: Fri, 12 Apr 2013 16:26:04
Message-Id: 20130412162540.GB13054@odin.tremily.us
In Reply to: Re: [gentoo-dev] Re: [RFC] Drop EAPI=0 requirement for system packages. by Rich Freeman
1 Over on #gentoo-releng and in gentoo-catalyst@ we've been running into
2 binary package dependency problems [1]. Before EAPI-5 and sub-slots,
3 the version of dependency packages is not recorded in the binary
4 package metadata (the Packages file). For example, a binary package
5 for GCC built against mpc-0.8.2 will link to libmpc.so.2. If you
6 install that package on a system that only has mpc-1.0.1 (and thus,
7 libmpc.so.3), your cc1 will crash because libmpc.so.2 is missing.
8 What we need is a way to track ABI sub-slot dependencies for all
9 packages, even those that currently use EAPI-0.
10
11 My initial idea was to store a fake EAPI-5-style sub-slot information
12 in the binary package metadata, but further discussion on
13 #gentoo-portage pointed me at the toolchain folks:
14
15 10:33 < zmedico> dol-sen: wouldn't it be easier to just migrate
16 those pkgs to EAPI 5 + slot-operator?
17 10:34 * zmedico doesn't feel like doing extra work when EAPI 5
18 already does everything we need
19
20 11:16 < Tommy[D]_> Zero_Chaos: my suggestion: ask the toolchain guys
21 about their preferred way (like updating existing eclass,
22 using a new eclass, moving code into ebuilds) and when you
23 got that, do the needed work, including an EAPI-5 version of
24 toolchain ebuilds
25
26 I looked in bugzilla for requests to update the toolchain EAPIs, but
27 didn't find anything [2]. I don't want to bother people if the issue
28 had already been hashed out, and searching on Gmane turned up the
29 “[RFC] Drop EAPI=0 requirement for system packages.” thread from last
30 October [3]. This early comment from Rich seemed to summarize the
31 anti-EAPI-bump camp:
32
33 On Wed, Oct 17, 2012 at 03:00:12PM -0400, Rich Freeman wrote:
34 > A policy that says all new ebuilds shall use EAPI foo might result in
35 > fewer new ebuilds. Sure, they'll have new and shiny fooness, but
36 > arguably I'd rather have more packages supported on older EAPIs then
37 > fewer packages supported on newer ones.
38 >
39 > Again, as I stated before, things that actually benefit the end users
40 > like slot dependencies are fine to mandate when it makes sense to do
41 > so.
42
43 In other words, “Why force folks to do this if there is no benefit?”.
44 This is understandable, but I think the broken binary packages [1] are
45 enough of a visible benefit. The thread suggested filing bugs for
46 bumping effected packages, but for this issue “effected packages” is
47 “anything you might want to distribute as a binary package that uses
48 something without EAPI-5 sub-slots” [4]. I'm happy to start filing
49 bugs, but that doesn't strike me as the most productive way forward.
50
51 If anyone can think of other solutions besides tweaking Portage or
52 bumping a bunch of package EAPIs, I'd be happy to hear them ;).
53 Otherwise I'd be happy to hear suggestions about moving forward on at
54 least one of those fronts. Since I seem to be the most bothered by
55 this issue, it's only fair that I help with the itch scratching. I
56 just need a roadmap from the folks with commit access so I can start
57 chipping away at whichever solution y'all think looks most appealing
58 ;).
59
60 Cheers,
61 Trevor
62
63 [1]: http://thread.gmane.org/gmane.linux.gentoo.catalyst/2137/focus=2237
64 [2]: https://bugs.gentoo.org/buglist.cgi?short_desc=EAPI&resolution=---&query_format=advanced&bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&short_desc_type=allwordssubstr&component=Core%20system&component=Development&component=Core%20system&component=Development&product=Gentoo%20Linux
65 [3]: http://thread.gmane.org/gmane.linux.gentoo.devel/80705
66 [4]: Although on the catalyst side, only @system is really important.
67
68
69
70 --
71 This email may be signed or encrypted with GnuPG (http://www.gnupg.org).
72 For more information, see http://en.wikipedia.org/wiki/Pretty_Good_Privacy

Attachments

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

Replies