 |
TrinityCore
|
Loading...
Searching...
No Matches
Go to the documentation of this file.
18#ifndef TRINITY_COMPILERDEFS_H
19#define TRINITY_COMPILERDEFS_H
21#define TRINITY_PLATFORM_WINDOWS 0
22#define TRINITY_PLATFORM_UNIX 1
23#define TRINITY_PLATFORM_APPLE 2
26# define TRINITY_PLATFORM TRINITY_PLATFORM_WINDOWS
27#elif defined( __APPLE__ )
28# define TRINITY_PLATFORM TRINITY_PLATFORM_APPLE
30# define TRINITY_PLATFORM TRINITY_PLATFORM_UNIX
33#define TRINITY_COMPILER_MICROSOFT_FLAG(on) ((on) << 0)
34#define TRINITY_COMPILER_GCC_FLAG(on) ((on) << 1)
35#define TRINITY_COMPILER_CLANG_FLAG(on) ((on) << 2)
36#define TRINITY_COMPILER_INTEL_FLAG(on) ((on) << 3)
39# define TRINITY_COMPILER_MICROSOFT_DETECTED 1
41# define TRINITY_COMPILER_MICROSOFT_DETECTED 0
45# define TRINITY_COMPILER_GCC_DETECTED 1
47# define TRINITY_COMPILER_GCC_DETECTED 0
51# define TRINITY_COMPILER_CLANG_DETECTED 1
53# define TRINITY_COMPILER_CLANG_DETECTED 0
56#ifdef __INTEL_COMPILER
57# define TRINITY_COMPILER_INTEL_DETECTED 1
59# define TRINITY_COMPILER_INTEL_DETECTED 0
62#define TRINITY_COMPILER \
63 ( TRINITY_COMPILER_MICROSOFT_FLAG(TRINITY_COMPILER_MICROSOFT_DETECTED) \
64 | TRINITY_COMPILER_GCC_FLAG(TRINITY_COMPILER_GCC_DETECTED) \
65 | TRINITY_COMPILER_CLANG_FLAG(TRINITY_COMPILER_CLANG_DETECTED) \
66 | TRINITY_COMPILER_INTEL_FLAG(TRINITY_COMPILER_INTEL_DETECTED) )
68#if TRINITY_COMPILER == 0
69# error "FATAL ERROR: Unknown compiler."
72#define TRINITY_COMPILER_IS(compiler) (((TRINITY_COMPILER) & (compiler)) != 0)
73#define TRINITY_COMPILER_IS_MICROSOFT TRINITY_COMPILER_IS(TRINITY_COMPILER_MICROSOFT_FLAG(1))
74#define TRINITY_COMPILER_IS_GCC TRINITY_COMPILER_IS(TRINITY_COMPILER_GCC_FLAG(1))
75#define TRINITY_COMPILER_IS_CLANG TRINITY_COMPILER_IS(TRINITY_COMPILER_CLANG_FLAG(1))
76#define TRINITY_COMPILER_IS_INTEL TRINITY_COMPILER_IS(TRINITY_COMPILER_INTEL_FLAG(1))