For Sun C with linker scoping specifiers, define WS_DLL_PUBLIC_DEF.

This may let us, at least for those compilers, make the default "hidden"
with -xldscope=hidden.

Change-Id: I94e10733c2aba0ff8d77a8bf4f1dc8ecc8b2a47f
Reviewed-on: https://code.wireshark.org/review/2766
Reviewed-by: Guy Harris <guy@alum.mit.edu>
This commit is contained in:
Guy Harris 2014-07-01 16:03:34 -07:00
parent a4a624e4c5
commit 22ea889ee4
1 changed files with 5 additions and 1 deletions

View File

@ -152,12 +152,16 @@
* This was lifted from GLib; see above for why we don't use
* G_GNUC_INTERNAL.
*/
#define WS_DLL_PUBLIC_DEF
#if defined(__SUNPRO_C) && (__SUNPRO_C >= 0x590)
/* This supports GCC-style __attribute__ ((visibility (XXX))) */
#define WS_DLL_PUBLIC_DEF __attribute__ ((visibility ("default")))
#define WS_DLL_LOCAL __attribute__ ((visibility ("hidden")))
#elif defined(__SUNPRO_C) && (__SUNPRO_C >= 0x550)
/* This doesn't, but supports __global and __hidden */
#define WS_DLL_PUBLIC_DEF __global
#define WS_DLL_LOCAL __hidden
#else /* not Sun C with "hidden" support */
#define WS_DLL_PUBLIC_DEF
#define WS_DLL_LOCAL
#endif
#endif /* __GNUC__ >= 4 */