rstd_compiler.h (1337B)
1 /////////////////////////////////// 2 // NOTE: Compiler Context Cracking 3 #ifndef RSTD_COMPILER_H 4 #define RSTD_COMPILER_H 5 6 #if defined(__linux__) 7 #define OS_LINUX 1 8 #elif defined(__APPLE__) 9 #define OS_MACOS 1 10 #elif defined(_WIN32) 11 #define OS_WINDOWS 1 12 #else 13 #error Unsupported Operating System 14 #endif 15 16 #if defined(__clang__) 17 #define COMPILER_CLANG 1 18 #elif defined(_MSC_VER) 19 #define COMPILER_MSVC 1 20 #elif defined(__GNUC__) 21 #define COMPILER_GCC 1 22 #else 23 #error Unsupported Compiler 24 #endif 25 26 #if COMPILER_MSVC 27 #if defined(_M_AMD64) 28 #define ARCH_X64 1 29 #elif defined(_M_ARM64) 30 #define ARCH_ARM64 1 31 #else 32 #error Unsupported Architecture 33 #endif 34 #else 35 #if defined(__x86_64__) 36 #define ARCH_X64 1 37 #elif defined(__aarch64__) 38 #define ARCH_ARM64 1 39 #else 40 #error Unsupported Architecture 41 #endif 42 #endif 43 44 #if !defined(OS_WINDOWS) 45 #define OS_WINDOWS 0 46 #endif 47 #if !defined(OS_LINUX) 48 #define OS_LINUX 0 49 #endif 50 #if !defined(OS_MACOS) 51 #define OS_MACOS 0 52 #endif 53 #if !defined(COMPILER_CLANG) 54 #define COMPILER_CLANG 0 55 #endif 56 #if !defined(COMPILER_MSVC) 57 #define COMPILER_MSVC 0 58 #endif 59 #if !defined(COMPILER_GCC) 60 #define COMPILER_GCC 0 61 #endif 62 #if !defined(ARCH_X64) 63 #define ARCH_X64 0 64 #endif 65 #if !defined(ARCH_ARM64) 66 #define ARCH_ARM64 0 67 #endif 68 69 #endif /* RSTD_COMPILER_H */