On Thu, Jul 09, 2009 at 09:27:31AM +0100, Julian Foad wrote:
> Arfrever Frehtes Taifersar Arahesis wrote:
> > Author: arfrever
> > Date: Wed Jul 8 18:17:57 2009
> > New Revision: 38377
> > Log:
> > Filter out redundant library directories (e.g. /usr/lib) to avoid linking
> > against Subversion libraries potentially placed in these directories.
> > * build/ac-macros/svn-macros.m4
> > (SVN_REMOVE_REDUNDANT_LIB_DIRS): New.
> Hi Arfrever.
> I'm sure this is a useful change but I'd like to understand what it is
I guess it is for solving a problem myself and Arfrever found yesterday.
(But I can't know for sure because Arfrever isn't telling ;)
-- The problem as I saw it:
Bert had added a new function to libsvn_wc, and for some reason
that function could not be found when linking
-- The cause as far as I can guess without digging through piles
of build and configure script logs:
The library which failed to link was libsvn_client.
The symbols it calls from libsvn_wc caused libsvn_wc to be pulled
in as a dependency. But because libsvn_wc was not explicitly listed
as a library dependency of client-test (since it is an indirect
dependency: client-test -> libsvn_client -> libsvn_wc), *any*
libsvn_wc-1.so would make the linker happy. And we have the system's
standard library directories mentioned *explicitly* on the linker
command line. So the libsvn_wc-1.so from the /usr/lib directory ended
up being used. Which, on my system, came from the debian package for
Subversion 1.5.1 which I didn't even remember I had installed.
So the problem we're trying to avoid is linking to shared libsvn_*
libraries which are installed in the system's standard library
search path when the libsvn_* libraries from the working copy
should be used instead.
Arfrever's change does indeed fix this problem for me.
In the past I often used to vocally blame all such problems on libtool,
but it seems that there was a fix we could make :)
> Please can you tell me, in a few more words, what problem you are
> solving, and what you mean by "redundant".
"Redundant" is just poor choice of wording.
I think it should say "system" instead.
Arfrever, can you change this?
Received on 2009-07-09 13:24:52 CEST