From 43d79673e10fb0227e7bb6d79cc06c5bddd7b01d Mon Sep 17 00:00:00 2001 From: Cameron Gutman Date: Sat, 25 Apr 2020 21:04:44 -0700 Subject: [PATCH] Rebuild SDL2 for Windows changeset: 13787:a564e72e3b2d --- libs/windows/include/SDL_config.h | 255 ++------------------- libs/windows/include/SDL_config_android.h | 49 ++-- libs/windows/include/SDL_config_iphoneos.h | 71 ++++-- libs/windows/include/SDL_config_macosx.h | 108 +++++++-- libs/windows/include/SDL_config_minimal.h | 5 +- libs/windows/include/SDL_config_pandora.h | 34 +-- libs/windows/include/SDL_config_psp.h | 53 +++-- libs/windows/include/SDL_config_windows.h | 98 +++++--- libs/windows/include/SDL_config_winrt.h | 92 +++++--- libs/windows/include/SDL_config_wiz.h | 81 ++++--- libs/windows/include/SDL_copying.h | 2 +- libs/windows/include/SDL_error.h | 38 ++- libs/windows/include/SDL_gamecontroller.h | 3 +- libs/windows/include/SDL_haptic.h | 18 ++ libs/windows/include/SDL_hints.h | 38 ++- libs/windows/include/SDL_joystick.h | 35 +++ libs/windows/include/SDL_metal.h | 44 +++- libs/windows/include/SDL_revision.h | 4 +- libs/windows/include/SDL_sensor.h | 13 ++ libs/windows/include/SDL_stdinc.h | 2 + libs/windows/include/SDL_version.h | 2 +- libs/windows/include/SDL_video.h | 9 +- libs/windows/lib/x64/SDL2.dll | Bin 1136640 -> 1201664 bytes libs/windows/lib/x64/SDL2.lib | Bin 150888 -> 153778 bytes libs/windows/lib/x64/SDL2.pdb | Bin 4419584 -> 5091328 bytes libs/windows/lib/x86/SDL2.dll | Bin 969216 -> 1026048 bytes libs/windows/lib/x86/SDL2.lib | Bin 154422 -> 157372 bytes libs/windows/lib/x86/SDL2.pdb | Bin 4886528 -> 5582848 bytes 28 files changed, 635 insertions(+), 419 deletions(-) diff --git a/libs/windows/include/SDL_config.h b/libs/windows/include/SDL_config.h index f269bfc0..3937dbc3 100644 --- a/libs/windows/include/SDL_config.h +++ b/libs/windows/include/SDL_config.h @@ -19,242 +19,37 @@ 3. This notice may not be removed or altered from any source distribution. */ -#ifndef SDL_config_windows_h_ -#define SDL_config_windows_h_ +#ifndef SDL_config_h_ #define SDL_config_h_ #include "SDL_platform.h" -/* This is a set of defines to configure the SDL features */ +/** + * \file SDL_config.h + */ -#if !defined(_STDINT_H_) && (!defined(HAVE_STDINT_H) || !_HAVE_STDINT_H) -#if defined(__GNUC__) || defined(__DMC__) || defined(__WATCOMC__) -#define HAVE_STDINT_H 1 -#elif defined(_MSC_VER) -typedef signed __int8 int8_t; -typedef unsigned __int8 uint8_t; -typedef signed __int16 int16_t; -typedef unsigned __int16 uint16_t; -typedef signed __int32 int32_t; -typedef unsigned __int32 uint32_t; -typedef signed __int64 int64_t; -typedef unsigned __int64 uint64_t; -#ifndef _UINTPTR_T_DEFINED -#ifdef _WIN64 -typedef unsigned __int64 uintptr_t; +/* Add any platform that doesn't build using the configure system. */ +#if defined(__WIN32__) +#include "SDL_config_windows.h" +#elif defined(__WINRT__) +#include "SDL_config_winrt.h" +#elif defined(__MACOSX__) +#include "SDL_config_macosx.h" +#elif defined(__IPHONEOS__) +#include "SDL_config_iphoneos.h" +#elif defined(__ANDROID__) +#include "SDL_config_android.h" +#elif defined(__PSP__) +#include "SDL_config_psp.h" +#elif defined(__OS2__) +#include "SDL_config_os2.h" #else -typedef unsigned int uintptr_t; -#endif -#define _UINTPTR_T_DEFINED -#endif -/* Older Visual C++ headers don't have the Win64-compatible typedefs... */ -#if ((_MSC_VER <= 1200) && (!defined(DWORD_PTR))) -#define DWORD_PTR DWORD -#endif -#if ((_MSC_VER <= 1200) && (!defined(LONG_PTR))) -#define LONG_PTR LONG -#endif -#else /* !__GNUC__ && !_MSC_VER */ -typedef signed char int8_t; -typedef unsigned char uint8_t; -typedef signed short int16_t; -typedef unsigned short uint16_t; -typedef signed int int32_t; -typedef unsigned int uint32_t; -typedef signed long long int64_t; -typedef unsigned long long uint64_t; -#ifndef _SIZE_T_DEFINED_ -#define _SIZE_T_DEFINED_ -typedef unsigned int size_t; -#endif -typedef unsigned int uintptr_t; -#endif /* __GNUC__ || _MSC_VER */ -#endif /* !_STDINT_H_ && !HAVE_STDINT_H */ +/* This is a minimal configuration just to get SDL running on new platforms. */ +#include "SDL_config_minimal.h" +#endif /* platform config */ -#ifdef _WIN64 -# define SIZEOF_VOIDP 8 -#else -# define SIZEOF_VOIDP 4 +#ifdef USING_GENERATED_CONFIG_H +#error Wrong SDL_config.h, check your include path? #endif -#define HAVE_DDRAW_H 1 -#define HAVE_DINPUT_H 1 -#define HAVE_DSOUND_H 1 -#define HAVE_DXGI_H 1 -#define HAVE_XINPUT_H 1 -#define HAVE_MMDEVICEAPI_H 1 -#define HAVE_AUDIOCLIENT_H 1 - -/* This is disabled by default to avoid C runtime dependencies and manifest requirements */ -#ifdef HAVE_LIBC -/* Useful headers */ -#define STDC_HEADERS 1 -#define HAVE_CTYPE_H 1 -#define HAVE_FLOAT_H 1 -#define HAVE_LIMITS_H 1 -#define HAVE_MATH_H 1 -#define HAVE_SIGNAL_H 1 -#define HAVE_STDIO_H 1 -#define HAVE_STRING_H 1 - -/* C library functions */ -#define HAVE_MALLOC 1 -#define HAVE_CALLOC 1 -#define HAVE_REALLOC 1 -#define HAVE_FREE 1 -#define HAVE_ALLOCA 1 -#define HAVE_QSORT 1 -#define HAVE_ABS 1 -#define HAVE_MEMSET 1 -#define HAVE_MEMCPY 1 -#define HAVE_MEMMOVE 1 -#define HAVE_MEMCMP 1 -#define HAVE_STRLEN 1 -#define HAVE__STRREV 1 -/* These functions have security warnings, so we won't use them */ -/* #undef HAVE__STRUPR */ -/* #undef HAVE__STRLWR */ -#define HAVE_STRCHR 1 -#define HAVE_STRRCHR 1 -#define HAVE_STRSTR 1 -/* #undef HAVE_STRTOK_R */ -#if defined(_MSC_VER) -#define HAVE_STRTOK_S 1 -#endif -/* These functions have security warnings, so we won't use them */ -/* #undef HAVE__LTOA */ -/* #undef HAVE__ULTOA */ -#define HAVE_STRTOL 1 -#define HAVE_STRTOUL 1 -#define HAVE_STRTOD 1 -#define HAVE_ATOI 1 -#define HAVE_ATOF 1 -#define HAVE_STRCMP 1 -#define HAVE_STRNCMP 1 -#define HAVE__STRICMP 1 -#define HAVE__STRNICMP 1 -#define HAVE_ACOS 1 -#define HAVE_ACOSF 1 -#define HAVE_ASIN 1 -#define HAVE_ASINF 1 -#define HAVE_ATAN 1 -#define HAVE_ATANF 1 -#define HAVE_ATAN2 1 -#define HAVE_ATAN2F 1 -#define HAVE_CEILF 1 -#define HAVE__COPYSIGN 1 -#define HAVE_COS 1 -#define HAVE_COSF 1 -#define HAVE_EXP 1 -#define HAVE_EXPF 1 -#define HAVE_FABS 1 -#define HAVE_FABSF 1 -#define HAVE_FLOOR 1 -#define HAVE_FLOORF 1 -#define HAVE_FMOD 1 -#define HAVE_FMODF 1 -#define HAVE_LOG 1 -#define HAVE_LOGF 1 -#define HAVE_LOG10 1 -#define HAVE_LOG10F 1 -#define HAVE_POW 1 -#define HAVE_POWF 1 -#define HAVE_SIN 1 -#define HAVE_SINF 1 -#define HAVE_SQRT 1 -#define HAVE_SQRTF 1 -#define HAVE_TAN 1 -#define HAVE_TANF 1 -#if defined(_MSC_VER) -/* These functions were added with the VC++ 2013 C runtime library */ -#if _MSC_VER >= 1800 -#define HAVE_STRTOLL 1 -#define HAVE_VSSCANF 1 -#define HAVE_SCALBN 1 -#define HAVE_SCALBNF 1 -#endif -/* This function is available with at least the VC++ 2008 C runtime library */ -#if _MSC_VER >= 1400 -#define HAVE__FSEEKI64 1 -#endif -#endif -#if !defined(_MSC_VER) || defined(_USE_MATH_DEFINES) -#define HAVE_M_PI 1 -#endif -#else -#define HAVE_STDARG_H 1 -#define HAVE_STDDEF_H 1 -#endif - -/* Enable various audio drivers */ -#define SDL_AUDIO_DRIVER_WASAPI 1 -#define SDL_AUDIO_DRIVER_DSOUND 1 -#define SDL_AUDIO_DRIVER_WINMM 1 -#define SDL_AUDIO_DRIVER_DISK 1 -#define SDL_AUDIO_DRIVER_DUMMY 1 - -/* Enable various input drivers */ -#define SDL_JOYSTICK_DINPUT 1 -#define SDL_JOYSTICK_XINPUT 1 -#define SDL_JOYSTICK_HIDAPI 1 -#define SDL_HAPTIC_DINPUT 1 -#define SDL_HAPTIC_XINPUT 1 - -/* Enable the dummy sensor driver */ -#define SDL_SENSOR_DUMMY 1 - -/* Enable various shared object loading systems */ -#define SDL_LOADSO_WINDOWS 1 - -/* Enable various threading systems */ -#define SDL_THREAD_WINDOWS 1 - -/* Enable various timer systems */ -#define SDL_TIMER_WINDOWS 1 - -/* Enable various video drivers */ -#define SDL_VIDEO_DRIVER_DUMMY 1 -#define SDL_VIDEO_DRIVER_WINDOWS 1 - -#ifndef SDL_VIDEO_RENDER_D3D -#define SDL_VIDEO_RENDER_D3D 1 -#endif -#ifndef SDL_VIDEO_RENDER_D3D11 -#define SDL_VIDEO_RENDER_D3D11 0 -#endif - -/* Enable OpenGL support */ -#ifndef SDL_VIDEO_OPENGL -#define SDL_VIDEO_OPENGL 1 -#endif -#ifndef SDL_VIDEO_OPENGL_WGL -#define SDL_VIDEO_OPENGL_WGL 1 -#endif -#ifndef SDL_VIDEO_RENDER_OGL -#define SDL_VIDEO_RENDER_OGL 1 -#endif -#ifndef SDL_VIDEO_RENDER_OGL_ES2 -#define SDL_VIDEO_RENDER_OGL_ES2 1 -#endif -#ifndef SDL_VIDEO_OPENGL_ES2 -#define SDL_VIDEO_OPENGL_ES2 1 -#endif -#ifndef SDL_VIDEO_OPENGL_EGL -#define SDL_VIDEO_OPENGL_EGL 1 -#endif - -/* Enable Vulkan support */ -#define SDL_VIDEO_VULKAN 1 - -/* Enable system power support */ -#define SDL_POWER_WINDOWS 1 - -/* Enable filesystem support */ -#define SDL_FILESYSTEM_WINDOWS 1 - -/* Enable assembly routines (Win64 doesn't have inline asm) */ -#ifndef _WIN64 -#define SDL_ASSEMBLY_ROUTINES 1 -#endif - -#endif /* SDL_config_windows_h_ */ +#endif /* SDL_config_h_ */ diff --git a/libs/windows/include/SDL_config_android.h b/libs/windows/include/SDL_config_android.h index 361bad8b..471edb4b 100644 --- a/libs/windows/include/SDL_config_android.h +++ b/libs/windows/include/SDL_config_android.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2017 Sam Lantinga + Copyright (C) 1997-2020 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -35,16 +35,17 @@ #define HAVE_GCC_ATOMICS 1 -#define HAVE_ALLOCA_H 1 -#define HAVE_SYS_TYPES_H 1 -#define HAVE_STDIO_H 1 #define STDC_HEADERS 1 -#define HAVE_STRING_H 1 -#define HAVE_INTTYPES_H 1 -#define HAVE_STDINT_H 1 +#define HAVE_ALLOCA_H 1 #define HAVE_CTYPE_H 1 +#define HAVE_INTTYPES_H 1 +#define HAVE_LIMITS_H 1 #define HAVE_MATH_H 1 #define HAVE_SIGNAL_H 1 +#define HAVE_STDINT_H 1 +#define HAVE_STDIO_H 1 +#define HAVE_STRING_H 1 +#define HAVE_SYS_TYPES_H 1 /* C library functions */ #define HAVE_MALLOC 1 @@ -67,10 +68,10 @@ #define HAVE_STRLEN 1 #define HAVE_STRLCPY 1 #define HAVE_STRLCAT 1 -#define HAVE_STRDUP 1 #define HAVE_STRCHR 1 #define HAVE_STRRCHR 1 #define HAVE_STRSTR 1 +#define HAVE_STRTOK_R 1 #define HAVE_STRTOL 1 #define HAVE_STRTOUL 1 #define HAVE_STRTOLL 1 @@ -84,20 +85,36 @@ #define HAVE_STRNCASECMP 1 #define HAVE_VSSCANF 1 #define HAVE_VSNPRINTF 1 -#define HAVE_M_PI 1 +#define HAVE_ACOS 1 +#define HAVE_ACOSF 1 +#define HAVE_ASIN 1 +#define HAVE_ASINF 1 #define HAVE_ATAN 1 +#define HAVE_ATANF 1 #define HAVE_ATAN2 1 -#define HAVE_ACOS 1 -#define HAVE_ASIN 1 +#define HAVE_ATAN2F 1 #define HAVE_CEIL 1 +#define HAVE_CEILF 1 #define HAVE_COPYSIGN 1 +#define HAVE_COPYSIGNF 1 #define HAVE_COS 1 #define HAVE_COSF 1 +#define HAVE_EXP 1 +#define HAVE_EXPF 1 #define HAVE_FABS 1 +#define HAVE_FABSF 1 #define HAVE_FLOOR 1 +#define HAVE_FLOORF 1 +#define HAVE_FMOD 1 +#define HAVE_FMODF 1 #define HAVE_LOG 1 +#define HAVE_LOGF 1 +#define HAVE_LOG10 1 +#define HAVE_LOG10F 1 #define HAVE_POW 1 +#define HAVE_POWF 1 #define HAVE_SCALBN 1 +#define HAVE_SCALBNF 1 #define HAVE_SIN 1 #define HAVE_SINF 1 #define HAVE_SQRT 1 @@ -108,17 +125,23 @@ #define HAVE_SETJMP 1 #define HAVE_NANOSLEEP 1 #define HAVE_SYSCONF 1 -#define HAVE_CLOCK_GETTIME 1 +#define HAVE_CLOCK_GETTIME 1 #define SIZEOF_VOIDP 4 /* Enable various audio drivers */ #define SDL_AUDIO_DRIVER_ANDROID 1 +#define SDL_AUDIO_DRIVER_OPENSLES 1 #define SDL_AUDIO_DRIVER_DUMMY 1 /* Enable various input drivers */ #define SDL_JOYSTICK_ANDROID 1 -#define SDL_HAPTIC_ANDROID 1 +#define SDL_JOYSTICK_HIDAPI 1 +#define SDL_JOYSTICK_VIRTUAL 1 +#define SDL_HAPTIC_ANDROID 1 + +/* Enable sensor driver */ +#define SDL_SENSOR_ANDROID 1 /* Enable various shared object loading systems */ #define SDL_LOADSO_DLOPEN 1 diff --git a/libs/windows/include/SDL_config_iphoneos.h b/libs/windows/include/SDL_config_iphoneos.h index deea0304..e9cf0171 100644 --- a/libs/windows/include/SDL_config_iphoneos.h +++ b/libs/windows/include/SDL_config_iphoneos.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2017 Sam Lantinga + Copyright (C) 1997-2020 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -33,16 +33,19 @@ #define HAVE_GCC_ATOMICS 1 -#define HAVE_ALLOCA_H 1 -#define HAVE_SYS_TYPES_H 1 -#define HAVE_STDIO_H 1 #define STDC_HEADERS 1 -#define HAVE_STRING_H 1 -#define HAVE_INTTYPES_H 1 -#define HAVE_STDINT_H 1 +#define HAVE_ALLOCA_H 1 #define HAVE_CTYPE_H 1 +#define HAVE_INTTYPES_H 1 +#define HAVE_LIMITS_H 1 #define HAVE_MATH_H 1 #define HAVE_SIGNAL_H 1 +#define HAVE_STDINT_H 1 +#define HAVE_STDIO_H 1 +#define HAVE_STRING_H 1 +#define HAVE_SYS_TYPES_H 1 +/* The libunwind functions are only available on x86 */ +/* #undef HAVE_LIBUNWIND_H */ /* C library functions */ #define HAVE_MALLOC 1 @@ -65,10 +68,10 @@ #define HAVE_STRLEN 1 #define HAVE_STRLCPY 1 #define HAVE_STRLCAT 1 -#define HAVE_STRDUP 1 #define HAVE_STRCHR 1 #define HAVE_STRRCHR 1 #define HAVE_STRSTR 1 +#define HAVE_STRTOK_R 1 #define HAVE_STRTOL 1 #define HAVE_STRTOUL 1 #define HAVE_STRTOLL 1 @@ -83,19 +86,36 @@ #define HAVE_VSSCANF 1 #define HAVE_VSNPRINTF 1 #define HAVE_M_PI 1 +#define HAVE_ACOS 1 +#define HAVE_ACOSF 1 +#define HAVE_ASIN 1 +#define HAVE_ASINF 1 #define HAVE_ATAN 1 +#define HAVE_ATANF 1 #define HAVE_ATAN2 1 -#define HAVE_ACOS 1 -#define HAVE_ASIN 1 +#define HAVE_ATAN2F 1 #define HAVE_CEIL 1 +#define HAVE_CEILF 1 #define HAVE_COPYSIGN 1 +#define HAVE_COPYSIGNF 1 #define HAVE_COS 1 #define HAVE_COSF 1 +#define HAVE_EXP 1 +#define HAVE_EXPF 1 #define HAVE_FABS 1 +#define HAVE_FABSF 1 #define HAVE_FLOOR 1 +#define HAVE_FLOORF 1 +#define HAVE_FMOD 1 +#define HAVE_FMODF 1 #define HAVE_LOG 1 +#define HAVE_LOGF 1 +#define HAVE_LOG10 1 +#define HAVE_LOG10F 1 #define HAVE_POW 1 +#define HAVE_POWF 1 #define HAVE_SCALBN 1 +#define HAVE_SCALBNF 1 #define HAVE_SIN 1 #define HAVE_SINF 1 #define HAVE_SQRT 1 @@ -117,7 +137,16 @@ #define SDL_HAPTIC_DUMMY 1 /* Enable MFi joystick support */ +/*#define SDL_JOYSTICK_HIDAPI 1*/ #define SDL_JOYSTICK_MFI 1 +#define SDL_JOYSTICK_VIRTUAL 1 + +#ifdef __TVOS__ +#define SDL_SENSOR_DUMMY 1 +#else +/* Enable the CoreMotion sensor driver */ +#define SDL_SENSOR_COREMOTION 1 +#endif /* Enable Unix style SO loading */ #define SDL_LOADSO_DLOPEN 1 @@ -133,17 +162,29 @@ #define SDL_VIDEO_DRIVER_UIKIT 1 #define SDL_VIDEO_DRIVER_DUMMY 1 -/* enable OpenGL ES */ +/* Enable OpenGL ES */ #define SDL_VIDEO_OPENGL_ES2 1 #define SDL_VIDEO_OPENGL_ES 1 #define SDL_VIDEO_RENDER_OGL_ES 1 #define SDL_VIDEO_RENDER_OGL_ES2 1 -/* Enable Vulkan support */ -#if !TARGET_OS_SIMULATOR && !TARGET_CPU_ARM // Only 64-bit devices have Metal -#define SDL_VIDEO_VULKAN 1 +/* Metal supported on 64-bit devices running iOS 8.0 and tvOS 9.0 and newer */ +#if !TARGET_OS_SIMULATOR && !TARGET_CPU_ARM && ((__IPHONE_OS_VERSION_MIN_REQUIRED >= 80000) || (__TV_OS_VERSION_MIN_REQUIRED >= 90000)) +#define SDL_PLATFORM_SUPPORTS_METAL 1 #else -#define SDL_VIDEO_VULKAN 0 +#define SDL_PLATFORM_SUPPORTS_METAL 0 +#endif + +#if SDL_PLATFORM_SUPPORTS_METAL +#define SDL_VIDEO_RENDER_METAL 1 +#endif + +#if SDL_PLATFORM_SUPPORTS_METAL +#define SDL_VIDEO_VULKAN 1 +#endif + +#if SDL_PLATFORM_SUPPORTS_METAL +#define SDL_VIDEO_METAL 1 #endif /* Enable system power support */ diff --git a/libs/windows/include/SDL_config_macosx.h b/libs/windows/include/SDL_config_macosx.h index 9b098995..42cba74f 100644 --- a/libs/windows/include/SDL_config_macosx.h +++ b/libs/windows/include/SDL_config_macosx.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2017 Sam Lantinga + Copyright (C) 1997-2020 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -37,16 +37,19 @@ #endif /* Useful headers */ -#define HAVE_ALLOCA_H 1 -#define HAVE_SYS_TYPES_H 1 -#define HAVE_STDIO_H 1 #define STDC_HEADERS 1 -#define HAVE_STRING_H 1 -#define HAVE_INTTYPES_H 1 -#define HAVE_STDINT_H 1 +#define HAVE_ALLOCA_H 1 #define HAVE_CTYPE_H 1 +#define HAVE_FLOAT_H 1 +#define HAVE_INTTYPES_H 1 +#define HAVE_LIMITS_H 1 #define HAVE_MATH_H 1 #define HAVE_SIGNAL_H 1 +#define HAVE_STDINT_H 1 +#define HAVE_STDIO_H 1 +#define HAVE_STRING_H 1 +#define HAVE_SYS_TYPES_H 1 +#define HAVE_LIBUNWIND_H 1 /* C library functions */ #define HAVE_MALLOC 1 @@ -68,10 +71,10 @@ #define HAVE_STRLEN 1 #define HAVE_STRLCPY 1 #define HAVE_STRLCAT 1 -#define HAVE_STRDUP 1 #define HAVE_STRCHR 1 #define HAVE_STRRCHR 1 #define HAVE_STRSTR 1 +#define HAVE_STRTOK_R 1 #define HAVE_STRTOL 1 #define HAVE_STRTOUL 1 #define HAVE_STRTOLL 1 @@ -85,15 +88,37 @@ #define HAVE_STRNCASECMP 1 #define HAVE_VSSCANF 1 #define HAVE_VSNPRINTF 1 +#define HAVE_M_PI 1 +#define HAVE_ACOS 1 +#define HAVE_ACOSF 1 +#define HAVE_ASIN 1 +#define HAVE_ASINF 1 +#define HAVE_ATAN 1 +#define HAVE_ATANF 1 +#define HAVE_ATAN2 1 +#define HAVE_ATAN2F 1 #define HAVE_CEIL 1 +#define HAVE_CEILF 1 #define HAVE_COPYSIGN 1 +#define HAVE_COPYSIGNF 1 #define HAVE_COS 1 #define HAVE_COSF 1 +#define HAVE_EXP 1 +#define HAVE_EXPF 1 #define HAVE_FABS 1 +#define HAVE_FABSF 1 #define HAVE_FLOOR 1 +#define HAVE_FLOORF 1 +#define HAVE_FMOD 1 +#define HAVE_FMODF 1 #define HAVE_LOG 1 +#define HAVE_LOGF 1 +#define HAVE_LOG10 1 +#define HAVE_LOG10F 1 #define HAVE_POW 1 +#define HAVE_POWF 1 #define HAVE_SCALBN 1 +#define HAVE_SCALBNF 1 #define HAVE_SIN 1 #define HAVE_SINF 1 #define HAVE_SQRT 1 @@ -105,10 +130,8 @@ #define HAVE_NANOSLEEP 1 #define HAVE_SYSCONF 1 #define HAVE_SYSCTLBYNAME 1 -#define HAVE_ATAN 1 -#define HAVE_ATAN2 1 -#define HAVE_ACOS 1 -#define HAVE_ASIN 1 + +#define HAVE_GCC_ATOMICS 1 /* Enable various audio drivers */ #define SDL_AUDIO_DRIVER_COREAUDIO 1 @@ -116,9 +139,14 @@ #define SDL_AUDIO_DRIVER_DUMMY 1 /* Enable various input drivers */ +#define SDL_JOYSTICK_HIDAPI 1 #define SDL_JOYSTICK_IOKIT 1 +#define SDL_JOYSTICK_VIRTUAL 1 #define SDL_HAPTIC_IOKIT 1 +/* Enable the dummy sensor driver */ +#define SDL_SENSOR_DUMMY 1 + /* Enable various shared object loading systems */ #define SDL_LOADSO_DLOPEN 1 @@ -133,13 +161,13 @@ #define SDL_VIDEO_DRIVER_COCOA 1 #define SDL_VIDEO_DRIVER_DUMMY 1 #undef SDL_VIDEO_DRIVER_X11 -#define SDL_VIDEO_DRIVER_X11_DYNAMIC "/usr/X11R6/lib/libX11.6.dylib" -#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XEXT "/usr/X11R6/lib/libXext.6.dylib" -#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XINERAMA "/usr/X11R6/lib/libXinerama.1.dylib" -#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XINPUT2 "/usr/X11R6/lib/libXi.6.dylib" -#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XRANDR "/usr/X11R6/lib/libXrandr.2.dylib" -#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XSS "/usr/X11R6/lib/libXss.1.dylib" -#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XVIDMODE "/usr/X11R6/lib/libXxf86vm.1.dylib" +#define SDL_VIDEO_DRIVER_X11_DYNAMIC "/opt/X11/lib/libX11.6.dylib" +#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XEXT "/opt/X11/lib/libXext.6.dylib" +#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XINERAMA "/opt/X11/lib/libXinerama.1.dylib" +#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XINPUT2 "/opt/X11/lib/libXi.6.dylib" +#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XRANDR "/opt/X11/lib/libXrandr.2.dylib" +#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XSS "/opt/X11/lib/libXss.1.dylib" +#define SDL_VIDEO_DRIVER_X11_DYNAMIC_XVIDMODE "/opt/X11/lib/libXxf86vm.1.dylib" #define SDL_VIDEO_DRIVER_X11_XDBE 1 #define SDL_VIDEO_DRIVER_X11_XINERAMA 1 #define SDL_VIDEO_DRIVER_X11_XRANDR 1 @@ -163,10 +191,35 @@ #define SDL_VIDEO_RENDER_OGL 1 #endif +#ifndef SDL_VIDEO_RENDER_OGL_ES2 +#define SDL_VIDEO_RENDER_OGL_ES2 1 +#endif + +/* Metal only supported on 64-bit architectures with 10.11+ */ +#if TARGET_CPU_X86_64 && (MAC_OS_X_VERSION_MAX_ALLOWED >= 101100) +#define SDL_PLATFORM_SUPPORTS_METAL 1 +#else +#define SDL_PLATFORM_SUPPORTS_METAL 0 +#endif + +#ifndef SDL_VIDEO_RENDER_METAL +#if SDL_PLATFORM_SUPPORTS_METAL +#define SDL_VIDEO_RENDER_METAL 1 +#else +#define SDL_VIDEO_RENDER_METAL 0 +#endif +#endif + /* Enable OpenGL support */ #ifndef SDL_VIDEO_OPENGL #define SDL_VIDEO_OPENGL 1 #endif +#ifndef SDL_VIDEO_OPENGL_ES2 +#define SDL_VIDEO_OPENGL_ES2 1 +#endif +#ifndef SDL_VIDEO_OPENGL_EGL +#define SDL_VIDEO_OPENGL_EGL 1 +#endif #ifndef SDL_VIDEO_OPENGL_CGL #define SDL_VIDEO_OPENGL_CGL 1 #endif @@ -174,12 +227,21 @@ #define SDL_VIDEO_OPENGL_GLX 1 #endif -/* Enable Vulkan support */ -/* Metal/MoltenVK/Vulkan only supported on 64-bit architectures with 10.11+ */ -#if TARGET_CPU_X86_64 && (MAC_OS_X_VERSION_MAX_ALLOWED >= 101100) +/* Enable Vulkan and Metal support */ +#ifndef SDL_VIDEO_VULKAN +#if SDL_PLATFORM_SUPPORTS_METAL #define SDL_VIDEO_VULKAN 1 #else -#define SDL_VIDEO_VULKAN 0 +#define SDL_VIDEO_VULKAN 0 +#endif +#endif + +#ifndef SDL_VIDEO_METAL +#if SDL_PLATFORM_SUPPORTS_METAL +#define SDL_VIDEO_METAL 1 +#else +#define SDL_VIDEO_METAL 0 +#endif #endif /* Enable system power support */ diff --git a/libs/windows/include/SDL_config_minimal.h b/libs/windows/include/SDL_config_minimal.h index 31127006..b9c39584 100644 --- a/libs/windows/include/SDL_config_minimal.h +++ b/libs/windows/include/SDL_config_minimal.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2017 Sam Lantinga + Copyright (C) 1997-2020 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -64,6 +64,9 @@ typedef unsigned long uintptr_t; /* Enable the stub haptic driver (src/haptic/dummy/\*.c) */ #define SDL_HAPTIC_DISABLED 1 +/* Enable the stub sensor driver (src/sensor/dummy/\*.c) */ +#define SDL_SENSOR_DISABLED 1 + /* Enable the stub shared object loader (src/loadso/dummy/\*.c) */ #define SDL_LOADSO_DISABLED 1 diff --git a/libs/windows/include/SDL_config_pandora.h b/libs/windows/include/SDL_config_pandora.h index ea62fe59..6328b962 100644 --- a/libs/windows/include/SDL_config_pandora.h +++ b/libs/windows/include/SDL_config_pandora.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2017 Sam Lantinga + Copyright (C) 1997-2020 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -36,22 +36,24 @@ #define SDL_BYTEORDER 1234 -#define HAVE_ALLOCA_H 1 -#define HAVE_SYS_TYPES_H 1 -#define HAVE_STDIO_H 1 #define STDC_HEADERS 1 -#define HAVE_STDLIB_H 1 -#define HAVE_STDARG_H 1 -#define HAVE_MALLOC_H 1 -#define HAVE_MEMORY_H 1 -#define HAVE_STRING_H 1 -#define HAVE_STRINGS_H 1 -#define HAVE_INTTYPES_H 1 -#define HAVE_STDINT_H 1 +#define HAVE_ALLOCA_H 1 #define HAVE_CTYPE_H 1 -#define HAVE_MATH_H 1 #define HAVE_ICONV_H 1 +#define HAVE_INTTYPES_H 1 +#define HAVE_LIMITS_H 1 +#define HAVE_MALLOC_H 1 +#define HAVE_MATH_H 1 +#define HAVE_MEMORY_H 1 #define HAVE_SIGNAL_H 1 +#define HAVE_STDARG_H 1 +#define HAVE_STDINT_H 1 +#define HAVE_STDIO_H 1 +#define HAVE_STDLIB_H 1 +#define HAVE_STRINGS_H 1 +#define HAVE_STRING_H 1 +#define HAVE_SYS_TYPES_H 1 + #define HAVE_MALLOC 1 #define HAVE_CALLOC 1 #define HAVE_REALLOC 1 @@ -68,7 +70,6 @@ #define HAVE_MEMCPY 1 #define HAVE_MEMMOVE 1 #define HAVE_STRLEN 1 -#define HAVE_STRDUP 1 #define HAVE_STRCHR 1 #define HAVE_STRRCHR 1 #define HAVE_STRSTR 1 @@ -89,9 +90,11 @@ #define HAVE_COPYSIGN 1 #define HAVE_COS 1 #define HAVE_COSF 1 +#define HAVE_EXP 1 #define HAVE_FABS 1 #define HAVE_FLOOR 1 #define HAVE_LOG 1 +#define HAVE_LOG10 1 #define HAVE_SCALBN 1 #define HAVE_SIN 1 #define HAVE_SINF 1 @@ -109,8 +112,11 @@ #define SDL_INPUT_LINUXEV 1 #define SDL_INPUT_TSLIB 1 #define SDL_JOYSTICK_LINUX 1 +#define SDL_JOYSTICK_VIRTUAL 1 #define SDL_HAPTIC_LINUX 1 +#define SDL_SENSOR_DUMMY 1 + #define SDL_LOADSO_DLOPEN 1 #define SDL_THREAD_PTHREAD 1 diff --git a/libs/windows/include/SDL_config_psp.h b/libs/windows/include/SDL_config_psp.h index 28efb4c5..235fe08e 100644 --- a/libs/windows/include/SDL_config_psp.h +++ b/libs/windows/include/SDL_config_psp.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2017 Sam Lantinga + Copyright (C) 1997-2020 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -33,16 +33,17 @@ #define HAVE_GCC_ATOMICS 1 -#define HAVE_ALLOCA_H 1 -#define HAVE_SYS_TYPES_H 1 -#define HAVE_STDIO_H 1 #define STDC_HEADERS 1 -#define HAVE_STRING_H 1 -#define HAVE_INTTYPES_H 1 -#define HAVE_STDINT_H 1 +#define HAVE_ALLOCA_H 1 #define HAVE_CTYPE_H 1 +#define HAVE_INTTYPES_H 1 +#define HAVE_LIMITS_H 1 #define HAVE_MATH_H 1 #define HAVE_SIGNAL_H 1 +#define HAVE_STDINT_H 1 +#define HAVE_STDIO_H 1 +#define HAVE_STRING_H 1 +#define HAVE_SYS_TYPES_H 1 /* C library functions */ #define HAVE_MALLOC 1 @@ -65,7 +66,6 @@ #define HAVE_STRLEN 1 #define HAVE_STRLCPY 1 #define HAVE_STRLCAT 1 -#define HAVE_STRDUP 1 #define HAVE_STRCHR 1 #define HAVE_STRRCHR 1 #define HAVE_STRSTR 1 @@ -83,19 +83,36 @@ #define HAVE_VSSCANF 1 #define HAVE_VSNPRINTF 1 #define HAVE_M_PI 1 +#define HAVE_ACOS 1 +#define HAVE_ACOSF 1 +#define HAVE_ASIN 1 +#define HAVE_ASINF 1 #define HAVE_ATAN 1 +#define HAVE_ATANF 1 #define HAVE_ATAN2 1 -#define HAVE_ACOS 1 -#define HAVE_ASIN 1 +#define HAVE_ATAN2F 1 #define HAVE_CEIL 1 +#define HAVE_CEILF 1 #define HAVE_COPYSIGN 1 +#define HAVE_COPYSIGNF 1 #define HAVE_COS 1 #define HAVE_COSF 1 +#define HAVE_EXP 1 +#define HAVE_EXPF 1 #define HAVE_FABS 1 +#define HAVE_FABSF 1 #define HAVE_FLOOR 1 +#define HAVE_FLOORF 1 +#define HAVE_FMOD 1 +#define HAVE_FMODF 1 #define HAVE_LOG 1 +#define HAVE_LOGF 1 +#define HAVE_LOG10 1 +#define HAVE_LOG10F 1 #define HAVE_POW 1 +#define HAVE_POWF 1 #define HAVE_SCALBN 1 +#define HAVE_SCALBNF 1 #define HAVE_SIN 1 #define HAVE_SINF 1 #define HAVE_SQRT 1 @@ -111,22 +128,26 @@ /* PSP isn't that sophisticated */ #define LACKS_SYS_MMAN_H 1 -/* Enable the stub thread support (src/thread/psp/\*.c) */ +/* Enable the PSP thread support (src/thread/psp/\*.c) */ #define SDL_THREAD_PSP 1 -/* Enable the stub timer support (src/timer/psp/\*.c) */ +/* Enable the PSP timer support (src/timer/psp/\*.c) */ #define SDL_TIMERS_PSP 1 -/* Enable the stub joystick driver (src/joystick/psp/\*.c) */ +/* Enable the PSP joystick driver (src/joystick/psp/\*.c) */ #define SDL_JOYSTICK_PSP 1 +#define SDL_JOYSTICK_VIRTUAL 1 -/* Enable the stub audio driver (src/audio/psp/\*.c) */ +/* Enable the dummy sensor driver */ +#define SDL_SENSOR_DUMMY 1 + +/* Enable the PSP audio driver (src/audio/psp/\*.c) */ #define SDL_AUDIO_DRIVER_PSP 1 -/* PSP video dirver */ +/* PSP video driver */ #define SDL_VIDEO_DRIVER_PSP 1 -/* PSP render dirver */ +/* PSP render driver */ #define SDL_VIDEO_RENDER_PSP 1 #define SDL_POWER_PSP 1 diff --git a/libs/windows/include/SDL_config_windows.h b/libs/windows/include/SDL_config_windows.h index 2456c843..6eda8d45 100644 --- a/libs/windows/include/SDL_config_windows.h +++ b/libs/windows/include/SDL_config_windows.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2017 Sam Lantinga + Copyright (C) 1997-2020 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -82,16 +82,20 @@ typedef unsigned int uintptr_t; #define HAVE_DSOUND_H 1 #define HAVE_DXGI_H 1 #define HAVE_XINPUT_H 1 +#define HAVE_MMDEVICEAPI_H 1 +#define HAVE_AUDIOCLIENT_H 1 /* This is disabled by default to avoid C runtime dependencies and manifest requirements */ #ifdef HAVE_LIBC /* Useful headers */ -#define HAVE_STDIO_H 1 #define STDC_HEADERS 1 -#define HAVE_STRING_H 1 #define HAVE_CTYPE_H 1 +#define HAVE_FLOAT_H 1 +#define HAVE_LIMITS_H 1 #define HAVE_MATH_H 1 #define HAVE_SIGNAL_H 1 +#define HAVE_STDIO_H 1 +#define HAVE_STRING_H 1 /* C library functions */ #define HAVE_MALLOC 1 @@ -107,13 +111,19 @@ typedef unsigned int uintptr_t; #define HAVE_MEMCMP 1 #define HAVE_STRLEN 1 #define HAVE__STRREV 1 -#define HAVE__STRUPR 1 -#define HAVE__STRLWR 1 +/* These functions have security warnings, so we won't use them */ +/* #undef HAVE__STRUPR */ +/* #undef HAVE__STRLWR */ #define HAVE_STRCHR 1 #define HAVE_STRRCHR 1 #define HAVE_STRSTR 1 -#define HAVE__LTOA 1 -#define HAVE__ULTOA 1 +/* #undef HAVE_STRTOK_R */ +#if defined(_MSC_VER) +#define HAVE_STRTOK_S 1 +#endif +/* These functions have security warnings, so we won't use them */ +/* #undef HAVE__LTOA */ +/* #undef HAVE__ULTOA */ #define HAVE_STRTOL 1 #define HAVE_STRTOUL 1 #define HAVE_STRTOD 1 @@ -123,28 +133,50 @@ typedef unsigned int uintptr_t; #define HAVE_STRNCMP 1 #define HAVE__STRICMP 1 #define HAVE__STRNICMP 1 -#define HAVE_ATAN 1 -#define HAVE_ATAN2 1 -#define HAVE_ACOS 1 -#define HAVE_ASIN 1 -#define HAVE_CEIL 1 -#define HAVE_COS 1 -#define HAVE_COSF 1 -#define HAVE_FABS 1 -#define HAVE_FLOOR 1 -#define HAVE_LOG 1 -#define HAVE_POW 1 -#define HAVE_SIN 1 -#define HAVE_SINF 1 -#define HAVE_SQRT 1 -#define HAVE_SQRTF 1 -#define HAVE_TAN 1 -#define HAVE_TANF 1 +#define HAVE_ACOS 1 +#define HAVE_ACOSF 1 +#define HAVE_ASIN 1 +#define HAVE_ASINF 1 +#define HAVE_ATAN 1 +#define HAVE_ATANF 1 +#define HAVE_ATAN2 1 +#define HAVE_ATAN2F 1 +#define HAVE_CEILF 1 +#define HAVE__COPYSIGN 1 +#define HAVE_COS 1 +#define HAVE_COSF 1 +#define HAVE_EXP 1 +#define HAVE_EXPF 1 +#define HAVE_FABS 1 +#define HAVE_FABSF 1 +#define HAVE_FLOOR 1 +#define HAVE_FLOORF 1 +#define HAVE_FMOD 1 +#define HAVE_FMODF 1 +#define HAVE_LOG 1 +#define HAVE_LOGF 1 +#define HAVE_LOG10 1 +#define HAVE_LOG10F 1 +#define HAVE_POW 1 +#define HAVE_POWF 1 +#define HAVE_SIN 1 +#define HAVE_SINF 1 +#define HAVE_SQRT 1 +#define HAVE_SQRTF 1 +#define HAVE_TAN 1 +#define HAVE_TANF 1 +#if defined(_MSC_VER) +/* These functions were added with the VC++ 2013 C runtime library */ #if _MSC_VER >= 1800 #define HAVE_STRTOLL 1 #define HAVE_VSSCANF 1 -#define HAVE_COPYSIGN 1 #define HAVE_SCALBN 1 +#define HAVE_SCALBNF 1 +#endif +/* This function is available with at least the VC++ 2008 C runtime library */ +#if _MSC_VER >= 1400 +#define HAVE__FSEEKI64 1 +#endif #endif #if !defined(_MSC_VER) || defined(_USE_MATH_DEFINES) #define HAVE_M_PI 1 @@ -157,17 +189,25 @@ typedef unsigned int uintptr_t; /* Enable various audio drivers */ #define SDL_AUDIO_DRIVER_WASAPI 1 #define SDL_AUDIO_DRIVER_DSOUND 1 -#define SDL_AUDIO_DRIVER_XAUDIO2 0 #define SDL_AUDIO_DRIVER_WINMM 1 #define SDL_AUDIO_DRIVER_DISK 1 #define SDL_AUDIO_DRIVER_DUMMY 1 /* Enable various input drivers */ #define SDL_JOYSTICK_DINPUT 1 +#define SDL_JOYSTICK_HIDAPI 1 +//#define SDL_JOYSTICK_RAWINPUT 1 +#define SDL_JOYSTICK_VIRTUAL 1 +#if _MSC_VER >= 1911 +//#define SDL_JOYSTICK_WGI 1 /* This requires Windows SDK 10.0.16299.0 or newer */ +#endif #define SDL_JOYSTICK_XINPUT 1 #define SDL_HAPTIC_DINPUT 1 #define SDL_HAPTIC_XINPUT 1 +/* Enable the sensor driver */ +#define SDL_SENSOR_WINDOWS 1 + /* Enable various shared object loading systems */ #define SDL_LOADSO_WINDOWS 1 @@ -184,8 +224,8 @@ typedef unsigned int uintptr_t; #ifndef SDL_VIDEO_RENDER_D3D #define SDL_VIDEO_RENDER_D3D 1 #endif -#ifndef SDL_VIDEO_RENDER_D3D11 -#define SDL_VIDEO_RENDER_D3D11 0 +#if _MSC_VER >= 1911 +#define SDL_VIDEO_RENDER_D3D11 1 #endif /* Enable OpenGL support */ @@ -223,3 +263,5 @@ typedef unsigned int uintptr_t; #endif #endif /* SDL_config_windows_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/libs/windows/include/SDL_config_winrt.h b/libs/windows/include/SDL_config_winrt.h index 24f9e17f..dc936d31 100644 --- a/libs/windows/include/SDL_config_winrt.h +++ b/libs/windows/include/SDL_config_winrt.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2017 Sam Lantinga + Copyright (C) 1997-2020 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -44,7 +44,7 @@ #if !defined(_STDINT_H_) && (!defined(HAVE_STDINT_H) || !_HAVE_STDINT_H) #if defined(__GNUC__) || defined(__DMC__) || defined(__WATCOMC__) -#define HAVE_STDINT_H 1 +#define HAVE_STDINT_H 1 #elif defined(_MSC_VER) typedef signed __int8 int8_t; typedef unsigned __int8 uint8_t; @@ -97,14 +97,19 @@ typedef unsigned int uintptr_t; #if WINAPI_FAMILY != WINAPI_FAMILY_PHONE_APP #define HAVE_XINPUT_H 1 #endif + +#define HAVE_MMDEVICEAPI_H 1 +#define HAVE_AUDIOCLIENT_H 1 + #define HAVE_LIBC 1 -#define HAVE_STDIO_H 1 #define STDC_HEADERS 1 -#define HAVE_STRING_H 1 #define HAVE_CTYPE_H 1 -#define HAVE_MATH_H 1 #define HAVE_FLOAT_H 1 +#define HAVE_LIMITS_H 1 +#define HAVE_MATH_H 1 #define HAVE_SIGNAL_H 1 +#define HAVE_STDIO_H 1 +#define HAVE_STRING_H 1 /* C library functions */ #define HAVE_MALLOC 1 @@ -121,13 +126,14 @@ typedef unsigned int uintptr_t; #define HAVE_STRLEN 1 #define HAVE__STRREV 1 #define HAVE__STRUPR 1 -//#define HAVE__STRLWR 1 // TODO, WinRT: consider using _strlwr_s instead +//#define HAVE__STRLWR 1 // TODO, WinRT: consider using _strlwr_s instead #define HAVE_STRCHR 1 #define HAVE_STRRCHR 1 #define HAVE_STRSTR 1 +#define HAVE_STRTOK_S 1 //#define HAVE_ITOA 1 // TODO, WinRT: consider using _itoa_s instead -//#define HAVE__LTOA 1 // TODO, WinRT: consider using _ltoa_s instead -//#define HAVE__ULTOA 1 // TODO, WinRT: consider using _ultoa_s instead +//#define HAVE__LTOA 1 // TODO, WinRT: consider using _ltoa_s instead +//#define HAVE__ULTOA 1 // TODO, WinRT: consider using _ultoa_s instead #define HAVE_STRTOL 1 #define HAVE_STRTOUL 1 //#define HAVE_STRTOLL 1 @@ -139,44 +145,64 @@ typedef unsigned int uintptr_t; #define HAVE__STRICMP 1 #define HAVE__STRNICMP 1 #define HAVE_VSNPRINTF 1 -//#define HAVE_SSCANF 1 // TODO, WinRT: consider using sscanf_s instead +//#define HAVE_SSCANF 1 // TODO, WinRT: consider using sscanf_s instead #define HAVE_M_PI 1 -#define HAVE_ATAN 1 -#define HAVE_ATAN2 1 -#define HAVE_CEIL 1 +#define HAVE_ACOS 1 +#define HAVE_ACOSF 1 +#define HAVE_ASIN 1 +#define HAVE_ASINF 1 +#define HAVE_ATAN 1 +#define HAVE_ATANF 1 +#define HAVE_ATAN2 1 +#define HAVE_ATAN2F 1 +#define HAVE_CEIL 1 +#define HAVE_CEILF 1 #define HAVE__COPYSIGN 1 -#define HAVE_COS 1 -#define HAVE_COSF 1 -#define HAVE_FABS 1 -#define HAVE_FLOOR 1 -#define HAVE_LOG 1 -#define HAVE_POW 1 -//#define HAVE_SCALBN 1 +#define HAVE_COS 1 +#define HAVE_COSF 1 +#define HAVE_EXP 1 +#define HAVE_EXPF 1 +#define HAVE_FABS 1 +#define HAVE_FABSF 1 +#define HAVE_FLOOR 1 +#define HAVE_FLOORF 1 +#define HAVE_FMOD 1 +#define HAVE_FMODF 1 +#define HAVE_LOG 1 +#define HAVE_LOGF 1 +#define HAVE_LOG10 1 +#define HAVE_LOG10F 1 +#define HAVE_POW 1 +#define HAVE_POWF 1 #define HAVE__SCALB 1 -#define HAVE_SIN 1 -#define HAVE_SINF 1 -#define HAVE_SQRT 1 -#define HAVE_SQRTF 1 -#define HAVE_TAN 1 -#define HAVE_TANF 1 +#define HAVE_SIN 1 +#define HAVE_SINF 1 +#define HAVE_SQRT 1 +#define HAVE_SQRTF 1 +#define HAVE_TAN 1 +#define HAVE_TANF 1 #define HAVE__FSEEKI64 1 /* Enable various audio drivers */ -#define SDL_AUDIO_DRIVER_XAUDIO2 1 -#define SDL_AUDIO_DRIVER_DISK 1 -#define SDL_AUDIO_DRIVER_DUMMY 1 +#define SDL_AUDIO_DRIVER_WASAPI 1 +#define SDL_AUDIO_DRIVER_DISK 1 +#define SDL_AUDIO_DRIVER_DUMMY 1 /* Enable various input drivers */ #if WINAPI_FAMILY == WINAPI_FAMILY_PHONE_APP #define SDL_JOYSTICK_DISABLED 1 -#define SDL_HAPTIC_DISABLED 1 +#define SDL_HAPTIC_DISABLED 1 #else +#define SDL_JOYSTICK_VIRTUAL 1 #define SDL_JOYSTICK_XINPUT 1 #define SDL_HAPTIC_XINPUT 1 #endif +/* Enable the dummy sensor driver */ +#define SDL_SENSOR_DUMMY 1 + /* Enable various shared object loading systems */ -#define SDL_LOADSO_WINDOWS 1 +#define SDL_LOADSO_WINDOWS 1 /* Enable various threading systems */ #if (NTDDI_VERSION >= NTDDI_WINBLUE) @@ -187,10 +213,10 @@ typedef unsigned int uintptr_t; #endif /* Enable various timer systems */ -#define SDL_TIMER_WINDOWS 1 +#define SDL_TIMER_WINDOWS 1 /* Enable various video drivers */ -#define SDL_VIDEO_DRIVER_WINRT 1 +#define SDL_VIDEO_DRIVER_WINRT 1 #define SDL_VIDEO_DRIVER_DUMMY 1 /* Enable OpenGL ES 2.0 (via a modified ANGLE library) */ @@ -209,7 +235,7 @@ typedef unsigned int uintptr_t; /* Enable assembly routines (Win64 doesn't have inline asm) */ #ifndef _WIN64 -#define SDL_ASSEMBLY_ROUTINES 1 +#define SDL_ASSEMBLY_ROUTINES 1 #endif #endif /* SDL_config_winrt_h_ */ diff --git a/libs/windows/include/SDL_config_wiz.h b/libs/windows/include/SDL_config_wiz.h index 5bb845a0..80ca13c5 100644 --- a/libs/windows/include/SDL_config_wiz.h +++ b/libs/windows/include/SDL_config_wiz.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2017 Sam Lantinga + Copyright (C) 1997-2020 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages @@ -30,22 +30,24 @@ #define SDL_BYTEORDER 1234 -#define HAVE_ALLOCA_H 1 -#define HAVE_SYS_TYPES_H 1 -#define HAVE_STDIO_H 1 #define STDC_HEADERS 1 -#define HAVE_STDLIB_H 1 -#define HAVE_STDARG_H 1 -#define HAVE_MALLOC_H 1 -#define HAVE_MEMORY_H 1 -#define HAVE_STRING_H 1 -#define HAVE_STRINGS_H 1 -#define HAVE_INTTYPES_H 1 -#define HAVE_STDINT_H 1 +#define HAVE_ALLOCA_H 1 #define HAVE_CTYPE_H 1 -#define HAVE_MATH_H 1 #define HAVE_ICONV_H 1 +#define HAVE_INTTYPES_H 1 +#define HAVE_LIMITS_H 1 +#define HAVE_MALLOC_H 1 +#define HAVE_MATH_H 1 +#define HAVE_MEMORY_H 1 #define HAVE_SIGNAL_H 1 +#define HAVE_STDARG_H 1 +#define HAVE_STDINT_H 1 +#define HAVE_STDIO_H 1 +#define HAVE_STDLIB_H 1 +#define HAVE_STRINGS_H 1 +#define HAVE_STRING_H 1 +#define HAVE_SYS_TYPES_H 1 + #define HAVE_MALLOC 1 #define HAVE_CALLOC 1 #define HAVE_REALLOC 1 @@ -62,10 +64,10 @@ #define HAVE_MEMCPY 1 #define HAVE_MEMMOVE 1 #define HAVE_STRLEN 1 -#define HAVE_STRDUP 1 #define HAVE_STRCHR 1 #define HAVE_STRRCHR 1 #define HAVE_STRSTR 1 +#define HAVE_STRTOK_R 1 #define HAVE_STRTOL 1 #define HAVE_STRTOUL 1 #define HAVE_STRTOLL 1 @@ -79,20 +81,42 @@ #define HAVE_VSSCANF 1 #define HAVE_VSNPRINTF 1 #define HAVE_M_PI 1 -#define HAVE_CEIL 1 -#define HAVE_COPYSIGN 1 -#define HAVE_COS 1 -#define HAVE_COSF 1 -#define HAVE_FABS 1 -#define HAVE_FLOOR 1 -#define HAVE_LOG 1 +#define HAVE_ACOS 1 +#define HAVE_ACOSF 1 +#define HAVE_ASIN 1 +#define HAVE_ASINF 1 +#define HAVE_ATAN 1 +#define HAVE_ATANF 1 +#define HAVE_ATAN2 1 +#define HAVE_ATAN2F 1 +#define HAVE_CEIL 1 +#define HAVE_CEILF 1 +#define HAVE_COPYSIGN 1 +#define HAVE_COPYSIGNF 1 +#define HAVE_COS 1 +#define HAVE_COSF 1 +#define HAVE_EXP 1 +#define HAVE_EXPF 1 +#define HAVE_FABS 1 +#define HAVE_FABSF 1 +#define HAVE_FLOOR 1 +#define HAVE_FLOORF 1 +#define HAVE_FMOD 1 +#define HAVE_FMODF 1 +#define HAVE_LOG 1 +#define HAVE_LOGF 1 +#define HAVE_LOG10 1 +#define HAVE_LOG10F 1 +#define HAVE_POW 1 +#define HAVE_POWF 1 #define HAVE_SCALBN 1 -#define HAVE_SIN 1 -#define HAVE_SINF 1 -#define HAVE_SQRT 1 -#define HAVE_SQRTF 1 -#define HAVE_TAN 1 -#define HAVE_TANF 1 +#define HAVE_SCALBNF 1 +#define HAVE_SIN 1 +#define HAVE_SINF 1 +#define HAVE_SQRT 1 +#define HAVE_SQRTF 1 +#define HAVE_TAN 1 +#define HAVE_TANF 1 #define HAVE_SIGACTION 1 #define HAVE_SETJMP 1 #define HAVE_NANOSLEEP 1 @@ -104,8 +128,11 @@ #define SDL_INPUT_LINUXEV 1 #define SDL_INPUT_TSLIB 1 #define SDL_JOYSTICK_LINUX 1 +#define SDL_JOYSTICK_VIRTUAL 1 #define SDL_HAPTIC_LINUX 1 +#define SDL_SENSOR_DUMMY 1 + #define SDL_LOADSO_DLOPEN 1 #define SDL_THREAD_PTHREAD 1 diff --git a/libs/windows/include/SDL_copying.h b/libs/windows/include/SDL_copying.h index 8f60af6b..4f8a2bcd 100644 --- a/libs/windows/include/SDL_copying.h +++ b/libs/windows/include/SDL_copying.h @@ -1,6 +1,6 @@ /* Simple DirectMedia Layer - Copyright (C) 1997-2017 Sam Lantinga + Copyright (C) 1997-2020 Sam Lantinga This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages diff --git a/libs/windows/include/SDL_error.h b/libs/windows/include/SDL_error.h index aae37c0e..962d62f6 100644 --- a/libs/windows/include/SDL_error.h +++ b/libs/windows/include/SDL_error.h @@ -37,9 +37,45 @@ extern "C" { #endif /* Public functions */ -/* SDL_SetError() unconditionally returns -1. */ + + +/** + * \brief Set the error message for the current thread + * + * \return -1, there is no error handling for this function + */ extern DECLSPEC int SDLCALL SDL_SetError(SDL_PRINTF_FORMAT_STRING const char *fmt, ...) SDL_PRINTF_VARARG_FUNC(1); + +/** + * \brief Get the last error message that was set + * + * SDL API functions may set error messages and then succeed, so you should + * only use the error value if a function fails. + * + * This returns a pointer to a static buffer for convenience and should not + * be called by multiple threads simultaneously. + * + * \return a pointer to the last error message that was set + */ extern DECLSPEC const char *SDLCALL SDL_GetError(void); + +/** + * \brief Get the last error message that was set for the current thread + * + * SDL API functions may set error messages and then succeed, so you should + * only use the error value if a function fails. + * + * \param errstr A buffer to fill with the last error message that was set + * for the current thread + * \param maxlen The size of the buffer pointed to by the errstr parameter + * + * \return errstr + */ +extern DECLSPEC char * SDLCALL SDL_GetErrorMsg(char *errstr, int maxlen); + +/** + * \brief Clear the error message for the current thread + */ extern DECLSPEC void SDLCALL SDL_ClearError(void); /** diff --git a/libs/windows/include/SDL_gamecontroller.h b/libs/windows/include/SDL_gamecontroller.h index 21cc1e43..70008f74 100644 --- a/libs/windows/include/SDL_gamecontroller.h +++ b/libs/windows/include/SDL_gamecontroller.h @@ -64,7 +64,8 @@ typedef enum SDL_CONTROLLER_TYPE_XBOXONE, SDL_CONTROLLER_TYPE_PS3, SDL_CONTROLLER_TYPE_PS4, - SDL_CONTROLLER_TYPE_NINTENDO_SWITCH_PRO + SDL_CONTROLLER_TYPE_NINTENDO_SWITCH_PRO, + SDL_CONTROLLER_TYPE_VIRTUAL } SDL_GameControllerType; typedef enum diff --git a/libs/windows/include/SDL_haptic.h b/libs/windows/include/SDL_haptic.h index aa6f47fd..18c74eff 100644 --- a/libs/windows/include/SDL_haptic.h +++ b/libs/windows/include/SDL_haptic.h @@ -336,6 +336,23 @@ typedef struct _SDL_Haptic SDL_Haptic; */ #define SDL_HAPTIC_SPHERICAL 2 +/** + * \brief Uses first axis only. + * For some device with only one axis (steering wheel,...), + * SDL_HAPTIC_CARTESIAN does not work. SDL_HAPTIC_FIRST_AXIS can be used in + * this case. + * Using SDL_HAPTIC_FIRST_AXIS is equivalent to : + * \code + * SDL_HapticDirection direction; + * direction.type = SDL_HAPTIC_CARTESIAN; + * direction.dir[0] = 1; + * direction.dir[1] = 0; + * direction.dir[2] = 0; + * \endcode + * \sa SDL_HapticDirection + */ +#define SDL_HAPTIC_FIRST_AXIS 3 + /* @} *//* Direction encodings */ /* @} *//* Haptic features */ @@ -444,6 +461,7 @@ typedef struct _SDL_Haptic SDL_Haptic; * \sa SDL_HAPTIC_POLAR * \sa SDL_HAPTIC_CARTESIAN * \sa SDL_HAPTIC_SPHERICAL + * \sa SDL_HAPTIC_FIRST_AXIS * \sa SDL_HapticEffect * \sa SDL_HapticNumAxes */ diff --git a/libs/windows/include/SDL_hints.h b/libs/windows/include/SDL_hints.h index a3a53738..0c772c45 100644 --- a/libs/windows/include/SDL_hints.h +++ b/libs/windows/include/SDL_hints.h @@ -314,6 +314,17 @@ extern "C" { */ #define SDL_HINT_MOUSE_RELATIVE_SPEED_SCALE "SDL_MOUSE_RELATIVE_SPEED_SCALE" +/** + * \brief A variable controlling whether relative mouse motion is affected by renderer scaling + * + * This variable can be set to the following values: + * "0" - Relative motion is unaffected by DPI or renderer's logical size + * "1" - Relative motion is scaled according to DPI scaling and logical size + * + * By default relative mouse deltas are affected by DPI and renderer scaling + */ +#define SDL_HINT_MOUSE_RELATIVE_SCALING "SDL_MOUSE_RELATIVE_SCALING" + /** * \brief A variable controlling whether relative mouse mode is implemented using mouse warping * @@ -634,10 +645,23 @@ extern "C" { * "0" - HIDAPI driver is not used * "1" - HIDAPI driver is used * - * The default is the value of SDL_HINT_JOYSTICK_HIDAPI + * The default is "0" on Windows, otherwise the value of SDL_HINT_JOYSTICK_HIDAPI */ #define SDL_HINT_JOYSTICK_HIDAPI_XBOX "SDL_JOYSTICK_HIDAPI_XBOX" + /** + * \brief A variable controlling whether the HIDAPI driver for XBox controllers on Windows should pull correlated + * data from XInput. + * + * This variable can be set to the following values: + * "0" - HIDAPI Xbox driver will only use HIDAPI data + * "1" - HIDAPI Xbox driver will also pull data from XInput, providing better trigger axes, guide button + * presses, and rumble support + * + * The default is "1". This hint applies to any joysticks opened after setting the hint. + */ +#define SDL_HINT_JOYSTICK_HIDAPI_CORRELATE_XINPUT "SDL_JOYSTICK_HIDAPI_CORRELATE_XINPUT" + /** * \brief A variable controlling whether the HIDAPI driver for Nintendo GameCube controllers should be used. * @@ -660,6 +684,15 @@ extern "C" { */ #define SDL_HINT_ENABLE_STEAM_CONTROLLERS "SDL_ENABLE_STEAM_CONTROLLERS" + /** + * \brief A variable controlling whether the RAWINPUT joystick drivers should be used for better handling XInput-capable devices. + * + * This variable can be set to the following values: + * "0" - RAWINPUT drivers are not used + * "1" - RAWINPUT drivers are used (the default) + * + */ +#define SDL_HINT_JOYSTICK_RAWINPUT "SDL_JOYSTICK_RAWINPUT" /** * \brief If set to "0" then never set the top most bit on a SDL Window, even if the video mode expects it. @@ -997,7 +1030,8 @@ extern "C" { /** * \brief Tell SDL not to catch the SIGINT or SIGTERM signals. * - * This hint only applies to Unix-like platforms. + * This hint only applies to Unix-like platforms, and should set before + * any calls to SDL_Init() * * The variable can be set to the following values: * "0" - SDL will install a SIGINT and SIGTERM handler, and when it diff --git a/libs/windows/include/SDL_joystick.h b/libs/windows/include/SDL_joystick.h index a0dd7205..b638d1cb 100644 --- a/libs/windows/include/SDL_joystick.h +++ b/libs/windows/include/SDL_joystick.h @@ -105,6 +105,7 @@ typedef enum SDL_JOYSTICK_POWER_MAX } SDL_JoystickPowerLevel; + /* Function prototypes */ /** @@ -199,6 +200,40 @@ extern DECLSPEC SDL_Joystick *SDLCALL SDL_JoystickFromInstanceID(SDL_JoystickID */ extern DECLSPEC SDL_Joystick *SDLCALL SDL_JoystickFromPlayerIndex(int player_index); +/** + * Attaches a new virtual joystick. + * Returns the joystick's device index, or -1 if an error occurred. + */ +extern DECLSPEC int SDLCALL SDL_JoystickAttachVirtual(SDL_JoystickType type, + int naxes, + int nbuttons, + int nhats); + +/** + * Detaches a virtual joystick + * Returns 0 on success, or -1 if an error occurred. + */ +extern DECLSPEC int SDLCALL SDL_JoystickDetachVirtual(int device_index); + +/** + * Indicates whether or not a virtual-joystick is at a given device index. + */ +extern DECLSPEC SDL_bool SDLCALL SDL_JoystickIsVirtual(int device_index); + +/** + * Set values on an opened, virtual-joystick's controls. + * Please note that values set here will not be applied until the next + * call to SDL_JoystickUpdate, which can either be called directly, + * or can be called indirectly through various other SDL APIS, + * including, but not limited to the following: SDL_PollEvent, + * SDL_PumpEvents, SDL_WaitEventTimeout, SDL_WaitEvent. + * + * Returns 0 on success, -1 on error. + */ +extern DECLSPEC int SDLCALL SDL_JoystickSetVirtualAxis(SDL_Joystick * joystick, int axis, Sint16 value); +extern DECLSPEC int SDLCALL SDL_JoystickSetVirtualButton(SDL_Joystick * joystick, int button, Uint8 value); +extern DECLSPEC int SDLCALL SDL_JoystickSetVirtualHat(SDL_Joystick * joystick, int hat, Uint8 value); + /** * Return the name for this currently opened joystick. * If no name can be found, this function returns NULL. diff --git a/libs/windows/include/SDL_metal.h b/libs/windows/include/SDL_metal.h index 3b7eb18a..f9673577 100644 --- a/libs/windows/include/SDL_metal.h +++ b/libs/windows/include/SDL_metal.h @@ -55,18 +55,13 @@ typedef void *SDL_MetalView; * On macOS, this does *not* associate a MTLDevice with the CAMetalLayer on its * own. It is up to user code to do that. * - * The returned handle can be casted directly to a NSView or UIView, and the - * CAMetalLayer can be accessed from the view's 'layer' property. + * The returned handle can be casted directly to a NSView or UIView. + * To access the backing CAMetalLayer, call SDL_Metal_GetLayer(). * - * \code - * SDL_MetalView metalview = SDL_Metal_CreateView(window); - * UIView *uiview = (__bridge UIView *)metalview; - * CAMetalLayer *metallayer = (CAMetalLayer *)uiview.layer; - * // [...] - * SDL_Metal_DestroyView(metalview); - * \endcode + * \note \a window must be created with the SDL_WINDOW_METAL flag. * * \sa SDL_Metal_DestroyView + * \sa SDL_Metal_GetLayer */ extern DECLSPEC SDL_MetalView SDLCALL SDL_Metal_CreateView(SDL_Window * window); @@ -80,6 +75,37 @@ extern DECLSPEC SDL_MetalView SDLCALL SDL_Metal_CreateView(SDL_Window * window); */ extern DECLSPEC void SDLCALL SDL_Metal_DestroyView(SDL_MetalView view); +/** + * \brief Get a pointer to the backing CAMetalLayer for the given view. + * + * \sa SDL_MetalCreateView + */ +extern DECLSPEC void *SDLCALL SDL_Metal_GetLayer(SDL_MetalView view); + +/** + * \brief Get the size of a window's underlying drawable in pixels (for use + * with setting viewport, scissor & etc). + * + * \param window SDL_Window from which the drawable size should be queried + * \param w Pointer to variable for storing the width in pixels, + * may be NULL + * \param h Pointer to variable for storing the height in pixels, + * may be NULL + * + * This may differ from SDL_GetWindowSize() if we're rendering to a high-DPI + * drawable, i.e. the window was created with SDL_WINDOW_ALLOW_HIGHDPI on a + * platform with high-DPI support (Apple calls this "Retina"), and not disabled + * by the \c SDL_HINT_VIDEO_HIGHDPI_DISABLED hint. + * + * \note On macOS high-DPI support must be enabled for an application by + * setting NSHighResolutionCapable to true in its Info.plist. + * + * \sa SDL_GetWindowSize() + * \sa SDL_CreateWindow() + */ +extern DECLSPEC void SDLCALL SDL_Metal_GetDrawableSize(SDL_Window* window, int *w, + int *h); + /* @} *//* Metal support functions */ /* Ends C function definitions when using C++ */ diff --git a/libs/windows/include/SDL_revision.h b/libs/windows/include/SDL_revision.h index dfbc057f..d70fd694 100644 --- a/libs/windows/include/SDL_revision.h +++ b/libs/windows/include/SDL_revision.h @@ -1,2 +1,2 @@ -#define SDL_REVISION "hg-13609:34cc7d3b69d3" -#define SDL_REVISION_NUMBER 13609 +#define SDL_REVISION "hg-0:aaaaaaaaaaah" +#define SDL_REVISION_NUMBER 0 diff --git a/libs/windows/include/SDL_sensor.h b/libs/windows/include/SDL_sensor.h index 5122ee15..83abf1ee 100644 --- a/libs/windows/include/SDL_sensor.h +++ b/libs/windows/include/SDL_sensor.h @@ -121,6 +121,19 @@ typedef enum /* Function prototypes */ +/** + * Locking for multi-threaded access to the sensor API + * + * If you are using the sensor API or handling events from multiple threads + * you should use these locking functions to protect access to the sensors. + * + * In particular, you are guaranteed that the sensor list won't change, so + * the API functions that take a sensor index will be valid, and sensor + * events will not be delivered. + */ +extern DECLSPEC void SDLCALL SDL_LockSensors(void); +extern DECLSPEC void SDLCALL SDL_UnlockSensors(void); + /** * \brief Count the number of sensors attached to the system right now */ diff --git a/libs/windows/include/SDL_stdinc.h b/libs/windows/include/SDL_stdinc.h index d96e18bc..ad1344d3 100644 --- a/libs/windows/include/SDL_stdinc.h +++ b/libs/windows/include/SDL_stdinc.h @@ -529,6 +529,8 @@ extern DECLSPEC double SDLCALL SDL_fabs(double x); extern DECLSPEC float SDLCALL SDL_fabsf(float x); extern DECLSPEC double SDLCALL SDL_floor(double x); extern DECLSPEC float SDLCALL SDL_floorf(float x); +extern DECLSPEC double SDLCALL SDL_trunc(double x); +extern DECLSPEC float SDLCALL SDL_truncf(float x); extern DECLSPEC double SDLCALL SDL_fmod(double x, double y); extern DECLSPEC float SDLCALL SDL_fmodf(float x, float y); extern DECLSPEC double SDLCALL SDL_log(double x); diff --git a/libs/windows/include/SDL_version.h b/libs/windows/include/SDL_version.h index c824b1d3..ec2cc8f6 100644 --- a/libs/windows/include/SDL_version.h +++ b/libs/windows/include/SDL_version.h @@ -59,7 +59,7 @@ typedef struct SDL_version */ #define SDL_MAJOR_VERSION 2 #define SDL_MINOR_VERSION 0 -#define SDL_PATCHLEVEL 12 +#define SDL_PATCHLEVEL 13 /** * \brief Macro to determine SDL version program was compiled against. diff --git a/libs/windows/include/SDL_video.h b/libs/windows/include/SDL_video.h index 20d4ce2d..c7411ca4 100644 --- a/libs/windows/include/SDL_video.h +++ b/libs/windows/include/SDL_video.h @@ -118,7 +118,8 @@ typedef enum SDL_WINDOW_UTILITY = 0x00020000, /**< window should be treated as a utility window */ SDL_WINDOW_TOOLTIP = 0x00040000, /**< window should be treated as a tooltip */ SDL_WINDOW_POPUP_MENU = 0x00080000, /**< window should be treated as a popup menu */ - SDL_WINDOW_VULKAN = 0x10000000 /**< window usable for Vulkan surface */ + SDL_WINDOW_VULKAN = 0x10000000, /**< window usable for Vulkan surface */ + SDL_WINDOW_METAL = 0x20000000 /**< window usable for Metal view */ } SDL_WindowFlags; /** @@ -484,7 +485,8 @@ extern DECLSPEC Uint32 SDLCALL SDL_GetWindowPixelFormat(SDL_Window * window); * ::SDL_WINDOW_HIDDEN, ::SDL_WINDOW_BORDERLESS, * ::SDL_WINDOW_RESIZABLE, ::SDL_WINDOW_MAXIMIZED, * ::SDL_WINDOW_MINIMIZED, ::SDL_WINDOW_INPUT_GRABBED, - * ::SDL_WINDOW_ALLOW_HIGHDPI, ::SDL_WINDOW_VULKAN. + * ::SDL_WINDOW_ALLOW_HIGHDPI, ::SDL_WINDOW_VULKAN + * ::SDL_WINDOW_METAL. * * \return The created window, or NULL if window creation failed. * @@ -503,6 +505,9 @@ extern DECLSPEC Uint32 SDLCALL SDL_GetWindowPixelFormat(SDL_Window * window); * If SDL_WINDOW_VULKAN is specified and there isn't a working Vulkan driver, * SDL_CreateWindow() will fail because SDL_Vulkan_LoadLibrary() will fail. * + * If SDL_WINDOW_METAL is specified on an OS that does not support Metal, + * SDL_CreateWindow() will fail. + * * \note On non-Apple devices, SDL requires you to either not link to the * Vulkan loader or link to a dynamic library version. This limitation * may be removed in a future version of SDL. diff --git a/libs/windows/lib/x64/SDL2.dll b/libs/windows/lib/x64/SDL2.dll index 23d1c4288a52320cb8e568e212d6fbbe9b94f5e6..b04c1e7b60d95313786289d540fc134dcc376022 100644 GIT binary patch delta 417557 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þ>r1fSc|= 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

0Ja@Bl!}`HuN*!vz@$W4TaDV!a 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%0D5f~HAcX%+eFQFzMx1K)0YHs`j5vjZc ze77GjsvEKYPYV0%z$chMVGpeTpGn@ufTu&Y`~PP`=IcHk@&-S4Iz#L;V)iLfGaAqz z5DRz)5CGT!_zKsStpE>BVFjeL`~^0Xq!qv|C6YB^+!?j{#op7 zl%W}s8CHLraV5TN)g&>z?g)$q)!U#@MqEU%w{&6WCt(?M(`^hHX#B{UP8R#Hhm*x7 z?EYl285=!W4CiK!twM(c{)(|&qN~=1MBRbX&uAR&itTT@>&{_OnV5zhxy^=UVsJHn ziWtQnXNq0CR#DAgGesOje^HE|DuyTIv@gdt4B)q$NCaRlzz)a&ZUErwEo?6WG64yI zI)F>SCxg!*0Btd{lqNzjccT`|nTmDg%s<)rsbVT?GEMBNeTi+ECI+#F(~trn0@<-? zVyn=5f1phRI75bzstUjyuba@cnPl%)C25-kCXrYpT%ml4AYX3g-^LgST7AIILDCAP#S z&WHGT$IqVG7!T=aGGf?)Sz>o>IMdHYQ>}l*th2>zQ?Pv3jTd(=IDR$AU(0vdPqW2j zt(~=?`Wdxv0%dTTS=HAf7p z_X{yqMTge`@M229E>=EA?8QZ|&F$n6`{^3fnXH7U>rvMeqV6U{xl5BU^p2P6py4^W zlC5}0OyS0_WRKqw8*(qKWUJWcg3chW*Hmzu2{guEX|FQ#Ao#OCQun_p4CN@QO}C^Fl;gT6K>@k&|rvx z$1z~}lTKw@qp0#YLhN+-$mHbEX|MOV@19%)A8Y z&v@r6p>YY)L;9vANY~8LpE#6i%DRPfc5Cj z(7CfHR7Tm#`*6Mm*Acn&I%c?Q!AzzN~7!YH5P$_jq}n$HN%UcZBCVNd3l3C2~I)9qzdFH}Rrxye{Ke zV!X5JjL6zldMuZl!3gyc4tJLcX498;N|kH^4t&LxMLOIaCp7Xfe4lb3uD3kjQhbTb z$K!t9gYVxE_i3Pq(H&t6wdnF=DkcTMhjdmwGai9cs7107eiCS%@CU3(kiwcGe5C{V zcDV^6enmR4R4R|U9dTRUf0znPIoSKUP9twMQ+b-QzasB8WUnc=)a-a9Ozw)3f9=mZ z?w->8&sX65w4x?sJ9=+iUkgnxBL#(KJW+}J0c8+_)d;ne?g3F4sGe}8e9~kjzBI;h z-!x$m{(UF)z<*$R82&>t;;}lS=x`^2ckcpd%)9C7F7qC0cFMy48RfT&ZC)t)+fBK6 z((3?P6O=Q(uGvMRw%lwM6Ig$;Nw z0kq?l8TE9C6I`vX!L{k4jSdQSaGXC7#e-{9es~ueb>;ZMhi6YL-Zds@Yz4~}O}f`*(zuLJQswdvQj8O!Jn-FPLLN+vm5mab8lh{GlI zzh~gv`u|%7mOkmEJ8LKAz`*P$9UOag)m)EO-2R3+Q}$E{aush1r}55~^t5aRN&uRt z=}wAO&6aiug-W1~S^~+1Xvd=R?4>8sGLdInXgr>rg9*p<7sH9>kmJxpcRt>iSEwTLabqC+5T3NlLzcf1 z56OxrWf)fJrcza`se=OXdWTuDlX* znligyJrq!CQXu*aTs(Lc-p8PVCF4chGO&x=$)>DdU_h3{DSCN+D2b0LF*%L_hq!&g zCvG9&dc0}D4xmh1YlWL*j+h+uC<47~6|;AGS?OB1By`9#@1a_r5b-E}UREe6WiUHt z`hvT^X3j)v4Vo^%+`D6u?nnob%oHpE6)wGZADR&(Jfe->g~&W&G9o}JL{ruwW?^Em zed0_c)Lm#kSpua@;5VfznwXis)0b2Bk$9kPBM<3%#Pl$fuvx0esSduRI{1J1BY0Bf zahdX%^4y}k3UN|$8cOo0Dj@ZAk~y<<>SMQ^?lk>@JJ#~C{SQ?^jLO5y&}DC^S7^@d zdjdNMzP}*fYo7GoU3u6&eIi(+N3DOsrGTWzJUjw`ald{j0?c-pzqUW*jd>Uag#6*%*o{iY}HaRVZeDP&LHM+1!%lgIx0thNs*SL z%4YbRwk`^tMUlIV9MQ}uc<9FE47|VwOdw&V9eC)LWJSB$4OB$BwIOd~&n^?&dUvUV zi;w7ZL-w+9%f!G|VX%V`eA^&Rs;N$u$xvl#8^AU%6Q|g}K~^E>pv1OF{!}$XD|nH- z9A@=~B`hOgG3BaHNRwj{>}DwAhjF4x(~Zop!mP$Pyvj5{@v5i-v{WIx!$kFPnudM0 zT&z7d40bRPN`W*~&EaIOt(u|MwMgbvb0nGXqDU~JHA|q{i4Lkrz5)#CA#%9I>18Sp zCxB8-g;l0qby?FDVw}C7FA|{kF49>~?dx2P!=pGJWV4z`r5i$IMj)vlQM!b;;k->}B3#K3yt2wZNi#6)AEha)f+@_&}~T_w)rmKoWp zRbne{oN@7L@jdRRTI~JRVlpSyV!y5ylem~#ENYFI#+~qCE7yn}xRpNa#2V~I&hTNk z)?jh0j}L3P77g9pe?X{F73ex)FION6?fQ?5@ERTH@yk2$_1e@qbhk!hBAL@?7a))S474kz_NO(KfExzZ#$*il$h^~--%}F9m3+}yy>jFkBuIyRt z+jU}d`)laPB_(rdqi`5(Q5WbzoGu6oi?c7Dw!dFX~Em-f+``i^MyE$9&hJ zl&c0xZq$T2G7%r%(xv!v5HQ|D^Tg-Qq3A5q0%A_eCdX)VWQHA+dyDI((2h}V+Mr|u z){9LWkrxE8L}9o-g`rYQ*-O}a>&0ev@{l0iu;SqcsK&)|W4gcDz0c|>G{ncOC%H4t zk5C4mYPMjPqq&DccTNe|z$gGsLHI?Q?i#gFn<3l$h&ffTNV^+}9QCqs_&zDBv=a4b zu}@(C6vQKKA(?^VrVS(|5PO^SOT4t@3M@3OkKRt4nzF{i4#~rRxc>m!F7{b%UV~Lv8oL9!k`db&uWpMC_)OS=&#=ppF`vqohYc96ML} z9PRPxf|FF}8mx6qg?ML$eA6CwhepTjpNfG>wxYQp(Lt_TY(F+l+nmu?JnCf6EWnU8nu#`AFRj4473LTMfM(_xzuAmp80hh#WA?n<2s$lj{!NLC%8Pb9Bxz`c6n$TrB3AI3*j6b7(nu^NLl-nj zJ`Mal_thcA66K2f{SqKmDNcnRC2+QmQva1vNiVhUacJKo6+K{m$z}96R1QEZ-3A&v%{YyUFwY*7M!x z`5y6nPkFvqJl|`c@1LIUL(jL?88!UI_&!J1Z(Dm1J)YNT3eeUJ1T(_{qXBOMG630t z82}gHL%@2#cYs}hF90h6`)#k&3wC@#{)1k>8}Og$Asdh%Vl_!+>rj ze%_8+_{cwf!ScTp1494V<=ZbFy35cm70K@^+@a_A>r2txiNa5(&@3m^;bk&unI1xI zka&3>f?B2qWy-paZcU#4IVD<=IYf7W{3v=HRf&fZGWm7# zUsVH0&J;0oOhHYfG<*b_(#;6VQ*HLbE_Zr@C>bwqRZ=CZR9_I)v}!8K30d<5)sX6_ zhNwi_h^Tip(K#Y2g6fG%pH6d1rO`1ZMI|aCBD-HTm2@0bi=UuMtENg*sg4oVMP(TS zir8EMHz=x6HHl{DDGiw?UE9f~l3pOvwbi5~w01eHCarmVb%f(ps=Gw>Mm1G1sN`EI zHPe<^O_Zq;`N30Z=W3#8BHCG#X!b0yWs&TaY?4)_4I^3_o_NYFiD+j(L932QDoM$v zlEx5eel=+-k@kLqGzWgG*xjCkHFgheGSR+MO`A!yK2Ojtd4iT~YP7?Nv|lyp3?eNa zStE;PuX%!$Y$~b!Wuo=1rkz8yA3j0**%P#6Q)yo%($h4CMRkBE%q7wnpCCQ>1S#26 z(l>~78A$CO+WAD=gL6y7+`0 zv>TqF-Sz}6*;LwTL|dvjDydyg(T;n9RPDhl#e!@q=`13}l3`^=ts&AVh14T|&epn zGG$0d98!0->Lg;rfM3-IT-swjwdOR+BJs6I@1?P~a>W(~m8aKnU^`a~YG0X3#p4=y zL|_Nx?DktB4$9R_|?M)1eBrGqc7Z!+=3XdVM()YJV!b5@)8N(g-C@ zG?0;p)^tWUqRIgJ*^&!j+PNbwH*1@?LCfu_&)R)2_SH_zo%+4_rA|0CA5!(!D%Nhd z_`EO;7P;OkHgC5WB=k4}%k7nH({8b$kVKXfE7{TAVxTaREMKo=*LI7Mb&|<4Z6#)$ z2Pl`d8}G8Vd&Fj87eB}09gIe3h~tV)!tz#GQ)z#GiNQyvkFSp`Z~y!*o3uxa;2MRp zkN1e5Xj56=JX~W4JVp7e3=Mpsnk#xa%gz&HIGe!s=85C{UiyLd9Ez!s8p3(TvRre% z*qh_@Ud&k_#@BwX802sywO+q6cA-EFt(`p&(~iI&?jYQtx92hAKC$8JqsgB-aR~>f zN#w;0FCd%Bl(oUCqAzgwYF(Oz^r=(su{d?FPR=`05{b~Dgk2<;97mw804L-gPJNqW zI&NIT-rpzoXt-%E<~hz@So#ZEOGb3=_{blgyu+^U6I<5SsWdyAfyT~Qll@|V-w+B; z<M=UD{8tEpds9mucJbhur*ku=-!{z#hua6>c+vCJg>xt8XusBuX{|LgNm=Y5 zAl1e!{uoJ_F_sW9=QA*6r6Sk2fxWB^RaP_xc;Cs99|<94cMggn2KO9Cxb7Ia7q zOv=US01wmu#M6ZX3Qx7Fcsl$6Dwx&ZF~whFuSa<)XM!9ep)xb}FmoIdUv9?o)rEn# zJl{T^Zxhd#