[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Bug#520642: gtk2-engines-udeb: depends on non-udeb packages on hppa, among other things

Le samedi 21 mars 2009 à 15:34 +0100, Adeodato Simó a écrit :
> gtk2-engines-udeb exhibits two problems on hppa, though the second of
> them may be applicable to other arches as well.
> In the first place, gtk2-engines-udeb 2.14.3-2 and 2.16.1-2 depend on
> libdirectfb-1.0-0-udeb, but only on hppa. This dependency is,
> additionally, spurious: the files shipped in gtk2-engines-udeb are
> linked against libdirectfb-1.0, but do not use any of its symbols as far
> as I can see. The fact that this linkage is only present on hppa is
> probably symptomatic that something is going wrong there.

This looks like a binutils bug on hppa to me. In both 2.16.1-2 and
2.16.1-2+b1, the engines end up with a NEEDED on directfb, while the
link line is:

cc -shared  .libs/clearlooks_rc_style.o .libs/clearlooks_style.o .libs/clearlooks_theme_main.o .libs/support.o .libs/animation.o .libs/clearlooks_draw.o .libs/clearlooks_draw_glossy.o .libs/clearlooks_draw_inverted.o .libs/clearlooks_draw_gummy.o -Wl,--whole-archive ../../engines/support/.libs/libsupport.a -Wl,--no-whole-archive  -Wl,--as-needed -lgtk-directfb-2.0 -lgdk-directfb-2.0 -ldirectfb -lfusion -ldirect -lpthread /usr/lib/libatk-1.0.so /usr/lib/libgdk_pixbuf-2.0.so -lm /usr/lib/libpangocairo-1.0.so /usr/lib/libgio-2.0.so /usr/lib/libpango-1.0.so /usr/lib/libcairo.so /usr/lib/libgobject-2.0.so /usr/lib/libgmodule-2.0.so /usr/lib/libglib-2.0.so  -Wl,-z -Wl,defs -Wl,-O1 -Wl,-Bsymbolic -Wl,-soname -Wl,libclearlooks.so -o .libs/libclearlooks.so

So this is a problem with --as-needed. Not a trivial one, since it works
with a trivial test case – just checked on paer which has the same
binutils version (2.19.1-1).

> This dependency on directfb caused us to schedule a Bin-NMU of
> gtk2-engines on hppa in order to rebuild it against the new directfb.
> Which brings us to the second problem: the resulting gtk2-engines-udeb
> 2.16.1-2+b1 has completely fucked up dependencies! It depends on
> libcairo2, libglib2.0-0 and libgtk2.0-0 instead of their -udeb
> counterparts!

The explanation is simple: these packages have fscked up shlibs files on
hppa, without udeb lines. This is caused by #518706.
        dh_makeshlibs -plibgtk2.0-0 \
        		-Xusr/lib/gtk-2.0/2.10.0 \
        		-V"libgtk2.0-0 (>= 2.14.0)" \
        Option add-udeb does not take an argument

My take on it is: binNMU *in order* glib2.0, directfb, cairo, gtk+2.0
and gtk2-engines on hppa.

 .''`.      Debian 5.0 "Lenny" has been released!
: :' :
`. `'   Last night, Darth Vader came down from planet Vulcan and told
  `-    me that if you don't install Lenny, he'd melt your brain.

Attachment: signature.asc
Description: Ceci est une partie de message =?ISO-8859-1?Q?num=E9riquement?= =?ISO-8859-1?Q?_sign=E9e?=

Reply to: