Hi Caolan,

On Tue, 2011-07-26 at 15:46 +0100, Caolán McNamara wrote:
> a) On a vanilla/universal build we build static .as under Linux from
> openssl-0.9.8, i.e. libssl.a and libcrypto.o. 

        Oooh - nice catch :-)

> b) liboox links against these .a's. The resulting .so by default exports
> the symbols of the .a which it used e.g. 
> 
> nm -D workdir/unxlngx6/LinkTarget/Library/libooxlo.so|grep
> EVP_MD_CTX_create
> 0000000000666d00 T EVP_MD_CTX_create

        That is really dumb :-) this is presumably the joy of using visibility
markup instead of map files. 

> Is there a *easy* way to force the symbols of the .a to hidden
> visibility at oox link-time ?. Munging the openssl build itself would be
> painful, making a version-script would be painful, using objcopy or
> something sounds insane.

        So some degree of munging the openssl build is necessary I think. If we
can be sure that we are going to link statically to that openssl - then
I believe if we compile it with:

        -fvisibility=hidden

        Then all of its symbols should disappear when we link them into liboox
- if we're lucky, perhaps some of the code will go too.

        Or perhaps I mis-understood ;-) is it easy to inject those flags ?

        ATB,

                Michael.


-- 
 [email protected]  <><, Pseudo Engineer, itinerant idiot


_______________________________________________
LibreOffice mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/libreoffice

Reply via email to