Subject: rpaths and dependency_libs
To: None <jlam@netbsd.org>
From: Julio M. Merino Vidal <jmmv@menta.net>
List: tech-pkg
Date: 10/24/2004 17:32:24
Hi Johnny (and everyone else),

I'm having a problem in Evolution 2.x trying to add support for Mozilla NSS:
some stuff built don't get a correct rpath and fails to locate libraries.

For example, there is a library, libevolution-addressbook.la, that does not
use NSS directly.  However, it depends on another library, named libeabutil.la,
which _does_ use NSS (this later one is built as a static archive only).

So, the libeabutil.la gets '-lnss3 -L/usr/pkg/lib/mozilla-gtk2', among other
flags, in its dependency_libs line.  Later on, when the first library
(libevolution-addressbook.la) uses libeabutil.la, it gets the mentioned
flags, but it does _not_ get -Wl,-R/usr/pkg/lib/mozilla-gtk2 (because it does
not use any mozilla library directly and because that flag is not in the
second .la file).

I thought... this can be solved with the wrapper framework, by making it add
the rpath flags in the dependency_libs line.  But after taking a look at the
libtool-fix-la file, I saw:

                ####################################################
                # Skip all -R* options... rpath info shouldn't go into
                # the dependency_libs line.
                ####################################################
                -R*)
                        ;;

So... is it there any way to solve this cleanly?  Or is it a misfeature in
the wrappers framework?

Thank you,

-- 
Julio M. Merino Vidal <jmmv@menta.net>
http://www.livejournal.com/users/jmmv/
The NetBSD Project - http://www.NetBSD.org/