Infinispan HotRod C++ Client  8.3.1.Final
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
ImportExport.h
Go to the documentation of this file.
1 #ifndef HOTROD_IMPORT_EXPORT_H
2 #define HOTROD_IMPORT_EXPORT_H 1
3 
4 //
5 // Compiler specific mechanisms for managing the import and export of
6 // symbols between shared objects.
7 //
8 // HR_EXPORT - Export declaration
9 // HR_IMPORT - Import declaration
10 //
11 
12 #if !defined(HOTROD_DECLARE_STATIC)
13  #if defined(WIN32) || defined(_WIN32)
14  #define HR_EXPORT __declspec(dllexport)
15  #define HR_IMPORT __declspec(dllimport)
16  #else
17  #if __GNUC__ >= 4
18  #define HR_EXPORT __attribute__ ((visibility ("default")))
19  #define HR_IMPORT __attribute__ ((visibility ("default")))
20  #endif
21  #endif
22 #endif
23 
24 #if !defined(HR_EXPORT)
25  // default values
26  #define HR_EXPORT
27  #define HR_IMPORT
28 #endif
29 
30 
31 // value of xxx_EXPORTS is set by CMake
32 #ifdef hotrod_EXPORTS
33  #define HR_EXTERN HR_EXPORT
34 #else
35  #define HR_EXTERN HR_IMPORT
36 #endif
37 
38 #endif /* import_export.h */