Mark exported symbols with default visibility on GCC 4

This commit is contained in:
Rémi Denis-Courmont 2011-05-07 19:12:20 +03:00
parent 085558ebcd
commit d95990dc0c
3 changed files with 15 additions and 6 deletions

View File

@ -40,6 +40,8 @@
#if defined (WIN32) && defined (DLL_EXPORT)
# define VLC_PUBLIC_API __declspec(dllexport)
#elif defined (__GNUC__) && (__GNUC__ >= 4)
# define VLC_PUBLIC_API __attribute__((visibility("default")))
#else
# define VLC_PUBLIC_API
#endif

View File

@ -115,10 +115,10 @@
# define LIBVLC_EXTERN
#endif
#if defined (__GNUC__) && (__GNUC__ >= 4)
# define LIBVLC_EXPORT __attribute__((visibility("default")))
#elif defined (WIN32) && defined (DLL_EXPORT)
#if defined (WIN32) && defined (DLL_EXPORT)
# define LIBVLC_EXPORT __declspec(dllexport)
#elif defined (__GNUC__) && (__GNUC__ >= 4)
# define LIBVLC_EXPORT __attribute__((visibility("default")))
#else
# define LIBVLC_EXPORT
#endif

View File

@ -140,12 +140,19 @@ enum vlc_module_properties
# define __VLC_SYMBOL( symbol ) CONCATENATE( symbol, MODULE_NAME )
#endif
#if defined( __PLUGIN__ ) && ( defined( WIN32 ) || defined( UNDER_CE ) )
#define CDECL_SYMBOL
#if defined (__PLUGIN__)
# if defined (WIN32)
# define DLL_SYMBOL __declspec(dllexport)
# undef CDECL_SYMBOL
# define CDECL_SYMBOL __cdecl
# elif defined (__GNUC__) && (__GNUC__ >= 4)
# define DLL_SYMBOL __attribute__((visibility("default")))
# else
# define DLL_SYMBOL
# endif
#else
# define DLL_SYMBOL
# define CDECL_SYMBOL
# define DLL_SYMBOL
#endif
#if defined( __cplusplus )