Go to the documentation of this file.
28#ifndef SDL_platform_defines_h_
29#define SDL_platform_defines_h_
32#define SDL_PLATFORM_AIX 1
35#define SDL_PLATFORM_HAIKU 1
37#if defined(bsdi) || defined(__bsdi) || defined(__bsdi__)
38#define SDL_PLATFORM_BSDI 1
40#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__DragonFly__)
41#define SDL_PLATFORM_FREEBSD 1
43#if defined(hpux) || defined(__hpux) || defined(__hpux__)
44#define SDL_PLATFORM_HPUX 1
46#if defined(sgi) || defined(__sgi) || defined(__sgi__) || defined(_SGI_SOURCE)
47#define SDL_PLATFORM_IRIX 1
49#if (defined(linux) || defined(__linux) || defined(__linux__))
50#define SDL_PLATFORM_LINUX 1
52#if defined(ANDROID) || defined(__ANDROID__)
53#undef SDL_PLATFORM_LINUX
54#define SDL_PLATFORM_ANDROID 1
57#define SDL_PLATFORM_NGAGE 1
60#if defined(__unix__) || defined(__unix) || defined(unix)
61#define SDL_PLATFORM_UNIX 1
65#define SDL_PLATFORM_APPLE 1
67#include <AvailabilityMacros.h>
68#include <TargetConditionals.h>
74#ifndef TARGET_OS_MACCATALYST
75#define TARGET_OS_MACCATALYST 0
78#define TARGET_OS_IOS 0
80#ifndef TARGET_OS_IPHONE
81#define TARGET_OS_IPHONE 0
86#ifndef TARGET_OS_SIMULATOR
87#define TARGET_OS_SIMULATOR 0
94#define SDL_PLATFORM_TVOS 1
97#define SDL_PLATFORM_IOS 1
99#define SDL_PLATFORM_MACOS 1
100#if MAC_OS_X_VERSION_MIN_REQUIRED < 1070
101# error SDL for macOS only supports deploying on 10.7 and above.
107#define SDL_PLATFORM_EMSCRIPTEN 1
110#define SDL_PLATFORM_NETBSD 1
113#define SDL_PLATFORM_OPENBSD 1
115#if defined(__OS2__) || defined(__EMX__)
116#define SDL_PLATFORM_OS2 1
118#if defined(osf) || defined(__osf) || defined(__osf__) || defined(_OSF_SOURCE)
119#define SDL_PLATFORM_OSF 1
122#define SDL_PLATFORM_QNXNTO 1
124#if defined(riscos) || defined(__riscos) || defined(__riscos__)
125#define SDL_PLATFORM_RISCOS 1
127#if defined(__sun) && defined(__SVR4)
128#define SDL_PLATFORM_SOLARIS 1
131#if defined(__CYGWIN__)
132#define SDL_PLATFORM_CYGWIN 1
135#if defined(WIN32) || defined(_WIN32) || defined(SDL_PLATFORM_CYGWIN) || defined(__MINGW32__)
137#if defined(_MSC_VER) && defined(__has_include)
138#if __has_include(<winapifamily.h>)
139#define HAVE_WINAPIFAMILY_H 1
141#define HAVE_WINAPIFAMILY_H 0
145#elif defined(_MSC_VER) && (_MSC_VER >= 1700 && !_USING_V110_SDK71_)
146#define HAVE_WINAPIFAMILY_H 1
148#define HAVE_WINAPIFAMILY_H 0
151#if HAVE_WINAPIFAMILY_H
152#include <winapifamily.h>
153#define WINAPI_FAMILY_WINRT (!WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) && WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP))
155#define WINAPI_FAMILY_WINRT 0
158#if HAVE_WINAPIFAMILY_H && HAVE_WINAPIFAMILY_H
159#define SDL_WINAPI_FAMILY_PHONE (WINAPI_FAMILY == WINAPI_FAMILY_PHONE_APP)
161#define SDL_WINAPI_FAMILY_PHONE 0
164#if WINAPI_FAMILY_WINRT
165#define SDL_PLATFORM_WINRT 1
166#elif defined(_GAMING_DESKTOP)
167#define SDL_PLATFORM_WINGDK 1
168#elif defined(_GAMING_XBOX_XBOXONE)
169#define SDL_PLATFORM_XBOXONE 1
170#elif defined(_GAMING_XBOX_SCARLETT)
171#define SDL_PLATFORM_XBOXSERIES 1
173#define SDL_PLATFORM_WINDOWS 1
177#ifdef SDL_PLATFORM_WINDOWS
178#define SDL_PLATFORM_WIN32 1
181#if defined(SDL_PLATFORM_WINGDK) || defined(SDL_PLATFORM_XBOXONE) || defined(SDL_PLATFORM_XBOXSERIES)
182#define SDL_PLATFORM_GDK 1
185#define SDL_PLATFORM_PSP 1
187#if defined(__PS2__) || defined(PS2)
188#define SDL_PLATFORM_PS2 1
191#if defined(__vita__) || defined(__psp2__)
192#define SDL_PLATFORM_VITA 1
197#define SDL_PLATFORM_3DS 1