EHS/include/ehs/system/OS.h

36 lines
725 B
C

#pragma once
#if defined(_WIN32) || defined(_WIN64)
#define EHS_OS_WINDOWS
#define EHS_FILE __FILE__
#define EHS_FUNC __FUNCTION__
#define EHS_LINE __LINE__
#if defined(EHS_LIB_EXPORT)
#define EHS_LIB_IO __declspec(dllexport)
#elif defined(EHS_LIB_IMPORT)
#define EHS_LIB_IO __declspec(dllimport)
#else
#define EHS_LIB_IO
#endif
#ifndef NOMINMAX
#define NOMINMAX
#endif
#ifndef WIN32_LEAN_AND_MEAN
#define WIN32_LEAN_AND_MEAN
#endif
#include <Windows.h>
typedef void* Handle;
#elif defined(__linux__)
#define EHS_OS_LINUX
#define EHS_FILE __FILE__
#define EHS_FUNC __FUNCTION__
#define EHS_LINE __LINE__
#define EHS_LIB_IO
typedef int Handle;
#endif