Re: [Tracker] Improve linking against 3rd party libs
- From: Martyn Russell <martyn lanedo com>
- To: Michael Biebl <mbiebl gmail com>
- Cc: Tracker-List <tracker-list gnome org>
- Subject: Re: [Tracker] Improve linking against 3rd party libs
- Date: Wed, 14 Apr 2010 09:44:19 +0100
On 13/04/10 22:45, Michael Biebl wrote:
Hi,
Hi,
I noticed with amazement, that tracker-store has a dependency against
libgtk [1], also the dependencies of e.g. libtracker-client-8.0-0 are
not ideal.
No they're not. You're right.
I started working on that a bit, and attached is a serious of patches.
To see the effect, I prepate a before and after of a few selected
(Debian) binary packages
before
======
Package: libtracker-client-0.8-0
Depends: libc6 (>= 2.3.6-6~), libdbus-1-3 (>= 1.0.2), libdbus-glib-1-2
(>= 0.78), libdevkit-power-gobject1 (>= 1:0.9.1), libglib2.0-0 (>=
2.24.0), libgtk2.0-0 (>= 2.18.0), libpango1.0-0 (>= 1.14.0), libunac
Package: libtracker-extract-0.8-0
Depends: libc6 (>= 2.3.6-6~), libexempi3 (>= 2.1.0), libexif12,
libglib2.0-0 (>= 2.20.0), libgtk2.0-0 (>= 2.18.0), libiptcdata0,
libtracker-client-0.8-0 (>= 0.8.1)
Package: libtracker-miner-0.8-0
Depends: libc6 (>= 2.4), libdbus-1-3 (>= 1.0.2), libdbus-glib-1-2 (>=
0.78), libdevkit-power-gobject1 (>= 1:0.9.1), libglib2.0-0 (>=
2.24.0), libgnome-keyring0 (>= 2.22.2), libgtk2.0-0 (>= 2.18.0),
libpango1.0-0 (>= 1.14.0), libtracker-client-0.8-0 (>= 0.8.1),
libunac1
Package: tracker
Depends: libc6 (>= 2.3.6-6~), libdbus-1-3 (>= 1.0.2), libdbus-glib-1-2
(>= 0.78), libdevkit-power-gobject1 (>= 1:0.9.1), libglib2.0-0 (>=
2.24.0), libgtk2.0-0 (>= 2.18.0), libpango1.0-0 (>= 1.14.0),
libsqlite3-0 (>= 3.6.23.1), libtracker-client-0.8-0 (>= 0.8.1),
libtracker-miner-0.8-0 (>= 0.8.0), libunac1, libuuid1 (>= 2.16),
zlib1g (>= 1:1.1.4), shared-mime-info, dbus
after
=====
Package: libtracker-client-0.8-0
Depends: libc6 (>= 2.3.6-6~), libdbus-1-3 (>= 1.0.2), libdbus-glib-1-2
(>= 0.78), libdevkit-power-gobject1 (>= 1:0.9.1), libglib2.0-0 (>=
2.24.0)
Package: libtracker-extract-0.8-0
Depends: libc6 (>= 2.3.6-6~), libexempi3 (>= 2.1.0), libexif12,
libglib2.0-0 (>= 2.20.0), libiptcdata0, libtracker-client-0.8-0 (>=
0.8.1)
Package: libtracker-miner-0.8-0
Depends: libc6 (>= 2.4), libdbus-1-3 (>= 1.0.2), libdbus-glib-1-2 (>=
0.78), libglib2.0-0 (>= 2.24.0), libgnome-keyring0 (>= 2.22.2),
libtracker-client-0.8-0 (>= 0.8.1)
Package: tracker
Depends: libc6 (>= 2.3.6-6~), libdbus-1-3 (>= 1.0.2), libdbus-glib-1-2
(>= 0.78), libdevkit-power-gobject1 (>= 1:0.9.1), libglib2.0-0 (>=
2.24.0), libpango1.0-0 (>= 1.14.0), libsqlite3-0 (>= 3.6.23.1),
libtracker-client-0.8-0 (>= 0.8.1), libtracker-miner-0.8-0 (>= 0.8.0),
libunac1, libuuid1 (>= 2.16), zlib1g (>= 1:1.1.4), shared-mime-info,
dbus
Great, I will try to integrate these changes with the Harmattan debian
setup.
For now I concentrated on unac, pango, devicekit-power, hal and
gdkpixbuf and only link those libraries/binaries against them, when
they actually use them.
I've tested with binutils-gold to not break anything, but a review is
appreciated.
If possible I'd like to see that merged into the stable branch, too.
Yea, I don't like the way that we do this at the moment. I would much
prefer to have LIBTRACKER_COMMON_{CFLAGS|LIBS} in configure.ac so we
just have one variable there. Each time we move code/modules around in
the code base, these Makefiles get out of date and that's the main
reason for needing these patches.
Great work Michael, thanks.
[1] http://packages.debian.org/experimental/tracker
Thanks for the patches, just a few places I noticed which could be wrong:
- Why do we need pango for t-s-t? At least I couldn't see any reference
with grep to it.
- The reference docs for libtracker-common remove HAL_{CFLAGS|LIBS},
surely we need those since we may have HAL in use there? I suppose your
argument is that the common.la file pulls those in?
--
Regards,
Martyn
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]