Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
CommonDefs.h
Go to the documentation of this file.
1#ifndef CPYRT_COMMONDEFS_H
2#define CPYRT_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 CPYRT_EXPORT extern __declspec(dllexport)
9#define CPYRT_IMPORT extern __declspec(dllimport)
10#define CPYRT_CLASS_EXPORT __declspec(dllexport)
11
12// CPYRT_EXTERN is dual use in the public API
13#ifndef CPYRT_INTERNAL
14#define CPYRT_EXTERN extern __declspec(dllexport)
15#define CPYRT_CLASS_EXTERN __declspec(dllexport)
16#else
17#define CPYRT_EXTERN extern __declspec(dllimport)
18#define CPYRT_CLASS_EXTERN __declspec(dllimport)
19#endif
20
21#define CPYRT_STATIC
22
23#else
24// Linux, Mac, etc.
25#define CPYRT_EXPORT extern
26#define CPYRT_IMPORT extern
27#define CPYRT_CLASS_EXPORT
28#define CPYRT_EXTERN extern
29#define CPYRT_CLASS_EXTERN
30#define CPYRT_STATIC static
31
32#endif
33
34#endif // !CPYRT_COMMONDEFS_H