7 #define TY_PLATFORM_WIN32 1
8 #define TY_PLATFORM_WIN64 2
9 #define TY_PLATFORM_LINUX 3
11 #define TY_COMPILER_MSVC 1
12 #define TY_COMPILER_GNUC 2
14 #define TY_ARCHITECTURE_32 1
15 #define TY_ARCHITECTURE_64 2
20 #define TY_COMPILER TY_COMPILER_MSVC
21 #define TY_COMP_VER _MSC_VER
23 #elif defined(__GNUC__)
24 #define TY_COMPILER TY_COMPILER_GNUC
25 #define TY_COMP_VER (((__GNUC__)*100) + (__GNUC_MINOR__ * 10) + __GNUC_PATCHLEVEL__)
28 #pragma error "No known compiler. Abort! Abort!"
33 #if defined(_WIN64_) || defined(_WIN64)
34 #define TY_PLATFORM TY_PLATFORM_WIN64
36 #elif defined(__WIN32__) || defined(_WIN32)
37 #define TY_PLATFORM TY_PLATFORM_WIN32
40 #define TY_PLATFORM TY_PLATFORM_LINUX
44 #if defined(__x86_64__) || defined(_M_X64) || defined(__powerpc64__) || defined(__alpha__) || \
45 defined(__ia64__) || defined(__s390__) || defined(__s390x__)
46 #define TY_ARCH_TYPE TY_ARCHITECTURE_64
48 #define TY_ARCH_TYPE TY_ARCHITECTURE_32
51 #if TY_ARCH_TYPE == TY_ARCHITECTURE_32
52 #define TY_PRODUCT_PLATFORM_ "32bits"
54 #define TY_PRODUCT_PLATFORM_ "64bits"
62 #if TY_COMPILER == TY_COMPILER_MSVC
63 typedef unsigned __int64
uint64;
unsigned long long uint64