sdl2-compat: update headers from latest SDL2. (2a646)

From 2a6461d5b7a2fc2f686e2895d9dd92d70e111c98 Mon Sep 17 00:00:00 2001
From: Ozkan Sezer <[EMAIL REDACTED]>
Date: Sat, 27 Jun 2026 23:51:50 +0300
Subject: [PATCH] update headers from latest SDL2.

---
 include/SDL2/SDL_gamecontroller.h | 13 +++++++++++++
 include/SDL2/SDL_locale.h         | 14 +++++++++++++-
 include/SDL2/SDL_stdinc.h         |  8 +++++++-
 3 files changed, 33 insertions(+), 2 deletions(-)

diff --git a/include/SDL2/SDL_gamecontroller.h b/include/SDL2/SDL_gamecontroller.h
index 50a3bc6c..92f3fd5b 100644
--- a/include/SDL2/SDL_gamecontroller.h
+++ b/include/SDL2/SDL_gamecontroller.h
@@ -79,6 +79,19 @@ typedef enum SDL_GameControllerType
     SDL_CONTROLLER_TYPE_MAX
 } SDL_GameControllerType;
 
+/**
+ * Types of game controller control bindings.
+ *
+ * A game controller is a collection of bindings that map arbitrary joystick
+ * buttons, axes and hat switches to specific positions on a generic
+ * console-style gamepad.
+ *
+ * \since This enum is available since SDL 2.0.0.
+ *
+ * \sa SDL_GameControllerButtonBind
+ * \sa SDL_GameControllerGetBindForAxis
+ * \sa SDL_GameControllerGetBindForButton
+ */
 typedef enum SDL_GameControllerBindType
 {
     SDL_CONTROLLER_BINDTYPE_NONE = 0,
diff --git a/include/SDL2/SDL_locale.h b/include/SDL2/SDL_locale.h
index 6638cb3a..c1041508 100644
--- a/include/SDL2/SDL_locale.h
+++ b/include/SDL2/SDL_locale.h
@@ -39,13 +39,25 @@ extern "C" {
 /* *INDENT-ON* */
 #endif
 
-
+/**
+ * A struct to provide locale data.
+ *
+ * Locale data is split into a spoken language, like English, and an optional
+ * country, like Canada. The language will be in ISO-639 format (so English
+ * would be "en"), and the country, if not NULL, will be an ISO-3166 country
+ * code (so Canada would be "CA").
+ *
+ * \since This struct is available since SDL 2.0.14.
+ *
+ * \sa SDL_GetPreferredLocales
+ */
 typedef struct SDL_Locale
 {
     const char *language;  /**< A language name, like "en" for English. */
     const char *country;  /**< A country, like "US" for America. Can be NULL. */
 } SDL_Locale;
 
+
 /**
  * Report the user's preferred locale.
  *
diff --git a/include/SDL2/SDL_stdinc.h b/include/SDL2/SDL_stdinc.h
index 73df518f..0d4ebf1f 100644
--- a/include/SDL2/SDL_stdinc.h
+++ b/include/SDL2/SDL_stdinc.h
@@ -178,12 +178,18 @@ void *alloca(size_t);
 /* @{ */
 
 #ifdef __CC_ARM
+#ifndef SDL_WIKI_DOCUMENTATION_SECTION
 /* ARM's compiler throws warnings if we use an enum: like "SDL_bool x = a < b;" */
 #define SDL_FALSE 0
 #define SDL_TRUE 1
 typedef int SDL_bool;
+#endif
 #else
-typedef enum
+
+/**
+ * A boolean (true/false) type.
+ */
+typedef enum SDL_bool
 {
     SDL_FALSE = 0,
     SDL_TRUE = 1