Hi folks

As stated in a prior note, I'm working on integrating libevent 2.0 with Open 
MPI. We actually carry a copy of your code as part of our distribution 
(respecting all copyright requirements) for two reasons: (a) portability (to 
ensure that someone building OMPI on their machine has the same version 
installed), and (b) we need to modify it somewhat to get things working 
correctly across the broad range of our installed base.

What this necessitates (among other things) is that we "hide" your symbols so 
that an app that links directly against an installed libevent won't generate 
conflicts. This is the crux of my current note.

Rather than only having public APIs as public symbols, libevent 2.0 has 
literally hundreds of public symbols, almost all of which are only intended to 
be internally accessed. So embedding libevent now requires a rather arduous 
task of creating hundreds of #define's by hand.

It is my understanding that quite a few software packages also embed libevent 
in their distributions, so this is a fairly common problem. It would make life 
much easier, therefore, if you only declared the true public APIs as public 
symbols, defining all internal-only functions as "static".

Just something to consider as you move forward.
Ralph

***********************************************************************
To unsubscribe, send an e-mail to majord...@freehaven.net with
unsubscribe libevent-users    in the body.

Reply via email to