[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: svn commit: r16449 - trunk/build/generator

From: Max Bowsher <maxb_at_ukf.net>
Date: 2005-10-05 18:21:44 CEST

David James wrote:
> Max, are you using a static or a dynamic build of APR?

Dynamic.

> I'm using a static build of APR.

Oh dear. There's the problem.

> Does that mean that C/Python module
> (libsvn._core, libsvn._wc, etc) has a separate copy of the internal
> APR datastructures?

Yes :-(

> If so, then it might be a good idea for us to
> separately initialize APR in each module.

Issues with this:
- atexit() slots may be a scarce finite resource - no more than 32 are
guaranteed.
- are there any issues with passing objects allocated by pools owned by one
apr instance to another?
- does libsvn_swig_py have an additional copy of apr, as well as all the
modules?
- it's worryingly inelegant

I'm pretty surprised that the link succeeded at all, as I know that libtool
is designed to outright refuse to link a shared library to a static library.

Note also that we already require (though we do not enforce) that
libsvn_swig_py be a shared library, with improper operation being the result
if it is static (issue 2202). In view of this, I think we can reasonably
require that apr also be a shared library.

Perhaps we can create some configury to warn about this issue.

Max.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Wed Oct 5 18:23:07 2005

This is an archived mail posted to the Subversion Dev mailing list.