c++_api/inc/opals/config.hpp
1 #ifndef OPALS_CONFIG_HPP_INCLUDED
2 #define OPALS_CONFIG_HPP_INCLUDED
3 
4 #if defined OPALS_EXPORTS || defined OPALS_IGENERATE
5 # if defined _ITERATOR_DEBUG_LEVEL && _ITERATOR_DEBUG_LEVEL != 0
6 # error _ITERATOR_DEBUG_LEVEL must be zero
7 # elif !defined _ITERATOR_DEBUG_LEVEL
8 # define _ITERATOR_DEBUG_LEVEL 0
9 # endif
10 #endif
11 
12 #ifdef _MSC_VER
13 # define OPALS_IMPORT_API __declspec(dllimport)
14 # define OPALS_EXPORT_API __declspec(dllexport)
15 #else
16 # define OPALS_IMPORT_API
17 # define OPALS_EXPORT_API
18 #endif
19 
20 #ifdef OPALS_EXPORTS
21 # define OPALS_API OPALS_EXPORT_API
22 #elif !defined OPALS_IGENERATE
23 # define OPALS_API OPALS_IMPORT_API
24 #endif
25 
26 #ifdef OPALS_MODULE_EXPORTS
27 # define OPALS_MODULE_API OPALS_EXPORT_API
28 #elif defined OPALS_IGENERATE
29 # define OPALS_MODULE_API OPALS_API
30 #else
31 # define OPALS_MODULE_API OPALS_IMPORT_API
32 #endif
33 
34 #if !defined(OPALS_EXPORTS) && !defined(OPALS_MODULE_EXPORTS)
35 # if defined _DEBUG && !defined OPALS_NO_DEBUG
36 # pragma comment(lib, "opals_base_d.lib")
37 # else
38 # pragma comment(lib, "opals_base.lib")
39 # endif
40 #endif
41 
42 #if defined _MSC_VER && _MSC_VER < 1900
43 typedef __int64 int64_t;
44 typedef unsigned __int64 uint64_t;
45 #else
46 # include <cstdint>
47 #endif
48 
49 #endif //OPALS_CONFIG_HPP_INCLUDED