Control: tag -1 bullseye bookworm sid patch On Wed, 10 Nov 2021 13:03:16 +0100 mwgam...@gmail.com wrote:
Package: gkrelluim Version: 0.3.1-7+b2
The latest NMU made gkrelluim completely unusbale. It seems to be missing all of its dependencies and doesn't load at all.
debdiff says: Control files: lines which differ (wdiff format) ------------------------------------------------ Depends: gkrellm, [-libatk1.0-0 (>= 1.12.4),-] libc6 (>= [-2.4), libcairo2 (>= 1.2.4), libfontconfig1 (>= 2.12.6), libfreetype6 (>= 2.2.1), libgdk-pixbuf2.0-0 (>= 2.22.0), libglib2.0-0 (>= 2.16.0), libgtk2.0-0 (>= 2.8.0), libpango-1.0-0 (>= 1.14.0), libpangocairo-1.0-0 (>= 1.14.0), libpangoft2-1.0-0 (>= 1.14.0), libuim-scm0 (>= 1:1.5.7), libuim8 (>= 1:1.5.7)-] {+2.4)+} Version: [-0.3.1-7+b1-] {+0.3.1-7+b2+} Yes, lots of dependencies are gone. Comparing the logs from rebuilding in buster and bullseye brought this to my attention: dh_shlibdeps -dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/gkrelluim/usr/lib/gkrellm2/plugins/gkrelluim.so was not linked against libpangocairo-1.0.so.0 (it uses none of the library's symbols) -dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/gkrelluim/usr/lib/gkrellm2/plugins/gkrelluim.so was not linked against libgio-2.0.so.0 (it uses none of the library's symbols) -dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/gkrelluim/usr/lib/gkrellm2/plugins/gkrelluim.so was not linked against libpthread.so.0 (it uses none of the library's symbols) -dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/gkrelluim/usr/lib/gkrellm2/plugins/gkrelluim.so was not linked against libatk-1.0.so.0 (it uses none of the library's symbols) -dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/gkrelluim/usr/lib/gkrellm2/plugins/gkrelluim.so was not linked against libcairo.so.2 (it uses none of the library's symbols) -dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/gkrelluim/usr/lib/gkrellm2/plugins/gkrelluim.so was not linked against libpangoft2-1.0.so.0 (it uses none of the library's symbols) -dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/gkrelluim/usr/lib/gkrellm2/plugins/gkrelluim.so was not linked against libfontconfig.so.1 (it uses none of the library's symbols) -dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/gkrelluim/usr/lib/gkrellm2/plugins/gkrelluim.so was not linked against libpango-1.0.so.0 (it uses none of the library's symbols) -dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/gkrelluim/usr/lib/gkrellm2/plugins/gkrelluim.so was not linked against libfreetype.so.6 (it uses none of the library's symbols) The bullseye toolchain defaults to linking with --as-needed to drop unneeded library dependencies. But obviously gkrelluim needs them ... Oh, link order is bullshit, the object files are coming after the libs ... ... because libraries are part of LDFLAGS ... Please see the attached patch for a fix. That should get the needed dependencies back ... Andreas
--- a/src/Makefile.am +++ b/src/Makefile.am @@ -4,5 +4,6 @@ plugindir = $(libdir)/gkrellm2/plugins/ gkrelluim_so_SOURCES = gkrelluim.c uim-helper.c gkrelluim.h +gkrelluim_so_LDADD = $(GKRELLM_LIBS) $(UIM_LIBS) AM_CFLAGS = -fPIC @GKRELLM_CFLAGS@ -DUIM_PIXMAPSDIR="\"$(datadir)/uim/pixmaps/\"" -AM_LDFLAGS = -shared @GKRELLM_LIBS@ @UIM_LIBS@ +AM_LDFLAGS = -shared