 |
DDNet documentation
|
Loading...
Searching...
No Matches
Go to the documentation of this file.
14#if defined(WIN64) || defined(_WIN64)
16#define CONF_FAMILY_WINDOWS 1
17#define CONF_FAMILY_STRING "windows"
18#define CONF_PLATFORM_WIN64 1
19#define PLATFORM_STRING "win64"
20#elif defined(WIN32) || defined(_WIN32) || defined(__CYGWIN32__) || defined(__MINGW32__)
21#define CONF_FAMILY_WINDOWS 1
22#define CONF_FAMILY_STRING "windows"
23#define CONF_PLATFORM_WIN32 1
24#define PLATFORM_STRING "win32"
28#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__)
29#define CONF_FAMILY_UNIX 1
30#define CONF_FAMILY_STRING "unix"
31#define CONF_PLATFORM_FREEBSD 1
32#define PLATFORM_STRING "freebsd"
35#if defined(__NetBSD__)
36#define CONF_FAMILY_UNIX 1
37#define CONF_FAMILY_STRING "unix"
38#define CONF_PLATFORM_NETBSD 1
39#define PLATFORM_STRING "netbsd"
42#if defined(__OpenBSD__)
43#define CONF_FAMILY_UNIX 1
44#define CONF_FAMILY_STRING "unix"
45#define CONF_PLATFORM_OPENBSD 1
46#define PLATFORM_STRING "openbsd"
49#if defined(__ANDROID__)
50#define CONF_FAMILY_UNIX 1
51#define CONF_FAMILY_STRING "unix"
52#define CONF_PLATFORM_ANDROID 1
53#define PLATFORM_STRING "android"
54#define CONF_BACKEND_OPENGL_ES 1
55#define CONF_BACKEND_OPENGL_ES3 1
56#elif defined(__EMSCRIPTEN__)
57#define CONF_FAMILY_UNIX 1
58#define CONF_FAMILY_STRING "unix"
59#define CONF_PLATFORM_EMSCRIPTEN 1
60#define PLATFORM_STRING "emscripten"
61#define CONF_BACKEND_OPENGL_ES3 1
62#define CONF_BACKEND_OPENGL_ES 1
63#elif defined(__LINUX__) || defined(__linux__)
64#define CONF_FAMILY_UNIX 1
65#define CONF_FAMILY_STRING "unix"
66#define CONF_PLATFORM_LINUX 1
67#define PLATFORM_STRING "linux"
68#define CONF_BACKEND_OPENGL_ES3 1
71#if defined(__GNU__) || defined(__gnu__)
72#define CONF_FAMILY_UNIX 1
73#define CONF_FAMILY_STRING "unix"
74#define CONF_PLATFORM_HURD 1
75#define PLATFORM_STRING "gnu"
78#if defined(MACOSX) || defined(__APPLE__) || defined(__DARWIN__)
79#define CONF_FAMILY_UNIX 1
80#define CONF_FAMILY_STRING "unix"
81#define CONF_PLATFORM_MACOS 1
82#define PLATFORM_STRING "macos"
86#define CONF_FAMILY_UNIX 1
87#define CONF_FAMILY_STRING "unix"
88#define CONF_PLATFORM_SOLARIS 1
89#define PLATFORM_STRING "solaris"
93#if defined(__BeOS) || defined(__BEOS__)
94#define CONF_FAMILY_BEOS 1
95#define CONF_FAMILY_STRING "beos"
96#define CONF_PLATFORM_BEOS 1
97#define PLATFORM_STRING "beos"
100#if defined(__HAIKU__)
101#define CONF_FAMILY_UNIX 1
102#define CONF_FAMILY_STRING "unix"
103#define CONF_PLATFORM_HAIKU 1
104#define PLATFORM_STRING "haiku"
108#if defined(__GNUC__) && !defined(__APPLE__) && !defined(__MINGW32__) && !defined(__sun)
109#if defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__)
110#include <sys/endian.h>
115#if __BYTE_ORDER == __LITTLE_ENDIAN
116#define CONF_ARCH_ENDIAN_LITTLE 1
117#elif __BYTE_ORDER == __BIG_ENDIAN
118#define CONF_ARCH_ENDIAN_BIG 1
123#if defined(i386) || defined(__i386__) || defined(__x86__) || defined(CONF_PLATFORM_WIN32)
124#define CONF_ARCH_IA32 1
125#define CONF_ARCH_STRING "ia32"
126#if !defined(CONF_ARCH_ENDIAN_LITTLE) && !defined(CONF_ARCH_ENDIAN_BIG)
127#define CONF_ARCH_ENDIAN_LITTLE 1
131#if defined(__ia64__) || defined(_M_IA64)
132#define CONF_ARCH_IA64 1
133#define CONF_ARCH_STRING "ia64"
134#if !defined(CONF_ARCH_ENDIAN_LITTLE) && !defined(CONF_ARCH_ENDIAN_BIG)
135#define CONF_ARCH_ENDIAN_LITTLE 1
139#if defined(__amd64__) || defined(__x86_64__) || defined(_M_X64)
140#define CONF_ARCH_AMD64 1
141#define CONF_ARCH_STRING "amd64"
142#if !defined(CONF_ARCH_ENDIAN_LITTLE) && !defined(CONF_ARCH_ENDIAN_BIG)
143#define CONF_ARCH_ENDIAN_LITTLE 1
147#if defined(__powerpc__) || defined(__ppc__)
148#define CONF_ARCH_PPC 1
149#define CONF_ARCH_STRING "ppc"
150#if !defined(CONF_ARCH_ENDIAN_LITTLE) && !defined(CONF_ARCH_ENDIAN_BIG)
151#define CONF_ARCH_ENDIAN_BIG 1
155#if defined(__sparc__)
156#define CONF_ARCH_SPARC 1
157#define CONF_ARCH_STRING "sparc"
158#if !defined(CONF_ARCH_ENDIAN_LITTLE) && !defined(CONF_ARCH_ENDIAN_BIG)
159#define CONF_ARCH_ENDIAN_BIG 1
163#if defined(__ARMEB__)
164#define CONF_ARCH_ARM 1
165#define CONF_ARCH_STRING "arm"
166#define CONF_ARCH_ENDIAN_BIG 1
167#elif defined(__ARMEL__)
168#define CONF_ARCH_ARM 1
169#define CONF_ARCH_STRING "arm"
170#define CONF_ARCH_ENDIAN_LITTLE 1
171#elif defined(__aarch64__) || defined(__arm64__) || defined(__ARM_ARCH_ISA_A64)
172#define CONF_ARCH_ARM64 1
173#define CONF_ARCH_STRING "arm64"
174#if defined(__ARM_BIG_ENDIAN)
175#define CONF_ARCH_ENDIAN_BIG 1
177#define CONF_ARCH_ENDIAN_LITTLE 1
181#if defined(__EMSCRIPTEN__)
182#define CONF_ARCH_WASM 1
183#define CONF_ARCH_STRING "wasm32"
186#ifndef CONF_FAMILY_STRING
187#define CONF_FAMILY_STRING "unknown"
190#ifndef PLATFORM_STRING
191#define PLATFORM_STRING "unknown"
194#define STRINGIFY2(x) #x
195#define STRINGIFY(x) STRINGIFY2(x)
197#if defined(PLATFORM_SUFFIX)
198#define CONF_PLATFORM_STRING PLATFORM_STRING STRINGIFY(PLATFORM_SUFFIX)
200#define CONF_PLATFORM_STRING PLATFORM_STRING
203#ifndef CONF_ARCH_STRING
204#define CONF_ARCH_STRING "unknown"
207#if defined(CONF_ARCH_ENDIAN_LITTLE)
208#define CONF_ARCH_ENDIAN_STRING "little endian"
209#elif defined(CONF_ARCH_ENDIAN_BIG)
210#define CONF_ARCH_ENDIAN_STRING "big endian"
212#error "Unsupported endianness"