Gentoo Archives: gentoo-user

From: Michael Schreckenbauer <grimlog@×××.de>
To: gentoo-user@l.g.o
Subject: Re: [gentoo-user] Re: Updating libpng: another lib tool cockup?
Date: Mon, 19 Sep 2011 15:25:32
Message-Id: 4394059.CFTR7LX0C6@pc
In Reply to: Re: [gentoo-user] Re: Updating libpng: another lib tool cockup? by Allan Gottlieb
1 On Monday, 19. September 2011 10:58:52 Allan Gottlieb wrote:
2 > On Mon, Sep 19 2011, Michael Schreckenbauer wrote:
3 > > On Monday, 19. September 2011 10:20:25 Allan Gottlieb wrote:
4 > >> On Mon, Sep 19 2011, Alan McKinnon wrote:
5 > >> >> > revdep-rebuild checks everything, revdep-rebuild --library
6 > >> >> > checks just some things.
7 > >> >> >
8 > >> >> > ebuilds sometimes issue messages to check just the libraries
9 > >> >> > known
10 > >> >> > to have been updated, but a full revdep-rebuild after an
11 > >> >> > update
12 > >> >> > will catch those anyway.
13 > >> >>
14 > >> >> Until recently I skipped the "--library" step exactly because I
15 > >> >> knew
16 > >> >> revdep-rebuild will find and fix the broken packages after I
17 > >> >> delete
18 > >> >> the old library. So, why bother with the --library step, right?
19 > >> >>
20 > >> >> However. A few weeks ago I got caught when I deleted one of
21 > >> >> those
22 > >> >> obsolete libraries and only then did I find out that gcc is one
23 > >> >> of
24 > >> >> the packages that depend on it :(
25 > >> >>
26 > >> >> I don't skip the --library step any more.
27 > >> >
28 > >> > That's odd behaviour, I wonder what caused the difference.
29 > >> >
30 > >> > Surely revdep-rebuild itself can't do this different just because
31 > >> > you
32 > >> > specified a library to compare? I wonder if that lib was maybe in
33 > >> > the
34 > >> > revdep-rebuild exclude list.
35 > >> >
36 > >> > I'd be interested to track it down for reference, do you remember
37 > >> > the
38 > >> > library involved?
39 > >>
40 > >> It occurs exactly in the case we are discussing libpng
41 > >>
42 > >> ajglap gottlieb # revdep-rebuild; revdep-rebuild --library
43 > >> '/usr/lib64/libpng14.so.14' * Configuring search environment for
44 > >> revdep-rebuild
45 > >>
46 > >> * Checking reverse dependencies
47 > >> * Packages containing binaries and libraries broken by a package
48 > >> update
49 > >> * will be emerged.
50 > >>
51 > >> ...
52 > >>
53 > >> * Checking reverse dependencies
54 > >> * Packages containing binaries and libraries using
55 > >>
56 > >> /usr/lib64/libpng14.so.14 * will be emerged.
57 > >
58 > > First one emerges *broken* packages.
59 > > Second one emerge packages *using* png14 (not necessarily broken)
60 >
61 > OK. But the claim was that: if
62 > revdep-rebuild
63 > with no argument found nothing to build, then
64 > revdep-rebuild --library <some-library>
65 > will find nothing.
66
67 This is not true.
68 revdep-rebuild without --library argument checks for packages with *broken*
69 linking, eg a library changed it's name and the original one was removed by an
70 update.
71 revdep-rebuild --library checks for packages using that library.
72
73 If the first one returns nothing, that means, your linking is all ok.
74 If the second one returns nothing, it tells you, that nothing is using that
75 library at all.
76
77 > This guarantee is apparently no long true as my example in another msg
78 > illustrated.
79
80 I doubt it was true in the past.
81
82 Best,
83 Michael