From 6db5dcb127e58694b4f9e069bea40d5a76f76bc0 Mon Sep 17 00:00:00 2001 From: unknown Date: Wed, 17 Mar 2021 18:28:23 +0000 Subject: [PATCH 1/2] feat: upgrade to feature bundled version of SDL to 2.0.14 --- changelog.md | 2 ++ .../include/SDL.h | 0 .../include/SDL_assert.h | 0 .../include/SDL_atomic.h | 0 .../include/SDL_audio.h | 0 .../include/SDL_bits.h | 0 .../include/SDL_blendmode.h | 0 .../include/SDL_clipboard.h | 0 .../include/SDL_config.h | 0 .../include/SDL_config.h.cmake | 0 .../include/SDL_config.h.in | 0 .../include/SDL_config_android.h | 0 .../include/SDL_config_iphoneos.h | 0 .../include/SDL_config_macosx.h | 0 .../include/SDL_config_minimal.h | 0 .../include/SDL_config_os2.h | 0 .../include/SDL_config_pandora.h | 0 .../include/SDL_config_psp.h | 0 .../include/SDL_config_windows.h | 0 .../include/SDL_config_winrt.h | 0 .../include/SDL_config_wiz.h | 0 .../include/SDL_copying.h | 0 .../include/SDL_cpuinfo.h | 0 .../include/SDL_egl.h | 0 .../include/SDL_endian.h | 0 .../include/SDL_error.h | 0 .../include/SDL_events.h | 0 .../include/SDL_filesystem.h | 0 .../include/SDL_gamecontroller.h | 0 .../include/SDL_gesture.h | 0 .../include/SDL_haptic.h | 0 .../include/SDL_hints.h | 0 .../include/SDL_joystick.h | 0 .../include/SDL_keyboard.h | 0 .../include/SDL_keycode.h | 0 .../include/SDL_loadso.h | 0 .../include/SDL_log.h | 0 .../include/SDL_main.h | 0 .../include/SDL_messagebox.h | 0 .../include/SDL_metal.h | 0 .../include/SDL_mouse.h | 0 .../include/SDL_mutex.h | 0 .../include/SDL_name.h | 0 .../include/SDL_opengl.h | 0 .../include/SDL_opengl_glext.h | 0 .../include/SDL_opengles.h | 0 .../include/SDL_opengles2.h | 0 .../include/SDL_opengles2_gl2.h | 0 .../include/SDL_opengles2_gl2ext.h | 0 .../include/SDL_opengles2_gl2platform.h | 0 .../include/SDL_opengles2_khrplatform.h | 0 .../include/SDL_pixels.h | 0 .../include/SDL_platform.h | 0 .../include/SDL_power.h | 0 .../include/SDL_quit.h | 0 .../include/SDL_rect.h | 0 .../include/SDL_render.h | 0 .../include/SDL_revision.h | 0 .../include/SDL_rwops.h | 0 .../include/SDL_scancode.h | 0 .../include/SDL_sensor.h | 0 .../include/SDL_shape.h | 0 .../include/SDL_stdinc.h | 0 .../include/SDL_surface.h | 0 .../include/SDL_system.h | 0 .../include/SDL_syswm.h | 0 .../include/SDL_test.h | 0 .../include/SDL_test_assert.h | 0 .../include/SDL_test_common.h | 0 .../include/SDL_test_compare.h | 0 .../include/SDL_test_crc32.h | 0 .../include/SDL_test_font.h | 0 .../include/SDL_test_fuzzer.h | 0 .../include/SDL_test_harness.h | 0 .../include/SDL_test_images.h | 0 .../include/SDL_test_log.h | 0 .../include/SDL_test_md5.h | 0 .../include/SDL_test_memory.h | 0 .../include/SDL_test_random.h | 0 .../include/SDL_thread.h | 0 .../include/SDL_timer.h | 0 .../include/SDL_touch.h | 0 .../include/SDL_types.h | 0 .../include/SDL_version.h | 0 .../include/SDL_video.h | 0 .../include/SDL_vulkan.h | 0 .../include/begin_code.h | 0 .../include/close_code.h | 0 sdl2-sys/build.rs | 22 ++----------------- 89 files changed, 4 insertions(+), 20 deletions(-) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_assert.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_atomic.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_audio.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_bits.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_blendmode.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_clipboard.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_config.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_config.h.cmake (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_config.h.in (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_config_android.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_config_iphoneos.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_config_macosx.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_config_minimal.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_config_os2.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_config_pandora.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_config_psp.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_config_windows.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_config_winrt.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_config_wiz.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_copying.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_cpuinfo.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_egl.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_endian.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_error.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_events.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_filesystem.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_gamecontroller.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_gesture.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_haptic.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_hints.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_joystick.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_keyboard.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_keycode.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_loadso.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_log.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_main.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_messagebox.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_metal.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_mouse.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_mutex.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_name.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_opengl.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_opengl_glext.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_opengles.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_opengles2.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_opengles2_gl2.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_opengles2_gl2ext.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_opengles2_gl2platform.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_opengles2_khrplatform.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_pixels.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_platform.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_power.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_quit.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_rect.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_render.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_revision.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_rwops.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_scancode.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_sensor.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_shape.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_stdinc.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_surface.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_system.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_syswm.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_test.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_test_assert.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_test_common.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_test_compare.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_test_crc32.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_test_font.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_test_fuzzer.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_test_harness.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_test_images.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_test_log.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_test_md5.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_test_memory.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_test_random.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_thread.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_timer.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_touch.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_types.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_version.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_video.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/SDL_vulkan.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/begin_code.h (100%) rename sdl2-sys/{SDL2-2.0.12 => SDL2-2.0.14}/include/close_code.h (100%) diff --git a/changelog.md b/changelog.md index 5556fcad5c0..8fa6ba34765 100644 --- a/changelog.md +++ b/changelog.md @@ -10,6 +10,8 @@ when upgrading from a version of rust-sdl2 to another. [PR #1080](https://github.com/Rust-SDL2/rust-sdl2/pull/1080): Fix line endings of patches to lf so patching of sources works on Windows. +[PR #1078](https://github.com/Rust-SDL2/rust-sdl2/pull/1078): Upgraded the "bundled" version of SDL2 to 2.0.14 + ### v0.34.4 [PR #1057](https://github.com/Rust-SDL2/rust-sdl2/pull/1057): fix memory safety bug in set_error diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL.h b/sdl2-sys/SDL2-2.0.14/include/SDL.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL.h rename to sdl2-sys/SDL2-2.0.14/include/SDL.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_assert.h b/sdl2-sys/SDL2-2.0.14/include/SDL_assert.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_assert.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_assert.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_atomic.h b/sdl2-sys/SDL2-2.0.14/include/SDL_atomic.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_atomic.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_atomic.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_audio.h b/sdl2-sys/SDL2-2.0.14/include/SDL_audio.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_audio.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_audio.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_bits.h b/sdl2-sys/SDL2-2.0.14/include/SDL_bits.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_bits.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_bits.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_blendmode.h b/sdl2-sys/SDL2-2.0.14/include/SDL_blendmode.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_blendmode.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_blendmode.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_clipboard.h b/sdl2-sys/SDL2-2.0.14/include/SDL_clipboard.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_clipboard.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_clipboard.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_config.h b/sdl2-sys/SDL2-2.0.14/include/SDL_config.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_config.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_config.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_config.h.cmake b/sdl2-sys/SDL2-2.0.14/include/SDL_config.h.cmake similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_config.h.cmake rename to sdl2-sys/SDL2-2.0.14/include/SDL_config.h.cmake diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_config.h.in b/sdl2-sys/SDL2-2.0.14/include/SDL_config.h.in similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_config.h.in rename to sdl2-sys/SDL2-2.0.14/include/SDL_config.h.in diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_config_android.h b/sdl2-sys/SDL2-2.0.14/include/SDL_config_android.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_config_android.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_config_android.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_config_iphoneos.h b/sdl2-sys/SDL2-2.0.14/include/SDL_config_iphoneos.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_config_iphoneos.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_config_iphoneos.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_config_macosx.h b/sdl2-sys/SDL2-2.0.14/include/SDL_config_macosx.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_config_macosx.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_config_macosx.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_config_minimal.h b/sdl2-sys/SDL2-2.0.14/include/SDL_config_minimal.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_config_minimal.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_config_minimal.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_config_os2.h b/sdl2-sys/SDL2-2.0.14/include/SDL_config_os2.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_config_os2.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_config_os2.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_config_pandora.h b/sdl2-sys/SDL2-2.0.14/include/SDL_config_pandora.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_config_pandora.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_config_pandora.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_config_psp.h b/sdl2-sys/SDL2-2.0.14/include/SDL_config_psp.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_config_psp.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_config_psp.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_config_windows.h b/sdl2-sys/SDL2-2.0.14/include/SDL_config_windows.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_config_windows.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_config_windows.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_config_winrt.h b/sdl2-sys/SDL2-2.0.14/include/SDL_config_winrt.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_config_winrt.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_config_winrt.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_config_wiz.h b/sdl2-sys/SDL2-2.0.14/include/SDL_config_wiz.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_config_wiz.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_config_wiz.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_copying.h b/sdl2-sys/SDL2-2.0.14/include/SDL_copying.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_copying.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_copying.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_cpuinfo.h b/sdl2-sys/SDL2-2.0.14/include/SDL_cpuinfo.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_cpuinfo.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_cpuinfo.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_egl.h b/sdl2-sys/SDL2-2.0.14/include/SDL_egl.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_egl.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_egl.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_endian.h b/sdl2-sys/SDL2-2.0.14/include/SDL_endian.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_endian.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_endian.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_error.h b/sdl2-sys/SDL2-2.0.14/include/SDL_error.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_error.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_error.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_events.h b/sdl2-sys/SDL2-2.0.14/include/SDL_events.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_events.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_events.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_filesystem.h b/sdl2-sys/SDL2-2.0.14/include/SDL_filesystem.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_filesystem.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_filesystem.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_gamecontroller.h b/sdl2-sys/SDL2-2.0.14/include/SDL_gamecontroller.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_gamecontroller.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_gamecontroller.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_gesture.h b/sdl2-sys/SDL2-2.0.14/include/SDL_gesture.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_gesture.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_gesture.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_haptic.h b/sdl2-sys/SDL2-2.0.14/include/SDL_haptic.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_haptic.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_haptic.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_hints.h b/sdl2-sys/SDL2-2.0.14/include/SDL_hints.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_hints.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_hints.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_joystick.h b/sdl2-sys/SDL2-2.0.14/include/SDL_joystick.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_joystick.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_joystick.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_keyboard.h b/sdl2-sys/SDL2-2.0.14/include/SDL_keyboard.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_keyboard.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_keyboard.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_keycode.h b/sdl2-sys/SDL2-2.0.14/include/SDL_keycode.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_keycode.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_keycode.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_loadso.h b/sdl2-sys/SDL2-2.0.14/include/SDL_loadso.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_loadso.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_loadso.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_log.h b/sdl2-sys/SDL2-2.0.14/include/SDL_log.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_log.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_log.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_main.h b/sdl2-sys/SDL2-2.0.14/include/SDL_main.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_main.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_main.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_messagebox.h b/sdl2-sys/SDL2-2.0.14/include/SDL_messagebox.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_messagebox.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_messagebox.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_metal.h b/sdl2-sys/SDL2-2.0.14/include/SDL_metal.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_metal.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_metal.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_mouse.h b/sdl2-sys/SDL2-2.0.14/include/SDL_mouse.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_mouse.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_mouse.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_mutex.h b/sdl2-sys/SDL2-2.0.14/include/SDL_mutex.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_mutex.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_mutex.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_name.h b/sdl2-sys/SDL2-2.0.14/include/SDL_name.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_name.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_name.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_opengl.h b/sdl2-sys/SDL2-2.0.14/include/SDL_opengl.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_opengl.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_opengl.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_opengl_glext.h b/sdl2-sys/SDL2-2.0.14/include/SDL_opengl_glext.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_opengl_glext.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_opengl_glext.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_opengles.h b/sdl2-sys/SDL2-2.0.14/include/SDL_opengles.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_opengles.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_opengles.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_opengles2.h b/sdl2-sys/SDL2-2.0.14/include/SDL_opengles2.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_opengles2.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_opengles2.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_opengles2_gl2.h b/sdl2-sys/SDL2-2.0.14/include/SDL_opengles2_gl2.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_opengles2_gl2.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_opengles2_gl2.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_opengles2_gl2ext.h b/sdl2-sys/SDL2-2.0.14/include/SDL_opengles2_gl2ext.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_opengles2_gl2ext.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_opengles2_gl2ext.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_opengles2_gl2platform.h b/sdl2-sys/SDL2-2.0.14/include/SDL_opengles2_gl2platform.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_opengles2_gl2platform.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_opengles2_gl2platform.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_opengles2_khrplatform.h b/sdl2-sys/SDL2-2.0.14/include/SDL_opengles2_khrplatform.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_opengles2_khrplatform.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_opengles2_khrplatform.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_pixels.h b/sdl2-sys/SDL2-2.0.14/include/SDL_pixels.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_pixels.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_pixels.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_platform.h b/sdl2-sys/SDL2-2.0.14/include/SDL_platform.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_platform.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_platform.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_power.h b/sdl2-sys/SDL2-2.0.14/include/SDL_power.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_power.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_power.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_quit.h b/sdl2-sys/SDL2-2.0.14/include/SDL_quit.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_quit.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_quit.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_rect.h b/sdl2-sys/SDL2-2.0.14/include/SDL_rect.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_rect.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_rect.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_render.h b/sdl2-sys/SDL2-2.0.14/include/SDL_render.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_render.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_render.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_revision.h b/sdl2-sys/SDL2-2.0.14/include/SDL_revision.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_revision.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_revision.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_rwops.h b/sdl2-sys/SDL2-2.0.14/include/SDL_rwops.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_rwops.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_rwops.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_scancode.h b/sdl2-sys/SDL2-2.0.14/include/SDL_scancode.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_scancode.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_scancode.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_sensor.h b/sdl2-sys/SDL2-2.0.14/include/SDL_sensor.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_sensor.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_sensor.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_shape.h b/sdl2-sys/SDL2-2.0.14/include/SDL_shape.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_shape.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_shape.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_stdinc.h b/sdl2-sys/SDL2-2.0.14/include/SDL_stdinc.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_stdinc.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_stdinc.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_surface.h b/sdl2-sys/SDL2-2.0.14/include/SDL_surface.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_surface.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_surface.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_system.h b/sdl2-sys/SDL2-2.0.14/include/SDL_system.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_system.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_system.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_syswm.h b/sdl2-sys/SDL2-2.0.14/include/SDL_syswm.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_syswm.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_syswm.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_test.h b/sdl2-sys/SDL2-2.0.14/include/SDL_test.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_test.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_test.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_test_assert.h b/sdl2-sys/SDL2-2.0.14/include/SDL_test_assert.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_test_assert.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_test_assert.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_test_common.h b/sdl2-sys/SDL2-2.0.14/include/SDL_test_common.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_test_common.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_test_common.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_test_compare.h b/sdl2-sys/SDL2-2.0.14/include/SDL_test_compare.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_test_compare.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_test_compare.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_test_crc32.h b/sdl2-sys/SDL2-2.0.14/include/SDL_test_crc32.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_test_crc32.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_test_crc32.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_test_font.h b/sdl2-sys/SDL2-2.0.14/include/SDL_test_font.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_test_font.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_test_font.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_test_fuzzer.h b/sdl2-sys/SDL2-2.0.14/include/SDL_test_fuzzer.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_test_fuzzer.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_test_fuzzer.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_test_harness.h b/sdl2-sys/SDL2-2.0.14/include/SDL_test_harness.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_test_harness.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_test_harness.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_test_images.h b/sdl2-sys/SDL2-2.0.14/include/SDL_test_images.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_test_images.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_test_images.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_test_log.h b/sdl2-sys/SDL2-2.0.14/include/SDL_test_log.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_test_log.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_test_log.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_test_md5.h b/sdl2-sys/SDL2-2.0.14/include/SDL_test_md5.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_test_md5.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_test_md5.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_test_memory.h b/sdl2-sys/SDL2-2.0.14/include/SDL_test_memory.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_test_memory.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_test_memory.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_test_random.h b/sdl2-sys/SDL2-2.0.14/include/SDL_test_random.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_test_random.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_test_random.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_thread.h b/sdl2-sys/SDL2-2.0.14/include/SDL_thread.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_thread.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_thread.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_timer.h b/sdl2-sys/SDL2-2.0.14/include/SDL_timer.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_timer.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_timer.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_touch.h b/sdl2-sys/SDL2-2.0.14/include/SDL_touch.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_touch.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_touch.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_types.h b/sdl2-sys/SDL2-2.0.14/include/SDL_types.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_types.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_types.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_version.h b/sdl2-sys/SDL2-2.0.14/include/SDL_version.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_version.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_version.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_video.h b/sdl2-sys/SDL2-2.0.14/include/SDL_video.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_video.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_video.h diff --git a/sdl2-sys/SDL2-2.0.12/include/SDL_vulkan.h b/sdl2-sys/SDL2-2.0.14/include/SDL_vulkan.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/SDL_vulkan.h rename to sdl2-sys/SDL2-2.0.14/include/SDL_vulkan.h diff --git a/sdl2-sys/SDL2-2.0.12/include/begin_code.h b/sdl2-sys/SDL2-2.0.14/include/begin_code.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/begin_code.h rename to sdl2-sys/SDL2-2.0.14/include/begin_code.h diff --git a/sdl2-sys/SDL2-2.0.12/include/close_code.h b/sdl2-sys/SDL2-2.0.14/include/close_code.h similarity index 100% rename from sdl2-sys/SDL2-2.0.12/include/close_code.h rename to sdl2-sys/SDL2-2.0.14/include/close_code.h diff --git a/sdl2-sys/build.rs b/sdl2-sys/build.rs index 5beeefafde2..a3dfcaeb697 100644 --- a/sdl2-sys/build.rs +++ b/sdl2-sys/build.rs @@ -20,10 +20,10 @@ use std::path::{Path, PathBuf}; use std::{env, fs, io}; // corresponds to the headers that we have in sdl2-sys/SDL2-{version} -const SDL2_HEADERS_BUNDLED_VERSION: &str = "2.0.12"; +const SDL2_HEADERS_BUNDLED_VERSION: &str = "2.0.14"; // means the lastest stable version that can be downloaded from SDL2's source -const LASTEST_SDL2_VERSION: &str = "2.0.12"; +const LASTEST_SDL2_VERSION: &str = "2.0.14"; #[cfg(feature = "bindgen")] macro_rules! add_msvc_includes_to_bindings { @@ -171,24 +171,6 @@ fn patch_sdl2(sdl2_source_path: &Path) { // Required patches can be added here like this: // ("SDL-2.x.y-filename.patch", include_str!("patches/SDL-2.x.y-filename.patch")), - // https://bugzilla.libsdl.org/show_bug.cgi?id=5105 - // Expected to be fixed in 2.0.14 - ( - "SDL2-2.0.12-sndio-shared-linux.patch", - include_str!("patches/SDL2-2.0.12-sndio-shared-linux.patch"), - ), - // https://bugzilla.libsdl.org/show_bug.cgi?id=3421 - // Expected to be fixed in 2.0.14 - ( - "SDL2-2.0.12-SDL_DISABLE_WINDOWS_IME.patch", - include_str!("patches/SDL2-2.0.12-SDL_DISABLE_WINDOWS_IME.patch"), - ), - // https://bugzilla.libsdl.org/show_bug.cgi?id=4988 - // Expected to be fixed in 2.0.14 - ( - "SDL2-2.0.12-metal-detection-macos-ios.patch", - include_str!("patches/SDL2-2.0.12-metal-detection-macos-ios.patch"), - ), // Cherrypick to fix "SDL_string.obj : error LNK2019: unresolved external symbol memset // referenced in function SDL_vsnprintf_REAL" // Expected to be fixed in 2.0.15 From d9790ea5c7fb1d1f4b2b0deb0063bf2a1955dbe5 Mon Sep 17 00:00:00 2001 From: unknown Date: Fri, 19 Mar 2021 14:20:36 +0000 Subject: [PATCH 2/2] feat: add all code from sdl 2.0.14 release in include/ --- sdl2-sys/SDL2-2.0.14/include/SDL.h | 2 + sdl2-sys/SDL2-2.0.14/include/SDL_assert.h | 2 + .../SDL2-2.0.14/include/SDL_config.h.cmake | 23 +- sdl2-sys/SDL2-2.0.14/include/SDL_config.h.in | 25 +- .../SDL2-2.0.14/include/SDL_config_android.h | 7 +- .../SDL2-2.0.14/include/SDL_config_iphoneos.h | 19 +- .../SDL2-2.0.14/include/SDL_config_macosx.h | 12 +- sdl2-sys/SDL2-2.0.14/include/SDL_config_os2.h | 20 +- .../SDL2-2.0.14/include/SDL_config_pandora.h | 4 +- sdl2-sys/SDL2-2.0.14/include/SDL_config_psp.h | 1 + .../SDL2-2.0.14/include/SDL_config_windows.h | 38 ++- .../SDL2-2.0.14/include/SDL_config_winrt.h | 3 + sdl2-sys/SDL2-2.0.14/include/SDL_config_wiz.h | 4 +- sdl2-sys/SDL2-2.0.14/include/SDL_cpuinfo.h | 24 ++ sdl2-sys/SDL2-2.0.14/include/SDL_error.h | 38 ++- sdl2-sys/SDL2-2.0.14/include/SDL_events.h | 89 ++++--- .../SDL2-2.0.14/include/SDL_gamecontroller.h | 139 ++++++++++- sdl2-sys/SDL2-2.0.14/include/SDL_haptic.h | 9 + sdl2-sys/SDL2-2.0.14/include/SDL_hints.h | 222 +++++++++++++++++- sdl2-sys/SDL2-2.0.14/include/SDL_joystick.h | 127 ++++++++-- sdl2-sys/SDL2-2.0.14/include/SDL_keycode.h | 14 +- sdl2-sys/SDL2-2.0.14/include/SDL_locale.h | 101 ++++++++ sdl2-sys/SDL2-2.0.14/include/SDL_metal.h | 44 +++- sdl2-sys/SDL2-2.0.14/include/SDL_misc.h | 75 ++++++ sdl2-sys/SDL2-2.0.14/include/SDL_pixels.h | 18 +- sdl2-sys/SDL2-2.0.14/include/SDL_revision.h | 4 +- sdl2-sys/SDL2-2.0.14/include/SDL_rwops.h | 10 +- sdl2-sys/SDL2-2.0.14/include/SDL_sensor.h | 32 ++- sdl2-sys/SDL2-2.0.14/include/SDL_stdinc.h | 32 ++- sdl2-sys/SDL2-2.0.14/include/SDL_surface.h | 11 +- sdl2-sys/SDL2-2.0.14/include/SDL_system.h | 9 + sdl2-sys/SDL2-2.0.14/include/SDL_syswm.h | 23 ++ sdl2-sys/SDL2-2.0.14/include/SDL_thread.h | 5 + sdl2-sys/SDL2-2.0.14/include/SDL_version.h | 2 +- sdl2-sys/SDL2-2.0.14/include/SDL_video.h | 13 +- sdl2-sys/SDL2-2.0.14/include/SDL_vulkan.h | 14 +- sdl2-sys/SDL2-2.0.14/include/begin_code.h | 12 +- 37 files changed, 1068 insertions(+), 159 deletions(-) create mode 100644 sdl2-sys/SDL2-2.0.14/include/SDL_locale.h create mode 100644 sdl2-sys/SDL2-2.0.14/include/SDL_misc.h diff --git a/sdl2-sys/SDL2-2.0.14/include/SDL.h b/sdl2-sys/SDL2-2.0.14/include/SDL.h index 634bf4b6d3f..e2656caf707 100644 --- a/sdl2-sys/SDL2-2.0.14/include/SDL.h +++ b/sdl2-sys/SDL2-2.0.14/include/SDL.h @@ -59,6 +59,8 @@ #include "SDL_timer.h" #include "SDL_version.h" #include "SDL_video.h" +#include "SDL_locale.h" +#include "SDL_misc.h" #include "begin_code.h" /* Set up for C function definitions, even when using C++ */ diff --git a/sdl2-sys/SDL2-2.0.14/include/SDL_assert.h b/sdl2-sys/SDL2-2.0.14/include/SDL_assert.h index 21bdad998be..f8a368ec1b0 100644 --- a/sdl2-sys/SDL2-2.0.14/include/SDL_assert.h +++ b/sdl2-sys/SDL2-2.0.14/include/SDL_assert.h @@ -53,6 +53,8 @@ assert can have unique static variables associated with it. #define SDL_TriggerBreakpoint() __debugbreak() #elif ( (!defined(__NACL__)) && ((defined(__GNUC__) || defined(__clang__)) && (defined(__i386__) || defined(__x86_64__))) ) #define SDL_TriggerBreakpoint() __asm__ __volatile__ ( "int $3\n\t" ) +#elif ( defined(__APPLE__) && defined(__arm64__) ) /* this might work on other ARM targets, but this is a known quantity... */ + #define SDL_TriggerBreakpoint() __asm__ __volatile__ ( "brk #22\n\t" ) #elif defined(__386__) && defined(__WATCOMC__) #define SDL_TriggerBreakpoint() { _asm { int 0x03 } } #elif defined(HAVE_SIGNAL_H) && !defined(__WATCOMC__) diff --git a/sdl2-sys/SDL2-2.0.14/include/SDL_config.h.cmake b/sdl2-sys/SDL2-2.0.14/include/SDL_config.h.cmake index d6ea31eacdd..754b57013d1 100644 --- a/sdl2-sys/SDL2-2.0.14/include/SDL_config.h.cmake +++ b/sdl2-sys/SDL2-2.0.14/include/SDL_config.h.cmake @@ -100,6 +100,10 @@ #cmakedefine HAVE_WCSSTR 1 #cmakedefine HAVE_WCSCMP 1 #cmakedefine HAVE_WCSNCMP 1 +#cmakedefine HAVE_WCSCASECMP 1 +#cmakedefine HAVE__WCSICMP 1 +#cmakedefine HAVE_WCSNCASECMP 1 +#cmakedefine HAVE__WCSNICMP 1 #cmakedefine HAVE_STRLEN 1 #cmakedefine HAVE_STRLCPY 1 #cmakedefine HAVE_STRLCAT 1 @@ -172,6 +176,8 @@ #cmakedefine HAVE_SQRTF 1 #cmakedefine HAVE_TAN 1 #cmakedefine HAVE_TANF 1 +#cmakedefine HAVE_TRUNC 1 +#cmakedefine HAVE_TRUNCF 1 #cmakedefine HAVE_FOPEN64 1 #cmakedefine HAVE_FSEEKO 1 #cmakedefine HAVE_FSEEKO64 1 @@ -189,6 +195,7 @@ #cmakedefine HAVE_PTHREAD_SET_NAME_NP 1 #cmakedefine HAVE_SEM_TIMEDWAIT 1 #cmakedefine HAVE_GETAUXVAL 1 +#cmakedefine HAVE_ELF_AUX_INFO 1 #cmakedefine HAVE_POLL 1 #cmakedefine HAVE__EXIT 1 @@ -203,11 +210,15 @@ #cmakedefine HAVE_ALTIVEC_H 1 #cmakedefine HAVE_DBUS_DBUS_H 1 -#cmakedefine HAVE_FCITX_FRONTEND_H 1 +#cmakedefine HAVE_FCITX 1 #cmakedefine HAVE_IBUS_IBUS_H 1 +#cmakedefine HAVE_SYS_INOTIFY_H 1 +#cmakedefine HAVE_INOTIFY_INIT 1 +#cmakedefine HAVE_INOTIFY_INIT1 1 +#cmakedefine HAVE_INOTIFY 1 #cmakedefine HAVE_IMMINTRIN_H 1 -#cmakedefine HAVE_LIBSAMPLERATE_H 1 #cmakedefine HAVE_LIBUDEV_H 1 +#cmakedefine HAVE_LIBSAMPLERATE_H 1 #cmakedefine HAVE_D3D_H @HAVE_D3D_H@ #cmakedefine HAVE_D3D11_H @HAVE_D3D11_H@ @@ -219,6 +230,7 @@ #cmakedefine HAVE_MMDEVICEAPI_H @HAVE_MMDEVICEAPI_H@ #cmakedefine HAVE_AUDIOCLIENT_H @HAVE_AUDIOCLIENT_H@ +#cmakedefine HAVE_SENSORSAPI_H @HAVE_SENSORSAPI_H@ #cmakedefine HAVE_XINPUT_GAMEPAD_EX @HAVE_XINPUT_GAMEPAD_EX@ #cmakedefine HAVE_XINPUT_STATE_EX @HAVE_XINPUT_STATE_EX@ @@ -279,7 +291,6 @@ /* Enable various input drivers */ #cmakedefine SDL_INPUT_LINUXEV @SDL_INPUT_LINUXEV@ #cmakedefine SDL_INPUT_LINUXKD @SDL_INPUT_LINUXKD@ -#cmakedefine SDL_INPUT_TSLIB @SDL_INPUT_TSLIB@ #cmakedefine SDL_JOYSTICK_ANDROID @SDL_JOYSTICK_ANDROID@ #cmakedefine SDL_JOYSTICK_HAIKU @SDL_JOYSTICK_HAIKU@ #cmakedefine SDL_JOYSTICK_DINPUT @SDL_JOYSTICK_DINPUT@ @@ -293,6 +304,7 @@ #cmakedefine SDL_JOYSTICK_USBHID_MACHINE_JOYSTICK_H @SDL_JOYSTICK_USBHID_MACHINE_JOYSTICK_H@ #cmakedefine SDL_JOYSTICK_HIDAPI @SDL_JOYSTICK_HIDAPI@ #cmakedefine SDL_JOYSTICK_EMSCRIPTEN @SDL_JOYSTICK_EMSCRIPTEN@ +#cmakedefine SDL_JOYSTICK_VIRTUAL @SDL_JOYSTICK_VIRTUAL@ #cmakedefine SDL_HAPTIC_DUMMY @SDL_HAPTIC_DUMMY@ #cmakedefine SDL_HAPTIC_LINUX @SDL_HAPTIC_LINUX@ #cmakedefine SDL_HAPTIC_IOKIT @SDL_HAPTIC_IOKIT@ @@ -304,6 +316,7 @@ /* Enable various sensor drivers */ #cmakedefine SDL_SENSOR_ANDROID @SDL_SENSOR_ANDROID@ #cmakedefine SDL_SENSOR_COREMOTION @SDL_SENSOR_COREMOTION@ +#cmakedefine SDL_SENSOR_WINDOWS @SDL_SENSOR_WINDOWS@ #cmakedefine SDL_SENSOR_DUMMY @SDL_SENSOR_DUMMY@ /* Enable various shared object loading systems */ @@ -335,6 +348,7 @@ #cmakedefine SDL_VIDEO_DRIVER_DUMMY @SDL_VIDEO_DRIVER_DUMMY@ #cmakedefine SDL_VIDEO_DRIVER_OFFSCREEN @SDL_VIDEO_DRIVER_OFFSCREEN@ #cmakedefine SDL_VIDEO_DRIVER_WINDOWS @SDL_VIDEO_DRIVER_WINDOWS@ +#cmakedefine SDL_VIDEO_DRIVER_WINRT @SDL_VIDEO_DRIVER_WINRT@ #cmakedefine SDL_VIDEO_DRIVER_WAYLAND @SDL_VIDEO_DRIVER_WAYLAND@ #cmakedefine SDL_VIDEO_DRIVER_RPI @SDL_VIDEO_DRIVER_RPI@ #cmakedefine SDL_VIDEO_DRIVER_VIVANTE @SDL_VIDEO_DRIVER_VIVANTE@ @@ -403,6 +417,7 @@ #cmakedefine SDL_POWER_ANDROID @SDL_POWER_ANDROID@ #cmakedefine SDL_POWER_LINUX @SDL_POWER_LINUX@ #cmakedefine SDL_POWER_WINDOWS @SDL_POWER_WINDOWS@ +#cmakedefine SDL_POWER_WINRT @SDL_POWER_WINRT@ #cmakedefine SDL_POWER_MACOSX @SDL_POWER_MACOSX@ #cmakedefine SDL_POWER_UIKIT @SDL_POWER_UIKIT@ #cmakedefine SDL_POWER_HAIKU @SDL_POWER_HAIKU@ @@ -431,7 +446,7 @@ #cmakedefine SDL_IPHONE_KEYBOARD @SDL_IPHONE_KEYBOARD@ #cmakedefine SDL_IPHONE_LAUNCHSCREEN @SDL_IPHONE_LAUNCHSCREEN@ -#if !defined(__WIN32__) +#if !defined(__WIN32__) && !defined(__WINRT__) # if !defined(_STDINT_H_) && !defined(_STDINT_H) && !defined(HAVE_STDINT_H) && !defined(_HAVE_STDINT_H) typedef unsigned int size_t; typedef signed char int8_t; diff --git a/sdl2-sys/SDL2-2.0.14/include/SDL_config.h.in b/sdl2-sys/SDL2-2.0.14/include/SDL_config.h.in index f769e3cf430..3a2a7149d3c 100644 --- a/sdl2-sys/SDL2-2.0.14/include/SDL_config.h.in +++ b/sdl2-sys/SDL2-2.0.14/include/SDL_config.h.in @@ -103,6 +103,10 @@ #undef HAVE_WCSSTR #undef HAVE_WCSCMP #undef HAVE_WCSNCMP +#undef HAVE_WCSCASECMP +#undef HAVE__WCSICMP +#undef HAVE_WCSNCASECMP +#undef HAVE__WCSNICMP #undef HAVE_STRLEN #undef HAVE_STRLCPY #undef HAVE_STRLCAT @@ -176,6 +180,8 @@ #undef HAVE_SQRTF #undef HAVE_TAN #undef HAVE_TANF +#undef HAVE_TRUNC +#undef HAVE_TRUNCF #undef HAVE_FOPEN64 #undef HAVE_FSEEKO #undef HAVE_FSEEKO64 @@ -193,6 +199,7 @@ #undef HAVE_PTHREAD_SET_NAME_NP #undef HAVE_SEM_TIMEDWAIT #undef HAVE_GETAUXVAL +#undef HAVE_ELF_AUX_INFO #undef HAVE_POLL #undef HAVE__EXIT @@ -204,19 +211,26 @@ #undef HAVE_ALTIVEC_H #undef HAVE_DBUS_DBUS_H -#undef HAVE_FCITX_FRONTEND_H +#undef HAVE_FCITX +#undef HAVE_SYS_INOTIFY_H +#undef HAVE_INOTIFY_INIT +#undef HAVE_INOTIFY_INIT1 +#undef HAVE_INOTIFY #undef HAVE_IBUS_IBUS_H #undef HAVE_IMMINTRIN_H -#undef HAVE_LIBSAMPLERATE_H #undef HAVE_LIBUDEV_H +#undef HAVE_LIBSAMPLERATE_H #undef HAVE_DDRAW_H #undef HAVE_DINPUT_H #undef HAVE_DSOUND_H #undef HAVE_DXGI_H #undef HAVE_XINPUT_H + #undef HAVE_MMDEVICEAPI_H #undef HAVE_AUDIOCLIENT_H +#undef HAVE_SENSORSAPI_H + #undef HAVE_XINPUT_GAMEPAD_EX #undef HAVE_XINPUT_STATE_EX @@ -276,20 +290,23 @@ /* Enable various input drivers */ #undef SDL_INPUT_LINUXEV +#undef SDL_INPUT_FBSDKBIO #undef SDL_INPUT_LINUXKD -#undef SDL_INPUT_TSLIB #undef SDL_JOYSTICK_HAIKU #undef SDL_JOYSTICK_DINPUT #undef SDL_JOYSTICK_XINPUT #undef SDL_JOYSTICK_DUMMY #undef SDL_JOYSTICK_IOKIT +#undef SDL_JOYSTICK_MFI #undef SDL_JOYSTICK_LINUX #undef SDL_JOYSTICK_ANDROID #undef SDL_JOYSTICK_WINMM #undef SDL_JOYSTICK_USBHID #undef SDL_JOYSTICK_USBHID_MACHINE_JOYSTICK_H #undef SDL_JOYSTICK_HIDAPI +#undef SDL_JOYSTICK_RAWINPUT #undef SDL_JOYSTICK_EMSCRIPTEN +#undef SDL_JOYSTICK_VIRTUAL #undef SDL_HAPTIC_DUMMY #undef SDL_HAPTIC_ANDROID #undef SDL_HAPTIC_LINUX @@ -299,6 +316,8 @@ /* Enable various sensor drivers */ #undef SDL_SENSOR_ANDROID +#undef SDL_SENSOR_COREMOTION +#undef SDL_SENSOR_WINDOWS #undef SDL_SENSOR_DUMMY /* Enable various shared object loading systems */ diff --git a/sdl2-sys/SDL2-2.0.14/include/SDL_config_android.h b/sdl2-sys/SDL2-2.0.14/include/SDL_config_android.h index d057e176440..d1148cf2f90 100644 --- a/sdl2-sys/SDL2-2.0.14/include/SDL_config_android.h +++ b/sdl2-sys/SDL2-2.0.14/include/SDL_config_android.h @@ -121,6 +121,8 @@ #define HAVE_SQRTF 1 #define HAVE_TAN 1 #define HAVE_TANF 1 +#define HAVE_TRUNC 1 +#define HAVE_TRUNCF 1 #define HAVE_SIGACTION 1 #define HAVE_SETJMP 1 #define HAVE_NANOSLEEP 1 @@ -136,8 +138,9 @@ /* Enable various input drivers */ #define SDL_JOYSTICK_ANDROID 1 -#define SDL_JOYSTICK_HIDAPI 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 diff --git a/sdl2-sys/SDL2-2.0.14/include/SDL_config_iphoneos.h b/sdl2-sys/SDL2-2.0.14/include/SDL_config_iphoneos.h index 38929a8b3ab..f06ad33540e 100644 --- a/sdl2-sys/SDL2-2.0.14/include/SDL_config_iphoneos.h +++ b/sdl2-sys/SDL2-2.0.14/include/SDL_config_iphoneos.h @@ -122,6 +122,8 @@ #define HAVE_SQRTF 1 #define HAVE_TAN 1 #define HAVE_TANF 1 +#define HAVE_TRUNC 1 +#define HAVE_TRUNCF 1 #define HAVE_SIGACTION 1 #define HAVE_SETJMP 1 #define HAVE_NANOSLEEP 1 @@ -136,9 +138,11 @@ /* Enable the stub haptic driver (src/haptic/dummy/\*.c) */ #define SDL_HAPTIC_DUMMY 1 -/* Enable MFi joystick support */ +/* Enable joystick support */ +/* Only enable HIDAPI support if you want to support Steam Controllers on iOS and tvOS */ +/*#define SDL_JOYSTICK_HIDAPI 1*/ #define SDL_JOYSTICK_MFI 1 -#define SDL_JOYSTICK_HIDAPI 1 +#define SDL_JOYSTICK_VIRTUAL 1 #ifdef __TVOS__ #define SDL_SENSOR_DUMMY 1 @@ -167,8 +171,10 @@ #define SDL_VIDEO_RENDER_OGL_ES 1 #define SDL_VIDEO_RENDER_OGL_ES2 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)) +/* Metal supported on 64-bit devices running iOS 8.0 and tvOS 9.0 and newer + Also supported in simulator from iOS 13.0 and tvOS 13.0 + */ +#if (TARGET_OS_SIMULATOR && ((__IPHONE_OS_VERSION_MIN_REQUIRED >= 130000) || (__TV_OS_VERSION_MIN_REQUIRED >= 130000))) || (!TARGET_CPU_ARM && ((__IPHONE_OS_VERSION_MIN_REQUIRED >= 80000) || (__TV_OS_VERSION_MIN_REQUIRED >= 90000))) #define SDL_PLATFORM_SUPPORTS_METAL 1 #else #define SDL_PLATFORM_SUPPORTS_METAL 0 @@ -195,11 +201,6 @@ /* enable iOS extended launch screen */ #define SDL_IPHONE_LAUNCHSCREEN 1 -/* Set max recognized G-force from accelerometer - See src/joystick/uikit/SDL_sysjoystick.m for notes on why this is needed - */ -#define SDL_IPHONE_MAX_GFORCE 5.0 - /* enable filesystem support */ #define SDL_FILESYSTEM_COCOA 1 diff --git a/sdl2-sys/SDL2-2.0.14/include/SDL_config_macosx.h b/sdl2-sys/SDL2-2.0.14/include/SDL_config_macosx.h index 114134593c6..4b45f1658be 100644 --- a/sdl2-sys/SDL2-2.0.14/include/SDL_config_macosx.h +++ b/sdl2-sys/SDL2-2.0.14/include/SDL_config_macosx.h @@ -125,6 +125,8 @@ #define HAVE_SQRTF 1 #define HAVE_TAN 1 #define HAVE_TANF 1 +#define HAVE_TRUNC 1 +#define HAVE_TRUNCF 1 #define HAVE_SIGACTION 1 #define HAVE_SETJMP 1 #define HAVE_NANOSLEEP 1 @@ -139,10 +141,16 @@ #define SDL_AUDIO_DRIVER_DUMMY 1 /* Enable various input drivers */ +#define SDL_JOYSTICK_HIDAPI 1 #define SDL_JOYSTICK_IOKIT 1 -#define SDL_JOYSTICK_HIDAPI 1 +#define SDL_JOYSTICK_VIRTUAL 1 #define SDL_HAPTIC_IOKIT 1 +/* The MFI controller support requires ARC Objective C runtime */ +#if MAC_OS_X_VERSION_MIN_REQUIRED >= 1080 && !defined(__i386__) +#define SDL_JOYSTICK_MFI 1 +#endif + /* Enable the dummy sensor driver */ #define SDL_SENSOR_DUMMY 1 @@ -195,7 +203,7 @@ #endif /* Metal only supported on 64-bit architectures with 10.11+ */ -#if TARGET_CPU_X86_64 && (MAC_OS_X_VERSION_MAX_ALLOWED >= 101100) +#if TARGET_RT_64_BIT && (MAC_OS_X_VERSION_MAX_ALLOWED >= 101100) #define SDL_PLATFORM_SUPPORTS_METAL 1 #else #define SDL_PLATFORM_SUPPORTS_METAL 0 diff --git a/sdl2-sys/SDL2-2.0.14/include/SDL_config_os2.h b/sdl2-sys/SDL2-2.0.14/include/SDL_config_os2.h index f5799dce974..1922217d0f3 100644 --- a/sdl2-sys/SDL2-2.0.14/include/SDL_config_os2.h +++ b/sdl2-sys/SDL2-2.0.14/include/SDL_config_os2.h @@ -27,14 +27,17 @@ #define SDL_AUDIO_DRIVER_DUMMY 1 #define SDL_AUDIO_DRIVER_DISK 1 +#define SDL_AUDIO_DRIVER_OS2 1 #define SDL_POWER_DISABLED 1 #define SDL_JOYSTICK_DISABLED 1 #define SDL_HAPTIC_DISABLED 1 /*#undef SDL_JOYSTICK_HIDAPI */ +/*#undef SDL_JOYSTICK_VIRTUAL */ #define SDL_SENSOR_DUMMY 1 #define SDL_VIDEO_DRIVER_DUMMY 1 +#define SDL_VIDEO_DRIVER_OS2 1 /* Enable OpenGL support */ /* #undef SDL_VIDEO_OPENGL */ @@ -42,18 +45,19 @@ /* Enable Vulkan support */ /* #undef SDL_VIDEO_VULKAN */ -#define SDL_LOADSO_DISABLED 1 -#define SDL_THREADS_DISABLED 1 -#define SDL_TIMERS_DISABLED 1 -#define SDL_FILESYSTEM_DUMMY 1 +#define SDL_THREAD_OS2 1 +#define SDL_LOADSO_OS2 1 +#define SDL_TIMER_OS2 1 +#define SDL_FILESYSTEM_OS2 1 /* Enable assembly routines */ #define SDL_ASSEMBLY_ROUTINES 1 -/* #undef HAVE_LIBSAMPLERATE_H */ +/* use libsamplerate for audio rate conversion. */ +/*#define HAVE_LIBSAMPLERATE_H 1 */ /* Enable dynamic libsamplerate support */ -/* #undef SDL_LIBSAMPLERATE_DYNAMIC */ +#define SDL_LIBSAMPLERATE_DYNAMIC "SAMPRATE.DLL" #define HAVE_LIBC 1 @@ -99,6 +103,8 @@ #define HAVE_WCSLCPY 1 #define HAVE_WCSLCAT 1 #define HAVE_WCSCMP 1 +#define HAVE__WCSICMP 1 +#define HAVE__WCSNICMP 1 #define HAVE_STRLEN 1 #define HAVE_STRLCPY 1 #define HAVE_STRLCAT 1 @@ -176,5 +182,7 @@ /* #undef HAVE_SQRTF */ #define HAVE_TAN 1 /* #undef HAVE_TANF */ +/* #undef HAVE_TRUNC */ +/* #undef HAVE_TRUNCF */ #endif /* SDL_config_os2_h_ */ diff --git a/sdl2-sys/SDL2-2.0.14/include/SDL_config_pandora.h b/sdl2-sys/SDL2-2.0.14/include/SDL_config_pandora.h index bdc64c97c71..8728a638804 100644 --- a/sdl2-sys/SDL2-2.0.14/include/SDL_config_pandora.h +++ b/sdl2-sys/SDL2-2.0.14/include/SDL_config_pandora.h @@ -102,6 +102,8 @@ #define HAVE_SQRTF 1 #define HAVE_TAN 1 #define HAVE_TANF 1 +#define HAVE_TRUNC 1 +#define HAVE_TRUNCF 1 #define HAVE_SIGACTION 1 #define HAVE_SETJMP 1 #define HAVE_NANOSLEEP 1 @@ -110,8 +112,8 @@ #define SDL_AUDIO_DRIVER_OSS 1 #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 diff --git a/sdl2-sys/SDL2-2.0.14/include/SDL_config_psp.h b/sdl2-sys/SDL2-2.0.14/include/SDL_config_psp.h index 0cbb182e043..235fe08e9aa 100644 --- a/sdl2-sys/SDL2-2.0.14/include/SDL_config_psp.h +++ b/sdl2-sys/SDL2-2.0.14/include/SDL_config_psp.h @@ -136,6 +136,7 @@ /* Enable the PSP joystick driver (src/joystick/psp/\*.c) */ #define SDL_JOYSTICK_PSP 1 +#define SDL_JOYSTICK_VIRTUAL 1 /* Enable the dummy sensor driver */ #define SDL_SENSOR_DUMMY 1 diff --git a/sdl2-sys/SDL2-2.0.14/include/SDL_config_windows.h b/sdl2-sys/SDL2-2.0.14/include/SDL_config_windows.h index f269bfc04bc..18a3638295e 100644 --- a/sdl2-sys/SDL2-2.0.14/include/SDL_config_windows.h +++ b/sdl2-sys/SDL2-2.0.14/include/SDL_config_windows.h @@ -84,6 +84,7 @@ typedef unsigned int uintptr_t; #define HAVE_XINPUT_H 1 #define HAVE_MMDEVICEAPI_H 1 #define HAVE_AUDIOCLIENT_H 1 +#define HAVE_SENSORSAPI_H /* This is disabled by default to avoid C runtime dependencies and manifest requirements */ #ifdef HAVE_LIBC @@ -133,6 +134,8 @@ typedef unsigned int uintptr_t; #define HAVE_STRNCMP 1 #define HAVE__STRICMP 1 #define HAVE__STRNICMP 1 +#define HAVE__WCSICMP 1 +#define HAVE__WCSNICMP 1 #define HAVE_ACOS 1 #define HAVE_ACOSF 1 #define HAVE_ASIN 1 @@ -172,6 +175,8 @@ typedef unsigned int uintptr_t; #define HAVE_VSSCANF 1 #define HAVE_SCALBN 1 #define HAVE_SCALBNF 1 +#define HAVE_TRUNC 1 +#define HAVE_TRUNCF 1 #endif /* This function is available with at least the VC++ 2008 C runtime library */ #if _MSC_VER >= 1400 @@ -186,6 +191,20 @@ typedef unsigned int uintptr_t; #define HAVE_STDDEF_H 1 #endif +/* Check to see if we have Windows 10 build environment */ +#if _MSC_VER >= 1911 /* Visual Studio 15.3 */ +#include +#if _WIN32_WINNT >= 0x0601 /* Windows 7 */ +#define SDL_WINDOWS7_SDK +#endif +#if _WIN32_WINNT >= 0x0602 /* Windows 8 */ +#define SDL_WINDOWS8_SDK +#endif +#if _WIN32_WINNT >= 0x0A00 /* Windows 10 */ +#define SDL_WINDOWS10_SDK +#endif +#endif /* _MSC_VER >= 1911 */ + /* Enable various audio drivers */ #define SDL_AUDIO_DRIVER_WASAPI 1 #define SDL_AUDIO_DRIVER_DSOUND 1 @@ -195,13 +214,20 @@ typedef unsigned int uintptr_t; /* Enable various input drivers */ #define SDL_JOYSTICK_DINPUT 1 -#define SDL_JOYSTICK_XINPUT 1 #define SDL_JOYSTICK_HIDAPI 1 +#ifndef __WINRT__ +#define SDL_JOYSTICK_RAWINPUT 1 +#endif +#define SDL_JOYSTICK_VIRTUAL 1 +#ifdef SDL_WINDOWS10_SDK +#define SDL_JOYSTICK_WGI 1 +#endif +#define SDL_JOYSTICK_XINPUT 1 #define SDL_HAPTIC_DINPUT 1 #define SDL_HAPTIC_XINPUT 1 -/* Enable the dummy sensor driver */ -#define SDL_SENSOR_DUMMY 1 +/* Enable the sensor driver */ +#define SDL_SENSOR_WINDOWS 1 /* Enable various shared object loading systems */ #define SDL_LOADSO_WINDOWS 1 @@ -219,8 +245,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 +#ifdef SDL_WINDOWS7_SDK +#define SDL_VIDEO_RENDER_D3D11 1 #endif /* Enable OpenGL support */ @@ -258,3 +284,5 @@ typedef unsigned int uintptr_t; #endif #endif /* SDL_config_windows_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/sdl2-sys/SDL2-2.0.14/include/SDL_config_winrt.h b/sdl2-sys/SDL2-2.0.14/include/SDL_config_winrt.h index fa03389e2d3..02079f53c81 100644 --- a/sdl2-sys/SDL2-2.0.14/include/SDL_config_winrt.h +++ b/sdl2-sys/SDL2-2.0.14/include/SDL_config_winrt.h @@ -181,6 +181,8 @@ typedef unsigned int uintptr_t; #define HAVE_SQRTF 1 #define HAVE_TAN 1 #define HAVE_TANF 1 +#define HAVE_TRUNC 1 +#define HAVE_TRUNCF 1 #define HAVE__FSEEKI64 1 /* Enable various audio drivers */ @@ -193,6 +195,7 @@ typedef unsigned int uintptr_t; #define SDL_JOYSTICK_DISABLED 1 #define SDL_HAPTIC_DISABLED 1 #else +#define SDL_JOYSTICK_VIRTUAL 1 #define SDL_JOYSTICK_XINPUT 1 #define SDL_HAPTIC_XINPUT 1 #endif diff --git a/sdl2-sys/SDL2-2.0.14/include/SDL_config_wiz.h b/sdl2-sys/SDL2-2.0.14/include/SDL_config_wiz.h index 92b1771e53b..f65af8eb54e 100644 --- a/sdl2-sys/SDL2-2.0.14/include/SDL_config_wiz.h +++ b/sdl2-sys/SDL2-2.0.14/include/SDL_config_wiz.h @@ -117,6 +117,8 @@ #define HAVE_SQRTF 1 #define HAVE_TAN 1 #define HAVE_TANF 1 +#define HAVE_TRUNC 1 +#define HAVE_TRUNCF 1 #define HAVE_SIGACTION 1 #define HAVE_SETJMP 1 #define HAVE_NANOSLEEP 1 @@ -126,8 +128,8 @@ #define SDL_AUDIO_DRIVER_OSS 1 #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 diff --git a/sdl2-sys/SDL2-2.0.14/include/SDL_cpuinfo.h b/sdl2-sys/SDL2-2.0.14/include/SDL_cpuinfo.h index 0d9b82131c9..df3123c0035 100644 --- a/sdl2-sys/SDL2-2.0.14/include/SDL_cpuinfo.h +++ b/sdl2-sys/SDL2-2.0.14/include/SDL_cpuinfo.h @@ -246,10 +246,33 @@ extern DECLSPEC size_t SDLCALL SDL_SIMDGetAlignment(void); * \return Pointer to newly-allocated block, NULL if out of memory. * * \sa SDL_SIMDAlignment + * \sa SDL_SIMDRealloc * \sa SDL_SIMDFree */ extern DECLSPEC void * SDLCALL SDL_SIMDAlloc(const size_t len); +/** + * \brief Reallocate memory obtained from SDL_SIMDAlloc + * + * It is not valid to use this function on a pointer from anything but + * SDL_SIMDAlloc(). It can't be used on pointers from malloc, realloc, + * SDL_malloc, memalign, new[], etc. + * + * \param mem The pointer obtained from SDL_SIMDAlloc. This function also + * accepts NULL, at which point this function is the same as + * calling SDL_realloc with a NULL pointer. + * \param len The length, in bytes, of the block to allocated. The actual + * allocated block might be larger due to padding, etc. Passing 0 + * will return a non-NULL pointer, assuming the system isn't out of + * memory. + * \return Pointer to newly-reallocated block, NULL if out of memory. + * + * \sa SDL_SIMDAlignment + * \sa SDL_SIMDAlloc + * \sa SDL_SIMDFree + */ +extern DECLSPEC void * SDLCALL SDL_SIMDRealloc(void *mem, const size_t len); + /** * \brief Deallocate memory obtained from SDL_SIMDAlloc * @@ -260,6 +283,7 @@ extern DECLSPEC void * SDLCALL SDL_SIMDAlloc(const size_t len); * However, SDL_SIMDFree(NULL) is a legal no-op. * * \sa SDL_SIMDAlloc + * \sa SDL_SIMDRealloc */ extern DECLSPEC void SDLCALL SDL_SIMDFree(void *ptr); diff --git a/sdl2-sys/SDL2-2.0.14/include/SDL_error.h b/sdl2-sys/SDL2-2.0.14/include/SDL_error.h index aae37c0e460..962d62f6eb4 100644 --- a/sdl2-sys/SDL2-2.0.14/include/SDL_error.h +++ b/sdl2-sys/SDL2-2.0.14/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/sdl2-sys/SDL2-2.0.14/include/SDL_events.h b/sdl2-sys/SDL2-2.0.14/include/SDL_events.h index 32cfbe3272f..ae560c0857d 100644 --- a/sdl2-sys/SDL2-2.0.14/include/SDL_events.h +++ b/sdl2-sys/SDL2-2.0.14/include/SDL_events.h @@ -85,6 +85,8 @@ typedef enum Called on Android in onResume() */ + SDL_LOCALECHANGED, /**< The user's locale preferences have changed. */ + /* Display events */ SDL_DISPLAYEVENT = 0x150, /**< Display state change */ @@ -123,6 +125,10 @@ typedef enum SDL_CONTROLLERDEVICEADDED, /**< A new Game controller has been inserted into the system */ SDL_CONTROLLERDEVICEREMOVED, /**< An opened Game controller has been removed */ SDL_CONTROLLERDEVICEREMAPPED, /**< The controller mapping was updated */ + SDL_CONTROLLERTOUCHPADDOWN, /**< Game controller touchpad was touched */ + SDL_CONTROLLERTOUCHPADMOTION, /**< Game controller touchpad finger was moved */ + SDL_CONTROLLERTOUCHPADUP, /**< Game controller touchpad finger was lifted */ + SDL_CONTROLLERSENSORUPDATE, /**< Game controller sensor was updated */ /* Touch events */ SDL_FINGERDOWN = 0x700, @@ -413,6 +419,33 @@ typedef struct SDL_ControllerDeviceEvent Sint32 which; /**< The joystick device index for the ADDED event, instance id for the REMOVED or REMAPPED event */ } SDL_ControllerDeviceEvent; +/** + * \brief Game controller touchpad event structure (event.ctouchpad.*) + */ +typedef struct SDL_ControllerTouchpadEvent +{ + Uint32 type; /**< ::SDL_CONTROLLERTOUCHPADDOWN or ::SDL_CONTROLLERTOUCHPADMOTION or ::SDL_CONTROLLERTOUCHPADUP */ + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ + SDL_JoystickID which; /**< The joystick instance id */ + Sint32 touchpad; /**< The index of the touchpad */ + Sint32 finger; /**< The index of the finger on the touchpad */ + float x; /**< Normalized in the range 0...1 with 0 being on the left */ + float y; /**< Normalized in the range 0...1 with 0 being at the top */ + float pressure; /**< Normalized in the range 0...1 */ +} SDL_ControllerTouchpadEvent; + +/** + * \brief Game controller sensor event structure (event.csensor.*) + */ +typedef struct SDL_ControllerSensorEvent +{ + Uint32 type; /**< ::SDL_CONTROLLERSENSORUPDATE */ + Uint32 timestamp; /**< In milliseconds, populated using SDL_GetTicks() */ + SDL_JoystickID which; /**< The joystick instance id */ + Sint32 sensor; /**< The type of the sensor, one of the values of ::SDL_SensorType */ + float data[3]; /**< Up to 3 values from the sensor, as defined in SDL_sensor.h */ +} SDL_ControllerSensorEvent; + /** * \brief Audio device event structure (event.adevice.*) */ @@ -557,33 +590,35 @@ typedef struct SDL_SysWMEvent */ typedef union SDL_Event { - Uint32 type; /**< Event type, shared with all events */ - SDL_CommonEvent common; /**< Common event data */ - SDL_DisplayEvent display; /**< Display event data */ - SDL_WindowEvent window; /**< Window event data */ - SDL_KeyboardEvent key; /**< Keyboard event data */ - SDL_TextEditingEvent edit; /**< Text editing event data */ - SDL_TextInputEvent text; /**< Text input event data */ - SDL_MouseMotionEvent motion; /**< Mouse motion event data */ - SDL_MouseButtonEvent button; /**< Mouse button event data */ - SDL_MouseWheelEvent wheel; /**< Mouse wheel event data */ - SDL_JoyAxisEvent jaxis; /**< Joystick axis event data */ - SDL_JoyBallEvent jball; /**< Joystick ball event data */ - SDL_JoyHatEvent jhat; /**< Joystick hat event data */ - SDL_JoyButtonEvent jbutton; /**< Joystick button event data */ - SDL_JoyDeviceEvent jdevice; /**< Joystick device change event data */ - SDL_ControllerAxisEvent caxis; /**< Game Controller axis event data */ - SDL_ControllerButtonEvent cbutton; /**< Game Controller button event data */ - SDL_ControllerDeviceEvent cdevice; /**< Game Controller device event data */ - SDL_AudioDeviceEvent adevice; /**< Audio device event data */ - SDL_SensorEvent sensor; /**< Sensor event data */ - SDL_QuitEvent quit; /**< Quit request event data */ - SDL_UserEvent user; /**< Custom event data */ - SDL_SysWMEvent syswm; /**< System dependent window event data */ - SDL_TouchFingerEvent tfinger; /**< Touch finger event data */ - SDL_MultiGestureEvent mgesture; /**< Gesture event data */ - SDL_DollarGestureEvent dgesture; /**< Gesture event data */ - SDL_DropEvent drop; /**< Drag and drop event data */ + Uint32 type; /**< Event type, shared with all events */ + SDL_CommonEvent common; /**< Common event data */ + SDL_DisplayEvent display; /**< Display event data */ + SDL_WindowEvent window; /**< Window event data */ + SDL_KeyboardEvent key; /**< Keyboard event data */ + SDL_TextEditingEvent edit; /**< Text editing event data */ + SDL_TextInputEvent text; /**< Text input event data */ + SDL_MouseMotionEvent motion; /**< Mouse motion event data */ + SDL_MouseButtonEvent button; /**< Mouse button event data */ + SDL_MouseWheelEvent wheel; /**< Mouse wheel event data */ + SDL_JoyAxisEvent jaxis; /**< Joystick axis event data */ + SDL_JoyBallEvent jball; /**< Joystick ball event data */ + SDL_JoyHatEvent jhat; /**< Joystick hat event data */ + SDL_JoyButtonEvent jbutton; /**< Joystick button event data */ + SDL_JoyDeviceEvent jdevice; /**< Joystick device change event data */ + SDL_ControllerAxisEvent caxis; /**< Game Controller axis event data */ + SDL_ControllerButtonEvent cbutton; /**< Game Controller button event data */ + SDL_ControllerDeviceEvent cdevice; /**< Game Controller device event data */ + SDL_ControllerTouchpadEvent ctouchpad; /**< Game Controller touchpad event data */ + SDL_ControllerSensorEvent csensor; /**< Game Controller sensor event data */ + SDL_AudioDeviceEvent adevice; /**< Audio device event data */ + SDL_SensorEvent sensor; /**< Sensor event data */ + SDL_QuitEvent quit; /**< Quit request event data */ + SDL_UserEvent user; /**< Custom event data */ + SDL_SysWMEvent syswm; /**< System dependent window event data */ + SDL_TouchFingerEvent tfinger; /**< Touch finger event data */ + SDL_MultiGestureEvent mgesture; /**< Gesture event data */ + SDL_DollarGestureEvent dgesture; /**< Gesture event data */ + SDL_DropEvent drop; /**< Drag and drop event data */ /* This is necessary for ABI compatibility between Visual C++ and GCC Visual C++ will respect the push pack pragma and use 52 bytes for diff --git a/sdl2-sys/SDL2-2.0.14/include/SDL_gamecontroller.h b/sdl2-sys/SDL2-2.0.14/include/SDL_gamecontroller.h index 21cc1e43775..e42433c9521 100644 --- a/sdl2-sys/SDL2-2.0.14/include/SDL_gamecontroller.h +++ b/sdl2-sys/SDL2-2.0.14/include/SDL_gamecontroller.h @@ -31,6 +31,7 @@ #include "SDL_stdinc.h" #include "SDL_error.h" #include "SDL_rwops.h" +#include "SDL_sensor.h" #include "SDL_joystick.h" #include "begin_code.h" @@ -64,7 +65,9 @@ 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_CONTROLLER_TYPE_PS5 } SDL_GameControllerType; typedef enum @@ -170,7 +173,7 @@ extern DECLSPEC char * SDLCALL SDL_GameControllerMappingForGUID(SDL_JoystickGUID * * \return the mapping string. Must be freed with SDL_free(). Returns NULL if no mapping is available */ -extern DECLSPEC char * SDLCALL SDL_GameControllerMapping(SDL_GameController * gamecontroller); +extern DECLSPEC char * SDLCALL SDL_GameControllerMapping(SDL_GameController *gamecontroller); /** * Is the joystick on this index supported by the game controller interface? @@ -245,19 +248,26 @@ extern DECLSPEC void SDLCALL SDL_GameControllerSetPlayerIndex(SDL_GameController * Get the USB vendor ID of an opened controller, if available. * If the vendor ID isn't available this function returns 0. */ -extern DECLSPEC Uint16 SDLCALL SDL_GameControllerGetVendor(SDL_GameController * gamecontroller); +extern DECLSPEC Uint16 SDLCALL SDL_GameControllerGetVendor(SDL_GameController *gamecontroller); /** * Get the USB product ID of an opened controller, if available. * If the product ID isn't available this function returns 0. */ -extern DECLSPEC Uint16 SDLCALL SDL_GameControllerGetProduct(SDL_GameController * gamecontroller); +extern DECLSPEC Uint16 SDLCALL SDL_GameControllerGetProduct(SDL_GameController *gamecontroller); /** * Get the product version of an opened controller, if available. * If the product version isn't available this function returns 0. */ -extern DECLSPEC Uint16 SDLCALL SDL_GameControllerGetProductVersion(SDL_GameController * gamecontroller); +extern DECLSPEC Uint16 SDLCALL SDL_GameControllerGetProductVersion(SDL_GameController *gamecontroller); + +/** + * Get the serial number of an opened controller, if available. + * + * Returns the serial number of the controller, or NULL if it is not available. + */ +extern DECLSPEC const char * SDLCALL SDL_GameControllerGetSerial(SDL_GameController *gamecontroller); /** * Returns SDL_TRUE if the controller has been opened and currently connected, @@ -328,6 +338,12 @@ extern DECLSPEC SDL_GameControllerButtonBind SDLCALL SDL_GameControllerGetBindForAxis(SDL_GameController *gamecontroller, SDL_GameControllerAxis axis); +/** + * Return whether a game controller has a given axis + */ +extern DECLSPEC SDL_bool SDLCALL +SDL_GameControllerHasAxis(SDL_GameController *gamecontroller, SDL_GameControllerAxis axis); + /** * Get the current state of an axis control on a game controller. * @@ -337,8 +353,7 @@ SDL_GameControllerGetBindForAxis(SDL_GameController *gamecontroller, * The axis indices start at index 0. */ extern DECLSPEC Sint16 SDLCALL -SDL_GameControllerGetAxis(SDL_GameController *gamecontroller, - SDL_GameControllerAxis axis); +SDL_GameControllerGetAxis(SDL_GameController *gamecontroller, SDL_GameControllerAxis axis); /** * The list of buttons available from a controller @@ -361,6 +376,12 @@ typedef enum SDL_CONTROLLER_BUTTON_DPAD_DOWN, SDL_CONTROLLER_BUTTON_DPAD_LEFT, SDL_CONTROLLER_BUTTON_DPAD_RIGHT, + SDL_CONTROLLER_BUTTON_MISC1, /* Xbox Series X share button, PS5 microphone button, Nintendo Switch Pro capture button */ + SDL_CONTROLLER_BUTTON_PADDLE1, /* Xbox Elite paddle P1 */ + SDL_CONTROLLER_BUTTON_PADDLE2, /* Xbox Elite paddle P3 */ + SDL_CONTROLLER_BUTTON_PADDLE3, /* Xbox Elite paddle P2 */ + SDL_CONTROLLER_BUTTON_PADDLE4, /* Xbox Elite paddle P4 */ + SDL_CONTROLLER_BUTTON_TOUCHPAD, /* PS4/PS5 touchpad button */ SDL_CONTROLLER_BUTTON_MAX } SDL_GameControllerButton; @@ -381,6 +402,11 @@ extern DECLSPEC SDL_GameControllerButtonBind SDLCALL SDL_GameControllerGetBindForButton(SDL_GameController *gamecontroller, SDL_GameControllerButton button); +/** + * Return whether a game controller has a given button + */ +extern DECLSPEC SDL_bool SDLCALL SDL_GameControllerHasButton(SDL_GameController *gamecontroller, + SDL_GameControllerButton button); /** * Get the current state of a button on a game controller. @@ -391,7 +417,68 @@ extern DECLSPEC Uint8 SDLCALL SDL_GameControllerGetButton(SDL_GameController *ga SDL_GameControllerButton button); /** - * Trigger a rumble effect + * Get the number of touchpads on a game controller. + */ +extern DECLSPEC int SDLCALL SDL_GameControllerGetNumTouchpads(SDL_GameController *gamecontroller); + +/** + * Get the number of supported simultaneous fingers on a touchpad on a game controller. + */ +extern DECLSPEC int SDLCALL SDL_GameControllerGetNumTouchpadFingers(SDL_GameController *gamecontroller, int touchpad); + +/** + * Get the current state of a finger on a touchpad on a game controller. + */ +extern DECLSPEC int SDLCALL SDL_GameControllerGetTouchpadFinger(SDL_GameController *gamecontroller, int touchpad, int finger, Uint8 *state, float *x, float *y, float *pressure); + +/** + * Return whether a game controller has a particular sensor. + * + * \param gamecontroller The controller to query + * \param type The type of sensor to query + * + * \return SDL_TRUE if the sensor exists, SDL_FALSE otherwise. + */ +extern DECLSPEC SDL_bool SDLCALL SDL_GameControllerHasSensor(SDL_GameController *gamecontroller, SDL_SensorType type); + +/** + * Set whether data reporting for a game controller sensor is enabled + * + * \param gamecontroller The controller to update + * \param type The type of sensor to enable/disable + * \param enabled Whether data reporting should be enabled + * + * \return 0 or -1 if an error occurred. + */ +extern DECLSPEC int SDLCALL SDL_GameControllerSetSensorEnabled(SDL_GameController *gamecontroller, SDL_SensorType type, SDL_bool enabled); + +/** + * Query whether sensor data reporting is enabled for a game controller + * + * \param gamecontroller The controller to query + * \param type The type of sensor to query + * + * \return SDL_TRUE if the sensor is enabled, SDL_FALSE otherwise. + */ +extern DECLSPEC SDL_bool SDLCALL SDL_GameControllerIsSensorEnabled(SDL_GameController *gamecontroller, SDL_SensorType type); + +/** + * Get the current state of a game controller sensor. + * + * The number of values and interpretation of the data is sensor dependent. + * See SDL_sensor.h for the details for each type of sensor. + * + * \param gamecontroller The controller to query + * \param type The type of sensor to query + * \param data A pointer filled with the current sensor state + * \param num_values The number of values to write to data + * + * \return 0 or -1 if an error occurred. + */ +extern DECLSPEC int SDLCALL SDL_GameControllerGetSensorData(SDL_GameController *gamecontroller, SDL_SensorType type, float *data, int num_values); + +/** + * Start a rumble effect * Each call to this function cancels any previous rumble effect, and calling it with 0 intensity stops any rumbling. * * \param gamecontroller The controller to vibrate @@ -399,10 +486,44 @@ extern DECLSPEC Uint8 SDLCALL SDL_GameControllerGetButton(SDL_GameController *ga * \param high_frequency_rumble The intensity of the high frequency (right) rumble motor, from 0 to 0xFFFF * \param duration_ms The duration of the rumble effect, in milliseconds * - * \return 0, or -1 if rumble isn't supported on this joystick + * \return 0, or -1 if rumble isn't supported on this controller */ extern DECLSPEC int SDLCALL SDL_GameControllerRumble(SDL_GameController *gamecontroller, Uint16 low_frequency_rumble, Uint16 high_frequency_rumble, Uint32 duration_ms); +/** + * Start a rumble effect in the game controller's triggers + * Each call to this function cancels any previous trigger rumble effect, and calling it with 0 intensity stops any rumbling. + * + * \param gamecontroller The controller to vibrate + * \param left_rumble The intensity of the left trigger rumble motor, from 0 to 0xFFFF + * \param right_rumble The intensity of the right trigger rumble motor, from 0 to 0xFFFF + * \param duration_ms The duration of the rumble effect, in milliseconds + * + * \return 0, or -1 if rumble isn't supported on this controller + */ +extern DECLSPEC int SDLCALL SDL_GameControllerRumbleTriggers(SDL_GameController *gamecontroller, Uint16 left_rumble, Uint16 right_rumble, Uint32 duration_ms); + +/** + * Return whether a controller has an LED + * + * \param gamecontroller The controller to query + * + * \return SDL_TRUE, or SDL_FALSE if this controller does not have a modifiable LED + */ +extern DECLSPEC SDL_bool SDLCALL SDL_GameControllerHasLED(SDL_GameController *gamecontroller); + +/** + * Update a controller's LED color. + * + * \param gamecontroller The controller to update + * \param red The intensity of the red LED + * \param green The intensity of the green LED + * \param blue The intensity of the blue LED + * + * \return 0, or -1 if this controller does not have a modifiable LED + */ +extern DECLSPEC int SDLCALL SDL_GameControllerSetLED(SDL_GameController *gamecontroller, Uint8 red, Uint8 green, Uint8 blue); + /** * Close a controller previously opened with SDL_GameControllerOpen(). */ diff --git a/sdl2-sys/SDL2-2.0.14/include/SDL_haptic.h b/sdl2-sys/SDL2-2.0.14/include/SDL_haptic.h index aa6f47fddc8..c27da1186c4 100644 --- a/sdl2-sys/SDL2-2.0.14/include/SDL_haptic.h +++ b/sdl2-sys/SDL2-2.0.14/include/SDL_haptic.h @@ -336,6 +336,14 @@ typedef struct _SDL_Haptic SDL_Haptic; */ #define SDL_HAPTIC_SPHERICAL 2 +/** + * \brief Use this value to play an effect on the steering wheel axis. This + * provides better compatibility across platforms and devices as SDL will guess + * the correct axis. + * \sa SDL_HapticDirection + */ +#define SDL_HAPTIC_STEERING_AXIS 3 + /* @} *//* Direction encodings */ /* @} *//* Haptic features */ @@ -444,6 +452,7 @@ typedef struct _SDL_Haptic SDL_Haptic; * \sa SDL_HAPTIC_POLAR * \sa SDL_HAPTIC_CARTESIAN * \sa SDL_HAPTIC_SPHERICAL + * \sa SDL_HAPTIC_STEERING_AXIS * \sa SDL_HapticEffect * \sa SDL_HapticNumAxes */ diff --git a/sdl2-sys/SDL2-2.0.14/include/SDL_hints.h b/sdl2-sys/SDL2-2.0.14/include/SDL_hints.h index a3a537383ca..50a5a0892b3 100644 --- a/sdl2-sys/SDL2-2.0.14/include/SDL_hints.h +++ b/sdl2-sys/SDL2-2.0.14/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 * @@ -358,7 +369,9 @@ extern "C" { #define SDL_HINT_MOUSE_TOUCH_EVENTS "SDL_MOUSE_TOUCH_EVENTS" /** - * \brief Minimize your SDL_Window if it loses key focus when in fullscreen mode. Defaults to true. + * \brief Minimize your SDL_Window if it loses key focus when in fullscreen mode. Defaults to false. + * \warning Before SDL 2.0.14, this defaulted to true! In 2.0.14, we're + * seeing if "true" causes more problems than it solves in modern times. * */ #define SDL_HINT_VIDEO_MINIMIZE_ON_FOCUS_LOSS "SDL_VIDEO_MINIMIZE_ON_FOCUS_LOSS" @@ -480,6 +493,7 @@ extern "C" { * XboxOne * PS3 * PS4 + * PS5 * SwitchPro * * This hint affects what driver is used, and must be set before calling SDL_Init(SDL_INIT_GAMECONTROLLER) @@ -590,6 +604,17 @@ extern "C" { */ #define SDL_HINT_JOYSTICK_HIDAPI_PS4 "SDL_JOYSTICK_HIDAPI_PS4" +/** + * \brief A variable controlling whether the HIDAPI driver for PS5 controllers should be used. + * + * This variable can be set to the following values: + * "0" - HIDAPI driver is not used + * "1" - HIDAPI driver is used + * + * The default is the value of SDL_HINT_JOYSTICK_HIDAPI + */ +#define SDL_HINT_JOYSTICK_HIDAPI_PS5 "SDL_JOYSTICK_HIDAPI_PS5" + /** * \brief A variable controlling whether extended input reports should be used for PS4 controllers when using the HIDAPI driver. * @@ -634,10 +659,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 +698,35 @@ 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 A variable controlling whether a separate thread should be used + * for handling joystick detection and raw input messages on Windows + * + * This variable can be set to the following values: + * "0" - A separate thread is not used (the default) + * "1" - A separate thread is used for handling raw input messages + * + */ +#define SDL_HINT_JOYSTICK_THREAD "SDL_JOYSTICK_THREAD" + + /** + * \brief A variable controlling whether joysticks on Linux adhere to their HID-defined deadzones or return unfiltered values. + * + * This variable can be set to the following values: + * "0" - Return unfiltered joystick axis values (the default) + * "1" - Return axis values with deadzones taken into account + */ +#define SDL_HINT_LINUX_JOYSTICK_DEADZONES "SDL_LINUX_JOYSTICK_DEADZONES" /** * \brief If set to "0" then never set the top most bit on a SDL Window, even if the video mode expects it. @@ -730,6 +797,42 @@ extern "C" { */ #define SDL_HINT_THREAD_STACK_SIZE "SDL_THREAD_STACK_SIZE" +/** +* \brief A string specifying additional information to use with SDL_SetThreadPriority. +* +* By default SDL_SetThreadPriority will make appropriate system changes in order to +* apply a thread priority. For example on systems using pthreads the scheduler policy +* is changed automatically to a policy that works well with a given priority. +* Code which has specific requirements can override SDL's default behavior with this hint. +* +* pthread hint values are "current", "other", "fifo" and "rr". +* Currently no other platform hint values are defined but may be in the future. +* +* \note On Linux, the kernel may send SIGKILL to realtime tasks which exceed the distro +* configured execution budget for rtkit. This budget can be queried through RLIMIT_RTTIME +* after calling SDL_SetThreadPriority(). +*/ +#define SDL_HINT_THREAD_PRIORITY_POLICY "SDL_THREAD_PRIORITY_POLICY" + +/** + * \brief Specifies whether SDL_THREAD_PRIORITY_TIME_CRITICAL should be treated as realtime. + * + * On some platforms, like Linux, a realtime priority thread may be subject to restrictions + * that require special handling by the application. This hint exists to let SDL know that + * the app is prepared to handle said restrictions. + * + * On Linux, SDL will apply the following configuration to any thread that becomes realtime: + * * The SCHED_RESET_ON_FORK bit will be set on the scheduling policy, + * * An RLIMIT_RTTIME budget will be configured to the rtkit specified limit. + * * Exceeding this limit will result in the kernel sending SIGKILL to the app, + * * Refer to the man pages for more information. + * + * This variable can be set to the following values: + * "0" - default platform specific behaviour + * "1" - Force SDL_THREAD_PRIORITY_TIME_CRITICAL to a realtime scheduling policy + */ +#define SDL_HINT_THREAD_FORCE_REALTIME_TIME_CRITICAL "SDL_THREAD_FORCE_REALTIME_TIME_CRITICAL" + /** * \brief If set to 1, then do not allow high-DPI windows. ("Retina" on Mac and iOS) */ @@ -968,6 +1071,18 @@ extern "C" { */ #define SDL_HINT_ANDROID_BLOCK_ON_PAUSE "SDL_ANDROID_BLOCK_ON_PAUSE" +/** + * \brief A variable to control whether SDL will pause audio in background + * (Requires SDL_ANDROID_BLOCK_ON_PAUSE as "Non blocking") + * + * The variable can be set to the following values: + * "0" - Non paused. + * "1" - Paused. (default) + * + * The value should be set before SDL is initialized. + */ +#define SDL_HINT_ANDROID_BLOCK_ON_PAUSE_PAUSEAUDIO "SDL_ANDROID_BLOCK_ON_PAUSE_PAUSEAUDIO" + /** * \brief A variable to control whether the return key on the soft keyboard * should hide the soft keyboard on Android and iOS. @@ -994,10 +1109,26 @@ extern "C" { */ #define SDL_HINT_EMSCRIPTEN_KEYBOARD_ELEMENT "SDL_EMSCRIPTEN_KEYBOARD_ELEMENT" +/** + * \brief Disable giving back control to the browser automatically + * when running with asyncify + * + * With -s ASYNCIFY, SDL2 calls emscripten_sleep during operations + * such as refreshing the screen or polling events. + * + * This hint only applies to the emscripten platform + * + * The variable can be set to the following values: + * "0" - Disable emscripten_sleep calls (if you give back browser control manually or use asyncify for other purposes) + * "1" - Enable emscripten_sleep calls (the default) + */ +#define SDL_HINT_EMSCRIPTEN_ASYNCIFY "SDL_EMSCRIPTEN_ASYNCIFY" + /** * \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 @@ -1171,6 +1302,32 @@ extern "C" { #define SDL_HINT_RENDER_BATCHING "SDL_RENDER_BATCHING" +/** + * \brief A variable controlling whether SDL updates joystick state when getting input events + * + * This variable can be set to the following values: + * + * "0" - You'll call SDL_JoystickUpdate() manually + * "1" - SDL will automatically call SDL_JoystickUpdate() (default) + * + * This hint can be toggled on and off at runtime. + */ +#define SDL_HINT_AUTO_UPDATE_JOYSTICKS "SDL_AUTO_UPDATE_JOYSTICKS" + + +/** + * \brief A variable controlling whether SDL updates sensor state when getting input events + * + * This variable can be set to the following values: + * + * "0" - You'll call SDL_SensorUpdate() manually + * "1" - SDL will automatically call SDL_SensorUpdate() (default) + * + * This hint can be toggled on and off at runtime. + */ +#define SDL_HINT_AUTO_UPDATE_SENSORS "SDL_AUTO_UPDATE_SENSORS" + + /** * \brief A variable controlling whether SDL logs all events pushed onto its internal queue. * @@ -1258,7 +1415,7 @@ extern "C" { */ #define SDL_HINT_WAVE_FACT_CHUNK "SDL_WAVE_FACT_CHUNK" -/* +/** * \brief Override for SDL_GetDisplayUsableBounds() * * If set, this hint will override the expected results for @@ -1272,6 +1429,63 @@ extern "C" { */ #define SDL_HINT_DISPLAY_USABLE_BOUNDS "SDL_DISPLAY_USABLE_BOUNDS" +/** + * \brief Specify an application name for an audio device. + * + * Some audio backends (such as PulseAudio) allow you to describe your audio + * stream. Among other things, this description might show up in a system + * control panel that lets the user adjust the volume on specific audio + * streams instead of using one giant master volume slider. + * + * This hints lets you transmit that information to the OS. The contents of + * this hint are used while opening an audio device. You should use a string + * that describes your program ("My Game 2: The Revenge") + * + * Setting this to "" or leaving it unset will have SDL use a reasonable + * default: probably the application's name or "SDL Application" if SDL + * doesn't have any better information. + * + * On targets where this is not supported, this hint does nothing. + */ +#define SDL_HINT_AUDIO_DEVICE_APP_NAME "SDL_AUDIO_DEVICE_APP_NAME" + +/** + * \brief Specify an application name for an audio device. + * + * Some audio backends (such as PulseAudio) allow you to describe your audio + * stream. Among other things, this description might show up in a system + * control panel that lets the user adjust the volume on specific audio + * streams instead of using one giant master volume slider. + * + * This hints lets you transmit that information to the OS. The contents of + * this hint are used while opening an audio device. You should use a string + * that describes your what your program is playing ("audio stream" is + * probably sufficient in many cases, but this could be useful for something + * like "team chat" if you have a headset playing VoIP audio separately). + * + * Setting this to "" or leaving it unset will have SDL use a reasonable + * default: "audio stream" or something similar. + * + * On targets where this is not supported, this hint does nothing. + */ +#define SDL_HINT_AUDIO_DEVICE_STREAM_NAME "SDL_AUDIO_DEVICE_STREAM_NAME" + + +/** + * \brief Override for SDL_GetPreferredLocales() + * + * If set, this will be favored over anything the OS might report for the + * user's preferred locales. Changing this hint at runtime will not generate + * a SDL_LOCALECHANGED event (but if you can change the hint, you can push + * your own event, if you want). + * + * The format of this hint is a comma-separated list of language and locale, + * combined with an underscore, as is a common format: "en_GB". Locale is + * optional: "en". So you might have a list like this: "en_GB,jp,es_PT" + */ +#define SDL_HINT_PREFERRED_LOCALES "SDL_PREFERRED_LOCALES" + + /** * \brief An enumeration of hint priorities */ diff --git a/sdl2-sys/SDL2-2.0.14/include/SDL_joystick.h b/sdl2-sys/SDL2-2.0.14/include/SDL_joystick.h index a0dd7205daa..0bbeafe0a1c 100644 --- a/sdl2-sys/SDL2-2.0.14/include/SDL_joystick.h +++ b/sdl2-sys/SDL2-2.0.14/include/SDL_joystick.h @@ -105,6 +105,12 @@ typedef enum SDL_JOYSTICK_POWER_MAX } SDL_JoystickPowerLevel; +/* Set max recognized G-force from accelerometer + See src/joystick/uikit/SDL_sysjoystick.m for notes on why this is needed + */ +#define SDL_IPHONE_MAX_GFORCE 5.0 + + /* Function prototypes */ /** @@ -199,51 +205,92 @@ 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. */ -extern DECLSPEC const char *SDLCALL SDL_JoystickName(SDL_Joystick * joystick); +extern DECLSPEC const char *SDLCALL SDL_JoystickName(SDL_Joystick *joystick); /** * Get the player index of an opened joystick, or -1 if it's not available * * For XInput controllers this returns the XInput user index. */ -extern DECLSPEC int SDLCALL SDL_JoystickGetPlayerIndex(SDL_Joystick * joystick); +extern DECLSPEC int SDLCALL SDL_JoystickGetPlayerIndex(SDL_Joystick *joystick); /** * Set the player index of an opened joystick */ -extern DECLSPEC void SDLCALL SDL_JoystickSetPlayerIndex(SDL_Joystick * joystick, int player_index); +extern DECLSPEC void SDLCALL SDL_JoystickSetPlayerIndex(SDL_Joystick *joystick, int player_index); /** * Return the GUID for this opened joystick */ -extern DECLSPEC SDL_JoystickGUID SDLCALL SDL_JoystickGetGUID(SDL_Joystick * joystick); +extern DECLSPEC SDL_JoystickGUID SDLCALL SDL_JoystickGetGUID(SDL_Joystick *joystick); /** * Get the USB vendor ID of an opened joystick, if available. * If the vendor ID isn't available this function returns 0. */ -extern DECLSPEC Uint16 SDLCALL SDL_JoystickGetVendor(SDL_Joystick * joystick); +extern DECLSPEC Uint16 SDLCALL SDL_JoystickGetVendor(SDL_Joystick *joystick); /** * Get the USB product ID of an opened joystick, if available. * If the product ID isn't available this function returns 0. */ -extern DECLSPEC Uint16 SDLCALL SDL_JoystickGetProduct(SDL_Joystick * joystick); +extern DECLSPEC Uint16 SDLCALL SDL_JoystickGetProduct(SDL_Joystick *joystick); /** * Get the product version of an opened joystick, if available. * If the product version isn't available this function returns 0. */ -extern DECLSPEC Uint16 SDLCALL SDL_JoystickGetProductVersion(SDL_Joystick * joystick); +extern DECLSPEC Uint16 SDLCALL SDL_JoystickGetProductVersion(SDL_Joystick *joystick); + +/** + * Get the serial number of an opened joystick, if available. + * + * Returns the serial number of the joystick, or NULL if it is not available. + */ +extern DECLSPEC const char * SDLCALL SDL_JoystickGetSerial(SDL_Joystick *joystick); /** * Get the type of an opened joystick. */ -extern DECLSPEC SDL_JoystickType SDLCALL SDL_JoystickGetType(SDL_Joystick * joystick); +extern DECLSPEC SDL_JoystickType SDLCALL SDL_JoystickGetType(SDL_Joystick *joystick); /** * Return a string representation for this guid. pszGUID must point to at least 33 bytes @@ -259,17 +306,17 @@ extern DECLSPEC SDL_JoystickGUID SDLCALL SDL_JoystickGetGUIDFromString(const cha /** * Returns SDL_TRUE if the joystick has been opened and currently connected, or SDL_FALSE if it has not. */ -extern DECLSPEC SDL_bool SDLCALL SDL_JoystickGetAttached(SDL_Joystick * joystick); +extern DECLSPEC SDL_bool SDLCALL SDL_JoystickGetAttached(SDL_Joystick *joystick); /** * Get the instance ID of an opened joystick or -1 if the joystick is invalid. */ -extern DECLSPEC SDL_JoystickID SDLCALL SDL_JoystickInstanceID(SDL_Joystick * joystick); +extern DECLSPEC SDL_JoystickID SDLCALL SDL_JoystickInstanceID(SDL_Joystick *joystick); /** * Get the number of general axis controls on a joystick. */ -extern DECLSPEC int SDLCALL SDL_JoystickNumAxes(SDL_Joystick * joystick); +extern DECLSPEC int SDLCALL SDL_JoystickNumAxes(SDL_Joystick *joystick); /** * Get the number of trackballs on a joystick. @@ -277,17 +324,17 @@ extern DECLSPEC int SDLCALL SDL_JoystickNumAxes(SDL_Joystick * joystick); * Joystick trackballs have only relative motion events associated * with them and their state cannot be polled. */ -extern DECLSPEC int SDLCALL SDL_JoystickNumBalls(SDL_Joystick * joystick); +extern DECLSPEC int SDLCALL SDL_JoystickNumBalls(SDL_Joystick *joystick); /** * Get the number of POV hats on a joystick. */ -extern DECLSPEC int SDLCALL SDL_JoystickNumHats(SDL_Joystick * joystick); +extern DECLSPEC int SDLCALL SDL_JoystickNumHats(SDL_Joystick *joystick); /** * Get the number of buttons on a joystick. */ -extern DECLSPEC int SDLCALL SDL_JoystickNumButtons(SDL_Joystick * joystick); +extern DECLSPEC int SDLCALL SDL_JoystickNumButtons(SDL_Joystick *joystick); /** * Update the current state of the open joysticks. @@ -317,7 +364,7 @@ extern DECLSPEC int SDLCALL SDL_JoystickEventState(int state); * * The axis indices start at index 0. */ -extern DECLSPEC Sint16 SDLCALL SDL_JoystickGetAxis(SDL_Joystick * joystick, +extern DECLSPEC Sint16 SDLCALL SDL_JoystickGetAxis(SDL_Joystick *joystick, int axis); /** @@ -329,7 +376,7 @@ extern DECLSPEC Sint16 SDLCALL SDL_JoystickGetAxis(SDL_Joystick * joystick, * * \return SDL_TRUE if this axis has any initial value, or SDL_FALSE if not. */ -extern DECLSPEC SDL_bool SDLCALL SDL_JoystickGetAxisInitialState(SDL_Joystick * joystick, +extern DECLSPEC SDL_bool SDLCALL SDL_JoystickGetAxisInitialState(SDL_Joystick *joystick, int axis, Sint16 *state); /** @@ -363,7 +410,7 @@ extern DECLSPEC SDL_bool SDLCALL SDL_JoystickGetAxisInitialState(SDL_Joystick * * - ::SDL_HAT_LEFTUP * - ::SDL_HAT_LEFTDOWN */ -extern DECLSPEC Uint8 SDLCALL SDL_JoystickGetHat(SDL_Joystick * joystick, +extern DECLSPEC Uint8 SDLCALL SDL_JoystickGetHat(SDL_Joystick *joystick, int hat); /** @@ -373,7 +420,7 @@ extern DECLSPEC Uint8 SDLCALL SDL_JoystickGetHat(SDL_Joystick * joystick, * * The ball indices start at index 0. */ -extern DECLSPEC int SDLCALL SDL_JoystickGetBall(SDL_Joystick * joystick, +extern DECLSPEC int SDLCALL SDL_JoystickGetBall(SDL_Joystick *joystick, int ball, int *dx, int *dy); /** @@ -381,11 +428,11 @@ extern DECLSPEC int SDLCALL SDL_JoystickGetBall(SDL_Joystick * joystick, * * The button indices start at index 0. */ -extern DECLSPEC Uint8 SDLCALL SDL_JoystickGetButton(SDL_Joystick * joystick, +extern DECLSPEC Uint8 SDLCALL SDL_JoystickGetButton(SDL_Joystick *joystick, int button); /** - * Trigger a rumble effect + * Start a rumble effect * Each call to this function cancels any previous rumble effect, and calling it with 0 intensity stops any rumbling. * * \param joystick The joystick to vibrate @@ -395,17 +442,51 @@ extern DECLSPEC Uint8 SDLCALL SDL_JoystickGetButton(SDL_Joystick * joystick, * * \return 0, or -1 if rumble isn't supported on this joystick */ -extern DECLSPEC int SDLCALL SDL_JoystickRumble(SDL_Joystick * joystick, Uint16 low_frequency_rumble, Uint16 high_frequency_rumble, Uint32 duration_ms); +extern DECLSPEC int SDLCALL SDL_JoystickRumble(SDL_Joystick *joystick, Uint16 low_frequency_rumble, Uint16 high_frequency_rumble, Uint32 duration_ms); + +/** + * Start a rumble effect in the joystick's triggers + * Each call to this function cancels any previous trigger rumble effect, and calling it with 0 intensity stops any rumbling. + * + * \param joystick The joystick to vibrate + * \param left_rumble The intensity of the left trigger rumble motor, from 0 to 0xFFFF + * \param right_rumble The intensity of the right trigger rumble motor, from 0 to 0xFFFF + * \param duration_ms The duration of the rumble effect, in milliseconds + * + * \return 0, or -1 if trigger rumble isn't supported on this joystick + */ +extern DECLSPEC int SDLCALL SDL_JoystickRumbleTriggers(SDL_Joystick *joystick, Uint16 left_rumble, Uint16 right_rumble, Uint32 duration_ms); + +/** + * Return whether a joystick has an LED + * + * \param joystick The joystick to query + * + * \return SDL_TRUE, or SDL_FALSE if this joystick does not have a modifiable LED + */ +extern DECLSPEC SDL_bool SDLCALL SDL_JoystickHasLED(SDL_Joystick *joystick); + +/** + * Update a joystick's LED color. + * + * \param joystick The joystick to update + * \param red The intensity of the red LED + * \param green The intensity of the green LED + * \param blue The intensity of the blue LED + * + * \return 0, or -1 if this joystick does not have a modifiable LED + */ +extern DECLSPEC int SDLCALL SDL_JoystickSetLED(SDL_Joystick *joystick, Uint8 red, Uint8 green, Uint8 blue); /** * Close a joystick previously opened with SDL_JoystickOpen(). */ -extern DECLSPEC void SDLCALL SDL_JoystickClose(SDL_Joystick * joystick); +extern DECLSPEC void SDLCALL SDL_JoystickClose(SDL_Joystick *joystick); /** * Return the battery level of this joystick */ -extern DECLSPEC SDL_JoystickPowerLevel SDLCALL SDL_JoystickCurrentPowerLevel(SDL_Joystick * joystick); +extern DECLSPEC SDL_JoystickPowerLevel SDLCALL SDL_JoystickCurrentPowerLevel(SDL_Joystick *joystick); /* Ends C function definitions when using C++ */ #ifdef __cplusplus diff --git a/sdl2-sys/SDL2-2.0.14/include/SDL_keycode.h b/sdl2-sys/SDL2-2.0.14/include/SDL_keycode.h index a1ce7a44da1..6f6b65cb948 100644 --- a/sdl2-sys/SDL2-2.0.14/include/SDL_keycode.h +++ b/sdl2-sys/SDL2-2.0.14/include/SDL_keycode.h @@ -88,9 +88,11 @@ typedef enum SDLK_GREATER = '>', SDLK_QUESTION = '?', SDLK_AT = '@', + /* Skip uppercase letters */ + SDLK_LEFTBRACKET = '[', SDLK_BACKSLASH = '\\', SDLK_RIGHTBRACKET = ']', @@ -336,13 +338,13 @@ typedef enum KMOD_NUM = 0x1000, KMOD_CAPS = 0x2000, KMOD_MODE = 0x4000, - KMOD_RESERVED = 0x8000 -} SDL_Keymod; + KMOD_RESERVED = 0x8000, -#define KMOD_CTRL (KMOD_LCTRL|KMOD_RCTRL) -#define KMOD_SHIFT (KMOD_LSHIFT|KMOD_RSHIFT) -#define KMOD_ALT (KMOD_LALT|KMOD_RALT) -#define KMOD_GUI (KMOD_LGUI|KMOD_RGUI) + KMOD_CTRL = KMOD_LCTRL | KMOD_RCTRL, + KMOD_SHIFT = KMOD_LSHIFT | KMOD_RSHIFT, + KMOD_ALT = KMOD_LALT | KMOD_RALT, + KMOD_GUI = KMOD_LGUI | KMOD_RGUI +} SDL_Keymod; #endif /* SDL_keycode_h_ */ diff --git a/sdl2-sys/SDL2-2.0.14/include/SDL_locale.h b/sdl2-sys/SDL2-2.0.14/include/SDL_locale.h new file mode 100644 index 00000000000..1f4b0c469ac --- /dev/null +++ b/sdl2-sys/SDL2-2.0.14/include/SDL_locale.h @@ -0,0 +1,101 @@ +/* + Simple DirectMedia Layer + 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 + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file SDL_locale.h + * + * Include file for SDL locale services + */ + +#ifndef _SDL_locale_h +#define _SDL_locale_h + +#include "SDL_stdinc.h" +#include "SDL_error.h" + +#include "begin_code.h" +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +/* *INDENT-OFF* */ +extern "C" { +/* *INDENT-ON* */ +#endif + + +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; + +/** + * \brief Report the user's preferred locale. + * + * This returns an array of SDL_Locale structs, the final item zeroed out. + * When the caller is done with this array, it should call SDL_free() on + * the returned value; all the memory involved is allocated in a single + * block, so a single SDL_free() will suffice. + * + * Returned language strings are in the format xx, where 'xx' is an ISO-639 + * language specifier (such as "en" for English, "de" for German, etc). + * Country strings are in the format YY, where "YY" is an ISO-3166 country + * code (such as "US" for the United States, "CA" for Canada, etc). Country + * might be NULL if there's no specific guidance on them (so you might get + * { "en", "US" } for American English, but { "en", NULL } means "English + * language, generically"). Language strings are never NULL, except to + * terminate the array. + * + * Please note that not all of these strings are 2 characters; some are + * three or more. + * + * The returned list of locales are in the order of the user's preference. + * For example, a German citizen that is fluent in US English and knows + * enough Japanese to navigate around Tokyo might have a list like: + * { "de", "en_US", "jp", NULL }. Someone from England might prefer British + * English (where "color" is spelled "colour", etc), but will settle for + * anything like it: { "en_GB", "en", NULL }. + * + * This function returns NULL on error, including when the platform does not + * supply this information at all. + * + * This might be a "slow" call that has to query the operating system. It's + * best to ask for this once and save the results. However, this list can + * change, usually because the user has changed a system preference outside + * of your program; SDL will send an SDL_LOCALECHANGED event in this case, + * if possible, and you can call this function again to get an updated copy + * of preferred locales. + * + * \return array of locales, terminated with a locale with a NULL language + * field. Will return NULL on error. + */ +extern DECLSPEC SDL_Locale * SDLCALL SDL_GetPreferredLocales(void); + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +/* *INDENT-OFF* */ +} +/* *INDENT-ON* */ +#endif +#include "close_code.h" + +#endif /* _SDL_locale_h */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/sdl2-sys/SDL2-2.0.14/include/SDL_metal.h b/sdl2-sys/SDL2-2.0.14/include/SDL_metal.h index 3b7eb18aa88..f9673577066 100644 --- a/sdl2-sys/SDL2-2.0.14/include/SDL_metal.h +++ b/sdl2-sys/SDL2-2.0.14/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/sdl2-sys/SDL2-2.0.14/include/SDL_misc.h b/sdl2-sys/SDL2-2.0.14/include/SDL_misc.h new file mode 100644 index 00000000000..a04f19ba8ec --- /dev/null +++ b/sdl2-sys/SDL2-2.0.14/include/SDL_misc.h @@ -0,0 +1,75 @@ +/* + Simple DirectMedia Layer + 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 + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. +*/ + +/** + * \file SDL_misc.h + * + * \brief Include file for SDL API functions that don't fit elsewhere. + */ + +#ifndef SDL_misc_h_ +#define SDL_misc_h_ + +#include "SDL_stdinc.h" + +#include "begin_code.h" + +/* Set up for C function definitions, even when using C++ */ +#ifdef __cplusplus +extern "C" { +#endif + +/** + * \brief Open an URL / URI in the browser or other + * + * Open a URL in a separate, system-provided application. How this works will + * vary wildly depending on the platform. This will likely launch what + * makes sense to handle a specific URL's protocol (a web browser for http://, + * etc), but it might also be able to launch file managers for directories + * and other things. + * + * What happens when you open a URL varies wildly as well: your game window + * may lose focus (and may or may not lose focus if your game was fullscreen + * or grabbing input at the time). On mobile devices, your app will likely + * move to the background or your process might be paused. Any given platform + * may or may not handle a given URL. + * + * If this is unimplemented (or simply unavailable) for a platform, this will + * fail with an error. A successful result does not mean the URL loaded, just + * that we launched something to handle it (or at least believe we did). + * + * All this to say: this function can be useful, but you should definitely + * test it on every platform you target. + * + * \param url A valid URL to open. + * \return 0 on success, or -1 on error. + */ +extern DECLSPEC int SDLCALL SDL_OpenURL(const char *url); + +/* Ends C function definitions when using C++ */ +#ifdef __cplusplus +} +#endif +#include "close_code.h" + +#endif /* SDL_misc_h_ */ + +/* vi: set ts=4 sw=4 expandtab: */ diff --git a/sdl2-sys/SDL2-2.0.14/include/SDL_pixels.h b/sdl2-sys/SDL2-2.0.14/include/SDL_pixels.h index 1b119e47b3a..aa90cbc2a1f 100644 --- a/sdl2-sys/SDL2-2.0.14/include/SDL_pixels.h +++ b/sdl2-sys/SDL2-2.0.14/include/SDL_pixels.h @@ -188,18 +188,22 @@ typedef enum SDL_PIXELFORMAT_RGB332 = SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED8, SDL_PACKEDORDER_XRGB, SDL_PACKEDLAYOUT_332, 8, 1), - SDL_PIXELFORMAT_RGB444 = + SDL_PIXELFORMAT_XRGB4444 = SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED16, SDL_PACKEDORDER_XRGB, SDL_PACKEDLAYOUT_4444, 12, 2), - SDL_PIXELFORMAT_BGR444 = + SDL_PIXELFORMAT_RGB444 = SDL_PIXELFORMAT_XRGB4444, + SDL_PIXELFORMAT_XBGR4444 = SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED16, SDL_PACKEDORDER_XBGR, SDL_PACKEDLAYOUT_4444, 12, 2), - SDL_PIXELFORMAT_RGB555 = + SDL_PIXELFORMAT_BGR444 = SDL_PIXELFORMAT_XBGR4444, + SDL_PIXELFORMAT_XRGB1555 = SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED16, SDL_PACKEDORDER_XRGB, SDL_PACKEDLAYOUT_1555, 15, 2), - SDL_PIXELFORMAT_BGR555 = + SDL_PIXELFORMAT_RGB555 = SDL_PIXELFORMAT_XRGB1555, + SDL_PIXELFORMAT_XBGR1555 = SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED16, SDL_PACKEDORDER_XBGR, SDL_PACKEDLAYOUT_1555, 15, 2), + SDL_PIXELFORMAT_BGR555 = SDL_PIXELFORMAT_XBGR1555, SDL_PIXELFORMAT_ARGB4444 = SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED16, SDL_PACKEDORDER_ARGB, SDL_PACKEDLAYOUT_4444, 16, 2), @@ -236,15 +240,17 @@ typedef enum SDL_PIXELFORMAT_BGR24 = SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_ARRAYU8, SDL_ARRAYORDER_BGR, 0, 24, 3), - SDL_PIXELFORMAT_RGB888 = + SDL_PIXELFORMAT_XRGB8888 = SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED32, SDL_PACKEDORDER_XRGB, SDL_PACKEDLAYOUT_8888, 24, 4), + SDL_PIXELFORMAT_RGB888 = SDL_PIXELFORMAT_XRGB8888, SDL_PIXELFORMAT_RGBX8888 = SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED32, SDL_PACKEDORDER_RGBX, SDL_PACKEDLAYOUT_8888, 24, 4), - SDL_PIXELFORMAT_BGR888 = + SDL_PIXELFORMAT_XBGR8888 = SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED32, SDL_PACKEDORDER_XBGR, SDL_PACKEDLAYOUT_8888, 24, 4), + SDL_PIXELFORMAT_BGR888 = SDL_PIXELFORMAT_XBGR8888, SDL_PIXELFORMAT_BGRX8888 = SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED32, SDL_PACKEDORDER_BGRX, SDL_PACKEDLAYOUT_8888, 24, 4), diff --git a/sdl2-sys/SDL2-2.0.14/include/SDL_revision.h b/sdl2-sys/SDL2-2.0.14/include/SDL_revision.h index dfbc057fe96..e0bcf431432 100644 --- a/sdl2-sys/SDL2-2.0.14/include/SDL_revision.h +++ b/sdl2-sys/SDL2-2.0.14/include/SDL_revision.h @@ -1,2 +1,2 @@ -#define SDL_REVISION "hg-13609:34cc7d3b69d3" -#define SDL_REVISION_NUMBER 13609 +#define SDL_REVISION "hg-14525:e52d96ea04fc" +#define SDL_REVISION_NUMBER 14525 diff --git a/sdl2-sys/SDL2-2.0.14/include/SDL_rwops.h b/sdl2-sys/SDL2-2.0.14/include/SDL_rwops.h index 6674f506090..2e6225fcbd7 100644 --- a/sdl2-sys/SDL2-2.0.14/include/SDL_rwops.h +++ b/sdl2-sys/SDL2-2.0.14/include/SDL_rwops.h @@ -96,15 +96,7 @@ typedef struct SDL_RWops #if defined(__ANDROID__) struct { - void *fileNameRef; - void *inputStreamRef; - void *readableByteChannelRef; - void *readMethod; - void *assetFileDescriptorRef; - long position; - long size; - long offset; - int fd; + void *asset; } androidio; #elif defined(__WIN32__) struct diff --git a/sdl2-sys/SDL2-2.0.14/include/SDL_sensor.h b/sdl2-sys/SDL2-2.0.14/include/SDL_sensor.h index 5122ee153cb..e6236341e2c 100644 --- a/sdl2-sys/SDL2-2.0.14/include/SDL_sensor.h +++ b/sdl2-sys/SDL2-2.0.14/include/SDL_sensor.h @@ -78,14 +78,16 @@ typedef enum * Accelerometer sensor * * The accelerometer returns the current acceleration in SI meters per - * second squared. This includes gravity, so a device at rest will have - * an acceleration of SDL_STANDARD_GRAVITY straight down. + * second squared. This measurement includes the force of gravity, so + * a device at rest will have an value of SDL_STANDARD_GRAVITY away + * from the center of the earth. * * values[0]: Acceleration on the x axis * values[1]: Acceleration on the y axis * values[2]: Acceleration on the z axis * - * For phones held in portrait mode, the axes are defined as follows: + * For phones held in portrait mode and game controllers held in front of you, + * the axes are defined as follows: * -X ... +X : left ... right * -Y ... +Y : bottom ... top * -Z ... +Z : farther ... closer @@ -105,22 +107,36 @@ typedef enum * see positive rotation on that axis when it appeared to be rotating * counter-clockwise. * - * values[0]: Angular speed around the x axis - * values[1]: Angular speed around the y axis - * values[2]: Angular speed around the z axis + * values[0]: Angular speed around the x axis (pitch) + * values[1]: Angular speed around the y axis (yaw) + * values[2]: Angular speed around the z axis (roll) * - * For phones held in portrait mode, the axes are defined as follows: + * For phones held in portrait mode and game controllers held in front of you, + * the axes are defined as follows: * -X ... +X : left ... right * -Y ... +Y : bottom ... top * -Z ... +Z : farther ... closer * - * The axis data is not changed when the phone is rotated. + * The axis data is not changed when the phone or controller is rotated. * * \sa SDL_GetDisplayOrientation() */ /* 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/sdl2-sys/SDL2-2.0.14/include/SDL_stdinc.h b/sdl2-sys/SDL2-2.0.14/include/SDL_stdinc.h index d96e18bc2fc..91ccaa45159 100644 --- a/sdl2-sys/SDL2-2.0.14/include/SDL_stdinc.h +++ b/sdl2-sys/SDL2-2.0.14/include/SDL_stdinc.h @@ -30,6 +30,12 @@ #include "SDL_config.h" +#ifdef __APPLE__ +#ifndef _DARWIN_C_SOURCE +#define _DARWIN_C_SOURCE 1 /* for memset_pattern4() */ +#endif +#endif + #ifdef HAVE_SYS_TYPES_H #include #endif @@ -413,6 +419,8 @@ extern DECLSPEC int SDLCALL SDL_islower(int x); extern DECLSPEC int SDLCALL SDL_toupper(int x); extern DECLSPEC int SDLCALL SDL_tolower(int x); +extern DECLSPEC Uint32 SDLCALL SDL_crc32(Uint32 crc, const void *data, size_t len); + extern DECLSPEC void *SDLCALL SDL_memset(SDL_OUT_BYTECAP(len) void *dst, int c, size_t len); #define SDL_zero(x) SDL_memset(&(x), 0, sizeof((x))) @@ -463,6 +471,8 @@ extern DECLSPEC wchar_t *SDLCALL SDL_wcsstr(const wchar_t *haystack, const wchar extern DECLSPEC int SDLCALL SDL_wcscmp(const wchar_t *str1, const wchar_t *str2); extern DECLSPEC int SDLCALL SDL_wcsncmp(const wchar_t *str1, const wchar_t *str2, size_t maxlen); +extern DECLSPEC int SDLCALL SDL_wcscasecmp(const wchar_t *str1, const wchar_t *str2); +extern DECLSPEC int SDLCALL SDL_wcsncasecmp(const wchar_t *str1, const wchar_t *str2, size_t len); extern DECLSPEC size_t SDLCALL SDL_strlen(const char *str); extern DECLSPEC size_t SDLCALL SDL_strlcpy(SDL_OUT_Z_CAP(maxlen) char *dst, const char *src, size_t maxlen); @@ -529,6 +539,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); @@ -575,6 +587,17 @@ extern DECLSPEC char *SDLCALL SDL_iconv_string(const char *tocode, /* force builds using Clang's static analysis tools to use literal C runtime here, since there are possibly tests that are ineffective otherwise. */ #if defined(__clang_analyzer__) && !defined(SDL_DISABLE_ANALYZE_MACROS) + +/* The analyzer knows about strlcpy even when the system doesn't provide it */ +#ifndef HAVE_STRLCPY +size_t strlcpy(char* dst, const char* src, size_t size); +#endif + +/* The analyzer knows about strlcat even when the system doesn't provide it */ +#ifndef HAVE_STRLCAT +size_t strlcat(char* dst, const char* src, size_t size); +#endif + #define SDL_malloc malloc #define SDL_calloc calloc #define SDL_realloc realloc @@ -583,16 +606,23 @@ extern DECLSPEC char *SDLCALL SDL_iconv_string(const char *tocode, #define SDL_memcpy memcpy #define SDL_memmove memmove #define SDL_memcmp memcmp -#define SDL_strlen strlen #define SDL_strlcpy strlcpy #define SDL_strlcat strlcat +#define SDL_strlen strlen +#define SDL_wcslen wcslen +#define SDL_wcslcpy wcslcpy +#define SDL_wcslcat wcslcat #define SDL_strdup strdup +#define SDL_wcsdup wcsdup #define SDL_strchr strchr #define SDL_strrchr strrchr #define SDL_strstr strstr +#define SDL_wcsstr wcsstr #define SDL_strtokr strtok_r #define SDL_strcmp strcmp +#define SDL_wcscmp wcscmp #define SDL_strncmp strncmp +#define SDL_wcsncmp wcsncmp #define SDL_strcasecmp strcasecmp #define SDL_strncasecmp strncasecmp #define SDL_sscanf sscanf diff --git a/sdl2-sys/SDL2-2.0.14/include/SDL_surface.h b/sdl2-sys/SDL2-2.0.14/include/SDL_surface.h index 0f11d178eab..d3f8c814ed8 100644 --- a/sdl2-sys/SDL2-2.0.14/include/SDL_surface.h +++ b/sdl2-sys/SDL2-2.0.14/include/SDL_surface.h @@ -80,7 +80,9 @@ typedef struct SDL_Surface /** information needed for surfaces requiring locks */ int locked; /**< Read-only */ - void *lock_data; /**< Read-only */ + + /** list of BlitMap that hold a reference to this surface */ + void *list_blitmap; /**< Private */ /** clipping information */ SDL_Rect clip_rect; /**< Read-only */ @@ -235,6 +237,13 @@ extern DECLSPEC int SDLCALL SDL_SaveBMP_RW extern DECLSPEC int SDLCALL SDL_SetSurfaceRLE(SDL_Surface * surface, int flag); +/** + * \brief Returns whether the surface is RLE enabled + * + * \return SDL_TRUE if the surface is RLE enabled, or SDL_FALSE if the surface is NULL or not RLE enabled + */ +extern DECLSPEC SDL_bool SDLCALL SDL_HasSurfaceRLE(SDL_Surface * surface); + /** * \brief Sets the color key (transparent pixel) in a blittable surface. * diff --git a/sdl2-sys/SDL2-2.0.14/include/SDL_system.h b/sdl2-sys/SDL2-2.0.14/include/SDL_system.h index d7974eb0342..d296ab1fc40 100644 --- a/sdl2-sys/SDL2-2.0.14/include/SDL_system.h +++ b/sdl2-sys/SDL2-2.0.14/include/SDL_system.h @@ -123,6 +123,7 @@ extern DECLSPEC void * SDLCALL SDL_AndroidGetActivity(void); /** \brief Return API level of the current device + API level 30: Android 11 API level 29: Android 10 API level 28: Android 9 API level 27: Android 8.1 @@ -198,6 +199,14 @@ extern DECLSPEC int SDLCALL SDL_AndroidGetExternalStorageState(void); */ extern DECLSPEC const char * SDLCALL SDL_AndroidGetExternalStoragePath(void); +/** + \brief Request permissions at runtime. + + This blocks the calling thread until the permission is granted or + denied. Returns SDL_TRUE if the permission was granted. + */ +extern DECLSPEC SDL_bool SDLCALL SDL_AndroidRequestPermission(const char *permission); + #endif /* __ANDROID__ */ /* Platform specific functions for WinRT */ diff --git a/sdl2-sys/SDL2-2.0.14/include/SDL_syswm.h b/sdl2-sys/SDL2-2.0.14/include/SDL_syswm.h index e877b2aad74..f0e9675d75a 100644 --- a/sdl2-sys/SDL2-2.0.14/include/SDL_syswm.h +++ b/sdl2-sys/SDL2-2.0.14/include/SDL_syswm.h @@ -106,6 +106,11 @@ typedef void *EGLSurface; #if defined(SDL_VIDEO_DRIVER_VIVANTE) #include "SDL_egl.h" #endif + +#if defined(SDL_VIDEO_DRIVER_OS2) +#define INCL_WIN +#include +#endif #endif /* SDL_PROTOTYPES_ONLY */ @@ -186,6 +191,16 @@ struct SDL_SysWMmsg int dummy; /* No Vivante window events yet */ } vivante; +#endif +#if defined(SDL_VIDEO_DRIVER_OS2) + struct + { + BOOL fFrame; /**< TRUE if hwnd is a frame window */ + HWND hwnd; /**< The window receiving the message */ + ULONG msg; /**< The message identifier */ + MPARAM mp1; /**< The first first message parameter */ + MPARAM mp2; /**< The second first message parameter */ + } os2; #endif /* Can't have an empty union */ int dummy; @@ -280,6 +295,14 @@ struct SDL_SysWMinfo } android; #endif +#if defined(SDL_VIDEO_DRIVER_OS2) + struct + { + HWND hwnd; /**< The window handle */ + HWND hwndFrame; /**< The frame window handle */ + } os2; +#endif + #if defined(SDL_VIDEO_DRIVER_VIVANTE) struct { diff --git a/sdl2-sys/SDL2-2.0.14/include/SDL_thread.h b/sdl2-sys/SDL2-2.0.14/include/SDL_thread.h index cb530117432..4016358a0a7 100644 --- a/sdl2-sys/SDL2-2.0.14/include/SDL_thread.h +++ b/sdl2-sys/SDL2-2.0.14/include/SDL_thread.h @@ -54,6 +54,11 @@ typedef unsigned int SDL_TLSID; /** * The SDL thread priority. * + * SDL will make system changes as necessary in order to apply the thread priority. + * Code which attempts to control thread state related to priority should be aware + * that calling SDL_SetThreadPriority may alter such state. + * SDL_HINT_THREAD_PRIORITY_POLICY can be used to control aspects of this behavior. + * * \note On many systems you require special privileges to set high or time critical priority. */ typedef enum { diff --git a/sdl2-sys/SDL2-2.0.14/include/SDL_version.h b/sdl2-sys/SDL2-2.0.14/include/SDL_version.h index c824b1d319b..23b65f434f3 100644 --- a/sdl2-sys/SDL2-2.0.14/include/SDL_version.h +++ b/sdl2-sys/SDL2-2.0.14/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 14 /** * \brief Macro to determine SDL version program was compiled against. diff --git a/sdl2-sys/SDL2-2.0.14/include/SDL_video.h b/sdl2-sys/SDL2-2.0.14/include/SDL_video.h index 20d4ce2d4ec..54cbe0f0f2a 100644 --- a/sdl2-sys/SDL2-2.0.14/include/SDL_video.h +++ b/sdl2-sys/SDL2-2.0.14/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; /** @@ -174,7 +175,9 @@ typedef enum typedef enum { SDL_DISPLAYEVENT_NONE, /**< Never used */ - SDL_DISPLAYEVENT_ORIENTATION /**< Display orientation has changed to data1 */ + SDL_DISPLAYEVENT_ORIENTATION, /**< Display orientation has changed to data1 */ + SDL_DISPLAYEVENT_CONNECTED, /**< Display has been added to the system */ + SDL_DISPLAYEVENT_DISCONNECTED /**< Display has been removed from the system */ } SDL_DisplayEventID; typedef enum @@ -484,7 +487,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 +507,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/sdl2-sys/SDL2-2.0.14/include/SDL_vulkan.h b/sdl2-sys/SDL2-2.0.14/include/SDL_vulkan.h index d69a436b3ea..a3de1cea9c1 100644 --- a/sdl2-sys/SDL2-2.0.14/include/SDL_vulkan.h +++ b/sdl2-sys/SDL2-2.0.14/include/SDL_vulkan.h @@ -204,10 +204,9 @@ extern DECLSPEC void SDLCALL SDL_Vulkan_UnloadLibrary(void); * * \sa SDL_Vulkan_CreateSurface() */ -extern DECLSPEC SDL_bool SDLCALL SDL_Vulkan_GetInstanceExtensions( - SDL_Window *window, - unsigned int *pCount, - const char **pNames); +extern DECLSPEC SDL_bool SDLCALL SDL_Vulkan_GetInstanceExtensions(SDL_Window *window, + unsigned int *pCount, + const char **pNames); /** * \brief Create a Vulkan rendering surface for a window. @@ -238,10 +237,9 @@ extern DECLSPEC SDL_bool SDLCALL SDL_Vulkan_GetInstanceExtensions( * * \sa SDL_Vulkan_GetInstanceExtensions() */ -extern DECLSPEC SDL_bool SDLCALL SDL_Vulkan_CreateSurface( - SDL_Window *window, - VkInstance instance, - VkSurfaceKHR* surface); +extern DECLSPEC SDL_bool SDLCALL SDL_Vulkan_CreateSurface(SDL_Window *window, + VkInstance instance, + VkSurfaceKHR* surface); /** * \brief Get the size of a window's underlying drawable in pixels (for use diff --git a/sdl2-sys/SDL2-2.0.14/include/begin_code.h b/sdl2-sys/SDL2-2.0.14/include/begin_code.h index 170d69ec55c..1ca40ccdbd1 100644 --- a/sdl2-sys/SDL2-2.0.14/include/begin_code.h +++ b/sdl2-sys/SDL2-2.0.14/include/begin_code.h @@ -51,15 +51,11 @@ /* Some compilers use a special export keyword */ #ifndef DECLSPEC -# if defined(__WIN32__) || defined(__WINRT__) -# ifdef __BORLANDC__ -# ifdef BUILD_SDL -# define DECLSPEC -# else -# define DECLSPEC __declspec(dllimport) -# endif -# else +# if defined(__WIN32__) || defined(__WINRT__) || defined(__CYGWIN__) +# ifdef DLL_EXPORT # define DECLSPEC __declspec(dllexport) +# else +# define DECLSPEC # endif # elif defined(__OS2__) # ifdef BUILD_SDL