28 #ifndef SDL_platform_h_
29 #define SDL_platform_h_
35 #if defined(__HAIKU__)
39 #if defined(bsdi) || defined(__bsdi) || defined(__bsdi__)
43 #if defined(_arch_dreamcast)
45 #define __DREAMCAST__ 1
47 #if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__DragonFly__)
51 #if defined(hpux) || defined(__hpux) || defined(__hpux__)
55 #if defined(sgi) || defined(__sgi) || defined(__sgi__) || defined(_SGI_SOURCE)
59 #if (defined(linux) || defined(__linux) || defined(__linux__))
63 #if defined(ANDROID) || defined(__ANDROID__)
68 #if defined(__NGAGE__)
73 #if defined(__APPLE__)
75 #include <AvailabilityMacros.h>
76 #include <TargetConditionals.h>
82 #ifndef TARGET_OS_MACCATALYST
83 #define TARGET_OS_MACCATALYST 0
86 #define TARGET_OS_IOS 0
88 #ifndef TARGET_OS_IPHONE
89 #define TARGET_OS_IPHONE 0
92 #define TARGET_OS_TV 0
94 #ifndef TARGET_OS_SIMULATOR
95 #define TARGET_OS_SIMULATOR 0
105 #define __IPHONEOS__ 1
111 #if MAC_OS_X_VERSION_MIN_REQUIRED < 1070
112 # error SDL for Mac OS X only supports deploying on 10.7 and above.
117 #if defined(__NetBSD__)
121 #if defined(__OpenBSD__)
123 #define __OPENBSD__ 1
125 #if defined(__OS2__) || defined(__EMX__)
129 #if defined(osf) || defined(__osf) || defined(__osf__) || defined(_OSF_SOURCE)
133 #if defined(__QNXNTO__)
137 #if defined(riscos) || defined(__riscos) || defined(__riscos__)
141 #if defined(__sun) && defined(__SVR4)
143 #define __SOLARIS__ 1
146 #if defined(WIN32) || defined(_WIN32) || defined(__CYGWIN__) || defined(__MINGW32__)
148 #if defined(_MSC_VER) && defined(__has_include)
149 #if __has_include(<winapifamily.h>)
150 #define HAVE_WINAPIFAMILY_H 1
152 #define HAVE_WINAPIFAMILY_H 0
156 #elif defined(_MSC_VER) && (_MSC_VER >= 1700 && !_USING_V110_SDK71_)
157 #define HAVE_WINAPIFAMILY_H 1
159 #define HAVE_WINAPIFAMILY_H 0
162 #if HAVE_WINAPIFAMILY_H
163 #include <winapifamily.h>
164 #define WINAPI_FAMILY_WINRT (!WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) && WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP))
166 #define WINAPI_FAMILY_WINRT 0
169 #if WINAPI_FAMILY_WINRT
174 #define __WINDOWS__ 1
178 #if defined(__WINDOWS__)
190 #if defined(__native_client__)
195 #if defined(__pnacl__)
200 #define __SDL_NOGETPROCADDR__
203 #if defined(__vita__)