1 |
On Tue, 21 Jan 2014 10:26:10 +0000 |
2 |
Peter Humphrey <peter@××××××××××××.uk> wrote: |
3 |
|
4 |
> After my daily sync today, portage wanted to emerge two new packages: |
5 |
> dev- libs/lzo and x11-misc/makedepend. No other packages were |
6 |
> mentioned. Odd, I thought, so: |
7 |
> |
8 |
> $ equery d lzo |
9 |
> * These packages depend on lzo: |
10 |
> [...] |
11 |
> X11-libs/cairo-1.12.14-r4 (dev-libs/lzo) |
12 |
|
13 |
https://bugs.gentoo.org/477078 |
14 |
cairo is/was built slightly differently depending on whether lzo was |
15 |
installed or not when cairo was built. The most significant difference |
16 |
is that cairo might stop working if lzo is removed after cairo was |
17 |
built*. To resolve this, the Gentoo maintainer recently added lzo to the |
18 |
dependencies to make sure lzo is not removed. |
19 |
|
20 |
If you rebuild cairo after installing lzo, some obscure feature might |
21 |
be enabled, but the maintainer seems to think this is not significant, |
22 |
and did not increase the revision number to force a rebuild everywhere. |
23 |
|
24 |
http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/x11-libs/cairo/cairo-1.12.14-r4.ebuild?r1=1.12&r2=1.13 |
25 |
|
26 |
* In most cases, that's prevented by the (now default-on) preserve-libs |
27 |
FEATURE in portage. Non-default setups aren't necessarily as lucky. |
28 |
|
29 |
> $ equery d makedepend |
30 |
> * These packages depend on makedepend: |
31 |
> app-cdr/cdrtools-3.01_alpha17 (x11-misc/makedepend) |
32 |
|
33 |
http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/app-cdr/cdrtools/cdrtools-3.01_alpha17.ebuild?r1=1.13&r2=1.14 |
34 |
A similar change (though no bug :-( ), except makedepend is a |
35 |
build-time-only dependency, and not strictly required after cdrtools is |
36 |
built. I will not venture to guess what the consequences of building |
37 |
cdrtools without makedepend installed are, but since you somehow got it |
38 |
installed at some point, there is either a fallback of some sort, or |
39 |
you had it installed for other reasons. |
40 |
|
41 |
Whether this build-time dependency (DEPEND) change causes makedepend to |
42 |
be installed after the fact is governed by the --with-bdeps switch to |
43 |
emerge, check the man page for details. |
44 |
|
45 |
> But cairo was last emerged 16 days ago and cdrtools last September, |
46 |
> so why have these dependencies suddenly appeared today? Portage has |
47 |
> been at 2.2.7 since last year too. Emerge --info doesn't mention lzo. |
48 |
|
49 |
By default, in order to let maintainers fix issues, portage calculates |
50 |
what to install based on the *current* package ebuilds, rather than the |
51 |
ebuild at the time a package was installed. While this can be disabled |
52 |
by the user, maintainers will expect it to work, so best not ;-) |
53 |
|
54 |
> I can't think of anything else that might have changed, unless new |
55 |
> dependencies have been shoved into the ebuilds. Does that sort of |
56 |
> thing happen in a well run family? |
57 |
> |
58 |
|
59 |
-- |
60 |
eroen |