[FFmpeg-devel] Visibility implementation
Måns Rullgård
mans
Sat Oct 18 12:57:17 CEST 2008
Diego Biurrun <diego at biurrun.de> writes:
> On Thu, Jul 31, 2008 at 08:03:50PM +0300, Uoti Urpala wrote:
>> On Wed, 2008-07-30 at 05:45 +0300, Uoti Urpala wrote:
>> > The attached patch adds visibility information for lots of symbols in
>>
>> I created a new version that adds visibility information for most
>> libavcodec symbols. This time I split the patch into two parts. The
>> first one has the repeated changes per internal header marking them as
>> such. The second adds visibility information for some of the symbols
>> that are not static but not declared in any header either, adds
>> exceptions for some symbols which are declared in libavcodec headers but
>> used outside it (mainly in libavformat), and defines the macros used.
>
> Here is a new version of those patches, updated for HEAD. Uoti, maybe
> you can doublecheck nothing is missing...
>
> diff --git a/libavutil/internal.h b/libavutil/internal.h
> index cc62d3b..6ed5c31 100644
> --- a/libavutil/internal.h
> +++ b/libavutil/internal.h
> @@ -50,6 +50,12 @@
> #endif
> #endif
>
> +#define START_HIDDEN_VISIBILITY_SECTION _Pragma("GCC visibility push(hidden)")
> +#define END_VISIBILITY_SECTION _Pragma("GCC visibility pop")
> +
> +#define HIDDEN __attribute__((visibility("hidden")))
> +#define EXTERNALLY_VISIBLE __attribute__((visibility("default")))
> +
These should be under appropriate ifdefs. The names are awfully long
too.
--
M?ns Rullg?rd
mans at mansr.com
More information about the ffmpeg-devel
mailing list