Gentoo Archives: gentoo-dev

From: Maciej Mrozowski <reavertm@×××××.com>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] [RFC] More reliable hiding preserved libraries
Date: Sat, 03 Apr 2010 21:06:31
Message-Id: 201004032305.41374.reavertm@gmail.com
In Reply to: Re: [gentoo-dev] [RFC] More reliable hiding preserved libraries by "Tiziano Müller"
1 On Saturday 03 of April 2010 14:16:14 Fabian Groffen wrote:
2 > Shouldn't we fix that buildsystem then? Do you have an example of a
3 > package/buildsystem that does that?
4 "We" already do, the thing is that maybe we don't have to.
5 https://bugs.gentoo.org/show_bug.cgi?id=240323
6 From top of my head: python having issues with sys-libs/db as well as some
7 packages with readline.
8
9 > > It would indeed. Now when I think about it, moving stuff to preserved
10 > > library dir could be just done - provided it's possible - along with
11 > > fixing/setting DT_RPATH's in reverse runtime dependencies. This way no
12 > > system-wide LIBRARY_PATH's would be necessary.
13 > > Is it possible? Mike?
14 > No, unless you somehow make sure you reserve space for this, by e.g.
15 > setting a bogus rpath entry at buildtime. If you want to go that route,
16 > you probably want to look at the Prefix' binutils-config wrapper that
17 > already calls the linker with added rpath arguments. Afterwards you can
18 > use chrpath to set it to the correct location. Will get messy with the
19 > vdb though, but if Portage's doing it, it can probably be dealt with.
20 Sounds messy indeed, what about hardened/SELinux/AppArmor/whatever - do they
21 allow such DT_RPATH operations? It should be probably also restricted for
22 binary-only packages.
23
24 On Saturday 03 of April 2010 20:51:43 Tiziano Müller wrote:
25 > Don't fix the hack. Remove the preserve libs "feature", make the PMs
26 > check for rdeps per default before unmerging things.
27 This will only prevent creating orphans of uninstalled libraries, what about
28 upgraded ones when SOVERSION has been bumped (the most common case)? Besides I
29 can already imagine PMS-related discussion regarding "make the PMs check for
30 rdeps per default before unmerging things" - thx but no thx.
31
32 > Slot libraries where needed, slot dep operators (EAPI 4) will help.
33 Again, you suggest to SLOT every library that happened to bump SOVERSION. It's
34 unrealistic. Besides library should be slotted when it's API changes, for
35 source based distributions it's not needed for ABI changes - let's not confuse
36 those two. Also excessive slotting increases probability of breaking library
37 discovery mechanisms in various build systems (not everyone uses pkg-config).
38
39 > And if that doesn't work out we need a separate var to give the PM a hint
40 when API/ABI breakages happen (such that the PM knows when to re-install the
41 rev deps).
42 It needs PMS amended and thus GLEP. Please submit a GLEP item for this if you
43 see it fit.
44 Anyway, as explained in OT, it's not a problem of package manager dependencies
45 system but issue with broken/not smart build systems - no dependency tree
46 magic will solve this issue.
47
48 --
49 regards
50 MM

Replies

Subject Author
Re: [gentoo-dev] [RFC] More reliable hiding preserved libraries "Tiziano Müller" <dev-zero@g.o>