SDL_build_config.h.cmake 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601
  1. /*
  2. Simple DirectMedia Layer
  3. Copyright (C) 1997-2023 Sam Lantinga <slouken@libsdl.org>
  4. This software is provided 'as-is', without any express or implied
  5. warranty. In no event will the authors be held liable for any damages
  6. arising from the use of this software.
  7. Permission is granted to anyone to use this software for any purpose,
  8. including commercial applications, and to alter it and redistribute it
  9. freely, subject to the following restrictions:
  10. 1. The origin of this software must not be misrepresented; you must not
  11. claim that you wrote the original software. If you use this software
  12. in a product, an acknowledgment in the product documentation would be
  13. appreciated but is not required.
  14. 2. Altered source versions must be plainly marked as such, and must not be
  15. misrepresented as being the original software.
  16. 3. This notice may not be removed or altered from any source distribution.
  17. */
  18. /**
  19. * \file SDL_build_config.h
  20. *
  21. * \brief This is a set of defines to configure the SDL features
  22. */
  23. #ifndef SDL_build_config_h_
  24. #define SDL_build_config_h_
  25. /* General platform specific identifiers */
  26. #include <SDL3/SDL_platform_defines.h>
  27. /* C language features */
  28. #cmakedefine const @HAVE_CONST@
  29. #cmakedefine inline @HAVE_INLINE@
  30. #cmakedefine volatile @HAVE_VOLATILE@
  31. /* C datatypes */
  32. /* Define SIZEOF_VOIDP for 64/32 architectures */
  33. #if defined(__LP64__) || defined(_LP64) || defined(_WIN64)
  34. #define SIZEOF_VOIDP 8
  35. #else
  36. #define SIZEOF_VOIDP 4
  37. #endif
  38. #cmakedefine HAVE_GCC_ATOMICS @HAVE_GCC_ATOMICS@
  39. #cmakedefine HAVE_GCC_SYNC_LOCK_TEST_AND_SET @HAVE_GCC_SYNC_LOCK_TEST_AND_SET@
  40. /* Comment this if you want to build without any C library requirements */
  41. #cmakedefine HAVE_LIBC 1
  42. #if HAVE_LIBC
  43. /* Useful headers */
  44. #cmakedefine HAVE_ALLOCA_H 1
  45. #cmakedefine HAVE_CTYPE_H 1
  46. #cmakedefine HAVE_FLOAT_H 1
  47. #cmakedefine HAVE_ICONV_H 1
  48. #cmakedefine HAVE_INTTYPES_H 1
  49. #cmakedefine HAVE_LIMITS_H 1
  50. #cmakedefine HAVE_MALLOC_H 1
  51. #cmakedefine HAVE_MATH_H 1
  52. #cmakedefine HAVE_MEMORY_H 1
  53. #cmakedefine HAVE_SIGNAL_H 1
  54. #cmakedefine HAVE_STDARG_H 1
  55. #cmakedefine HAVE_STDDEF_H 1
  56. #cmakedefine HAVE_STDINT_H 1
  57. #cmakedefine HAVE_STDIO_H 1
  58. #cmakedefine HAVE_STDLIB_H 1
  59. #cmakedefine HAVE_STRINGS_H 1
  60. #cmakedefine HAVE_STRING_H 1
  61. #cmakedefine HAVE_SYS_TYPES_H 1
  62. #cmakedefine HAVE_WCHAR_H 1
  63. #cmakedefine HAVE_LINUX_INPUT_H 1
  64. #cmakedefine HAVE_PTHREAD_NP_H 1
  65. #cmakedefine HAVE_LIBUNWIND_H 1
  66. /* C library functions */
  67. #cmakedefine HAVE_DLOPEN 1
  68. #cmakedefine HAVE_MALLOC 1
  69. #cmakedefine HAVE_CALLOC 1
  70. #cmakedefine HAVE_REALLOC 1
  71. #cmakedefine HAVE_FREE 1
  72. #cmakedefine HAVE_ALLOCA 1
  73. #ifndef __WIN32__ /* Don't use C runtime versions of these on Windows */
  74. #cmakedefine HAVE_GETENV 1
  75. #cmakedefine HAVE_SETENV 1
  76. #cmakedefine HAVE_PUTENV 1
  77. #cmakedefine HAVE_UNSETENV 1
  78. #endif
  79. #cmakedefine HAVE_QSORT 1
  80. #cmakedefine HAVE_BSEARCH 1
  81. #cmakedefine HAVE_ABS 1
  82. #cmakedefine HAVE_BCOPY 1
  83. #cmakedefine HAVE_MEMSET 1
  84. #cmakedefine HAVE_MEMCPY 1
  85. #cmakedefine HAVE_MEMMOVE 1
  86. #cmakedefine HAVE_MEMCMP 1
  87. #cmakedefine HAVE_WCSLEN 1
  88. #cmakedefine HAVE_WCSLCPY 1
  89. #cmakedefine HAVE_WCSLCAT 1
  90. #cmakedefine HAVE__WCSDUP 1
  91. #cmakedefine HAVE_WCSDUP 1
  92. #cmakedefine HAVE_WCSSTR 1
  93. #cmakedefine HAVE_WCSCMP 1
  94. #cmakedefine HAVE_WCSNCMP 1
  95. #cmakedefine HAVE_WCSCASECMP 1
  96. #cmakedefine HAVE__WCSICMP 1
  97. #cmakedefine HAVE_WCSNCASECMP 1
  98. #cmakedefine HAVE__WCSNICMP 1
  99. #cmakedefine HAVE_STRLEN 1
  100. #cmakedefine HAVE_STRLCPY 1
  101. #cmakedefine HAVE_STRLCAT 1
  102. #cmakedefine HAVE__STRREV 1
  103. #cmakedefine HAVE__STRUPR 1
  104. #cmakedefine HAVE__STRLWR 1
  105. #cmakedefine HAVE_INDEX 1
  106. #cmakedefine HAVE_RINDEX 1
  107. #cmakedefine HAVE_STRCHR 1
  108. #cmakedefine HAVE_STRRCHR 1
  109. #cmakedefine HAVE_STRSTR 1
  110. #cmakedefine HAVE_STRTOK_R 1
  111. #cmakedefine HAVE_ITOA 1
  112. #cmakedefine HAVE__LTOA 1
  113. #cmakedefine HAVE__UITOA 1
  114. #cmakedefine HAVE__ULTOA 1
  115. #cmakedefine HAVE_STRTOL 1
  116. #cmakedefine HAVE_STRTOUL 1
  117. #cmakedefine HAVE__I64TOA 1
  118. #cmakedefine HAVE__UI64TOA 1
  119. #cmakedefine HAVE_STRTOLL 1
  120. #cmakedefine HAVE_STRTOULL 1
  121. #cmakedefine HAVE_STRTOD 1
  122. #cmakedefine HAVE_ATOI 1
  123. #cmakedefine HAVE_ATOF 1
  124. #cmakedefine HAVE_STRCMP 1
  125. #cmakedefine HAVE_STRNCMP 1
  126. #cmakedefine HAVE__STRICMP 1
  127. #cmakedefine HAVE_STRCASECMP 1
  128. #cmakedefine HAVE__STRNICMP 1
  129. #cmakedefine HAVE_STRNCASECMP 1
  130. #cmakedefine HAVE_STRCASESTR 1
  131. #cmakedefine HAVE_SSCANF 1
  132. #cmakedefine HAVE_VSSCANF 1
  133. #cmakedefine HAVE_VSNPRINTF 1
  134. #cmakedefine HAVE_ACOS 1
  135. #cmakedefine HAVE_ACOSF 1
  136. #cmakedefine HAVE_ASIN 1
  137. #cmakedefine HAVE_ASINF 1
  138. #cmakedefine HAVE_ATAN 1
  139. #cmakedefine HAVE_ATANF 1
  140. #cmakedefine HAVE_ATAN2 1
  141. #cmakedefine HAVE_ATAN2F 1
  142. #cmakedefine HAVE_CEIL 1
  143. #cmakedefine HAVE_CEILF 1
  144. #cmakedefine HAVE_COPYSIGN 1
  145. #cmakedefine HAVE_COPYSIGNF 1
  146. #cmakedefine HAVE_COS 1
  147. #cmakedefine HAVE_COSF 1
  148. #cmakedefine HAVE_EXP 1
  149. #cmakedefine HAVE_EXPF 1
  150. #cmakedefine HAVE_FABS 1
  151. #cmakedefine HAVE_FABSF 1
  152. #cmakedefine HAVE_FLOOR 1
  153. #cmakedefine HAVE_FLOORF 1
  154. #cmakedefine HAVE_FMOD 1
  155. #cmakedefine HAVE_FMODF 1
  156. #cmakedefine HAVE_LOG 1
  157. #cmakedefine HAVE_LOGF 1
  158. #cmakedefine HAVE_LOG10 1
  159. #cmakedefine HAVE_LOG10F 1
  160. #cmakedefine HAVE_LROUND 1
  161. #cmakedefine HAVE_LROUNDF 1
  162. #cmakedefine HAVE_MODF 1
  163. #cmakedefine HAVE_MODFF 1
  164. #cmakedefine HAVE_POW 1
  165. #cmakedefine HAVE_POWF 1
  166. #cmakedefine HAVE_ROUND 1
  167. #cmakedefine HAVE_ROUNDF 1
  168. #cmakedefine HAVE_SCALBN 1
  169. #cmakedefine HAVE_SCALBNF 1
  170. #cmakedefine HAVE_SIN 1
  171. #cmakedefine HAVE_SINF 1
  172. #cmakedefine HAVE_SQRT 1
  173. #cmakedefine HAVE_SQRTF 1
  174. #cmakedefine HAVE_TAN 1
  175. #cmakedefine HAVE_TANF 1
  176. #cmakedefine HAVE_TRUNC 1
  177. #cmakedefine HAVE_TRUNCF 1
  178. #cmakedefine HAVE_FOPEN64 1
  179. #cmakedefine HAVE_FSEEKO 1
  180. #cmakedefine HAVE_FSEEKO64 1
  181. #cmakedefine HAVE_SIGACTION 1
  182. #cmakedefine HAVE_SA_SIGACTION 1
  183. #cmakedefine HAVE_SETJMP 1
  184. #cmakedefine HAVE_NANOSLEEP 1
  185. #cmakedefine HAVE_SYSCONF 1
  186. #cmakedefine HAVE_SYSCTLBYNAME 1
  187. #cmakedefine HAVE_CLOCK_GETTIME 1
  188. #cmakedefine HAVE_GETPAGESIZE 1
  189. #cmakedefine HAVE_MPROTECT 1
  190. #cmakedefine HAVE_ICONV 1
  191. #cmakedefine HAVE_PTHREAD_SETNAME_NP 1
  192. #cmakedefine HAVE_PTHREAD_SET_NAME_NP 1
  193. #cmakedefine HAVE_SEM_TIMEDWAIT 1
  194. #cmakedefine HAVE_GETAUXVAL 1
  195. #cmakedefine HAVE_ELF_AUX_INFO 1
  196. #cmakedefine HAVE_POLL 1
  197. #cmakedefine HAVE__EXIT 1
  198. #else
  199. #cmakedefine HAVE_STDARG_H 1
  200. #cmakedefine HAVE_STDDEF_H 1
  201. #cmakedefine HAVE_STDINT_H 1
  202. #cmakedefine HAVE_FLOAT_H 1
  203. #endif /* HAVE_LIBC */
  204. #cmakedefine HAVE_DBUS_DBUS_H 1
  205. #cmakedefine HAVE_FCITX 1
  206. #cmakedefine HAVE_IBUS_IBUS_H 1
  207. #cmakedefine HAVE_SYS_INOTIFY_H 1
  208. #cmakedefine HAVE_INOTIFY_INIT 1
  209. #cmakedefine HAVE_INOTIFY_INIT1 1
  210. #cmakedefine HAVE_INOTIFY 1
  211. #cmakedefine HAVE_LIBUSB 1
  212. #cmakedefine HAVE_O_CLOEXEC 1
  213. #cmakedefine HAVE_LIBUDEV_H 1
  214. #cmakedefine HAVE_LIBSAMPLERATE 1
  215. #cmakedefine HAVE_LIBDECOR_H 1
  216. #cmakedefine HAVE_D3D_H @HAVE_D3D_H@
  217. #cmakedefine HAVE_D3D11_H @HAVE_D3D11_H@
  218. #cmakedefine HAVE_D3D12_H @HAVE_D3D12_H@
  219. #cmakedefine HAVE_DDRAW_H @HAVE_DDRAW_H@
  220. #cmakedefine HAVE_DSOUND_H @HAVE_DSOUND_H@
  221. #cmakedefine HAVE_DINPUT_H @HAVE_DINPUT_H@
  222. #cmakedefine HAVE_XINPUT_H @HAVE_XINPUT_H@
  223. #cmakedefine HAVE_WINDOWS_GAMING_INPUT_H @HAVE_WINDOWS_GAMING_INPUT_H@
  224. #cmakedefine HAVE_DXGI_H @HAVE_DXGI_H@
  225. #cmakedefine HAVE_MMDEVICEAPI_H @HAVE_MMDEVICEAPI_H@
  226. #cmakedefine HAVE_AUDIOCLIENT_H @HAVE_AUDIOCLIENT_H@
  227. #cmakedefine HAVE_TPCSHRD_H @HAVE_TPCSHRD_H@
  228. #cmakedefine HAVE_SENSORSAPI_H @HAVE_SENSORSAPI_H@
  229. #cmakedefine HAVE_ROAPI_H @HAVE_ROAPI_H@
  230. #cmakedefine HAVE_SHELLSCALINGAPI_H @HAVE_SHELLSCALINGAPI_H@
  231. #cmakedefine HAVE_XINPUT_GAMEPAD_EX @HAVE_XINPUT_GAMEPAD_EX@
  232. #cmakedefine HAVE_XINPUT_STATE_EX @HAVE_XINPUT_STATE_EX@
  233. #cmakedefine USE_POSIX_SPAWN @USE_POSIX_SPAWN@
  234. /* SDL internal assertion support */
  235. #if @SDL_DEFAULT_ASSERT_LEVEL_CONFIGURED@
  236. #cmakedefine SDL_DEFAULT_ASSERT_LEVEL @SDL_DEFAULT_ASSERT_LEVEL@
  237. #endif
  238. /* Allow disabling of core subsystems */
  239. #cmakedefine SDL_ATOMIC_DISABLED @SDL_ATOMIC_DISABLED@
  240. #cmakedefine SDL_AUDIO_DISABLED @SDL_AUDIO_DISABLED@
  241. #cmakedefine SDL_CPUINFO_DISABLED @SDL_CPUINFO_DISABLED@
  242. #cmakedefine SDL_EVENTS_DISABLED @SDL_EVENTS_DISABLED@
  243. #cmakedefine SDL_FILE_DISABLED @SDL_FILE_DISABLED@
  244. #cmakedefine SDL_JOYSTICK_DISABLED @SDL_JOYSTICK_DISABLED@
  245. #cmakedefine SDL_HAPTIC_DISABLED @SDL_HAPTIC_DISABLED@
  246. #cmakedefine SDL_HIDAPI_DISABLED @SDL_HIDAPI_DISABLED@
  247. #cmakedefine SDL_SENSOR_DISABLED @SDL_SENSOR_DISABLED@
  248. #cmakedefine SDL_LOADSO_DISABLED @SDL_LOADSO_DISABLED@
  249. #cmakedefine SDL_RENDER_DISABLED @SDL_RENDER_DISABLED@
  250. #cmakedefine SDL_THREADS_DISABLED @SDL_THREADS_DISABLED@
  251. #cmakedefine SDL_TIMERS_DISABLED @SDL_TIMERS_DISABLED@
  252. #cmakedefine SDL_VIDEO_DISABLED @SDL_VIDEO_DISABLED@
  253. #cmakedefine SDL_POWER_DISABLED @SDL_POWER_DISABLED@
  254. #cmakedefine SDL_FILESYSTEM_DISABLED @SDL_FILESYSTEM_DISABLED@
  255. #cmakedefine SDL_LOCALE_DISABLED @SDL_LOCALE_DISABLED@
  256. #cmakedefine SDL_MISC_DISABLED @SDL_MISC_DISABLED@
  257. /* Enable various audio drivers */
  258. #cmakedefine SDL_AUDIO_DRIVER_ALSA @SDL_AUDIO_DRIVER_ALSA@
  259. #cmakedefine SDL_AUDIO_DRIVER_ALSA_DYNAMIC @SDL_AUDIO_DRIVER_ALSA_DYNAMIC@
  260. #cmakedefine SDL_AUDIO_DRIVER_ANDROID @SDL_AUDIO_DRIVER_ANDROID@
  261. #cmakedefine SDL_AUDIO_DRIVER_OPENSLES @SDL_AUDIO_DRIVER_OPENSLES@
  262. #cmakedefine SDL_AUDIO_DRIVER_AAUDIO @SDL_AUDIO_DRIVER_AAUDIO@
  263. #cmakedefine SDL_AUDIO_DRIVER_COREAUDIO @SDL_AUDIO_DRIVER_COREAUDIO@
  264. #cmakedefine SDL_AUDIO_DRIVER_DISK @SDL_AUDIO_DRIVER_DISK@
  265. #cmakedefine SDL_AUDIO_DRIVER_DSOUND @SDL_AUDIO_DRIVER_DSOUND@
  266. #cmakedefine SDL_AUDIO_DRIVER_DUMMY @SDL_AUDIO_DRIVER_DUMMY@
  267. #cmakedefine SDL_AUDIO_DRIVER_EMSCRIPTEN @SDL_AUDIO_DRIVER_EMSCRIPTEN@
  268. #cmakedefine SDL_AUDIO_DRIVER_HAIKU @SDL_AUDIO_DRIVER_HAIKU@
  269. #cmakedefine SDL_AUDIO_DRIVER_JACK @SDL_AUDIO_DRIVER_JACK@
  270. #cmakedefine SDL_AUDIO_DRIVER_JACK_DYNAMIC @SDL_AUDIO_DRIVER_JACK_DYNAMIC@
  271. #cmakedefine SDL_AUDIO_DRIVER_NETBSD @SDL_AUDIO_DRIVER_NETBSD@
  272. #cmakedefine SDL_AUDIO_DRIVER_OSS @SDL_AUDIO_DRIVER_OSS@
  273. #cmakedefine SDL_AUDIO_DRIVER_PIPEWIRE @SDL_AUDIO_DRIVER_PIPEWIRE@
  274. #cmakedefine SDL_AUDIO_DRIVER_PIPEWIRE_DYNAMIC @SDL_AUDIO_DRIVER_PIPEWIRE_DYNAMIC@
  275. #cmakedefine SDL_AUDIO_DRIVER_PULSEAUDIO @SDL_AUDIO_DRIVER_PULSEAUDIO@
  276. #cmakedefine SDL_AUDIO_DRIVER_PULSEAUDIO_DYNAMIC @SDL_AUDIO_DRIVER_PULSEAUDIO_DYNAMIC@
  277. #cmakedefine SDL_AUDIO_DRIVER_SNDIO @SDL_AUDIO_DRIVER_SNDIO@
  278. #cmakedefine SDL_AUDIO_DRIVER_SNDIO_DYNAMIC @SDL_AUDIO_DRIVER_SNDIO_DYNAMIC@
  279. #cmakedefine SDL_AUDIO_DRIVER_WASAPI @SDL_AUDIO_DRIVER_WASAPI@
  280. #cmakedefine SDL_AUDIO_DRIVER_VITA @SDL_AUDIO_DRIVER_VITA@
  281. #cmakedefine SDL_AUDIO_DRIVER_PSP @SDL_AUDIO_DRIVER_PSP@
  282. #cmakedefine SDL_AUDIO_DRIVER_PS2 @SDL_AUDIO_DRIVER_PS2@
  283. #cmakedefine SDL_AUDIO_DRIVER_N3DS @SDL_AUDIO_DRIVER_N3DS@
  284. /* Enable various input drivers */
  285. #cmakedefine SDL_INPUT_LINUXEV @SDL_INPUT_LINUXEV@
  286. #cmakedefine SDL_INPUT_LINUXKD @SDL_INPUT_LINUXKD@
  287. #cmakedefine SDL_INPUT_FBSDKBIO @SDL_INPUT_FBSDKBIO@
  288. #cmakedefine SDL_INPUT_WSCONS @SDL_INPUT_WSCONS@
  289. #cmakedefine SDL_JOYSTICK_ANDROID @SDL_JOYSTICK_ANDROID@
  290. #cmakedefine SDL_JOYSTICK_HAIKU @SDL_JOYSTICK_HAIKU@
  291. #cmakedefine SDL_JOYSTICK_WGI @SDL_JOYSTICK_WGI@
  292. #cmakedefine SDL_JOYSTICK_DINPUT @SDL_JOYSTICK_DINPUT@
  293. #cmakedefine SDL_JOYSTICK_XINPUT @SDL_JOYSTICK_XINPUT@
  294. #cmakedefine SDL_JOYSTICK_DUMMY @SDL_JOYSTICK_DUMMY@
  295. #cmakedefine SDL_JOYSTICK_IOKIT @SDL_JOYSTICK_IOKIT@
  296. #cmakedefine SDL_JOYSTICK_MFI @SDL_JOYSTICK_MFI@
  297. #cmakedefine SDL_JOYSTICK_LINUX @SDL_JOYSTICK_LINUX@
  298. #cmakedefine SDL_JOYSTICK_USBHID @SDL_JOYSTICK_USBHID@
  299. #cmakedefine SDL_HAVE_MACHINE_JOYSTICK_H @SDL_HAVE_MACHINE_JOYSTICK_H@
  300. #cmakedefine SDL_JOYSTICK_HIDAPI @SDL_JOYSTICK_HIDAPI@
  301. #cmakedefine SDL_JOYSTICK_RAWINPUT @SDL_JOYSTICK_RAWINPUT@
  302. #cmakedefine SDL_JOYSTICK_EMSCRIPTEN @SDL_JOYSTICK_EMSCRIPTEN@
  303. #cmakedefine SDL_JOYSTICK_VIRTUAL @SDL_JOYSTICK_VIRTUAL@
  304. #cmakedefine SDL_JOYSTICK_VITA @SDL_JOYSTICK_VITA@
  305. #cmakedefine SDL_JOYSTICK_PSP @SDL_JOYSTICK_PSP@
  306. #cmakedefine SDL_JOYSTICK_PS2 @SDL_JOYSTICK_PS2@
  307. #cmakedefine SDL_JOYSTICK_N3DS @SDL_JOYSTICK_N3DS@
  308. #cmakedefine SDL_HAPTIC_DUMMY @SDL_HAPTIC_DUMMY@
  309. #cmakedefine SDL_HAPTIC_LINUX @SDL_HAPTIC_LINUX@
  310. #cmakedefine SDL_HAPTIC_IOKIT @SDL_HAPTIC_IOKIT@
  311. #cmakedefine SDL_HAPTIC_DINPUT @SDL_HAPTIC_DINPUT@
  312. #cmakedefine SDL_HAPTIC_XINPUT @SDL_HAPTIC_XINPUT@
  313. #cmakedefine SDL_HAPTIC_ANDROID @SDL_HAPTIC_ANDROID@
  314. #cmakedefine SDL_LIBUSB_DYNAMIC @SDL_LIBUSB_DYNAMIC@
  315. #cmakedefine SDL_UDEV_DYNAMIC @SDL_UDEV_DYNAMIC@
  316. /* Enable various sensor drivers */
  317. #cmakedefine SDL_SENSOR_ANDROID @SDL_SENSOR_ANDROID@
  318. #cmakedefine SDL_SENSOR_COREMOTION @SDL_SENSOR_COREMOTION@
  319. #cmakedefine SDL_SENSOR_WINDOWS @SDL_SENSOR_WINDOWS@
  320. #cmakedefine SDL_SENSOR_DUMMY @SDL_SENSOR_DUMMY@
  321. #cmakedefine SDL_SENSOR_VITA @SDL_SENSOR_VITA@
  322. #cmakedefine SDL_SENSOR_N3DS @SDL_SENSOR_N3DS@
  323. /* Enable various shared object loading systems */
  324. #cmakedefine SDL_LOADSO_DLOPEN @SDL_LOADSO_DLOPEN@
  325. #cmakedefine SDL_LOADSO_DUMMY @SDL_LOADSO_DUMMY@
  326. #cmakedefine SDL_LOADSO_LDG @SDL_LOADSO_LDG@
  327. #cmakedefine SDL_LOADSO_WINDOWS @SDL_LOADSO_WINDOWS@
  328. /* Enable various threading systems */
  329. #cmakedefine SDL_THREAD_GENERIC_COND_SUFFIX @SDL_THREAD_GENERIC_COND_SUFFIX@
  330. #cmakedefine SDL_THREAD_PTHREAD @SDL_THREAD_PTHREAD@
  331. #cmakedefine SDL_THREAD_PTHREAD_RECURSIVE_MUTEX @SDL_THREAD_PTHREAD_RECURSIVE_MUTEX@
  332. #cmakedefine SDL_THREAD_PTHREAD_RECURSIVE_MUTEX_NP @SDL_THREAD_PTHREAD_RECURSIVE_MUTEX_NP@
  333. #cmakedefine SDL_THREAD_WINDOWS @SDL_THREAD_WINDOWS@
  334. #cmakedefine SDL_THREAD_VITA @SDL_THREAD_VITA@
  335. #cmakedefine SDL_THREAD_PSP @SDL_THREAD_PSP@
  336. #cmakedefine SDL_THREAD_PS2 @SDL_THREAD_PS2@
  337. #cmakedefine SDL_THREAD_N3DS @SDL_THREAD_N3DS@
  338. /* Enable various timer systems */
  339. #cmakedefine SDL_TIMER_HAIKU @SDL_TIMER_HAIKU@
  340. #cmakedefine SDL_TIMER_DUMMY @SDL_TIMER_DUMMY@
  341. #cmakedefine SDL_TIMER_UNIX @SDL_TIMER_UNIX@
  342. #cmakedefine SDL_TIMER_WINDOWS @SDL_TIMER_WINDOWS@
  343. #cmakedefine SDL_TIMER_VITA @SDL_TIMER_VITA@
  344. #cmakedefine SDL_TIMER_PSP @SDL_TIMER_PSP@
  345. #cmakedefine SDL_TIMER_PS2 @SDL_TIMER_PS2@
  346. #cmakedefine SDL_TIMER_N3DS @SDL_TIMER_N3DS@
  347. /* Enable various video drivers */
  348. #cmakedefine SDL_VIDEO_DRIVER_ANDROID @SDL_VIDEO_DRIVER_ANDROID@
  349. #cmakedefine SDL_VIDEO_DRIVER_COCOA @SDL_VIDEO_DRIVER_COCOA@
  350. #cmakedefine SDL_VIDEO_DRIVER_DUMMY @SDL_VIDEO_DRIVER_DUMMY@
  351. #cmakedefine SDL_VIDEO_DRIVER_EMSCRIPTEN @SDL_VIDEO_DRIVER_EMSCRIPTEN@
  352. #cmakedefine SDL_VIDEO_DRIVER_HAIKU @SDL_VIDEO_DRIVER_HAIKU@
  353. #cmakedefine SDL_VIDEO_DRIVER_KMSDRM @SDL_VIDEO_DRIVER_KMSDRM@
  354. #cmakedefine SDL_VIDEO_DRIVER_KMSDRM_DYNAMIC @SDL_VIDEO_DRIVER_KMSDRM_DYNAMIC@
  355. #cmakedefine SDL_VIDEO_DRIVER_KMSDRM_DYNAMIC_GBM @SDL_VIDEO_DRIVER_KMSDRM_DYNAMIC_GBM@
  356. #cmakedefine SDL_VIDEO_DRIVER_N3DS @SDL_VIDEO_DRIVER_N3DS@
  357. #cmakedefine SDL_VIDEO_DRIVER_OFFSCREEN @SDL_VIDEO_DRIVER_OFFSCREEN@
  358. #cmakedefine SDL_VIDEO_DRIVER_PS2 @SDL_VIDEO_DRIVER_PS2@
  359. #cmakedefine SDL_VIDEO_DRIVER_PSP @SDL_VIDEO_DRIVER_PSP@
  360. #cmakedefine SDL_VIDEO_DRIVER_RISCOS @SDL_VIDEO_DRIVER_RISCOS@
  361. #cmakedefine SDL_VIDEO_DRIVER_ROCKCHIP @SDL_VIDEO_DRIVER_ROCKCHIP@
  362. #cmakedefine SDL_VIDEO_DRIVER_RPI @SDL_VIDEO_DRIVER_RPI@
  363. #cmakedefine SDL_VIDEO_DRIVER_UIKIT @SDL_VIDEO_DRIVER_UIKIT@
  364. #cmakedefine SDL_VIDEO_DRIVER_VITA @SDL_VIDEO_DRIVER_VITA@
  365. #cmakedefine SDL_VIDEO_DRIVER_VIVANTE @SDL_VIDEO_DRIVER_VIVANTE@
  366. #cmakedefine SDL_VIDEO_DRIVER_VIVANTE_VDK @SDL_VIDEO_DRIVER_VIVANTE_VDK@
  367. #cmakedefine SDL_VIDEO_DRIVER_WAYLAND @SDL_VIDEO_DRIVER_WAYLAND@
  368. #cmakedefine SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC @SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC@
  369. #cmakedefine SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_CURSOR @SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_CURSOR@
  370. #cmakedefine SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_EGL @SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_EGL@
  371. #cmakedefine SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_LIBDECOR @SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_LIBDECOR@
  372. #cmakedefine SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_XKBCOMMON @SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_XKBCOMMON@
  373. #cmakedefine SDL_VIDEO_DRIVER_WAYLAND_QT_TOUCH @SDL_VIDEO_DRIVER_WAYLAND_QT_TOUCH@
  374. #cmakedefine SDL_VIDEO_DRIVER_WINDOWS @SDL_VIDEO_DRIVER_WINDOWS@
  375. #cmakedefine SDL_VIDEO_DRIVER_WINRT @SDL_VIDEO_DRIVER_WINRT@
  376. #cmakedefine SDL_VIDEO_DRIVER_X11 @SDL_VIDEO_DRIVER_X11@
  377. #cmakedefine SDL_VIDEO_DRIVER_X11_DYNAMIC @SDL_VIDEO_DRIVER_X11_DYNAMIC@
  378. #cmakedefine SDL_VIDEO_DRIVER_X11_DYNAMIC_XCURSOR @SDL_VIDEO_DRIVER_X11_DYNAMIC_XCURSOR@
  379. #cmakedefine SDL_VIDEO_DRIVER_X11_DYNAMIC_XEXT @SDL_VIDEO_DRIVER_X11_DYNAMIC_XEXT@
  380. #cmakedefine SDL_VIDEO_DRIVER_X11_DYNAMIC_XFIXES @SDL_VIDEO_DRIVER_X11_DYNAMIC_XFIXES@
  381. #cmakedefine SDL_VIDEO_DRIVER_X11_DYNAMIC_XINPUT2 @SDL_VIDEO_DRIVER_X11_DYNAMIC_XINPUT2@
  382. #cmakedefine SDL_VIDEO_DRIVER_X11_DYNAMIC_XRANDR @SDL_VIDEO_DRIVER_X11_DYNAMIC_XRANDR@
  383. #cmakedefine SDL_VIDEO_DRIVER_X11_DYNAMIC_XSS @SDL_VIDEO_DRIVER_X11_DYNAMIC_XSS@
  384. #cmakedefine SDL_VIDEO_DRIVER_X11_HAS_XKBKEYCODETOKEYSYM @SDL_VIDEO_DRIVER_X11_HAS_XKBKEYCODETOKEYSYM@
  385. #cmakedefine SDL_VIDEO_DRIVER_X11_SUPPORTS_GENERIC_EVENTS @SDL_VIDEO_DRIVER_X11_SUPPORTS_GENERIC_EVENTS@
  386. #cmakedefine SDL_VIDEO_DRIVER_X11_XCURSOR @SDL_VIDEO_DRIVER_X11_XCURSOR@
  387. #cmakedefine SDL_VIDEO_DRIVER_X11_XDBE @SDL_VIDEO_DRIVER_X11_XDBE@
  388. #cmakedefine SDL_VIDEO_DRIVER_X11_XFIXES @SDL_VIDEO_DRIVER_X11_XFIXES@
  389. #cmakedefine SDL_VIDEO_DRIVER_X11_XINPUT2 @SDL_VIDEO_DRIVER_X11_XINPUT2@
  390. #cmakedefine SDL_VIDEO_DRIVER_X11_XINPUT2_SUPPORTS_MULTITOUCH @SDL_VIDEO_DRIVER_X11_XINPUT2_SUPPORTS_MULTITOUCH@
  391. #cmakedefine SDL_VIDEO_DRIVER_X11_XRANDR @SDL_VIDEO_DRIVER_X11_XRANDR@
  392. #cmakedefine SDL_VIDEO_DRIVER_X11_XSCRNSAVER @SDL_VIDEO_DRIVER_X11_XSCRNSAVER@
  393. #cmakedefine SDL_VIDEO_DRIVER_X11_XSHAPE @SDL_VIDEO_DRIVER_X11_XSHAPE@
  394. #ifdef SDL_VIDEO_DRIVER_ANDROID
  395. #define SDL_ENABLE_SYSWM_ANDROID
  396. #else
  397. #define SDL_DISABLE_SYSWM_ANDROID
  398. #endif
  399. #ifdef SDL_VIDEO_DRIVER_COCOA
  400. #define SDL_ENABLE_SYSWM_COCOA
  401. #else
  402. #define SDL_DISABLE_SYSWM_COCOA
  403. #endif
  404. #ifdef SDL_VIDEO_DRIVER_HAIKU
  405. #define SDL_ENABLE_SYSWM_HAIKU
  406. #else
  407. #define SDL_DISABLE_SYSWM_HAIKU
  408. #endif
  409. #ifdef SDL_VIDEO_DRIVER_KMSDRM
  410. #define SDL_ENABLE_SYSWM_KMSDRM
  411. #else
  412. #define SDL_DISABLE_SYSWM_KMSDRM
  413. #endif
  414. #ifdef SDL_VIDEO_DRIVER_RISCOS
  415. #define SDL_ENABLE_SYSWM_RISCOS
  416. #else
  417. #define SDL_DISABLE_SYSWM_RISCOS
  418. #endif
  419. #ifdef SDL_VIDEO_DRIVER_UIKIT
  420. #define SDL_ENABLE_SYSWM_UIKIT
  421. #else
  422. #define SDL_DISABLE_SYSWM_UIKIT
  423. #endif
  424. #ifdef SDL_VIDEO_DRIVER_VIVANTE
  425. #define SDL_ENABLE_SYSWM_VIVANTE
  426. #else
  427. #define SDL_DISABLE_SYSWM_VIVANTE
  428. #endif
  429. #ifdef SDL_VIDEO_DRIVER_WAYLAND
  430. #define SDL_ENABLE_SYSWM_WAYLAND
  431. #else
  432. #define SDL_DISABLE_SYSWM_WAYLAND
  433. #endif
  434. #ifdef SDL_VIDEO_DRIVER_WINDOWS
  435. #define SDL_ENABLE_SYSWM_WINDOWS
  436. #else
  437. #define SDL_DISABLE_SYSWM_WINDOWS
  438. #endif
  439. #ifdef SDL_VIDEO_DRIVER_WINRT
  440. #define SDL_ENABLE_SYSWM_WINRT
  441. #else
  442. #define SDL_DISABLE_SYSWM_WINRT
  443. #endif
  444. #ifdef SDL_VIDEO_DRIVER_X11
  445. #define SDL_ENABLE_SYSWM_X11
  446. #else
  447. #define SDL_DISABLE_SYSWM_X11
  448. #endif
  449. #cmakedefine SDL_VIDEO_RENDER_D3D @SDL_VIDEO_RENDER_D3D@
  450. #cmakedefine SDL_VIDEO_RENDER_D3D11 @SDL_VIDEO_RENDER_D3D11@
  451. #cmakedefine SDL_VIDEO_RENDER_D3D12 @SDL_VIDEO_RENDER_D3D12@
  452. #cmakedefine SDL_VIDEO_RENDER_METAL @SDL_VIDEO_RENDER_METAL@
  453. #cmakedefine SDL_VIDEO_RENDER_OGL @SDL_VIDEO_RENDER_OGL@
  454. #cmakedefine SDL_VIDEO_RENDER_OGL_ES2 @SDL_VIDEO_RENDER_OGL_ES2@
  455. #cmakedefine SDL_VIDEO_RENDER_PS2 @SDL_VIDEO_RENDER_PS2@
  456. #cmakedefine SDL_VIDEO_RENDER_PSP @SDL_VIDEO_RENDER_PSP@
  457. #cmakedefine SDL_VIDEO_RENDER_VITA_GXM @SDL_VIDEO_RENDER_VITA_GXM@
  458. /* Enable OpenGL support */
  459. #cmakedefine SDL_VIDEO_OPENGL @SDL_VIDEO_OPENGL@
  460. #cmakedefine SDL_VIDEO_OPENGL_ES @SDL_VIDEO_OPENGL_ES@
  461. #cmakedefine SDL_VIDEO_OPENGL_ES2 @SDL_VIDEO_OPENGL_ES2@
  462. #cmakedefine SDL_VIDEO_OPENGL_BGL @SDL_VIDEO_OPENGL_BGL@
  463. #cmakedefine SDL_VIDEO_OPENGL_CGL @SDL_VIDEO_OPENGL_CGL@
  464. #cmakedefine SDL_VIDEO_OPENGL_GLX @SDL_VIDEO_OPENGL_GLX@
  465. #cmakedefine SDL_VIDEO_OPENGL_WGL @SDL_VIDEO_OPENGL_WGL@
  466. #cmakedefine SDL_VIDEO_OPENGL_EGL @SDL_VIDEO_OPENGL_EGL@
  467. #cmakedefine SDL_VIDEO_OPENGL_OSMESA @SDL_VIDEO_OPENGL_OSMESA@
  468. #cmakedefine SDL_VIDEO_OPENGL_OSMESA_DYNAMIC @SDL_VIDEO_OPENGL_OSMESA_DYNAMIC@
  469. /* Enable Vulkan support */
  470. #cmakedefine SDL_VIDEO_VULKAN @SDL_VIDEO_VULKAN@
  471. /* Enable Metal support */
  472. #cmakedefine SDL_VIDEO_METAL @SDL_VIDEO_METAL@
  473. /* Enable system power support */
  474. #cmakedefine SDL_POWER_ANDROID @SDL_POWER_ANDROID@
  475. #cmakedefine SDL_POWER_LINUX @SDL_POWER_LINUX@
  476. #cmakedefine SDL_POWER_WINDOWS @SDL_POWER_WINDOWS@
  477. #cmakedefine SDL_POWER_WINRT @SDL_POWER_WINRT@
  478. #cmakedefine SDL_POWER_MACOSX @SDL_POWER_MACOSX@
  479. #cmakedefine SDL_POWER_UIKIT @SDL_POWER_UIKIT@
  480. #cmakedefine SDL_POWER_HAIKU @SDL_POWER_HAIKU@
  481. #cmakedefine SDL_POWER_EMSCRIPTEN @SDL_POWER_EMSCRIPTEN@
  482. #cmakedefine SDL_POWER_HARDWIRED @SDL_POWER_HARDWIRED@
  483. #cmakedefine SDL_POWER_VITA @SDL_POWER_VITA@
  484. #cmakedefine SDL_POWER_PSP @SDL_POWER_PSP@
  485. #cmakedefine SDL_POWER_N3DS @SDL_POWER_N3DS@
  486. /* Enable system filesystem support */
  487. #cmakedefine SDL_FILESYSTEM_ANDROID @SDL_FILESYSTEM_ANDROID@
  488. #cmakedefine SDL_FILESYSTEM_HAIKU @SDL_FILESYSTEM_HAIKU@
  489. #cmakedefine SDL_FILESYSTEM_COCOA @SDL_FILESYSTEM_COCOA@
  490. #cmakedefine SDL_FILESYSTEM_DUMMY @SDL_FILESYSTEM_DUMMY@
  491. #cmakedefine SDL_FILESYSTEM_RISCOS @SDL_FILESYSTEM_RISCOS@
  492. #cmakedefine SDL_FILESYSTEM_UNIX @SDL_FILESYSTEM_UNIX@
  493. #cmakedefine SDL_FILESYSTEM_WINDOWS @SDL_FILESYSTEM_WINDOWS@
  494. #cmakedefine SDL_FILESYSTEM_EMSCRIPTEN @SDL_FILESYSTEM_EMSCRIPTEN@
  495. #cmakedefine SDL_FILESYSTEM_VITA @SDL_FILESYSTEM_VITA@
  496. #cmakedefine SDL_FILESYSTEM_PSP @SDL_FILESYSTEM_PSP@
  497. #cmakedefine SDL_FILESYSTEM_PS2 @SDL_FILESYSTEM_PS2@
  498. #cmakedefine SDL_FILESYSTEM_N3DS @SDL_FILESYSTEM_N3DS@
  499. /* Enable misc subsystem */
  500. #cmakedefine SDL_MISC_DUMMY @SDL_MISC_DUMMY@
  501. /* Enable locale subsystem */
  502. #cmakedefine SDL_LOCALE_DUMMY @SDL_LOCALE_DUMMY@
  503. /* Enable assembly routines */
  504. #cmakedefine SDL_ALTIVEC_BLITTERS @SDL_ALTIVEC_BLITTERS@
  505. #cmakedefine SDL_ARM_SIMD_BLITTERS @SDL_ARM_SIMD_BLITTERS@
  506. #cmakedefine SDL_ARM_NEON_BLITTERS @SDL_ARM_NEON_BLITTERS@
  507. /* Whether SDL_DYNAMIC_API needs dlopen */
  508. #cmakedefine DYNAPI_NEEDS_DLOPEN @DYNAPI_NEEDS_DLOPEN@
  509. /* Enable dynamic libsamplerate support */
  510. #cmakedefine SDL_LIBSAMPLERATE_DYNAMIC @SDL_LIBSAMPLERATE_DYNAMIC@
  511. /* Enable ime support */
  512. #cmakedefine SDL_USE_IME @SDL_USE_IME@
  513. /* Platform specific definitions */
  514. #cmakedefine SDL_IPHONE_KEYBOARD @SDL_IPHONE_KEYBOARD@
  515. #cmakedefine SDL_IPHONE_LAUNCHSCREEN @SDL_IPHONE_LAUNCHSCREEN@
  516. #cmakedefine SDL_VIDEO_VITA_PIB @SDL_VIDEO_VITA_PIB@
  517. #cmakedefine SDL_VIDEO_VITA_PVR @SDL_VIDEO_VITA_PVR@
  518. #cmakedefine SDL_VIDEO_VITA_PVR_OGL @SDL_VIDEO_VITA_PVR_OGL@
  519. #cmakedefine SDL_HAVE_LIBDECOR_GET_MIN_MAX @SDL_HAVE_LIBDECOR_GET_MIN_MAX@
  520. #if !defined(HAVE_STDINT_H) && !defined(_STDINT_H_)
  521. /* Most everything except Visual Studio 2008 and earlier has stdint.h now */
  522. #if defined(_MSC_VER) && (_MSC_VER < 1600)
  523. typedef signed __int8 int8_t;
  524. typedef unsigned __int8 uint8_t;
  525. typedef signed __int16 int16_t;
  526. typedef unsigned __int16 uint16_t;
  527. typedef signed __int32 int32_t;
  528. typedef unsigned __int32 uint32_t;
  529. typedef signed __int64 int64_t;
  530. typedef unsigned __int64 uint64_t;
  531. #ifndef _UINTPTR_T_DEFINED
  532. #ifdef _WIN64
  533. typedef unsigned __int64 uintptr_t;
  534. #else
  535. typedef unsigned int uintptr_t;
  536. #endif
  537. #define _UINTPTR_T_DEFINED
  538. #endif
  539. #endif /* Visual Studio 2008 */
  540. #endif /* !_STDINT_H_ && !HAVE_STDINT_H */
  541. /* Configure use of intrinsics */
  542. #cmakedefine SDL_DISABLE_SSE 1
  543. #cmakedefine SDL_DISABLE_SSE2 1
  544. #cmakedefine SDL_DISABLE_SSE3 1
  545. #cmakedefine SDL_DISABLE_SSE4_1 1
  546. #cmakedefine SDL_DISABLE_SSE4_2 1
  547. #cmakedefine SDL_DISABLE_AVX 1
  548. #cmakedefine SDL_DISABLE_AVX2 1
  549. #cmakedefine SDL_DISABLE_AVX512F 1
  550. #cmakedefine SDL_DISABLE_MMX 1
  551. #cmakedefine SDL_DISABLE_LSX 1
  552. #cmakedefine SDL_DISABLE_LASX 1
  553. #cmakedefine SDL_DISABLE_NEON 1
  554. #endif /* SDL_build_config_h_ */