forked from arc/libarc-uri
33 lines
1.1 KiB
C++
33 lines
1.1 KiB
C++
|
#ifndef arc__uri__export_hxx_
|
||
|
#define arc__uri__export_hxx_
|
||
|
|
||
|
#if defined _WIN32 || defined __CYGWIN__
|
||
|
# define LIBARC_URI_SO_IMPORT __declspec(dllimport)
|
||
|
# define LIBARC_URI_SO_EXPORT __declspec(dllexport)
|
||
|
# define LIBARC_URI_SO_LOCAL
|
||
|
#else
|
||
|
# if __GNUC__ >= 4
|
||
|
# define LIBARC_URI_SO_IMPORT __attribute__ ((visibility ("default")))
|
||
|
# define LIBARC_URI_SO_EXPORT __attribute__ ((visibility ("default")))
|
||
|
# define LIBARC_URI_SO_LOCAL __attribute__ ((visibility ("hidden")))
|
||
|
# else
|
||
|
# define LIBARC_URI_SO_IMPORT
|
||
|
# define LIBARC_URI_SO_EXPORT
|
||
|
# define LIBARC_URI_SO_LOCAL
|
||
|
# endif
|
||
|
#endif
|
||
|
|
||
|
#if defined(LIBARC_URI_STATIC) // Using static.
|
||
|
# define LIBARC_URI_SYMEXPORT
|
||
|
#elif defined(LIBARC_URI_STATIC_BUILD) // Building static.
|
||
|
# define LIBARC_URI_SYMEXPORT
|
||
|
#elif defined(LIBARC_URI_SHARED) // Using shared.
|
||
|
# define LIBARC_URI_SYMEXPORT LIBARC_URI_SO_IMPORT
|
||
|
#elif defined(LIBARC_URI_SHARED_BUILD) // Building shared.
|
||
|
# define LIBARC_URI_SYMEXPORT LIBARC_URI_SO_EXPORT
|
||
|
#else
|
||
|
# error define LIBARC_URI_STATIC or LIBARC_URI_SHARED
|
||
|
#endif
|
||
|
|
||
|
#endif
|