forked from arc/libarc-validate
33 lines
1.2 KiB
C++
33 lines
1.2 KiB
C++
|
#ifndef arc__validate__export_hxx_
|
||
|
#define arc__validate__export_hxx_
|
||
|
|
||
|
#if defined _WIN32 || defined __CYGWIN__
|
||
|
# define LIBARC_VALIDATE_SO_IMPORT __declspec(dllimport)
|
||
|
# define LIBARC_VALIDATE_SO_EXPORT __declspec(dllexport)
|
||
|
# define LIBARC_VALIDATE_SO_LOCAL
|
||
|
#else
|
||
|
# if __GNUC__ >= 4
|
||
|
# define LIBARC_VALIDATE_SO_IMPORT __attribute__ ((visibility ("default")))
|
||
|
# define LIBARC_VALIDATE_SO_EXPORT __attribute__ ((visibility ("default")))
|
||
|
# define LIBARC_VALIDATE_SO_LOCAL __attribute__ ((visibility ("hidden")))
|
||
|
# else
|
||
|
# define LIBARC_VALIDATE_SO_IMPORT
|
||
|
# define LIBARC_VALIDATE_SO_EXPORT
|
||
|
# define LIBARC_VALIDATE_SO_LOCAL
|
||
|
# endif
|
||
|
#endif
|
||
|
|
||
|
#if defined(LIBARC_VALIDATE_STATIC) // Using static.
|
||
|
# define LIBARC_VALIDATE_SYMEXPORT
|
||
|
#elif defined(LIBARC_VALIDATE_STATIC_BUILD) // Building static.
|
||
|
# define LIBARC_VALIDATE_SYMEXPORT
|
||
|
#elif defined(LIBARC_VALIDATE_SHARED) // Using shared.
|
||
|
# define LIBARC_VALIDATE_SYMEXPORT LIBARC_VALIDATE_SO_IMPORT
|
||
|
#elif defined(LIBARC_VALIDATE_SHARED_BUILD) // Building shared.
|
||
|
# define LIBARC_VALIDATE_SYMEXPORT LIBARC_VALIDATE_SO_EXPORT
|
||
|
#else
|
||
|
# error define LIBARC_VALIDATE_STATIC or LIBARC_VALIDATE_SHARED
|
||
|
#endif
|
||
|
|
||
|
#endif
|