Commit aaa92c22 authored by Damien Fouilleul's avatar Damien Fouilleul

vlc.h: move VLC_PUBLIC_API definition when building libvlc to vlc_common.h

parent 51d87be8
...@@ -158,10 +158,8 @@ struct vlc_list_t ...@@ -158,10 +158,8 @@ struct vlc_list_t
/***************************************************************************** /*****************************************************************************
* Shared library Export macros * Shared library Export macros
*****************************************************************************/ *****************************************************************************/
#if defined(WIN32) && defined(DLL_EXPORT) #ifndef VLC_PUBLIC_API
# define VLC_PUBLIC_API extern __declspec(dllexport) # define VLC_PUBLIC_API extern
#else
# define VLC_PUBLIC_API extern __attribute__((visibility("default")))
#endif #endif
/***************************************************************************** /*****************************************************************************
......
...@@ -472,9 +472,11 @@ typedef int ( * vlc_callback_t ) ( vlc_object_t *, /* variable's object */ ...@@ -472,9 +472,11 @@ typedef int ( * vlc_callback_t ) ( vlc_object_t *, /* variable's object */
#if defined (WIN32) && defined (DLL_EXPORT) #if defined (WIN32) && defined (DLL_EXPORT)
# ifdef __cplusplus # ifdef __cplusplus
# define VLC_PUBLIC_API __declspec(dllexport)
# define VLC_EXPORT( type, name, args ) extern "C" __declspec(dllexport) type name args # define VLC_EXPORT( type, name, args ) extern "C" __declspec(dllexport) type name args
# define VLC_INTERNAL( type, name, args ) extern "C" type name args # define VLC_INTERNAL( type, name, args ) extern "C" type name args
# else # else
# define VLC_PUBLIC_API extern __declspec(dllexport)
# define VLC_EXPORT( type, name, args ) __declspec(dllexport) type name args # define VLC_EXPORT( type, name, args ) __declspec(dllexport) type name args
# define VLC_INTERNAL( type, name, args ) type name args # define VLC_INTERNAL( type, name, args ) type name args
# endif # endif
...@@ -482,22 +484,27 @@ typedef int ( * vlc_callback_t ) ( vlc_object_t *, /* variable's object */ ...@@ -482,22 +484,27 @@ typedef int ( * vlc_callback_t ) ( vlc_object_t *, /* variable's object */
# if !defined (__PLUGIN__) || defined (HAVE_SHARED_LIBVLC) # if !defined (__PLUGIN__) || defined (HAVE_SHARED_LIBVLC)
# ifdef __cplusplus # ifdef __cplusplus
# if HAVE_ATTRIBUTE_VISIBILITY # if HAVE_ATTRIBUTE_VISIBILITY
# define VLC_PUBLIC_API __attribute__((visibility("default")))
# define VLC_EXPORT( type, name, args ) extern "C" __attribute__((visibility("default"))) type name args # define VLC_EXPORT( type, name, args ) extern "C" __attribute__((visibility("default"))) type name args
# define VLC_INTERNAL( type, name, args ) extern "C" __attribute__((visibility("hidden"))) type name args # define VLC_INTERNAL( type, name, args ) extern "C" __attribute__((visibility("hidden"))) type name args
# else # else
# define VLC_PUBLIC_API
# define VLC_EXPORT( type, name, args ) extern "C" type name args # define VLC_EXPORT( type, name, args ) extern "C" type name args
# define VLC_INTERNAL( type, name, args ) extern "C" type name args # define VLC_INTERNAL( type, name, args ) extern "C" type name args
# endif # endif
# else # else
# if HAVE_ATTRIBUTE_VISIBILITY # if HAVE_ATTRIBUTE_VISIBILITY
# define VLC_PUBLIC_API extern __attribute__((visibility("default")))
# define VLC_EXPORT( type, name, args ) __attribute__((visibility("default"))) type name args # define VLC_EXPORT( type, name, args ) __attribute__((visibility("default"))) type name args
# define VLC_INTERNAL( type, name, args ) __attribute__((visibility("hidden"))) type name args # define VLC_INTERNAL( type, name, args ) __attribute__((visibility("hidden"))) type name args
# else # else
# define VLC_PUBLIC_API extern
# define VLC_EXPORT( type, name, args ) type name args # define VLC_EXPORT( type, name, args ) type name args
# define VLC_INTERNAL( type, name, args ) type name args # define VLC_INTERNAL( type, name, args ) type name args
# endif # endif
# endif # endif
# else # else
# define VLC_PUBLIC_API
# define VLC_EXPORT( type, name, args ) struct _u_n_u_s_e_d_ # define VLC_EXPORT( type, name, args ) struct _u_n_u_s_e_d_
# define VLC_INTERNAL( type, name, args ) struct _u_n_u_s_e_d_ # define VLC_INTERNAL( type, name, args ) struct _u_n_u_s_e_d_
extern module_symbols_t* p_symbols; extern module_symbols_t* p_symbols;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment