Logo ROOT  
Reference Guide
CommonDefs.h
Go to the documentation of this file.
1 #ifndef CPYCPPYY_COMMONDEFS_H
2 #define CPYCPPYY_COMMONDEFS_H
3 
4 // export macros for our own API
5 // import/export (after precommondefs.h from PyPy)
6 #ifdef _MSC_VER
7 // Windows requires symbols to be explicitly exported
8 #define CPYCPPYY_EXPORT extern __declspec(dllexport)
9 #define CPYCPPYY_IMPORT extern __declspec(dllimport)
10 #define CPYCPPYY_CLASS_EXPORT __declspec(dllexport)
11 
12 // CPYCPPYY_EXTERN is dual use in the public API
13 #ifndef CPYCPPYY_INTERNAL
14 #define CPYCPPYY_EXTERN extern __declspec(dllexport)
15 #define CPYCPPYY_CLASS_EXTERN __declspec(dllexport)
16 #else
17 #define CPYCPPYY_EXTERN extern __declspec(dllimport)
18 #define CPYCPPYY_CLASS_EXTERN __declspec(dllimport)
19 #endif
20 
21 #define CPYCPPYY_STATIC
22 
23 #else
24 // Linux, Mac, etc.
25 #define CPYCPPYY_EXPORT extern
26 #define CPYCPPYY_IMPORT extern
27 #define CPYCPPYY_CLASS_EXPORT
28 #define CPYCPPYY_EXTERN extern
29 #define CPYCPPYY_CLASS_EXTERN
30 #define CPYCPPYY_STATIC static
31 
32 #endif
33 
34 #endif // !CPYCPPYY_COMMONDEFS_H