30 #if defined _WIN32 || defined __CYGWIN__
31 #define ROSE_DLL_HELPER_DLL_IMPORT __declspec(dllimport)
32 #define ROSE_DLL_HELPER_DLL_EXPORT __declspec(dllexport)
33 #define ROSE_DLL_HELPER_DLL_LOCAL
35 #if __GNUC__ >= 4 && !defined(USE_ROSE)
36 #define ROSE_DLL_HELPER_DLL_IMPORT __attribute__ ((visibility("default")))
37 #define ROSE_DLL_HELPER_DLL_EXPORT __attribute__ ((visibility("default")))
38 #define ROSE_DLL_HELPER_DLL_LOCAL __attribute__ ((visibility("hidden")))
40 #define ROSE_DLL_HELPER_DLL_IMPORT
41 #define ROSE_DLL_HELPER_DLL_EXPORT
42 #define ROSE_DLL_HELPER_DLL_LOCAL
47 #ifdef ROSE_DLL_EXPORTS // defined if we are building the ROSE DLL (instead of using it)
48 #define ROSE_DLL_API ROSE_DLL_HELPER_DLL_EXPORT
50 #define ROSE_DLL_API ROSE_DLL_HELPER_DLL_IMPORT
51 #endif // ROSE_DLL_DLL_EXPORTS
52 #define ROSE_DLL_LOCAL ROSE_DLL_HELPER_DLL_LOCAL
53 #ifdef ROSE_UTIL_EXPORTS
54 #define ROSE_UTIL_API ROSE_DLL_HELPER_DLL_EXPORT
56 #define ROSE_UTIL_API ROSE_DLL_HELPER_DLL_IMPORT