1 #ifndef INCLUDED_LIBS_GLOBALDEFS
2 #define INCLUDED_LIBS_GLOBALDEFS
6 #if defined(__BIG_ENDIAN__) || defined(_SGI_SOURCE)
7 #define GDEF_ARCH_ENDIAN_BIG 1
9 #define GDEF_ARCH_ENDIAN_BIG 0
14 #if defined(__i386__) || defined(_M_IX86)
15 #define GDEF_ARCH_BITS_32 1
17 #define GDEF_ARCH_BITS_32 0
20 #if defined(__LP64__) || defined(_M_X64) || defined(_M_AMD64) || defined(_WIN64)
21 #define GDEF_ARCH_BITS_64 1
23 #define GDEF_ARCH_BITS_64 0
29 #define GDEF_OS_POSIX 1
31 #define GDEF_OS_POSIX 0
34 #if defined(WIN32) || defined(_WIN32) || defined(_WIN64)
35 #define GDEF_OS_WINDOWS 1
37 #define GDEF_OS_WINDOWS 0
40 #if defined(__APPLE__)
41 #define GDEF_OS_MACOS 1
43 #define GDEF_OS_MACOS 0
46 #if defined(__linux__)
47 #define GDEF_OS_LINUX 1
49 #define GDEF_OS_LINUX 0
54 #if defined(__FreeBSD__)
57 #define GDEF_OS_BSD_FREE 1
59 #define GDEF_OS_BSD_FREE 0
62 #if defined(__NetBSD__)
65 #define GDEF_OS_BSD_NET 1
67 #define GDEF_OS_BSD_NET 0
70 #if defined(__OpenBSD__)
73 #define GDEF_OS_BSD_OPEN 1
75 #define GDEF_OS_BSD_OPEN 0
78 #if defined(__DragonFly__)
81 #define GDEF_OS_BSD_DRAGONFLY 1
83 #define GDEF_OS_BSD_DRAGONFLY 0
86 #if defined(__osf) || defined(__osf__) || defined(__OSF__)
87 #define GDEF_OS_OSF1 1
89 #define GDEF_OS_OSF1 0
92 #if defined(_MIPS_ISA)
93 #define GDEF_OS_IRIX 1
95 #define GDEF_OS_IRIX 0
99 #define GDEF_OS_NEXT 1
101 #define GDEF_OS_NEXT 0
104 #if GDEF_OS_LINUX || GDEF_OS_BSD
105 #define GDEF_OS_XDG 1
107 #define GDEF_OS_XDG 0
110 // EXECUTABLE EXTENSION
113 #define GDEF_OS_EXE_EXT ".exe"
115 #define GDEF_OS_EXE_EXT ""
120 #if defined(_MSC_VER)
121 #define GDEF_COMPILER_MSVC 1
123 #define GDEF_COMPILER_MSVC 0
126 #if defined(__GNUC__)
127 #define GDEF_COMPILER_GNU 1
129 #define GDEF_COMPILER_GNU 0
134 #if GDEF_COMPILER_GNU
135 #define GDEF_ATTRIBUTE_NORETURN __attribute__((noreturn))
137 #define GDEF_ATTRIBUTE_NORETURN
140 #ifdef GDEF_COMPILER_MSVC
141 #define GDEF_ATTRIBUTE_INLINE __inline
143 #define GDEF_ATTRIBUTE_INLINE inline
156 #endif // !INCLUDED_LIBS_GLOBALDEFS