Code View

plugin / plugin-2.2.0.0 / src / dso / DSOVisibility.hh
// SPDX-License-Identifier: MIT
#pragma once

/*  Handle DSO symbol visibility                                             */
#if defined PLUGIN_NO_EXPORT
#define PLUGIN_EXPORT
#else
#if defined _WIN32
#if defined PLUGIN_STATIC
#define PLUGIN_EXPORT
#elif defined DLL_EXPORT
#define PLUGIN_EXPORT __declspec( dllexport )
#else
#define PLUGIN_EXPORT __declspec( dllimport )
#endif
#else
#if defined __SUNPRO_C || defined __SUNPRO_CC
#define PLUGIN_EXPORT __global
#elif ( defined __GNUC__ && __GNUC__ >= 4 ) || defined __INTEL_COMPILER
#define PLUGIN_EXPORT __attribute__( ( visibility( "default" ) ) )
#else
#define PLUGIN_EXPORT
#endif
#endif
#endif