Message ID | GV1P250MB0737C0A0DCBC4CD7C2DFE8608F5A9@GV1P250MB0737.EURP250.PROD.OUTLOOK.COM |
---|---|
State | Accepted |
Commit | a60befce40572d5867e603a71ff274db797b0532 |
Headers | show |
Series | [FFmpeg-devel,v2] avutil/attributes_internal: Add visibility pragma | expand |
Context | Check | Description |
---|---|---|
andriy/make_x86 | success | Make finished |
andriy/make_fate_x86 | success | Make fate finished |
Andreas Rheinhardt: > GCC 4.0 not only added a visibility attribute, but also > a pragma to set it for a whole region of code.* > This commit exposes this via macros. > > *: See https://gcc.gnu.org/gcc-4.0/changes.html > > Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com> > --- > libavutil/attributes_internal.h | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/libavutil/attributes_internal.h b/libavutil/attributes_internal.h > index 9d3d10b63e..3df1ee6af3 100644 > --- a/libavutil/attributes_internal.h > +++ b/libavutil/attributes_internal.h > @@ -23,8 +23,12 @@ > > #if (AV_GCC_VERSION_AT_LEAST(4,0) || defined(__clang__)) && (defined(__ELF__) || defined(__MACH__)) > # define attribute_visibility_hidden __attribute__((visibility("hidden"))) > +# define FF_VISIBILITY_PUSH_HIDDEN _Pragma("GCC visibility push(hidden)") > +# define FF_VISIBILITY_POP_HIDDEN _Pragma("GCC visibility pop") > #else > # define attribute_visibility_hidden > +# define FF_VISIBILITY_PUSH_HIDDEN > +# define FF_VISIBILITY_POP_HIDDEN > #endif > > #endif /* AVUTIL_ATTRIBUTES_INTERNAL_H */ Will apply this patch and the opus patch dependening upon it tomorrow unless there are objections. - Andreas
diff --git a/libavutil/attributes_internal.h b/libavutil/attributes_internal.h index 9d3d10b63e..3df1ee6af3 100644 --- a/libavutil/attributes_internal.h +++ b/libavutil/attributes_internal.h @@ -23,8 +23,12 @@ #if (AV_GCC_VERSION_AT_LEAST(4,0) || defined(__clang__)) && (defined(__ELF__) || defined(__MACH__)) # define attribute_visibility_hidden __attribute__((visibility("hidden"))) +# define FF_VISIBILITY_PUSH_HIDDEN _Pragma("GCC visibility push(hidden)") +# define FF_VISIBILITY_POP_HIDDEN _Pragma("GCC visibility pop") #else # define attribute_visibility_hidden +# define FF_VISIBILITY_PUSH_HIDDEN +# define FF_VISIBILITY_POP_HIDDEN #endif #endif /* AVUTIL_ATTRIBUTES_INTERNAL_H */
GCC 4.0 not only added a visibility attribute, but also a pragma to set it for a whole region of code.* This commit exposes this via macros. *: See https://gcc.gnu.org/gcc-4.0/changes.html Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com> --- libavutil/attributes_internal.h | 4 ++++ 1 file changed, 4 insertions(+)