shithub: ft²

Download patch

ref: a4e02a4635829663b6a89fe028a958424520b751
parent: 9001d5ed72e08929fa09d9a9bf4743baf5a94ac2
author: Olav Sørensen <olav.sorensen@live.no>
date: Sat Aug 31 14:43:02 EDT 2024

- Windows/macOS: Updated SDL to v2.30.5

--- a/release/macos/ft2-clone-macos.app/Contents/Frameworks/SDL2.framework/Versions/A/Headers/SDL_hints.h
+++ b/release/macos/ft2-clone-macos.app/Contents/Frameworks/SDL2.framework/Versions/A/Headers/SDL_hints.h
@@ -1424,7 +1424,19 @@
 #define SDL_HINT_MOUSE_RELATIVE_WARP_MOTION  "SDL_MOUSE_RELATIVE_WARP_MOTION"
 
 /**
- *  \brief  A variable controlling whether mouse events should generate synthetic touch events
+ *  \brief  A variable controlling whether the hardware cursor stays visible when relative mode is active.
+ *
+ *  This variable can be set to the following values:
+ *    "0"       - The cursor will be hidden while relative mode is active (default)
+ *    "1"       - The cursor will remain visible while relative mode is active
+ *
+ *  Note that for systems without raw hardware inputs, relative mode is implemented using warping, so the hardware cursor will visibly warp between frames if this is enabled on those systems.
+ */
+#define SDL_HINT_MOUSE_RELATIVE_CURSOR_VISIBLE  "SDL_MOUSE_RELATIVE_CURSOR_VISIBLE"
+
+/**
+ * A variable controlling whether mouse events should generate synthetic touch
+ * events
  *
  *  This variable can be set to the following values:
  *    "0"       - Mouse events will not generate touch events (default for desktop platforms)
--- a/release/macos/ft2-clone-macos.app/Contents/Frameworks/SDL2.framework/Versions/A/Headers/SDL_joystick.h
+++ b/release/macos/ft2-clone-macos.app/Contents/Frameworks/SDL2.framework/Versions/A/Headers/SDL_joystick.h
@@ -790,12 +790,17 @@
  * **WARNING**: Calling this function may delete all events currently in SDL's
  * event queue.
  *
- * \param state can be one of `SDL_QUERY`, `SDL_IGNORE`, or `SDL_ENABLE`
- * \returns 1 if enabled, 0 if disabled, or a negative error code on failure;
- *          call SDL_GetError() for more information.
+ * While `param` is meant to be one of `SDL_QUERY`, `SDL_IGNORE`, or
+ * `SDL_ENABLE`, this function accepts any value, with any non-zero value that
+ * isn't `SDL_QUERY` being treated as `SDL_ENABLE`.
  *
- *          If `state` is `SDL_QUERY` then the current state is returned,
- *          otherwise the new processing state is returned.
+ * If SDL was built with events disabled (extremely uncommon!), this will
+ * do nothing and always return `SDL_IGNORE`.
+ *
+ * \param state can be one of `SDL_QUERY`, `SDL_IGNORE`, or `SDL_ENABLE`
+ * \returns If `state` is `SDL_QUERY` then the current state is returned,
+ *          otherwise `state` is returned (even if it was not one of the
+ *          allowed values).
  *
  * \since This function is available since SDL 2.0.0.
  *
--- a/release/macos/ft2-clone-macos.app/Contents/Frameworks/SDL2.framework/Versions/A/Headers/SDL_platform.h
+++ b/release/macos/ft2-clone-macos.app/Contents/Frameworks/SDL2.framework/Versions/A/Headers/SDL_platform.h
@@ -73,7 +73,13 @@
 #if defined(__APPLE__)
 /* lets us know what version of Mac OS X we're compiling on */
 #include <AvailabilityMacros.h>
+#ifndef __has_extension /* Older compilers don't support this */
+#define __has_extension(x) 0
 #include <TargetConditionals.h>
+#undef __has_extension
+#else
+#include <TargetConditionals.h>
+#endif
 
 /* Fix building with older SDKs that don't define these
    See this for more information:
--- a/release/macos/ft2-clone-macos.app/Contents/Frameworks/SDL2.framework/Versions/A/Headers/SDL_revision.h
+++ b/release/macos/ft2-clone-macos.app/Contents/Frameworks/SDL2.framework/Versions/A/Headers/SDL_revision.h
@@ -1,7 +1,7 @@
 /* Generated by updaterev.sh, do not edit */
 #ifdef SDL_VENDOR_INFO
-#define SDL_REVISION "SDL-release-2.30.3-0-gfb1497566 (" SDL_VENDOR_INFO ")"
+#define SDL_REVISION "SDL-release-2.30.6-0-gba2f78a00 (" SDL_VENDOR_INFO ")"
 #else
-#define SDL_REVISION "SDL-release-2.30.3-0-gfb1497566"
+#define SDL_REVISION "SDL-release-2.30.6-0-gba2f78a00"
 #endif
 #define SDL_REVISION_NUMBER 0
--- a/release/macos/ft2-clone-macos.app/Contents/Frameworks/SDL2.framework/Versions/A/Headers/SDL_stdinc.h
+++ b/release/macos/ft2-clone-macos.app/Contents/Frameworks/SDL2.framework/Versions/A/Headers/SDL_stdinc.h
@@ -253,10 +253,10 @@
  * <stdint.h> should define these but this is not true all platforms.
  * (for example win32) */
 #ifndef SDL_PRIs64
-#ifdef PRIs64
-#define SDL_PRIs64 PRIs64
-#elif defined(__WIN32__) || defined(__GDK__)
+#if defined(__WIN32__) || defined(__GDK__)
 #define SDL_PRIs64 "I64d"
+#elif defined(PRIs64)
+#define SDL_PRIs64 PRIs64
 #elif defined(__LP64__) && !defined(__APPLE__)
 #define SDL_PRIs64 "ld"
 #else
@@ -264,10 +264,10 @@
 #endif
 #endif
 #ifndef SDL_PRIu64
-#ifdef PRIu64
-#define SDL_PRIu64 PRIu64
-#elif defined(__WIN32__) || defined(__GDK__)
+#if defined(__WIN32__) || defined(__GDK__)
 #define SDL_PRIu64 "I64u"
+#elif defined(PRIu64)
+#define SDL_PRIu64 PRIu64
 #elif defined(__LP64__) && !defined(__APPLE__)
 #define SDL_PRIu64 "lu"
 #else
@@ -275,10 +275,10 @@
 #endif
 #endif
 #ifndef SDL_PRIx64
-#ifdef PRIx64
-#define SDL_PRIx64 PRIx64
-#elif defined(__WIN32__) || defined(__GDK__)
+#if defined(__WIN32__) || defined(__GDK__)
 #define SDL_PRIx64 "I64x"
+#elif defined(PRIx64)
+#define SDL_PRIx64 PRIx64
 #elif defined(__LP64__) && !defined(__APPLE__)
 #define SDL_PRIx64 "lx"
 #else
@@ -286,10 +286,10 @@
 #endif
 #endif
 #ifndef SDL_PRIX64
-#ifdef PRIX64
-#define SDL_PRIX64 PRIX64
-#elif defined(__WIN32__) || defined(__GDK__)
+#if defined(__WIN32__) || defined(__GDK__)
 #define SDL_PRIX64 "I64X"
+#elif defined(PRIX64)
+#define SDL_PRIX64 PRIX64
 #elif defined(__LP64__) && !defined(__APPLE__)
 #define SDL_PRIX64 "lX"
 #else
@@ -377,9 +377,12 @@
 
 #ifndef SDL_COMPILE_TIME_ASSERT
 #if defined(__cplusplus)
+/* Keep C++ case alone: Some versions of gcc will define __STDC_VERSION__ even when compiling in C++ mode. */
 #if (__cplusplus >= 201103L)
 #define SDL_COMPILE_TIME_ASSERT(name, x)  static_assert(x, #x)
 #endif
+#elif defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 202311L)
+#define SDL_COMPILE_TIME_ASSERT(name, x)  static_assert(x, #x)
 #elif defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 201112L)
 #define SDL_COMPILE_TIME_ASSERT(name, x) _Static_assert(x, #x)
 #endif
--- a/release/macos/ft2-clone-macos.app/Contents/Frameworks/SDL2.framework/Versions/A/Headers/SDL_version.h
+++ b/release/macos/ft2-clone-macos.app/Contents/Frameworks/SDL2.framework/Versions/A/Headers/SDL_version.h
@@ -59,7 +59,7 @@
 */
 #define SDL_MAJOR_VERSION   2
 #define SDL_MINOR_VERSION   30
-#define SDL_PATCHLEVEL      3
+#define SDL_PATCHLEVEL      6
 
 /**
  * Macro to determine SDL version program was compiled against.
--- a/release/macos/ft2-clone-macos.app/Contents/Frameworks/SDL2.framework/Versions/A/Resources/Info.plist
+++ b/release/macos/ft2-clone-macos.app/Contents/Frameworks/SDL2.framework/Versions/A/Resources/Info.plist
@@ -3,7 +3,7 @@
 <plist version="1.0">
 <dict>
 	<key>BuildMachineOSBuild</key>
-	<string>23E224</string>
+	<string>23F79</string>
 	<key>CFBundleDevelopmentRegion</key>
 	<string>English</string>
 	<key>CFBundleExecutable</key>
@@ -19,7 +19,7 @@
 	<key>CFBundlePackageType</key>
 	<string>FMWK</string>
 	<key>CFBundleShortVersionString</key>
-	<string>2.30.3</string>
+	<string>2.30.6</string>
 	<key>CFBundleSignature</key>
 	<string>SDLX</string>
 	<key>CFBundleSupportedPlatforms</key>
@@ -27,7 +27,7 @@
 		<string>MacOSX</string>
 	</array>
 	<key>CFBundleVersion</key>
-	<string>2.30.3</string>
+	<string>2.30.6</string>
 	<key>DTCompiler</key>
 	<string>com.apple.compilers.llvm.clang.1_0</string>
 	<key>DTPlatformBuild</key>
@@ -35,15 +35,15 @@
 	<key>DTPlatformName</key>
 	<string>macosx</string>
 	<key>DTPlatformVersion</key>
-	<string>14.4</string>
+	<string>14.5</string>
 	<key>DTSDKBuild</key>
-	<string>23E208</string>
+	<string>23F73</string>
 	<key>DTSDKName</key>
-	<string>macosx14.4</string>
+	<string>macosx14.5</string>
 	<key>DTXcode</key>
-	<string>1530</string>
+	<string>1540</string>
 	<key>DTXcodeBuild</key>
-	<string>15E204a</string>
+	<string>15F31d</string>
 	<key>LSMinimumSystemVersion</key>
 	<string>10.11</string>
 </dict>
binary files a/release/macos/ft2-clone-macos.app/Contents/Frameworks/SDL2.framework/Versions/A/Resources/default.metallib b/release/macos/ft2-clone-macos.app/Contents/Frameworks/SDL2.framework/Versions/A/Resources/default.metallib differ
binary files a/release/macos/ft2-clone-macos.app/Contents/Frameworks/SDL2.framework/Versions/A/SDL2 b/release/macos/ft2-clone-macos.app/Contents/Frameworks/SDL2.framework/Versions/A/SDL2 differ
--- a/release/macos/ft2-clone-macos.app/Contents/Frameworks/SDL2.framework/Versions/A/_CodeSignature/CodeResources
+++ /dev/null
@@ -1,933 +1,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
-<plist version="1.0">
-<dict>
-	<key>files</key>
-	<dict>
-		<key>Resources/CMake/sdl2-config-version.cmake</key>
-		<data>
-		GOmfPsl6+zUzjRroR1OeRUu1Do0=
-		</data>
-		<key>Resources/CMake/sdl2-config.cmake</key>
-		<data>
-		HFjU0snuPDDpVpeJJsOGAfWEqrU=
-		</data>
-		<key>Resources/Info.plist</key>
-		<data>
-		bxatnXldUxNWh/Txj+8AfjKv2uM=
-		</data>
-		<key>Resources/License.txt</key>
-		<data>
-		A8VTYHTg+gsOssUp337xdGbdHW0=
-		</data>
-		<key>Resources/ReadMe.txt</key>
-		<data>
-		04Gl3MPa3Etx4qtkaftLHaPqBVU=
-		</data>
-		<key>Resources/default.metallib</key>
-		<data>
-		YrRnNqKCIDuni+6CKxtbY1kbYlw=
-		</data>
-	</dict>
-	<key>files2</key>
-	<dict>
-		<key>Headers/SDL.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			Lfl2hNX45Yauw4rksgqb/XdphDk=
-			</data>
-			<key>hash2</key>
-			<data>
-			5ZHTKNpFq6FjJ9eAzN+z9MzYhRUuH9A2ld+654PJGxA=
-			</data>
-		</dict>
-		<key>Headers/SDL_assert.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			pYW903dbT5whp+Qrix78+qX0jwE=
-			</data>
-			<key>hash2</key>
-			<data>
-			8rHzmD0mEbISieyXtdyAKk4sVsPwozGVXxO+fPUcwh4=
-			</data>
-		</dict>
-		<key>Headers/SDL_atomic.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			kmlvyb/D7tTnqB5/SPn+uzEVwWo=
-			</data>
-			<key>hash2</key>
-			<data>
-			jKCpopkvsvgFD4Kw3f33cJ/NnrINF539gONibFVIB9Q=
-			</data>
-		</dict>
-		<key>Headers/SDL_audio.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			mO1jIX10BMO3YSgktP4b6Z1Oyqs=
-			</data>
-			<key>hash2</key>
-			<data>
-			dwmzZFx1CKgM7pYIq4tw7eGJMeAAJ5s3CyXDbfXYKpI=
-			</data>
-		</dict>
-		<key>Headers/SDL_bits.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			vq8tkT27C0LpOpam3jt6SPKcF38=
-			</data>
-			<key>hash2</key>
-			<data>
-			ThaIbzANB0DHeg/muc+XlpzRJ/gquRny6eg+T3/AZRo=
-			</data>
-		</dict>
-		<key>Headers/SDL_blendmode.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			UJ3UsJ8PkmGKXFMsWbGjktY/McY=
-			</data>
-			<key>hash2</key>
-			<data>
-			4fn7qawnnPu+HK3N6XAbRESMCm0k6OKgh/swb9XhboI=
-			</data>
-		</dict>
-		<key>Headers/SDL_clipboard.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			RnO4GfCniF8MlqHGKKb46VIosQc=
-			</data>
-			<key>hash2</key>
-			<data>
-			Wz9oWs2a8ZN4QUrt0nEcldfa+eZpXfIcDToxBX1KzfI=
-			</data>
-		</dict>
-		<key>Headers/SDL_config.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			ER627OINXZReUtB0UvhF/JFlrFk=
-			</data>
-			<key>hash2</key>
-			<data>
-			1anVcKcfwQrtjHH7cteXCA5OCcOgmB7EFfDnCb+gSZk=
-			</data>
-		</dict>
-		<key>Headers/SDL_config_macosx.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			oU+969jqvMDgqHV1WA4yZm1gr9k=
-			</data>
-			<key>hash2</key>
-			<data>
-			c9+monw3gWrEZOhytKTuc1hSbhEo+HiCBZ4jJOpjg+M=
-			</data>
-		</dict>
-		<key>Headers/SDL_copying.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			eMSBsshKdTT5uzXvgxE8eZJnqU0=
-			</data>
-			<key>hash2</key>
-			<data>
-			8rjaG1pCV5vum9i9zkW6VPXHWLgTjYk+LetUSsfhdho=
-			</data>
-		</dict>
-		<key>Headers/SDL_cpuinfo.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			mdEBzZyevtfCXZXXEJ8sEfUNr4U=
-			</data>
-			<key>hash2</key>
-			<data>
-			V8DTu2oLBQZVxwExFsdWY3S7eIvxwh2Kc/C9TgUHS/g=
-			</data>
-		</dict>
-		<key>Headers/SDL_endian.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			a0rFYa+ZaAeCp1OLc1MUigSxv3I=
-			</data>
-			<key>hash2</key>
-			<data>
-			KzsbIelOUqvXltchBHLBt2FYxr6ECXOXllAo8I4cgJQ=
-			</data>
-		</dict>
-		<key>Headers/SDL_error.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			6FbRl5QI1EDOgcFrO88vwobsvgk=
-			</data>
-			<key>hash2</key>
-			<data>
-			UK6Fy7gMMKetaQ8oLxZ5/YjRDBnehbSYWdS5NU+0bT8=
-			</data>
-		</dict>
-		<key>Headers/SDL_events.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			DjRO2l0fKHz9CqTSSEjZmJfk9EQ=
-			</data>
-			<key>hash2</key>
-			<data>
-			D9kT1tG6R/HNm/q288zZFC6ukV75D69FcWgwYsnc8fc=
-			</data>
-		</dict>
-		<key>Headers/SDL_filesystem.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			V8DtkwjBL6IAXnY3x3Y3GBN5V/g=
-			</data>
-			<key>hash2</key>
-			<data>
-			0dS4S8y/h4M5KPReX8OBpo3gpKeCLfH7QvK3hnL0Z3Y=
-			</data>
-		</dict>
-		<key>Headers/SDL_gamecontroller.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			JpK2cxtJKHW3otMI+J0LB9HKV0I=
-			</data>
-			<key>hash2</key>
-			<data>
-			05DHXySUkbPAFsZ06PH81S+gw42DJijM4g5o8b7GhdI=
-			</data>
-		</dict>
-		<key>Headers/SDL_gesture.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			jU1rTN3CXe1BxlIBiYoxftM6MYY=
-			</data>
-			<key>hash2</key>
-			<data>
-			mgTChHVZZGYvTqJ1zFxt+PZbfvlOAXp1UoiPQtFcsVQ=
-			</data>
-		</dict>
-		<key>Headers/SDL_guid.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			L3CGapDqXLCS7ZfawgCKGbSjFQQ=
-			</data>
-			<key>hash2</key>
-			<data>
-			qUA3cQGQCyMg0ipdfCbjASvzYDj0Zx7H5ffPcvWfwVw=
-			</data>
-		</dict>
-		<key>Headers/SDL_haptic.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			701dA7tkS7/YfKQufm9k5x1xP8Q=
-			</data>
-			<key>hash2</key>
-			<data>
-			ItVljPsplw8TGMOYCO77lZsUfVph375JnUCb+ne/SwY=
-			</data>
-		</dict>
-		<key>Headers/SDL_hidapi.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			0fdfgesRdg1vKFY634kkFiZ98Ng=
-			</data>
-			<key>hash2</key>
-			<data>
-			ePZqkV6EC8UOvqW8YdC6QIqQj1WT+hV8A+iuyMBkTEM=
-			</data>
-		</dict>
-		<key>Headers/SDL_hints.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			/qk7BWYdVU6PpDcEUcVmK+Wz2s8=
-			</data>
-			<key>hash2</key>
-			<data>
-			6H5P80fBEK45UuA2f9Pcl8+VY0Dep8nNNYIf02eZm6Q=
-			</data>
-		</dict>
-		<key>Headers/SDL_joystick.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			OrlFzMtKvIkbEWrrrnwBGe3oboU=
-			</data>
-			<key>hash2</key>
-			<data>
-			sjqpfn82SFN+38d2/UGvZFO4MWM7MMFYXW0yiv5QTfo=
-			</data>
-		</dict>
-		<key>Headers/SDL_keyboard.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			O8EeqERllEiSUVekqaGWTi+08SE=
-			</data>
-			<key>hash2</key>
-			<data>
-			YY8QUjagHNuyjj7+A2likirYjtVGBLRrLaiL3XFF6pI=
-			</data>
-		</dict>
-		<key>Headers/SDL_keycode.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			4M4+qKPCh8Nt9KMtKXhGfEHHGfA=
-			</data>
-			<key>hash2</key>
-			<data>
-			RMfX8LUIJxh/jsaJU/xByIJkjv0Ad106DFZHsZv8pbM=
-			</data>
-		</dict>
-		<key>Headers/SDL_loadso.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			Asx7u68oasK39D4GZW1/srAylls=
-			</data>
-			<key>hash2</key>
-			<data>
-			RiRV45B7euwlx+hcq4qKfEFmHNSH1mkstcUpTVvYSSs=
-			</data>
-		</dict>
-		<key>Headers/SDL_locale.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			nRgzIlI3HM0T/WNjLJJEi38OPMo=
-			</data>
-			<key>hash2</key>
-			<data>
-			EMRbgbDbQ+odh3x2XBIyspvdqB2kra0FOf74BrGKgPY=
-			</data>
-		</dict>
-		<key>Headers/SDL_log.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			tAwHSPVWPAZGWPtCSUlHq3JdvyA=
-			</data>
-			<key>hash2</key>
-			<data>
-			VMaId0hYgkcr2YDH2N33c0i38gPrs9+L/ANMpAiny9g=
-			</data>
-		</dict>
-		<key>Headers/SDL_main.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			lykTlv+S6hpMWHZrRgY1mlpO2Wg=
-			</data>
-			<key>hash2</key>
-			<data>
-			LxrUoSwibHgYszYJXkUxZNBHRVOQWyteyv+bar2Dq5Y=
-			</data>
-		</dict>
-		<key>Headers/SDL_messagebox.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			9nzIVO7dY406xCHa2KEIJcO1+j4=
-			</data>
-			<key>hash2</key>
-			<data>
-			YU77COq8qX9fvy6hzGxakm44tOIAv/7OsoAKTdF6Az8=
-			</data>
-		</dict>
-		<key>Headers/SDL_metal.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			l3WpnmYNTFJDOc4VfGpqDOzca2A=
-			</data>
-			<key>hash2</key>
-			<data>
-			23emwjTJmRlFUl0ONQTFOXiwp5rZigMgRoNpVs+/3+8=
-			</data>
-		</dict>
-		<key>Headers/SDL_misc.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			jRjlVh5Vv0djqm/W/za7thtYCqA=
-			</data>
-			<key>hash2</key>
-			<data>
-			ccGvw3H5qbNv1VNvV/f6zgzu62kpdXFy+r3mqfrVeBQ=
-			</data>
-		</dict>
-		<key>Headers/SDL_mouse.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			Gm6qznp86I5NOFZmRjhrT++5TBk=
-			</data>
-			<key>hash2</key>
-			<data>
-			gwvY1lfpF7M2HbTITBi8QZI+tbgVNvI9O1NxtoxBoRc=
-			</data>
-		</dict>
-		<key>Headers/SDL_mutex.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			9vbOLsFVFElR47I5TtXjf4pedQo=
-			</data>
-			<key>hash2</key>
-			<data>
-			ffswmnD3jDjyU8iH7L06flM6p819OSNl8NEcZ4kHjoA=
-			</data>
-		</dict>
-		<key>Headers/SDL_name.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			cnC/QF1H86przORFvDObebgj5EA=
-			</data>
-			<key>hash2</key>
-			<data>
-			9fbQrzTVlIE/DhtOXfxt0UmZ0XXGnb8fBspcvPpqzcg=
-			</data>
-		</dict>
-		<key>Headers/SDL_opengl.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			fQnZ5+4QU4D2hdgVZbuajaBHPcs=
-			</data>
-			<key>hash2</key>
-			<data>
-			2Ctx+UxI6AbjN3VC0IHf0VO8wTUUi3B3sEMe/Kw7JUo=
-			</data>
-		</dict>
-		<key>Headers/SDL_opengl_glext.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			eOvalGUielSzNuOWWDLYkwqpYrg=
-			</data>
-			<key>hash2</key>
-			<data>
-			GrsoiRybBmG2/zdJ3iZx2l/hK+tbyxgzsta99ciezfg=
-			</data>
-		</dict>
-		<key>Headers/SDL_opengles.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			qc/icyfTwVqep3xCBWgeJfq0XXU=
-			</data>
-			<key>hash2</key>
-			<data>
-			lxKvbpPsHmGoSaeXFm2q1chRJyxVms+CzAJvRtK637k=
-			</data>
-		</dict>
-		<key>Headers/SDL_opengles2.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			jPiOGyiIm0zNA2ktCXPlPZSRNOA=
-			</data>
-			<key>hash2</key>
-			<data>
-			gz/JKk8t4jDIXWlHuYzPYJMnYJoVRKMaEGKxYB69dHA=
-			</data>
-		</dict>
-		<key>Headers/SDL_opengles2_gl2.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			GbD4M9ZIR9sxgLX4G8T/ojLVQJk=
-			</data>
-			<key>hash2</key>
-			<data>
-			1uxEsdc/OvzjogrGl223+z2sZWxRkPC1Y+TOkNeaFao=
-			</data>
-		</dict>
-		<key>Headers/SDL_opengles2_gl2ext.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			frTvd+EfShO/uonAvnnsnPkqc80=
-			</data>
-			<key>hash2</key>
-			<data>
-			T8WwA03N6cElki4+cNAUiaazNQdoVu5mApThpjBaNxk=
-			</data>
-		</dict>
-		<key>Headers/SDL_opengles2_gl2platform.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			JO1DB28zz7TCz/P5YCSvV1PaqWg=
-			</data>
-			<key>hash2</key>
-			<data>
-			R3m+mZrNGQRFgjjwnIaYO3lgrEDmEuBdstuX22FfHg8=
-			</data>
-		</dict>
-		<key>Headers/SDL_opengles2_khrplatform.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			mBjqEs+5bGC9u1ED2M93VNzONPQ=
-			</data>
-			<key>hash2</key>
-			<data>
-			ex4Bqqetj2/DS1x733nr9RibsJ4sTS55/F01BiPRHoM=
-			</data>
-		</dict>
-		<key>Headers/SDL_pixels.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			MYcJ6ZiKAY8zdgCwA/FlUbT5a/4=
-			</data>
-			<key>hash2</key>
-			<data>
-			k/Hwy+Me3zpo9gYWt1cxsQAkMKtg8FS2oZLB5H1IHms=
-			</data>
-		</dict>
-		<key>Headers/SDL_platform.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			NywZ7lb1AObplGXdgvKYUQnFr3E=
-			</data>
-			<key>hash2</key>
-			<data>
-			/XPmip0lyp07Lnry52Ki2A7dornwXXFxn1W94/cdCO0=
-			</data>
-		</dict>
-		<key>Headers/SDL_power.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			alQ7owSLOu8oi+p5TCVtXLfg49U=
-			</data>
-			<key>hash2</key>
-			<data>
-			/a3V+xg47qsi9m/jjhPv4j5epEExGUpm65R9DBKOgdU=
-			</data>
-		</dict>
-		<key>Headers/SDL_quit.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			HBhMaa9dpoxys7lX8bShTrrw26c=
-			</data>
-			<key>hash2</key>
-			<data>
-			Zy837L/c8/F/z/t7UE/2IKDrEYSf+/9IM+y/rifeK9Q=
-			</data>
-		</dict>
-		<key>Headers/SDL_rect.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			TMAFS6Xx6FfFUZosiA08UZGMO7Y=
-			</data>
-			<key>hash2</key>
-			<data>
-			B6FuiG3NCFAQRp2UVMcmgSowkeZ1hP5VCdzArvGYEjk=
-			</data>
-		</dict>
-		<key>Headers/SDL_render.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			kUCWkbsEF23oO4MCCs2EbwDQusI=
-			</data>
-			<key>hash2</key>
-			<data>
-			FRXH4yrITpDqn2IBdQ2Lbx7Jn6o0UuPRsjd4OWj78yI=
-			</data>
-		</dict>
-		<key>Headers/SDL_revision.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			4W1xJJ60yVjHFpAytRExnvY6qDg=
-			</data>
-			<key>hash2</key>
-			<data>
-			+SVdIV4PtuCpWWWxmbajvtuj0obMnFjG9wvST9uBiGY=
-			</data>
-		</dict>
-		<key>Headers/SDL_rwops.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			X/FUhtgu4xCdkYBGb+ldcBcGZsY=
-			</data>
-			<key>hash2</key>
-			<data>
-			a2EUuuUAqW0fvq6RZT8pXnh5L/5v0fQWSLdrujvKMqA=
-			</data>
-		</dict>
-		<key>Headers/SDL_scancode.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			KoO35m+cbDILMQvS85Ns37rEDjY=
-			</data>
-			<key>hash2</key>
-			<data>
-			i/34qMDYybTiAylZuNfCadHerKiHZ06/kBn6i/txqLk=
-			</data>
-		</dict>
-		<key>Headers/SDL_sensor.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			dt0dQe91kXtmVwHldbMs3pSqKuE=
-			</data>
-			<key>hash2</key>
-			<data>
-			+J/fkDU0AnB1KtUPYvFD3BIcHr0mXLJoyHvrtofnlRs=
-			</data>
-		</dict>
-		<key>Headers/SDL_shape.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			kpJhZUECgTha8Y9BJVRTLbsu6p8=
-			</data>
-			<key>hash2</key>
-			<data>
-			DsOpuFRKUgZwW8zSjrvgzY5QiVnH4qzikkNFfE4R784=
-			</data>
-		</dict>
-		<key>Headers/SDL_stdinc.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			kj6sOh7x59h+039b5lw2kEchPl0=
-			</data>
-			<key>hash2</key>
-			<data>
-			LXuATMJwqf7f/Axk42MgwexjBUzzc5745m0E5foFmPo=
-			</data>
-		</dict>
-		<key>Headers/SDL_surface.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			WtK2vSy/4+ez9IC9XEutgDDYqEQ=
-			</data>
-			<key>hash2</key>
-			<data>
-			1j47d6UhPnUkiWpFDu/JiESXUSIoJc9usypSBXhkSXk=
-			</data>
-		</dict>
-		<key>Headers/SDL_system.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			2hXj/s+4iotUYQ/qacOSBEGZOwg=
-			</data>
-			<key>hash2</key>
-			<data>
-			1UwQf2RE20ecBIH+hfGWJftxYFTVSAzailQDO2A4TNg=
-			</data>
-		</dict>
-		<key>Headers/SDL_syswm.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			3bhBPpfxPHznhnK4qD/z3JMAH6M=
-			</data>
-			<key>hash2</key>
-			<data>
-			MPw8TZLw/QvquHCjlJlNDPjjt8f1IlMKzMfWgn1EF3U=
-			</data>
-		</dict>
-		<key>Headers/SDL_thread.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			1EtqS0N8COfcjGjv8z6z+LQAX3U=
-			</data>
-			<key>hash2</key>
-			<data>
-			l8BOBXAsdov/Q/EbiOiV79CL9dMEnX4y5a/ET0zjVcM=
-			</data>
-		</dict>
-		<key>Headers/SDL_timer.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			HA8k26mZn4Ws75q3lUPqNM195Ms=
-			</data>
-			<key>hash2</key>
-			<data>
-			F20rU5/Zn2KplGmTtClppmMyMWHLeVaEONbGDAwZ5CI=
-			</data>
-		</dict>
-		<key>Headers/SDL_touch.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			MIP5UyBQZhIYlI9EqCgc5hJdhlI=
-			</data>
-			<key>hash2</key>
-			<data>
-			D0XePcMfVFz1/CDx1TMFLtaZ1jo7wIcXt5wvjqVuipU=
-			</data>
-		</dict>
-		<key>Headers/SDL_types.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			xbfdEra92WqYikDB55Po6KyR06E=
-			</data>
-			<key>hash2</key>
-			<data>
-			1Zr6IHz0DVKoehzBggWv99qlrZ5SWYkYxt7cVypGIH4=
-			</data>
-		</dict>
-		<key>Headers/SDL_version.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			hU4j68dijEa3dGfI9RR9HZqg6Wc=
-			</data>
-			<key>hash2</key>
-			<data>
-			zznGd5uO2Ry4J7xPqY5o5QiUPuunsDdsPOEVvQh9nP8=
-			</data>
-		</dict>
-		<key>Headers/SDL_video.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			YH5SyVC9XgoGpFkq3vCcdbQd0uI=
-			</data>
-			<key>hash2</key>
-			<data>
-			Z5MS/bT5DfdUhSXGNao0cZWNyObx6ruc+zTPuGbg1s4=
-			</data>
-		</dict>
-		<key>Headers/SDL_vulkan.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			k22upiGXgz0TzSKkWtDwaKrV2fw=
-			</data>
-			<key>hash2</key>
-			<data>
-			kg2f48mMRh4+Ev5cnsEDDyQqf6YbP7YqWNhykRYzgDo=
-			</data>
-		</dict>
-		<key>Headers/begin_code.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			I6nkG0qY9s2AvaEtVSrocQiX4tQ=
-			</data>
-			<key>hash2</key>
-			<data>
-			8uTiBDsf/cQ5+5utD1yCakQ8kX788aZUQFgKId33VjA=
-			</data>
-		</dict>
-		<key>Headers/close_code.h</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			U4gdDidHLAHPBhe/aWRbzA1M9BQ=
-			</data>
-			<key>hash2</key>
-			<data>
-			ZczKDtPfhp/KAaAzO6wpeeU4I1z0Pn+FiHTmWV14GlM=
-			</data>
-		</dict>
-		<key>Resources/CMake/sdl2-config-version.cmake</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			GOmfPsl6+zUzjRroR1OeRUu1Do0=
-			</data>
-			<key>hash2</key>
-			<data>
-			YeQ8SoXGqMam3mk/39htvQ5fF5Twd16X5JPfl7/hSuk=
-			</data>
-		</dict>
-		<key>Resources/CMake/sdl2-config.cmake</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			HFjU0snuPDDpVpeJJsOGAfWEqrU=
-			</data>
-			<key>hash2</key>
-			<data>
-			3CcBgLSrIjtN3CnKminQz7NzcDt2kcMM2AW/PSX3/0Q=
-			</data>
-		</dict>
-		<key>Resources/Info.plist</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			bxatnXldUxNWh/Txj+8AfjKv2uM=
-			</data>
-			<key>hash2</key>
-			<data>
-			VDDn15XMg0Gg/i2Hh+C6Ra2G00Sn6t8SwS5NuTc0aic=
-			</data>
-		</dict>
-		<key>Resources/License.txt</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			A8VTYHTg+gsOssUp337xdGbdHW0=
-			</data>
-			<key>hash2</key>
-			<data>
-			UN4cvaEc5FbrLcR2jBIsS5miYCucbhF1iAKC2EMtJhM=
-			</data>
-		</dict>
-		<key>Resources/ReadMe.txt</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			04Gl3MPa3Etx4qtkaftLHaPqBVU=
-			</data>
-			<key>hash2</key>
-			<data>
-			OjTqSEaeNJpJyrrZIzKimvTn011CW6ucNulPPxUwgL0=
-			</data>
-		</dict>
-		<key>Resources/default.metallib</key>
-		<dict>
-			<key>hash</key>
-			<data>
-			YrRnNqKCIDuni+6CKxtbY1kbYlw=
-			</data>
-			<key>hash2</key>
-			<data>
-			goC4ji0E3XChWw9+V/QA4PFdbLXiQkmV6QWCcaD6Wzo=
-			</data>
-		</dict>
-	</dict>
-	<key>rules</key>
-	<dict>
-		<key>^Resources/</key>
-		<true/>
-		<key>^Resources/.*\.lproj/</key>
-		<dict>
-			<key>optional</key>
-			<true/>
-			<key>weight</key>
-			<real>1000</real>
-		</dict>
-		<key>^Resources/.*\.lproj/locversion.plist$</key>
-		<dict>
-			<key>omit</key>
-			<true/>
-			<key>weight</key>
-			<real>1100</real>
-		</dict>
-		<key>^Resources/Base\.lproj/</key>
-		<dict>
-			<key>weight</key>
-			<real>1010</real>
-		</dict>
-		<key>^version.plist$</key>
-		<true/>
-	</dict>
-	<key>rules2</key>
-	<dict>
-		<key>.*\.dSYM($|/)</key>
-		<dict>
-			<key>weight</key>
-			<real>11</real>
-		</dict>
-		<key>^(.*/)?\.DS_Store$</key>
-		<dict>
-			<key>omit</key>
-			<true/>
-			<key>weight</key>
-			<real>2000</real>
-		</dict>
-		<key>^(Frameworks|SharedFrameworks|PlugIns|Plug-ins|XPCServices|Helpers|MacOS|Library/(Automator|Spotlight|LoginItems))/</key>
-		<dict>
-			<key>nested</key>
-			<true/>
-			<key>weight</key>
-			<real>10</real>
-		</dict>
-		<key>^.*</key>
-		<true/>
-		<key>^Info\.plist$</key>
-		<dict>
-			<key>omit</key>
-			<true/>
-			<key>weight</key>
-			<real>20</real>
-		</dict>
-		<key>^PkgInfo$</key>
-		<dict>
-			<key>omit</key>
-			<true/>
-			<key>weight</key>
-			<real>20</real>
-		</dict>
-		<key>^Resources/</key>
-		<dict>
-			<key>weight</key>
-			<real>20</real>
-		</dict>
-		<key>^Resources/.*\.lproj/</key>
-		<dict>
-			<key>optional</key>
-			<true/>
-			<key>weight</key>
-			<real>1000</real>
-		</dict>
-		<key>^Resources/.*\.lproj/locversion.plist$</key>
-		<dict>
-			<key>omit</key>
-			<true/>
-			<key>weight</key>
-			<real>1100</real>
-		</dict>
-		<key>^Resources/Base\.lproj/</key>
-		<dict>
-			<key>weight</key>
-			<real>1010</real>
-		</dict>
-		<key>^[^/]+$</key>
-		<dict>
-			<key>nested</key>
-			<true/>
-			<key>weight</key>
-			<real>10</real>
-		</dict>
-		<key>^embedded\.provisionprofile$</key>
-		<dict>
-			<key>weight</key>
-			<real>20</real>
-		</dict>
-		<key>^version\.plist$</key>
-		<dict>
-			<key>weight</key>
-			<real>20</real>
-		</dict>
-	</dict>
-</dict>
-</plist>
binary files a/release/win32/SDL2.dll b/release/win32/SDL2.dll differ
binary files a/release/win64/SDL2.dll b/release/win64/SDL2.dll differ
binary files a/vs2019_project/ft2-clone/SDL2.dll b/vs2019_project/ft2-clone/SDL2.dll differ
--- a/vs2019_project/ft2-clone/sdl/include/SDL2/SDL_config.h
+++ b/vs2019_project/ft2-clone/sdl/include/SDL2/SDL_config.h
@@ -99,8 +99,10 @@
 #define HAVE_D3D11_H 1
 #define HAVE_ROAPI_H 1
 #endif
-#if defined(WDK_NTDDI_VERSION) && WDK_NTDDI_VERSION > 0x0A000008 /* 10.0.19041.0 */
+#if defined(__has_include)
+#if __has_include(<d3d12.h>) && __has_include(<d3d12sdklayers.h>)
 #define HAVE_D3D12_H 1
+#endif
 #endif
 #if defined(_WIN32_MAXVER) && _WIN32_MAXVER >= 0x0603  /* Windows 8.1 SDK */
 #define HAVE_SHELLSCALINGAPI_H 1
--- a/vs2019_project/ft2-clone/sdl/include/SDL2/SDL_hints.h
+++ b/vs2019_project/ft2-clone/sdl/include/SDL2/SDL_hints.h
@@ -1424,7 +1424,19 @@
 #define SDL_HINT_MOUSE_RELATIVE_WARP_MOTION  "SDL_MOUSE_RELATIVE_WARP_MOTION"
 
 /**
- *  \brief  A variable controlling whether mouse events should generate synthetic touch events
+ *  \brief  A variable controlling whether the hardware cursor stays visible when relative mode is active.
+ *
+ *  This variable can be set to the following values:
+ *    "0"       - The cursor will be hidden while relative mode is active (default)
+ *    "1"       - The cursor will remain visible while relative mode is active
+ *
+ *  Note that for systems without raw hardware inputs, relative mode is implemented using warping, so the hardware cursor will visibly warp between frames if this is enabled on those systems.
+ */
+#define SDL_HINT_MOUSE_RELATIVE_CURSOR_VISIBLE  "SDL_MOUSE_RELATIVE_CURSOR_VISIBLE"
+
+/**
+ * A variable controlling whether mouse events should generate synthetic touch
+ * events
  *
  *  This variable can be set to the following values:
  *    "0"       - Mouse events will not generate touch events (default for desktop platforms)
--- a/vs2019_project/ft2-clone/sdl/include/SDL2/SDL_joystick.h
+++ b/vs2019_project/ft2-clone/sdl/include/SDL2/SDL_joystick.h
@@ -790,12 +790,17 @@
  * **WARNING**: Calling this function may delete all events currently in SDL's
  * event queue.
  *
- * \param state can be one of `SDL_QUERY`, `SDL_IGNORE`, or `SDL_ENABLE`
- * \returns 1 if enabled, 0 if disabled, or a negative error code on failure;
- *          call SDL_GetError() for more information.
+ * While `param` is meant to be one of `SDL_QUERY`, `SDL_IGNORE`, or
+ * `SDL_ENABLE`, this function accepts any value, with any non-zero value that
+ * isn't `SDL_QUERY` being treated as `SDL_ENABLE`.
  *
- *          If `state` is `SDL_QUERY` then the current state is returned,
- *          otherwise the new processing state is returned.
+ * If SDL was built with events disabled (extremely uncommon!), this will
+ * do nothing and always return `SDL_IGNORE`.
+ *
+ * \param state can be one of `SDL_QUERY`, `SDL_IGNORE`, or `SDL_ENABLE`
+ * \returns If `state` is `SDL_QUERY` then the current state is returned,
+ *          otherwise `state` is returned (even if it was not one of the
+ *          allowed values).
  *
  * \since This function is available since SDL 2.0.0.
  *
--- a/vs2019_project/ft2-clone/sdl/include/SDL2/SDL_platform.h
+++ b/vs2019_project/ft2-clone/sdl/include/SDL2/SDL_platform.h
@@ -73,7 +73,13 @@
 #if defined(__APPLE__)
 /* lets us know what version of Mac OS X we're compiling on */
 #include <AvailabilityMacros.h>
+#ifndef __has_extension /* Older compilers don't support this */
+#define __has_extension(x) 0
 #include <TargetConditionals.h>
+#undef __has_extension
+#else
+#include <TargetConditionals.h>
+#endif
 
 /* Fix building with older SDKs that don't define these
    See this for more information:
--- a/vs2019_project/ft2-clone/sdl/include/SDL2/SDL_revision.h
+++ b/vs2019_project/ft2-clone/sdl/include/SDL2/SDL_revision.h
@@ -1,7 +1,7 @@
 /* Generated by updaterev.sh, do not edit */
 #ifdef SDL_VENDOR_INFO
-#define SDL_REVISION "SDL-release-2.30.3-0-gfb1497566 (" SDL_VENDOR_INFO ")"
+#define SDL_REVISION "SDL-release-2.30.5-0-g2eef7ca47 (" SDL_VENDOR_INFO ")"
 #else
-#define SDL_REVISION "SDL-release-2.30.3-0-gfb1497566"
+#define SDL_REVISION "SDL-release-2.30.5-0-g2eef7ca47"
 #endif
 #define SDL_REVISION_NUMBER 0
--- a/vs2019_project/ft2-clone/sdl/include/SDL2/SDL_stdinc.h
+++ b/vs2019_project/ft2-clone/sdl/include/SDL2/SDL_stdinc.h
@@ -253,10 +253,10 @@
  * <stdint.h> should define these but this is not true all platforms.
  * (for example win32) */
 #ifndef SDL_PRIs64
-#ifdef PRIs64
-#define SDL_PRIs64 PRIs64
-#elif defined(__WIN32__) || defined(__GDK__)
+#if defined(__WIN32__) || defined(__GDK__)
 #define SDL_PRIs64 "I64d"
+#elif defined(PRIs64)
+#define SDL_PRIs64 PRIs64
 #elif defined(__LP64__) && !defined(__APPLE__)
 #define SDL_PRIs64 "ld"
 #else
@@ -264,10 +264,10 @@
 #endif
 #endif
 #ifndef SDL_PRIu64
-#ifdef PRIu64
-#define SDL_PRIu64 PRIu64
-#elif defined(__WIN32__) || defined(__GDK__)
+#if defined(__WIN32__) || defined(__GDK__)
 #define SDL_PRIu64 "I64u"
+#elif defined(PRIu64)
+#define SDL_PRIu64 PRIu64
 #elif defined(__LP64__) && !defined(__APPLE__)
 #define SDL_PRIu64 "lu"
 #else
@@ -275,10 +275,10 @@
 #endif
 #endif
 #ifndef SDL_PRIx64
-#ifdef PRIx64
-#define SDL_PRIx64 PRIx64
-#elif defined(__WIN32__) || defined(__GDK__)
+#if defined(__WIN32__) || defined(__GDK__)
 #define SDL_PRIx64 "I64x"
+#elif defined(PRIx64)
+#define SDL_PRIx64 PRIx64
 #elif defined(__LP64__) && !defined(__APPLE__)
 #define SDL_PRIx64 "lx"
 #else
@@ -286,10 +286,10 @@
 #endif
 #endif
 #ifndef SDL_PRIX64
-#ifdef PRIX64
-#define SDL_PRIX64 PRIX64
-#elif defined(__WIN32__) || defined(__GDK__)
+#if defined(__WIN32__) || defined(__GDK__)
 #define SDL_PRIX64 "I64X"
+#elif defined(PRIX64)
+#define SDL_PRIX64 PRIX64
 #elif defined(__LP64__) && !defined(__APPLE__)
 #define SDL_PRIX64 "lX"
 #else
--- a/vs2019_project/ft2-clone/sdl/include/SDL2/SDL_version.h
+++ b/vs2019_project/ft2-clone/sdl/include/SDL2/SDL_version.h
@@ -59,7 +59,7 @@
 */
 #define SDL_MAJOR_VERSION   2
 #define SDL_MINOR_VERSION   30
-#define SDL_PATCHLEVEL      3
+#define SDL_PATCHLEVEL      5
 
 /**
  * Macro to determine SDL version program was compiled against.
binary files a/vs2019_project/x64/Debug/SDL2.dll b/vs2019_project/x64/Debug/SDL2.dll differ
--