[Ffmpeg-devel] [PATCH] [Visibility] libavutil

Rich Felker dalias
Tue Sep 19 18:35:19 CEST 2006


On Tue, Sep 19, 2006 at 08:14:37AM +0200, Diego 'Flameeyes' Petten? wrote:
> On Tuesday 19 September 2006 08:16, Rich Felker wrote:
> > Uhg, it can just be defined to empty in this case; however I dislike
> > this whole mess. Can't the relevant issue (symbol resolution
> > performance) just be fixed with -Bsymbolic or 'protected' visibility
> > and avoid this hideous 'hidden' mess?!
> Well, -Bsymbolic can help a bit, but not too much; using protected visibility 
> for everything won't solve all of the problem, especially because it will 
> fail to build, as there are functions that cannot be exported as protected in 
> both libavutil and libavformat (I'm sure of this now).

Can you explain why? If this is true it's almost certainly a bug.

> I'm currently testing a simpler patch, that moves the whole #ifdef problem 
> inside one single header per library (postprocess.h, common.h for libavutil, 
> avcodec.h and avformat.h), without defining EXPORTED in configure anymore.

This is not needed at all. The public headers can just do
#ifndef AV_EXPORTED
#define AV_EXPORTED
#endif

Keep in mind that using "EXPORTED" as a name in the public headers is
an _extremely_ bad idea!

Rich





More information about the ffmpeg-devel mailing list