sol2/examples/require_dll_example/my_object_api.hpp

33 lines
630 B
C++

#pragma once
namespace my_object {
#if defined _MSC_VER
#define MY_OBJECT_VC
#elif defined __GNUC__
#define MY_OBJECT_GCC
#elif defined __clang__
#define MY_OBJECT_CLANG
#endif
#if !defined(_NDEBUG)
#define MY_OBJECT_DEBUG
#else
#endif // Debug || Not-Debug
#if defined MY_OBJECT_VC
#if defined MY_OBJECT_DLL
#if defined MY_OBJECT_BUILD
#define MY_OBJECT_API __declspec(dllexport)
#else
#define MY_OBJECT_API __declspec(dllexport)
#endif // MY_OBJECT_BUILD - Building the Library vs. Using the Library
#else
#define MY_OBJECT_API
#endif // Building a DLL vs. Static Library
#else
#define MY_OBJECT_API
#endif
} // my_object