From f27a1c24b3afe0a4a04aa69bc0e808267b0e9d61 Mon Sep 17 00:00:00 2001 From: Sasha Szpakowski Date: Wed, 25 Dec 2024 20:18:57 -0400 Subject: [PATCH] update SDL to libsdl-org/SDL@b8036bd --- libs/SDL3/.wikiheaders-options | 9 +- libs/SDL3/Android.mk | 3 + libs/SDL3/CMakeLists.txt | 113 +- libs/SDL3/INSTALL.md | 2 +- libs/SDL3/VisualC-GDK/SDL/SDL.vcxproj | 73 +- libs/SDL3/VisualC-GDK/SDL/SDL.vcxproj.filters | 87 +- libs/SDL3/VisualC/SDL.sln | 6 +- libs/SDL3/VisualC/SDL/SDL.vcxproj | 36 +- libs/SDL3/VisualC/SDL/SDL.vcxproj.filters | 143 +- .../examples/game/01-snake/01-snake.vcxproj | 4 +- .../{game => demo}/01-snake/01-snake.vcxproj | 4 +- .../02-woodeneye-008/02-woodeneye-008.vcxproj | 4 +- .../03-infinite-monkeys.vcxproj | 4 +- libs/SDL3/Xcode/SDL/Info-Framework.plist | 4 +- .../Xcode/SDL/SDL.xcodeproj/project.pbxproj | 268 +- libs/SDL3/Xcode/SDL/pkg-support/SDL.info | 2 +- .../share/cmake/SDL3/SDL3Config.cmake | 2 +- .../app/HIDDeviceBLESteamController.java | 2 +- .../java/org/libsdl/app/HIDDeviceManager.java | 4 +- .../java/org/libsdl/app/HIDDeviceUSB.java | 10 + .../main/java/org/libsdl/app/SDLActivity.java | 2 +- libs/SDL3/build-scripts/SDL_migration.cocci | 10 +- libs/SDL3/build-scripts/build-release.py | 64 +- libs/SDL3/build-scripts/build-web-examples.pl | 202 +- libs/SDL3/build-scripts/create-release.py | 10 +- libs/SDL3/build-scripts/fnsince.pl | 8 +- .../android/cmake/SDL3Config.cmake | 2 +- .../msvc/cmake/SDL3Config.cmake.in | 2 +- libs/SDL3/build-scripts/rename_macros.py | 1 - libs/SDL3/build-scripts/wikiheaders.pl | 300 +- libs/SDL3/cmake/android/FindSdlAndroid.cmake | 2 +- .../android/FindSdlAndroidBuildTools.cmake | 2 +- .../android/FindSdlAndroidPlatform.cmake | 2 +- .../cmake/android/SdlAndroidFunctions.cmake | 2 +- .../SDL3/cmake/android/SdlAndroidScript.cmake | 2 +- libs/SDL3/cmake/sdlchecks.cmake | 6 + libs/SDL3/cmake/sdlcpu.cmake | 2 +- libs/SDL3/docs/README-documentation-rules.md | 9 + libs/SDL3/docs/README-linux.md | 4 +- libs/SDL3/docs/README-main-functions.md | 30 + libs/SDL3/docs/README-migration.md | 9 +- libs/SDL3/docs/README-ngage.md | 45 +- libs/SDL3/docs/README-raspberrypi.md | 42 +- libs/SDL3/docs/README-touch.md | 3 +- libs/SDL3/docs/release_checklist.md | 39 +- libs/SDL3/examples/CMakeLists.txt | 12 +- .../asyncio/01-load-bitmaps/README.txt | 6 + .../asyncio/01-load-bitmaps/load-bitmaps.c | 125 + .../asyncio/01-load-bitmaps/thumbnail.png | Bin 0 -> 76234 bytes libs/SDL3/examples/asyncio/description.txt | 1 + .../audio/04-multiple-streams/README.txt | 5 + .../04-multiple-streams/multiple-streams.c | 135 + libs/SDL3/examples/audio/onmouseover.webp | Bin 0 -> 176470 bytes libs/SDL3/examples/audio/thumbnail.png | Bin 0 -> 14221 bytes .../camera/01-read-and-draw/onmouseover.webp | Bin 0 -> 346856 bytes .../camera/01-read-and-draw/thumbnail.png | Bin 0 -> 239597 bytes libs/SDL3/examples/categories.txt | 13 + .../{game => demo}/01-snake/README.txt | 0 .../examples/demo/01-snake/onmouseover.webp | Bin 0 -> 30996 bytes .../examples/{game => demo}/01-snake/snake.c | 4 +- .../SDL3/examples/demo/01-snake/thumbnail.png | Bin 0 -> 2958 bytes .../02-woodeneye-008/README.txt | 0 .../demo/02-woodeneye-008/onmouseover.webp | Bin 0 -> 468022 bytes .../demo/02-woodeneye-008/thumbnail.png | Bin 0 -> 25191 bytes .../02-woodeneye-008/woodeneye-008.c | 2 +- .../03-infinite-monkeys/README.txt | 0 .../03-infinite-monkeys/infinite-monkeys.c | 2 +- .../demo/03-infinite-monkeys/onmouseover.webp | Bin 0 -> 95578 bytes .../demo/03-infinite-monkeys/thumbnail.png | Bin 0 -> 7740 bytes .../examples/demo/04-bytepusher/README.txt | 4 + .../examples/demo/04-bytepusher/bytepusher.c | 416 ++ .../demo/04-bytepusher/onmouseover.webp | Bin 0 -> 430096 bytes .../examples/demo/04-bytepusher/thumbnail.png | Bin 0 -> 23851 bytes libs/SDL3/examples/demo/description.txt | 1 + .../input/01-joystick-polling/README.txt | 2 + .../01-joystick-polling/joystick-polling.c | 193 + .../01-joystick-polling/onmouseover.webp | Bin 0 -> 47840 bytes .../input/01-joystick-polling/thumbnail.png | Bin 0 -> 5940 bytes .../input/02-joystick-events/README.txt | 2 + .../02-joystick-events/joystick-events.c | 232 + .../input/02-joystick-events/onmouseover.webp | Bin 0 -> 2302260 bytes .../input/02-joystick-events/thumbnail.png | Bin 0 -> 30785 bytes .../pen/01-drawing-lines/onmouseover.webp | Bin 0 -> 28346 bytes .../pen/01-drawing-lines/thumbnail.png | Bin 0 -> 2042 bytes .../renderer/01-clear/onmouseover.webp | Bin 0 -> 69392 bytes .../examples/renderer/01-clear/thumbnail.png | Bin 0 -> 2070 bytes .../renderer/02-primitives/thumbnail.png | Bin 0 -> 8761 bytes .../renderer/03-lines/onmouseover.webp | Bin 0 -> 66034 bytes .../examples/renderer/03-lines/thumbnail.png | Bin 0 -> 28130 bytes .../renderer/04-points/onmouseover.webp | Bin 0 -> 155796 bytes .../examples/renderer/04-points/thumbnail.png | Bin 0 -> 8114 bytes .../renderer/05-rectangles/onmouseover.webp | Bin 0 -> 75754 bytes .../renderer/05-rectangles/thumbnail.png | Bin 0 -> 3634 bytes .../renderer/06-textures/onmouseover.webp | Bin 0 -> 605954 bytes .../renderer/06-textures/thumbnail.png | Bin 0 -> 238654 bytes .../07-streaming-textures/onmouseover.webp | Bin 0 -> 17160 bytes .../07-streaming-textures/thumbnail.png | Bin 0 -> 3552 bytes .../08-rotating-textures/onmouseover.webp | Bin 0 -> 312998 bytes .../08-rotating-textures/thumbnail.png | Bin 0 -> 91098 bytes .../09-scaling-textures/onmouseover.webp | Bin 0 -> 318914 bytes .../09-scaling-textures/thumbnail.png | Bin 0 -> 83431 bytes .../renderer/10-geometry/onmouseover.webp | Bin 0 -> 119254 bytes .../renderer/10-geometry/thumbnail.png | Bin 0 -> 57164 bytes .../renderer/11-color-mods/onmouseover.webp | Bin 0 -> 278286 bytes .../renderer/11-color-mods/thumbnail.png | Bin 0 -> 122439 bytes .../renderer/14-viewport/thumbnail.png | Bin 0 -> 146306 bytes .../renderer/15-cliprect/onmouseover.webp | Bin 0 -> 260400 bytes .../renderer/15-cliprect/thumbnail.png | Bin 0 -> 87025 bytes .../renderer/17-read-pixels/onmouseover.webp | Bin 0 -> 482380 bytes .../renderer/17-read-pixels/thumbnail.png | Bin 0 -> 102838 bytes .../renderer/18-debug-text/debug-text.c | 5 + .../renderer/18-debug-text/thumbnail.png | Bin 0 -> 4344 bytes libs/SDL3/examples/template-category.html | 41 + libs/SDL3/examples/template-homepage.html | 41 + libs/SDL3/examples/template-placeholder.png | Bin 0 -> 34957 bytes libs/SDL3/examples/template.css | 284 + libs/SDL3/examples/template.html | 122 +- libs/SDL3/include/SDL3/SDL.h | 9 +- libs/SDL3/include/SDL3/SDL_assert.h | 128 +- libs/SDL3/include/SDL3/SDL_asyncio.h | 546 ++ libs/SDL3/include/SDL3/SDL_atomic.h | 84 +- libs/SDL3/include/SDL3/SDL_audio.h | 156 +- libs/SDL3/include/SDL3/SDL_begin_code.h | 265 +- libs/SDL3/include/SDL3/SDL_bits.h | 4 - libs/SDL3/include/SDL3/SDL_blendmode.h | 2 +- libs/SDL3/include/SDL3/SDL_camera.h | 38 +- libs/SDL3/include/SDL3/SDL_clipboard.h | 73 +- libs/SDL3/include/SDL3/SDL_close_code.h | 5 +- libs/SDL3/include/SDL3/SDL_cpuinfo.h | 6 + libs/SDL3/include/SDL3/SDL_dialog.h | 170 +- libs/SDL3/include/SDL3/SDL_endian.h | 110 +- libs/SDL3/include/SDL3/SDL_error.h | 37 +- libs/SDL3/include/SDL3/SDL_events.h | 72 +- libs/SDL3/include/SDL3/SDL_filesystem.h | 51 +- libs/SDL3/include/SDL3/SDL_gpu.h | 301 +- libs/SDL3/include/SDL3/SDL_guid.h | 2 + libs/SDL3/include/SDL3/SDL_haptic.h | 14 +- libs/SDL3/include/SDL3/SDL_hints.h | 178 +- libs/SDL3/include/SDL3/SDL_init.h | 123 +- libs/SDL3/include/SDL3/SDL_intrin.h | 256 +- libs/SDL3/include/SDL3/SDL_iostream.h | 122 +- libs/SDL3/include/SDL3/SDL_joystick.h | 4 +- libs/SDL3/include/SDL3/SDL_keyboard.h | 60 +- libs/SDL3/include/SDL3/SDL_keycode.h | 5 + libs/SDL3/include/SDL3/SDL_loadso.h | 5 + libs/SDL3/include/SDL3/SDL_locale.h | 6 + libs/SDL3/include/SDL3/SDL_log.h | 2 +- libs/SDL3/include/SDL3/SDL_main.h | 151 +- libs/SDL3/include/SDL3/SDL_main_impl.h | 12 - libs/SDL3/include/SDL3/SDL_messagebox.h | 2 +- libs/SDL3/include/SDL3/SDL_mouse.h | 148 +- libs/SDL3/include/SDL3/SDL_mutex.h | 159 +- libs/SDL3/include/SDL3/SDL_pixels.h | 529 +- libs/SDL3/include/SDL3/SDL_platform_defines.h | 21 +- libs/SDL3/include/SDL3/SDL_process.h | 19 +- libs/SDL3/include/SDL3/SDL_render.h | 252 +- libs/SDL3/include/SDL3/SDL_scancode.h | 5 + libs/SDL3/include/SDL3/SDL_sensor.h | 5 + libs/SDL3/include/SDL3/SDL_stdinc.h | 1773 ++++- libs/SDL3/include/SDL3/SDL_surface.h | 21 +- libs/SDL3/include/SDL3/SDL_system.h | 43 +- libs/SDL3/include/SDL3/SDL_test.h | 2 - libs/SDL3/include/SDL3/SDL_test_common.h | 2 - libs/SDL3/include/SDL3/SDL_test_compare.h | 2 - libs/SDL3/include/SDL3/SDL_test_font.h | 2 - libs/SDL3/include/SDL3/SDL_test_harness.h | 2 - libs/SDL3/include/SDL3/SDL_test_log.h | 2 - libs/SDL3/include/SDL3/SDL_test_md5.h | 2 - libs/SDL3/include/SDL3/SDL_test_memory.h | 2 - libs/SDL3/include/SDL3/SDL_thread.h | 31 + libs/SDL3/include/SDL3/SDL_timer.h | 123 +- libs/SDL3/include/SDL3/SDL_touch.h | 48 +- libs/SDL3/include/SDL3/SDL_tray.h | 437 ++ libs/SDL3/include/SDL3/SDL_version.h | 2 +- libs/SDL3/include/SDL3/SDL_video.h | 374 +- .../include/build_config/SDL_build_config.h | 2 - .../build_config/SDL_build_config.h.cmake | 487 +- .../build_config/SDL_build_config_android.h | 147 +- .../build_config/SDL_build_config_ios.h | 145 +- .../build_config/SDL_build_config_macos.h | 156 +- .../build_config/SDL_build_config_minimal.h | 17 +- .../build_config/SDL_build_config_ngage.h | 99 - .../build_config/SDL_build_config_windows.h | 107 +- .../build_config/SDL_build_config_wingdk.h | 103 +- .../build_config/SDL_build_config_xbox.h | 97 +- libs/SDL3/src/SDL.c | 26 +- libs/SDL3/src/SDL_hashtable.c | 76 +- libs/SDL3/src/SDL_hashtable.h | 14 + libs/SDL3/src/SDL_internal.h | 43 +- libs/SDL3/src/SDL_properties.c | 82 +- libs/SDL3/src/SDL_utils.c | 19 +- libs/SDL3/src/audio/SDL_audio.c | 107 +- libs/SDL3/src/audio/SDL_audiocvt.c | 63 +- libs/SDL3/src/audio/SDL_sysaudio.h | 3 + libs/SDL3/src/audio/aaudio/SDL_aaudio.c | 24 +- libs/SDL3/src/audio/alsa/SDL_alsa_audio.c | 1447 ++-- libs/SDL3/src/audio/alsa/SDL_alsa_audio.h | 7 +- libs/SDL3/src/audio/coreaudio/SDL_coreaudio.m | 35 +- .../audio/emscripten/SDL_emscriptenaudio.c | 5 +- libs/SDL3/src/audio/pipewire/SDL_pipewire.c | 27 +- libs/SDL3/src/audio/wasapi/SDL_wasapi.c | 148 +- libs/SDL3/src/audio/wasapi/SDL_wasapi.h | 11 - libs/SDL3/src/audio/wasapi/SDL_wasapi_win32.c | 200 - libs/SDL3/src/camera/SDL_camera.c | 2 +- .../src/camera/pipewire/SDL_camera_pipewire.c | 6 +- libs/SDL3/src/core/android/SDL_android.c | 5 + libs/SDL3/src/core/linux/SDL_evdev.c | 29 +- libs/SDL3/src/core/openbsd/SDL_wscons_kbd.c | 36 +- libs/SDL3/src/core/openbsd/SDL_wscons_mouse.c | 47 +- libs/SDL3/src/core/windows/SDL_immdevice.h | 16 +- libs/SDL3/src/core/windows/version.rc | 8 +- libs/SDL3/src/dialog/SDL_dialog.c | 131 + .../SDL_dialog.h} | 6 +- libs/SDL3/src/dialog/SDL_dialog_utils.c | 23 +- .../src/dialog/android/SDL_androiddialog.c | 45 +- libs/SDL3/src/dialog/cocoa/SDL_cocoadialog.m | 49 +- libs/SDL3/src/dialog/dummy/SDL_dummydialog.c | 16 +- libs/SDL3/src/dialog/haiku/SDL_haikudialog.cc | 66 +- libs/SDL3/src/dialog/unix/SDL_portaldialog.c | 79 +- libs/SDL3/src/dialog/unix/SDL_portaldialog.h | 4 +- libs/SDL3/src/dialog/unix/SDL_unixdialog.c | 57 +- libs/SDL3/src/dialog/unix/SDL_zenitydialog.c | 366 +- libs/SDL3/src/dialog/unix/SDL_zenitydialog.h | 4 +- .../src/dialog/windows/SDL_windowsdialog.c | 180 +- libs/SDL3/src/dynapi/SDL_dynapi.c | 35 +- libs/SDL3/src/dynapi/SDL_dynapi.h | 2 - libs/SDL3/src/dynapi/SDL_dynapi.sym | 46 + libs/SDL3/src/dynapi/SDL_dynapi_overrides.h | 46 + libs/SDL3/src/dynapi/SDL_dynapi_procs.h | 48 + libs/SDL3/src/dynapi/gendynapi.py | 5 + libs/SDL3/src/events/SDL_categories.c | 8 +- libs/SDL3/src/events/SDL_categories_c.h | 1 + libs/SDL3/src/events/SDL_events.c | 205 +- libs/SDL3/src/events/SDL_keyboard.c | 14 + libs/SDL3/src/events/SDL_keymap.c | 4 +- libs/SDL3/src/events/SDL_mouse.c | 322 +- libs/SDL3/src/events/SDL_mouse_c.h | 44 +- libs/SDL3/src/events/SDL_windowevents.c | 2 + libs/SDL3/src/file/SDL_asyncio.c | 327 + .../SDL_asyncio_c.h} | 20 +- libs/SDL3/src/file/SDL_iostream.c | 52 + libs/SDL3/src/file/SDL_sysasyncio.h | 144 + .../src/file/generic/SDL_asyncio_generic.c | 465 ++ .../src/file/io_uring/SDL_asyncio_liburing.c | 551 ++ .../file/windows/SDL_asyncio_windows_ioring.c | 550 ++ libs/SDL3/src/filesystem/SDL_filesystem.c | 7 +- libs/SDL3/src/filesystem/SDL_sysfilesystem.h | 1 + .../src/filesystem/dummy/SDL_sysfilesystem.c | 6 + .../src/filesystem/gdk/SDL_sysfilesystem.cpp | 7 + libs/SDL3/src/filesystem/posix/SDL_sysfsops.c | 32 + .../filesystem/windows/SDL_sysfilesystem.c | 28 + libs/SDL3/src/gpu/SDL_gpu.c | 94 +- libs/SDL3/src/gpu/SDL_sysgpu.h | 33 +- libs/SDL3/src/gpu/d3d11/D3D11_Blit.h | 1707 ----- libs/SDL3/src/gpu/d3d11/SDL_gpu_d3d11.c | 6534 ----------------- libs/SDL3/src/gpu/d3d11/compile_shaders.bat | 8 - .../gpu/{d3dcommon => d3d12}/D3D_Blit.hlsl | 32 +- libs/SDL3/src/gpu/d3d12/SDL_gpu_d3d12.c | 887 ++- libs/SDL3/src/gpu/d3d12/compile_shaders.bat | 12 +- libs/SDL3/src/gpu/metal/SDL_gpu_metal.m | 175 +- libs/SDL3/src/gpu/vulkan/SDL_gpu_vulkan.c | 389 +- libs/SDL3/src/hidapi/SDL_hidapi.c | 2 +- libs/SDL3/src/hidapi/android/hid.cpp | 20 +- libs/SDL3/src/hidapi/ios/hid.m | 1 + libs/SDL3/src/hidapi/linux/hid.c | 43 +- libs/SDL3/src/joystick/SDL_gamepad.c | 33 +- libs/SDL3/src/joystick/SDL_gamepad_db.h | 12 +- libs/SDL3/src/joystick/SDL_joystick.c | 10 +- libs/SDL3/src/joystick/bsd/SDL_bsdjoystick.c | 2 +- libs/SDL3/src/joystick/controller_list.h | 1 + .../src/joystick/gdk/SDL_gameinputjoystick.c | 4 +- .../src/joystick/hidapi/SDL_hidapi_steam.c | 402 +- .../src/joystick/hidapi/SDL_hidapi_xbox360w.c | 1 + .../src/joystick/hidapi/SDL_hidapijoystick.c | 38 + .../joystick/hidapi/SDL_hidapijoystick_c.h | 8 +- .../SDL3/src/joystick/linux/SDL_sysjoystick.c | 150 +- .../src/joystick/steam/SDL_steamcontroller.h | 37 - libs/SDL3/src/joystick/usb_ids.h | 5 + .../src/joystick/windows/SDL_dinputjoystick.c | 33 +- .../joystick/windows/SDL_windowsjoystick.c | 2 +- libs/SDL3/src/locale/psp/SDL_syslocale.c | 78 + .../src/main/ngage/SDL_sysmain_runapp.cpp | 77 - libs/SDL3/src/render/SDL_render.c | 278 +- libs/SDL3/src/render/SDL_sysrender.h | 2 +- libs/SDL3/src/render/SDL_yuv_sw.c | 2 +- .../SDL3/src/render/direct3d/SDL_render_d3d.c | 39 +- .../src/render/direct3d11/SDL_render_d3d11.c | 25 +- .../src/render/direct3d12/SDL_render_d3d12.c | 23 +- libs/SDL3/src/render/gpu/SDL_pipeline_gpu.c | 2 +- libs/SDL3/src/render/gpu/SDL_render_gpu.c | 4 + libs/SDL3/src/render/gpu/SDL_shaders_gpu.c | 24 - libs/SDL3/src/render/metal/SDL_render_metal.m | 32 +- libs/SDL3/src/render/opengl/SDL_render_gl.c | 20 +- libs/SDL3/src/render/opengl/SDL_shaders_gl.c | 2 +- libs/SDL3/src/render/opengl/SDL_shaders_gl.h | 2 +- .../src/render/opengles2/SDL_render_gles2.c | 30 +- .../src/render/opengles2/SDL_shaders_gles2.c | 4 +- .../src/render/opengles2/SDL_shaders_gles2.h | 2 +- .../src/render/vitagxm/SDL_render_vita_gxm.c | 10 +- .../src/render/vulkan/SDL_render_vulkan.c | 15 +- libs/SDL3/src/stdlib/SDL_getenv.c | 2 +- libs/SDL3/src/stdlib/SDL_malloc.c | 23 +- libs/SDL3/src/stdlib/SDL_vacopy.h | 6 +- libs/SDL3/src/test/SDL_test_common.c | 34 +- libs/SDL3/src/test/SDL_test_memory.c | 18 +- libs/SDL3/src/thread/SDL_thread.c | 5 + libs/SDL3/src/thread/SDL_thread_c.h | 10 - libs/SDL3/src/thread/ngage/SDL_sysmutex.cpp | 100 - libs/SDL3/src/thread/ngage/SDL_syssem.cpp | 157 - libs/SDL3/src/thread/ngage/SDL_systhread.cpp | 112 - libs/SDL3/src/timer/SDL_timer.c | 2 +- libs/SDL3/src/timer/ngage/SDL_systimer.cpp | 59 - libs/SDL3/src/tray/cocoa/SDL_tray.m | 450 ++ libs/SDL3/src/tray/dummy/SDL_tray.c | 143 + libs/SDL3/src/tray/unix/SDL_tray.c | 664 ++ libs/SDL3/src/tray/windows/SDL_tray.c | 565 ++ libs/SDL3/src/video/SDL_RLEaccel.c | 2 +- libs/SDL3/src/video/SDL_blit.c | 16 +- libs/SDL3/src/video/SDL_blit_0.c | 2 +- libs/SDL3/src/video/SDL_blit_1.c | 2 +- libs/SDL3/src/video/SDL_blit_A.c | 2 +- libs/SDL3/src/video/SDL_blit_N.c | 6 +- libs/SDL3/src/video/SDL_blit_auto.c | 2 +- libs/SDL3/src/video/SDL_blit_auto.h | 2 +- libs/SDL3/src/video/SDL_bmp.c | 13 +- libs/SDL3/src/video/SDL_fillrect.c | 7 + libs/SDL3/src/video/SDL_pixels.c | 43 +- libs/SDL3/src/video/SDL_surface.c | 12 +- libs/SDL3/src/video/SDL_sysvideo.h | 9 +- libs/SDL3/src/video/SDL_video.c | 135 +- libs/SDL3/src/video/SDL_yuv.c | 8 +- .../src/video/android/SDL_androidevents.c | 5 +- .../SDL3/src/video/android/SDL_androidmouse.c | 3 +- libs/SDL3/src/video/cocoa/SDL_cocoaevents.m | 2 +- libs/SDL3/src/video/cocoa/SDL_cocoakeyboard.m | 20 +- libs/SDL3/src/video/cocoa/SDL_cocoamouse.m | 25 +- libs/SDL3/src/video/cocoa/SDL_cocoavideo.m | 4 + libs/SDL3/src/video/cocoa/SDL_cocoawindow.h | 13 +- libs/SDL3/src/video/cocoa/SDL_cocoawindow.m | 226 +- libs/SDL3/src/video/dummy/SDL_nullvideo.c | 4 +- .../video/emscripten/SDL_emscriptenevents.c | 145 + .../video/emscripten/SDL_emscriptenmouse.c | 4 +- .../video/emscripten/SDL_emscriptenvideo.c | 81 +- libs/SDL3/src/video/haiku/SDL_bvideo.cc | 3 +- libs/SDL3/src/video/haiku/SDL_bwindow.cc | 8 +- .../src/video/kmsdrm/SDL_kmsdrmopengles.h | 6 +- libs/SDL3/src/video/kmsdrm/SDL_kmsdrmvideo.c | 11 +- libs/SDL3/src/video/kmsdrm/SDL_kmsdrmvideo.h | 11 - libs/SDL3/src/video/kmsdrm/SDL_kmsdrmvulkan.h | 3 +- libs/SDL3/src/video/ngage/SDL_ngageevents.cpp | 192 - .../src/video/ngage/SDL_ngageframebuffer.cpp | 380 - .../src/video/ngage/SDL_ngageframebuffer_c.h | 36 - libs/SDL3/src/video/ngage/SDL_ngagevideo.cpp | 164 - libs/SDL3/src/video/ngage/SDL_ngagevideo.h | 65 - libs/SDL3/src/video/ngage/SDL_ngagewindow.cpp | 125 - .../src/video/offscreen/SDL_offscreenwindow.c | 2 +- libs/SDL3/src/video/openvr/SDL_openvrvideo.c | 14 +- libs/SDL3/src/video/openvr/openvr_capi.h | 31 +- libs/SDL3/src/video/qnx/SDL_qnxvideo.c | 4 +- libs/SDL3/src/video/sdlgenblit.pl | 2 +- libs/SDL3/src/video/uikit/SDL_uikitevents.m | 19 +- libs/SDL3/src/video/uikit/SDL_uikitvideo.m | 5 +- .../src/video/uikit/SDL_uikitviewcontroller.h | 11 +- .../src/video/uikit/SDL_uikitviewcontroller.m | 146 +- libs/SDL3/src/video/vita/SDL_vitamouse.c | 16 + .../src/video/wayland/SDL_waylandevents.c | 352 +- .../src/video/wayland/SDL_waylandevents_c.h | 5 +- .../src/video/wayland/SDL_waylandmessagebox.c | 9 +- .../SDL3/src/video/wayland/SDL_waylandmouse.c | 3 +- .../SDL3/src/video/wayland/SDL_waylandvideo.c | 78 +- .../SDL3/src/video/wayland/SDL_waylandvideo.h | 5 +- .../src/video/wayland/SDL_waylandwindow.c | 108 +- .../src/video/wayland/SDL_waylandwindow.h | 3 +- .../src/video/windows/SDL_surface_utils.c | 95 + .../windows/SDL_surface_utils.h} | 17 +- .../src/video/windows/SDL_windowsclipboard.c | 50 +- .../src/video/windows/SDL_windowsevents.c | 333 +- .../src/video/windows/SDL_windowsevents.h | 2 +- .../SDL3/src/video/windows/SDL_windowsmouse.c | 255 +- .../src/video/windows/SDL_windowsrawinput.c | 12 +- .../src/video/windows/SDL_windowsrawinput.h | 1 + .../src/video/windows/SDL_windowswindow.c | 326 +- .../src/video/windows/SDL_windowswindow.h | 10 +- libs/SDL3/src/video/x11/SDL_x11dyn.h | 3 + libs/SDL3/src/video/x11/SDL_x11events.c | 130 +- libs/SDL3/src/video/x11/SDL_x11events.h | 5 +- libs/SDL3/src/video/x11/SDL_x11framebuffer.c | 5 + libs/SDL3/src/video/x11/SDL_x11messagebox.c | 3 +- libs/SDL3/src/video/x11/SDL_x11mouse.c | 12 +- libs/SDL3/src/video/x11/SDL_x11opengl.c | 6 + libs/SDL3/src/video/x11/SDL_x11opengles.c | 14 +- libs/SDL3/src/video/x11/SDL_x11sym.h | 9 + libs/SDL3/src/video/x11/SDL_x11video.c | 7 + libs/SDL3/src/video/x11/SDL_x11video.h | 3 + libs/SDL3/src/video/x11/SDL_x11window.c | 111 +- libs/SDL3/src/video/x11/SDL_x11window.h | 8 + libs/SDL3/src/video/x11/SDL_x11xinput2.c | 37 +- libs/SDL3/src/video/x11/SDL_x11xsync.c | 148 + .../x11/SDL_x11xsync.h} | 38 +- libs/SDL3/src/video/yuv2rgb/yuv_rgb_lsx.c | 2 +- libs/SDL3/src/video/yuv2rgb/yuv_rgb_sse.c | 2 +- libs/SDL3/src/video/yuv2rgb/yuv_rgb_std.c | 2 +- libs/SDL3/test/CMakeLists.txt | 2 + libs/SDL3/test/LICENSE.txt | 8 + libs/SDL3/test/sdl-test_round.bmp | Bin 0 -> 147594 bytes libs/SDL3/test/sword.wav | Bin 0 -> 91358 bytes libs/SDL3/test/testasyncio.c | 191 + libs/SDL3/test/testautomation_events.c | 61 + libs/SDL3/test/testautomation_hints.c | 2 - libs/SDL3/test/testautomation_keyboard.c | 4 +- libs/SDL3/test/testautomation_pixels.c | 735 +- libs/SDL3/test/testautomation_surface.c | 63 + libs/SDL3/test/testautomation_video.c | 73 +- libs/SDL3/test/testcontroller.c | 6 +- libs/SDL3/test/testfilesystem.c | 10 + libs/SDL3/test/testgl.c | 6 +- libs/SDL3/test/testgles2.c | 6 +- libs/SDL3/test/testgles2_sdf.c | 6 +- libs/SDL3/test/testgpu/build-shaders.sh | 13 +- libs/SDL3/test/testgpu/cube.hlsl | 6 +- libs/SDL3/test/testgpu/testgpu_dxbc.h | 333 - libs/SDL3/test/testgpu_simple_clear.c | 32 +- libs/SDL3/test/testgpu_spinning_cube.c | 16 +- libs/SDL3/test/testrelative.c | 7 +- libs/SDL3/test/testtray.c | 599 ++ libs/SDL3/test/testwm.c | 2 + 426 files changed, 22204 insertions(+), 16006 deletions(-) rename libs/SDL3/VisualC/examples/{game => demo}/01-snake/01-snake.vcxproj (79%) rename libs/SDL3/VisualC/examples/{game => demo}/02-woodeneye-008/02-woodeneye-008.vcxproj (80%) rename libs/SDL3/VisualC/examples/{game => demo}/03-infinite-monkeys/03-infinite-monkeys.vcxproj (80%) create mode 100644 libs/SDL3/examples/asyncio/01-load-bitmaps/README.txt create mode 100644 libs/SDL3/examples/asyncio/01-load-bitmaps/load-bitmaps.c create mode 100644 libs/SDL3/examples/asyncio/01-load-bitmaps/thumbnail.png create mode 100644 libs/SDL3/examples/asyncio/description.txt create mode 100644 libs/SDL3/examples/audio/04-multiple-streams/README.txt create mode 100644 libs/SDL3/examples/audio/04-multiple-streams/multiple-streams.c create mode 100644 libs/SDL3/examples/audio/onmouseover.webp create mode 100644 libs/SDL3/examples/audio/thumbnail.png create mode 100644 libs/SDL3/examples/camera/01-read-and-draw/onmouseover.webp create mode 100644 libs/SDL3/examples/camera/01-read-and-draw/thumbnail.png create mode 100644 libs/SDL3/examples/categories.txt rename libs/SDL3/examples/{game => demo}/01-snake/README.txt (100%) create mode 100644 libs/SDL3/examples/demo/01-snake/onmouseover.webp rename libs/SDL3/examples/{game => demo}/01-snake/snake.c (98%) create mode 100644 libs/SDL3/examples/demo/01-snake/thumbnail.png rename libs/SDL3/examples/{game => demo}/02-woodeneye-008/README.txt (100%) create mode 100644 libs/SDL3/examples/demo/02-woodeneye-008/onmouseover.webp create mode 100644 libs/SDL3/examples/demo/02-woodeneye-008/thumbnail.png rename libs/SDL3/examples/{game => demo}/02-woodeneye-008/woodeneye-008.c (99%) rename libs/SDL3/examples/{game => demo}/03-infinite-monkeys/README.txt (100%) rename libs/SDL3/examples/{game => demo}/03-infinite-monkeys/infinite-monkeys.c (98%) create mode 100644 libs/SDL3/examples/demo/03-infinite-monkeys/onmouseover.webp create mode 100644 libs/SDL3/examples/demo/03-infinite-monkeys/thumbnail.png create mode 100644 libs/SDL3/examples/demo/04-bytepusher/README.txt create mode 100644 libs/SDL3/examples/demo/04-bytepusher/bytepusher.c create mode 100644 libs/SDL3/examples/demo/04-bytepusher/onmouseover.webp create mode 100644 libs/SDL3/examples/demo/04-bytepusher/thumbnail.png create mode 100644 libs/SDL3/examples/demo/description.txt create mode 100644 libs/SDL3/examples/input/01-joystick-polling/README.txt create mode 100644 libs/SDL3/examples/input/01-joystick-polling/joystick-polling.c create mode 100644 libs/SDL3/examples/input/01-joystick-polling/onmouseover.webp create mode 100644 libs/SDL3/examples/input/01-joystick-polling/thumbnail.png create mode 100644 libs/SDL3/examples/input/02-joystick-events/README.txt create mode 100644 libs/SDL3/examples/input/02-joystick-events/joystick-events.c create mode 100644 libs/SDL3/examples/input/02-joystick-events/onmouseover.webp create mode 100644 libs/SDL3/examples/input/02-joystick-events/thumbnail.png create mode 100644 libs/SDL3/examples/pen/01-drawing-lines/onmouseover.webp create mode 100644 libs/SDL3/examples/pen/01-drawing-lines/thumbnail.png create mode 100644 libs/SDL3/examples/renderer/01-clear/onmouseover.webp create mode 100644 libs/SDL3/examples/renderer/01-clear/thumbnail.png create mode 100644 libs/SDL3/examples/renderer/02-primitives/thumbnail.png create mode 100644 libs/SDL3/examples/renderer/03-lines/onmouseover.webp create mode 100644 libs/SDL3/examples/renderer/03-lines/thumbnail.png create mode 100644 libs/SDL3/examples/renderer/04-points/onmouseover.webp create mode 100644 libs/SDL3/examples/renderer/04-points/thumbnail.png create mode 100644 libs/SDL3/examples/renderer/05-rectangles/onmouseover.webp create mode 100644 libs/SDL3/examples/renderer/05-rectangles/thumbnail.png create mode 100644 libs/SDL3/examples/renderer/06-textures/onmouseover.webp create mode 100644 libs/SDL3/examples/renderer/06-textures/thumbnail.png create mode 100644 libs/SDL3/examples/renderer/07-streaming-textures/onmouseover.webp create mode 100644 libs/SDL3/examples/renderer/07-streaming-textures/thumbnail.png create mode 100644 libs/SDL3/examples/renderer/08-rotating-textures/onmouseover.webp create mode 100644 libs/SDL3/examples/renderer/08-rotating-textures/thumbnail.png create mode 100644 libs/SDL3/examples/renderer/09-scaling-textures/onmouseover.webp create mode 100644 libs/SDL3/examples/renderer/09-scaling-textures/thumbnail.png create mode 100644 libs/SDL3/examples/renderer/10-geometry/onmouseover.webp create mode 100644 libs/SDL3/examples/renderer/10-geometry/thumbnail.png create mode 100644 libs/SDL3/examples/renderer/11-color-mods/onmouseover.webp create mode 100644 libs/SDL3/examples/renderer/11-color-mods/thumbnail.png create mode 100644 libs/SDL3/examples/renderer/14-viewport/thumbnail.png create mode 100644 libs/SDL3/examples/renderer/15-cliprect/onmouseover.webp create mode 100644 libs/SDL3/examples/renderer/15-cliprect/thumbnail.png create mode 100644 libs/SDL3/examples/renderer/17-read-pixels/onmouseover.webp create mode 100644 libs/SDL3/examples/renderer/17-read-pixels/thumbnail.png create mode 100644 libs/SDL3/examples/renderer/18-debug-text/thumbnail.png create mode 100644 libs/SDL3/examples/template-category.html create mode 100644 libs/SDL3/examples/template-homepage.html create mode 100644 libs/SDL3/examples/template-placeholder.png create mode 100644 libs/SDL3/examples/template.css create mode 100644 libs/SDL3/include/SDL3/SDL_asyncio.h create mode 100644 libs/SDL3/include/SDL3/SDL_tray.h delete mode 100644 libs/SDL3/include/build_config/SDL_build_config_ngage.h delete mode 100644 libs/SDL3/src/audio/wasapi/SDL_wasapi_win32.c create mode 100644 libs/SDL3/src/dialog/SDL_dialog.c rename libs/SDL3/src/{video/ngage/SDL_ngageevents_c.h => dialog/SDL_dialog.h} (86%) create mode 100644 libs/SDL3/src/file/SDL_asyncio.c rename libs/SDL3/src/{video/ngage/SDL_ngagewindow.h => file/SDL_asyncio_c.h} (71%) create mode 100644 libs/SDL3/src/file/SDL_sysasyncio.h create mode 100644 libs/SDL3/src/file/generic/SDL_asyncio_generic.c create mode 100644 libs/SDL3/src/file/io_uring/SDL_asyncio_liburing.c create mode 100644 libs/SDL3/src/file/windows/SDL_asyncio_windows_ioring.c delete mode 100644 libs/SDL3/src/gpu/d3d11/D3D11_Blit.h delete mode 100644 libs/SDL3/src/gpu/d3d11/SDL_gpu_d3d11.c delete mode 100644 libs/SDL3/src/gpu/d3d11/compile_shaders.bat rename libs/SDL3/src/gpu/{d3dcommon => d3d12}/D3D_Blit.hlsl (85%) delete mode 100644 libs/SDL3/src/joystick/steam/SDL_steamcontroller.h create mode 100644 libs/SDL3/src/locale/psp/SDL_syslocale.c delete mode 100644 libs/SDL3/src/main/ngage/SDL_sysmain_runapp.cpp delete mode 100644 libs/SDL3/src/thread/ngage/SDL_sysmutex.cpp delete mode 100644 libs/SDL3/src/thread/ngage/SDL_syssem.cpp delete mode 100644 libs/SDL3/src/thread/ngage/SDL_systhread.cpp delete mode 100644 libs/SDL3/src/timer/ngage/SDL_systimer.cpp create mode 100644 libs/SDL3/src/tray/cocoa/SDL_tray.m create mode 100644 libs/SDL3/src/tray/dummy/SDL_tray.c create mode 100644 libs/SDL3/src/tray/unix/SDL_tray.c create mode 100644 libs/SDL3/src/tray/windows/SDL_tray.c delete mode 100644 libs/SDL3/src/video/ngage/SDL_ngageevents.cpp delete mode 100644 libs/SDL3/src/video/ngage/SDL_ngageframebuffer.cpp delete mode 100644 libs/SDL3/src/video/ngage/SDL_ngageframebuffer_c.h delete mode 100644 libs/SDL3/src/video/ngage/SDL_ngagevideo.cpp delete mode 100644 libs/SDL3/src/video/ngage/SDL_ngagevideo.h delete mode 100644 libs/SDL3/src/video/ngage/SDL_ngagewindow.cpp create mode 100644 libs/SDL3/src/video/windows/SDL_surface_utils.c rename libs/SDL3/src/{thread/ngage/SDL_systhread_c.h => video/windows/SDL_surface_utils.h} (81%) create mode 100644 libs/SDL3/src/video/x11/SDL_x11xsync.c rename libs/SDL3/src/{joystick/steam/SDL_steamcontroller.c => video/x11/SDL_x11xsync.h} (60%) create mode 100644 libs/SDL3/test/sdl-test_round.bmp create mode 100644 libs/SDL3/test/sword.wav create mode 100644 libs/SDL3/test/testasyncio.c delete mode 100644 libs/SDL3/test/testgpu/testgpu_dxbc.h create mode 100644 libs/SDL3/test/testtray.c diff --git a/libs/SDL3/.wikiheaders-options b/libs/SDL3/.wikiheaders-options index 720a9de2..99c19dee 100644 --- a/libs/SDL3/.wikiheaders-options +++ b/libs/SDL3/.wikiheaders-options @@ -3,7 +3,7 @@ projectshortname = SDL incsubdir = include/SDL3 wikisubdir = readmesubdir = docs -apiprefixregex = (SDL_|SDLK_) +apiprefixregex = (SDL_|SDLK_|[US]int\d+) mainincludefname = SDL3/SDL.h versionfname = include/SDL3/SDL_version.h versionmajorregex = \A\#define\s+SDL_MAJOR_VERSION\s+(\d+)\Z @@ -21,3 +21,10 @@ manpageheaderfiletext = Defined in SDL3/%fname% # All SDL_test_* headers become undefined categories, everything else just converts like SDL_audio.h -> Audio # A handful of others we fix up in the header itself with /* WIKI CATEGORY: x */ comments. headercategoryeval = s/\ASDL_test_?.*?\.h\Z//; s/\ASDL_?(.*?)\.h\Z/$1/; ucfirst(); + +quickrefenabled = 1 +quickrefcategoryorder = Init,Hints,Error,Version,Properties,Log,Video,Events,Keyboard,Mouse,Touch,Gamepad,Joystick,Haptic,Audio,Time,Timer,Render,SharedObject,Thread,Mutex,Atomic,Filesystem,IOStream,AsyncIO,Storage,Pixels,Surface,Blendmode,Rect,Camera,Clipboard,Dialog,GPU,Messagebox,Vulkan,Metal,Platform,Power,Sensor,Process,Bits,Endian,Assert,CPUInfo,Intrinsics,Locale,System,Misc,GUID,Main,Stdinc +quickreftitle = SDL3 API Quick Reference +quickrefurl = https://libsdl.org/ +quickrefdesc = The latest version of this document can be found at https://wiki.libsdl.org/SDL3/QuickReference +quickrefmacroregex = \A(SDL_PLATFORM_.*|SDL_.*_INTRINSICS|SDL_Atomic...Ref|SDL_assert.*?|SDL_COMPILE_TIME_ASSERT|SDL_arraysize|SDL_Swap[BL]E\d\d|SDL_[a-z]+_cast)\Z diff --git a/libs/SDL3/Android.mk b/libs/SDL3/Android.mk index b352cb31..3e584f9a 100644 --- a/libs/SDL3/Android.mk +++ b/libs/SDL3/Android.mk @@ -30,11 +30,13 @@ LOCAL_SRC_FILES := \ $(wildcard $(LOCAL_PATH)/src/core/*.c) \ $(wildcard $(LOCAL_PATH)/src/core/android/*.c) \ $(wildcard $(LOCAL_PATH)/src/cpuinfo/*.c) \ + $(LOCAL_PATH)/src/dialog/SDL_dialog.c \ $(LOCAL_PATH)/src/dialog/SDL_dialog_utils.c \ $(LOCAL_PATH)/src/dialog/android/SDL_androiddialog.c \ $(wildcard $(LOCAL_PATH)/src/dynapi/*.c) \ $(wildcard $(LOCAL_PATH)/src/events/*.c) \ $(wildcard $(LOCAL_PATH)/src/file/*.c) \ + $(wildcard $(LOCAL_PATH)/src/file/generic/*.c) \ $(wildcard $(LOCAL_PATH)/src/gpu/*.c) \ $(wildcard $(LOCAL_PATH)/src/gpu/vulkan/*.c) \ $(wildcard $(LOCAL_PATH)/src/haptic/*.c) \ @@ -76,6 +78,7 @@ LOCAL_SRC_FILES := \ $(wildcard $(LOCAL_PATH)/src/time/unix/*.c) \ $(wildcard $(LOCAL_PATH)/src/timer/*.c) \ $(wildcard $(LOCAL_PATH)/src/timer/unix/*.c) \ + $(wildcard $(LOCAL_PATH)/src/tray/dummy/*.c) \ $(wildcard $(LOCAL_PATH)/src/video/*.c) \ $(wildcard $(LOCAL_PATH)/src/video/android/*.c) \ $(wildcard $(LOCAL_PATH)/src/video/yuv2rgb/*.c)) diff --git a/libs/SDL3/CMakeLists.txt b/libs/SDL3/CMakeLists.txt index 217d9f55..f5bcf2a7 100644 --- a/libs/SDL3/CMakeLists.txt +++ b/libs/SDL3/CMakeLists.txt @@ -1,7 +1,11 @@ cmake_minimum_required(VERSION 3.16) +if(NOT DEFINED CMAKE_BUILD_TYPE) + set(cmake_build_type_undefined 1) +endif() + # See docs/release_checklist.md -project(SDL3 LANGUAGES C VERSION "3.1.6") +project(SDL3 LANGUAGES C VERSION "3.1.7") if(CMAKE_SOURCE_DIR STREQUAL PROJECT_SOURCE_DIR) set(SDL3_SUBPROJECT OFF) @@ -9,6 +13,23 @@ else() set(SDL3_SUBPROJECT ON) endif() +# By default, configure SDL3 in RelWithDebInfo configuration +if(NOT SDL3_SUBPROJECT) + get_property(is_multi_config GLOBAL PROPERTY GENERATOR_IS_MULTI_CONFIG) + if(is_multi_config) + # The first item in CMAKE_CONFIGURATION_TYPES is the default configuration + if(DEFINED CMAKE_CONFIGURATION_TYPES AND "RelWithDebInfo" IN_LIST CMAKE_CONFIGURATION_TYPES) + list(REMOVE_ITEM CMAKE_CONFIGURATION_TYPES "RelWithDebInfo") + list(INSERT CMAKE_CONFIGURATION_TYPES 0 "RelWithDebInfo") + set(CMAKE_CONFIGURATION_TYPES "${CMAKE_CONFIGURATION_TYPES}" CACHE STRING "CMake configuration types" FORCE) + endif() + else() + if(cmake_build_type_undefined) + set(CMAKE_BUILD_TYPE "RelWithDebInfo" CACHE STRING "CMake build type" FORCE) + endif() + endif() +endif() + # CMake 3.0 expands the "if(${A})" in "set(OFF 1);set(A OFF);if(${A})" to "if(1)" # CMake 3.24+ emits a warning when not set. unset(OFF) @@ -286,6 +307,7 @@ set_option(SDL_SYSTEM_ICONV "Use iconv() from system-installed libraries" set_option(SDL_LIBICONV "Prefer iconv() from libiconv, if available, over libc version" OFF) set_option(SDL_GCC_ATOMICS "Use gcc builtin atomics" ${SDL_GCC_ATOMICS_DEFAULT}) dep_option(SDL_DBUS "Enable D-Bus support" ON "${UNIX_SYS}" OFF) +dep_option(SDL_LIBURING "Enable liburing support" ON "${UNIX_SYS}" OFF) dep_option(SDL_DISKAUDIO "Support the disk writer audio driver" ON "SDL_AUDIO" OFF) dep_option(SDL_DUMMYAUDIO "Support the dummy audio driver" ON "SDL_AUDIO" OFF) dep_option(SDL_DUMMYVIDEO "Use dummy video driver" ON "SDL_VIDEO" OFF) @@ -309,7 +331,7 @@ set_option(SDL_RPATH "Use an rpath when linking SDL" ${SDL_RPATH_D set_option(SDL_CLOCK_GETTIME "Use clock_gettime() instead of gettimeofday()" ${SDL_CLOCK_GETTIME_DEFAULT}) dep_option(SDL_X11 "Use X11 video driver" ${UNIX_SYS} "SDL_VIDEO" OFF) dep_option(SDL_X11_SHARED "Dynamically load X11 support" ON "SDL_X11" OFF) -set(SDL_X11_OPTIONS Xcursor Xdbe XInput Xfixes Xrandr Xscrnsaver XShape) +set(SDL_X11_OPTIONS Xcursor Xdbe XInput Xfixes Xrandr Xscrnsaver XShape Xsync) foreach(_SUB ${SDL_X11_OPTIONS}) string(TOUPPER "SDL_X11_${_SUB}" _OPT) dep_option(${_OPT} "Enable ${_SUB} support" ON "SDL_X11" OFF) @@ -915,7 +937,7 @@ endif() set(SDL_DISABLE_ALLOCA 0) check_include_file("alloca.h" "HAVE_ALLOCA_H") if(MSVC) - check_include_file("malloc.h" "HAVE_MALLOC") + check_include_file("malloc.h" "HAVE_MALLOC_H") check_symbol_exists("_alloca" "malloc.h" _ALLOCA_IN_MALLOC_H) if(NOT HAVE_ALLOCA_H AND NOT _ALLOCA_IN_MALLOC_H) set(SDL_DISABLE_ALLOCA 1) @@ -961,15 +983,15 @@ if(SDL_LIBC) set(symbols_to_check abs acos acosf asin asinf atan atan2 atan2f atanf atof atoi bcopy - calloc ceil ceilf copysign copysignf cos cosf + ceil ceilf copysign copysignf cos cosf _Exit exp expf - fabs fabsf floor floorf fmod fmodf fopen64 free fseeko fseeko64 + fabs fabsf floor floorf fmod fmodf fopen64 fseeko fseeko64 getenv _i64toa index itoa log log10 log10f logf lround lroundf _ltoa malloc memcmp memcpy memmove memset modf modff pow powf putenv - realloc rindex round roundf + rindex round roundf scalbn scalbnf setenv sin sinf sqr sqrt sqrtf sscanf strchr strcmp strlcat strlcpy strlen strncmp strnlen strpbrk strrchr strstr strnstr strtod strtok_r strtol strtoll strtoul strtoull @@ -980,7 +1002,7 @@ if(SDL_LIBC) ) if(WINDOWS) list(APPEND symbols_to_check - _strrev _ui64toa _uitoa _ultoa _wcsdup + _copysign _fseeki64 _strrev _ui64toa _uitoa _ultoa _wcsdup ) else() list(APPEND symbols_to_check @@ -1119,6 +1141,7 @@ sdl_glob_sources( "${SDL3_SOURCE_DIR}/src/dynapi/*.c" "${SDL3_SOURCE_DIR}/src/events/*.c" "${SDL3_SOURCE_DIR}/src/file/*.c" + "${SDL3_SOURCE_DIR}/src/file/generic/*.c" "${SDL3_SOURCE_DIR}/src/filesystem/*.c" "${SDL3_SOURCE_DIR}/src/gpu/*.c" "${SDL3_SOURCE_DIR}/src/joystick/*.c" @@ -1295,7 +1318,6 @@ if(ANDROID) set(SDL_JOYSTICK_ANDROID 1) sdl_glob_sources( "${SDL3_SOURCE_DIR}/src/joystick/android/*.c" - "${SDL3_SOURCE_DIR}/src/joystick/steam/*.c" ) set(HAVE_SDL_JOYSTICK TRUE) endif() @@ -1545,6 +1567,9 @@ elseif(UNIX AND NOT APPLE AND NOT RISCOS AND NOT HAIKU) CheckVivante() CheckVulkan() CheckQNXScreen() + + sdl_glob_sources("${SDL3_SOURCE_DIR}/src/tray/unix/*.c") + set(HAVE_SDL_TRAY TRUE) endif() if(UNIX) @@ -1657,6 +1682,16 @@ elseif(UNIX AND NOT APPLE AND NOT RISCOS AND NOT HAIKU) set(SDL_USE_IME 1) endif() + if(SDL_LIBURING) + pkg_search_module(LIBURING liburing-ffi) + find_path(HAVE_LIBURING_H NAMES liburing.h) + if(LIBURING_FOUND AND HAVE_LIBURING_H) + set(HAVE_LIBURING_LIBURING_H TRUE) + sdl_include_directories(PRIVATE SYSTEM ${LIBURING_INCLUDE_DIRS}) + set(HAVE_LIBURING TRUE) + endif() + endif() + if((FREEBSD OR NETBSD) AND NOT HAVE_INOTIFY) set(LibInotify_PKG_CONFIG_SPEC libinotify) pkg_check_modules(PC_LIBINOTIFY IMPORTED_TARGET ${LibInotify_PKG_CONFIG_SPEC}) @@ -1720,6 +1755,10 @@ elseif(UNIX AND NOT APPLE AND NOT RISCOS AND NOT HAIKU) endif() endif() + if(HAVE_LIBURING_H) + sdl_sources("${SDL3_SOURCE_DIR}/src/file/io_uring/SDL_asyncio_liburing.c") + endif() + # Always compiled for Linux, unconditionally: sdl_sources( "${SDL3_SOURCE_DIR}/src/core/linux/SDL_evdev_capabilities.c" @@ -1741,7 +1780,6 @@ elseif(UNIX AND NOT APPLE AND NOT RISCOS AND NOT HAIKU) set(SDL_JOYSTICK_LINUX 1) sdl_glob_sources( "${SDL3_SOURCE_DIR}/src/joystick/linux/*.c" - "${SDL3_SOURCE_DIR}/src/joystick/steam/*.c" ) set(HAVE_SDL_JOYSTICK TRUE) endif() @@ -2040,6 +2078,9 @@ elseif(WINDOWS) set(HAVE_RENDER_VULKAN TRUE) endif() endif() + + sdl_glob_sources("${SDL3_SOURCE_DIR}/src/tray/windows/*.c") + set(HAVE_SDL_TRAY TRUE) endif() if(SDL_HIDAPI) @@ -2113,8 +2154,6 @@ elseif(APPLE) set(HAVE_SDL_MAIN_CALLBACKS TRUE) endif() - sdl_glob_sources("${SDL3_SOURCE_DIR}/src/file/cocoa/*.m") - if(SDL_CAMERA) if(MACOS OR IOS) set(SDL_CAMERA_DRIVER_COREMEDIA 1) @@ -2146,7 +2185,6 @@ elseif(APPLE) if(SDL_JOYSTICK) sdl_glob_sources("${SDL3_SOURCE_DIR}/src/joystick/apple/*.m") if(IOS OR TVOS OR VISIONOS OR WATCHOS) - sdl_glob_sources("${SDL3_SOURCE_DIR}/src/joystick/steam/*.c") set(SDL_JOYSTICK_MFI 1) if(IOS OR VISIONOS OR WATCHOS) set(SDL_FRAMEWORK_COREMOTION 1) @@ -2319,6 +2357,11 @@ elseif(APPLE) endif() endif() endif() + + if(MACOS) + sdl_glob_sources("${SDL3_SOURCE_DIR}/src/tray/cocoa/*.m") + set(HAVE_SDL_TRAY TRUE) + endif() endif() # Minimum version for $ @@ -2675,7 +2718,9 @@ elseif(PSP) sdl_glob_sources("${SDL3_SOURCE_DIR}/src/filesystem/psp/*.c") set(HAVE_SDL_FILESYSTEM TRUE) - # !!! FIXME: do we need a FSops implementation for this? + set(SDL_FSOPS_POSIX 1) + sdl_sources("${SDL3_SOURCE_DIR}/src/filesystem/posix/SDL_sysfsops.c") + set(HAVE_SDL_FSOPS TRUE) if(SDL_JOYSTICK) set(SDL_JOYSTICK_PSP 1) @@ -2698,6 +2743,9 @@ elseif(PSP) ) set(HAVE_SDL_THREADS TRUE) + sdl_glob_sources("${SDL3_SOURCE_DIR}/src/locale/psp/*.c") + set(HAVE_SDL_LOCALE TRUE) + set(SDL_TIME_PSP 1) sdl_glob_sources("${SDL3_SOURCE_DIR}/src/time/psp/*.c") set(HAVE_SDL_TIME TRUE) @@ -2729,10 +2777,6 @@ elseif(PSP) ) elseif(PS2) - sdl_compile_definitions(PRIVATE "PS2" "__PS2__") - sdl_include_directories(PRIVATE SYSTEM "$ENV{PS2SDK}/ports/include" "$ENV{PS2DEV}/gsKit/include") - target_include_directories(SDL_uclibc PRIVATE "$ENV{PS2SDK}/ports/include" "$ENV{PS2DEV}/gsKit/include") - sdl_glob_sources("${SDL3_SOURCE_DIR}/src/main/ps2/*.c") if(SDL_AUDIO) @@ -2745,7 +2789,9 @@ elseif(PS2) sdl_glob_sources("${SDL3_SOURCE_DIR}/src/filesystem/ps2/*.c") set(HAVE_SDL_FILESYSTEM TRUE) - # !!! FIXME: do we need a FSops implementation for this? + set(SDL_FSOPS_POSIX 1) + sdl_sources("${SDL3_SOURCE_DIR}/src/filesystem/posix/SDL_sysfsops.c") + set(HAVE_SDL_FSOPS TRUE) if(SDL_JOYSTICK) set(SDL_JOYSTICK_PS2 1) @@ -2854,6 +2900,7 @@ elseif(N3DS) sdl_glob_sources("${SDL3_SOURCE_DIR}/src/file/n3ds/*.c") endif() +sdl_sources(${SDL3_SOURCE_DIR}/src/dialog/SDL_dialog.c) if (SDL_DIALOG) sdl_sources(${SDL3_SOURCE_DIR}/src/dialog/SDL_dialog_utils.c) if(ANDROID) @@ -2937,6 +2984,8 @@ if(SDL_VIDEO) endif() endif() +sdl_glob_sources(${SDL3_SOURCE_DIR}/src/tray/*.c) + if(SDL_GPU) if(HAVE_D3D11_H) sdl_glob_sources("${SDL3_SOURCE_DIR}/src/gpu/d3d11/*.c") @@ -3019,6 +3068,10 @@ if(NOT HAVE_SDL_PROCESS) set(SDL_PROCESS_DUMMY 1) sdl_glob_sources(${SDL3_SOURCE_DIR}/src/process/dummy/*.c) endif() +if(NOT HAVE_SDL_TRAY) + set(SDL_TRAY_DUMMY 1) + sdl_glob_sources(${SDL3_SOURCE_DIR}/src/tray/dummy/*.c) +endif() if(NOT HAVE_CAMERA) set(SDL_CAMERA_DRIVER_DUMMY 1) sdl_glob_sources("${SDL3_SOURCE_DIR}/src/camera/dummy/*.c") @@ -3063,15 +3116,17 @@ endforeach() # If REVISION.txt exists, then we are building from a SDL release. # SDL_revision.h(.cmake) in source releases have SDL_REVISION baked into them. -if(NOT EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/REVISION.txt") - set(SDL_REVISION "" CACHE STRING "Custom SDL revision") - if(SDL_REVISION) - set(SDL_REVISION_CENTER "${SDL_VERSION_MAJOR}.${SDL_VERSION_MINOR}.${SDL_VERSION_MICRO}-${SDL_REVISION}") - else() - # If SDL_REVISION is not overrided, use git to describe - git_describe(SDL_REVISION_CENTER) - endif() - set(SDL_REVISION "SDL3-${SDL_REVISION_CENTER}") +if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/REVISION.txt") + file(STRINGS "${CMAKE_CURRENT_SOURCE_DIR}/REVISION.txt" revisions) + list(GET revisions 0 revisions_0) + string(STRIP "${revisions_0}" SDL_REVISION) +else() + set(SDL_REVISION "" CACHE STRING "Custom SDL revision (only used when REVISION.txt does not exist)") +endif() +if(NOT SDL_REVISION) + # If SDL_REVISION is not overrided, use git to describe + git_describe(SDL_REVISION_GIT) + set(SDL_REVISION "SDL3-${SDL3_VERSION}-${SDL_REVISION_GIT}") endif() execute_process(COMMAND "${CMAKE_COMMAND}" -E make_directory "${SDL3_BINARY_DIR}/include-revision/SDL3") @@ -3435,7 +3490,7 @@ endif() if(WINDOWS AND NOT MINGW) set(SDL_INSTALL_CMAKEDIR_ROOT_DEFAULT "cmake") else() - set(SDL_INSTALL_CMAKEDIR_ROOT_DEFAULT "${CMAKE_INSTALL_LIBDIR}/cmake") + set(SDL_INSTALL_CMAKEDIR_ROOT_DEFAULT "${CMAKE_INSTALL_LIBDIR}/cmake/SDL3") endif() set(SDL_INSTALL_CMAKEDIR_ROOT "${SDL_INSTALL_CMAKEDIR_ROOT_DEFAULT}" CACHE STRING "Root folder where to install SDL3Config.cmake related files (SDL3 subfolder for MSVC projects)") @@ -3455,7 +3510,7 @@ elseif(SDL_FRAMEWORK) set(SDL_INSTALL_LICENSEDIR "Resources") set(SDL_INSTALL_HEADERSDIR "Headers") else() - set(SDL_INSTALL_CMAKEDIR "${SDL_INSTALL_CMAKEDIR_ROOT}/SDL3") + set(SDL_INSTALL_CMAKEDIR "${SDL_INSTALL_CMAKEDIR_ROOT}") set(SDL_INSTALL_LICENSEDIR "${CMAKE_INSTALL_DATAROOTDIR}/licenses/${PROJECT_NAME}") set(SDL_INSTALL_HEADERSDIR "${CMAKE_INSTALL_INCLUDEDIR}/SDL3") endif() diff --git a/libs/SDL3/INSTALL.md b/libs/SDL3/INSTALL.md index 647341d3..b8b0afb2 100644 --- a/libs/SDL3/INSTALL.md +++ b/libs/SDL3/INSTALL.md @@ -26,7 +26,7 @@ Run: `cmake -S . -B build -DCMAKE_OSX_ARCHITECTURES="x86_64;arm64" && cmake --bu ## Linux and other UNIX systems: -Run: `cmake -S . -B build && cmake --build build && cmake --install build` +Run: `cmake -S . -B build && cmake --build build --parallel $(nproc) && cmake --install build` ## Android: diff --git a/libs/SDL3/VisualC-GDK/SDL/SDL.vcxproj b/libs/SDL3/VisualC-GDK/SDL/SDL.vcxproj index c779b40c..2b6437fb 100644 --- a/libs/SDL3/VisualC-GDK/SDL/SDL.vcxproj +++ b/libs/SDL3/VisualC-GDK/SDL/SDL.vcxproj @@ -102,10 +102,10 @@ - $(SolutionDir)/../src;$(IncludePath) + $(ProjectDir)../../src;$(IncludePath) - $(SolutionDir)/../src;$(IncludePath) + $(ProjectDir)../../src;$(IncludePath) @@ -165,8 +165,10 @@ true - $(SolutionDir)..\src\render\direct3d12\compile_shaders_xbox.bat $(SolutionDir) - $(SolutionDir)..\src\gpu\d3d12\compile_shaders_xbox.bat $(SolutionDir) + + call $(ProjectDir)..\..\src\render\direct3d12\compile_shaders_xbox.bat $(ProjectDir)..\ + call $(ProjectDir)..\..\src\gpu\d3d12\compile_shaders_xbox.bat $(ProjectDir)..\ + Building shader blobs (Xbox Series) @@ -200,8 +202,10 @@ true - $(SolutionDir)..\src\render\direct3d12\compile_shaders_xbox.bat $(SolutionDir) one - $(SolutionDir)..\src\gpu\d3d12\compile_shaders_xbox.bat $(SolutionDir) one + + call $(ProjectDir)..\..\src\render\direct3d12\compile_shaders_xbox.bat $(ProjectDir)..\ one + call $(ProjectDir)..\..\src\gpu\d3d12\compile_shaders_xbox.bat $(ProjectDir)..\ one + Building shader blobs (Xbox One) @@ -267,8 +271,10 @@ true - $(SolutionDir)..\src\render\direct3d12\compile_shaders_xbox.bat $(SolutionDir) - $(SolutionDir)..\src\gpu\d3d12\compile_shaders_xbox.bat $(SolutionDir) + + call $(ProjectDir)..\..\src\render\direct3d12\compile_shaders_xbox.bat $(ProjectDir)..\ + call $(ProjectDir)..\..\src\gpu\d3d12\compile_shaders_xbox.bat $(ProjectDir)..\ + Building shader blobs (Xbox Series) @@ -303,8 +309,10 @@ true - $(SolutionDir)..\src\render\direct3d12\compile_shaders_xbox.bat $(SolutionDir) one - $(SolutionDir)..\src\gpu\d3d12\compile_shaders_xbox.bat $(SolutionDir) one + + call $(ProjectDir)..\..\src\render\direct3d12\compile_shaders_xbox.bat $(ProjectDir)..\ one + call $(ProjectDir)..\..\src\gpu\d3d12\compile_shaders_xbox.bat $(ProjectDir)..\ one + Building shader blobs (Xbox One) @@ -339,6 +347,7 @@ + @@ -432,6 +441,8 @@ + + @@ -514,9 +525,13 @@ + + + + @@ -577,6 +592,7 @@ + @@ -616,7 +632,6 @@ - @@ -725,31 +740,7 @@ CompileAsCpp CompileAsCpp - - - - - - - - - - - - - - - - - - - - - - - - @@ -837,6 +828,16 @@ + + true + true + + + true + true + true + true + @@ -865,6 +866,7 @@ + @@ -884,7 +886,6 @@ - CompileAsCpp CompileAsCpp diff --git a/libs/SDL3/VisualC-GDK/SDL/SDL.vcxproj.filters b/libs/SDL3/VisualC-GDK/SDL/SDL.vcxproj.filters index 46d3b477..5ae2609c 100644 --- a/libs/SDL3/VisualC-GDK/SDL/SDL.vcxproj.filters +++ b/libs/SDL3/VisualC-GDK/SDL/SDL.vcxproj.filters @@ -4,15 +4,6 @@ - - dialog - - - filesystem - - - filesystem\windows - @@ -35,7 +26,6 @@ - @@ -58,7 +48,6 @@ - @@ -96,31 +85,7 @@ - - - - - - - - - - - - - - - - - - - - - - - - @@ -191,12 +156,6 @@ - - time - - - time\windows - @@ -222,6 +181,7 @@ + @@ -237,8 +197,32 @@ - + + + + + + + + + + + + + + + + + + + + + + + + + @@ -350,9 +334,6 @@ - - filesystem - @@ -457,6 +438,7 @@ + @@ -476,6 +458,21 @@ + + + + + + + + + + + + + + + diff --git a/libs/SDL3/VisualC/SDL.sln b/libs/SDL3/VisualC/SDL.sln index 039ff338..bd804d44 100644 --- a/libs/SDL3/VisualC/SDL.sln +++ b/libs/SDL3/VisualC/SDL.sln @@ -71,7 +71,7 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "01-read-and-draw", "example EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "game", "game", "{D1BF59F6-22DC-493B-BDEB-451A50DA793D}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "01-snake", "examples\game\01-snake\01-snake.vcxproj", "{7820969A-5B7B-4046-BB0A-82905D457FC5}" +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "01-snake", "examples\demo\01-snake\01-snake.vcxproj", "{7820969A-5B7B-4046-BB0A-82905D457FC5}" EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "pen", "pen", "{F2247885-8EE8-42F4-A702-4155587620E0}" EndProject @@ -111,9 +111,9 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "18-debug-text", "examples\r EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "03-load-wav", "examples\audio\03-load-wav\03-load-wav.vcxproj", "{608C6C67-7766-471F-BBFF-8B00086039AF}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "02-woodeneye-008", "examples\game\02-woodeneye-008\02-woodeneye-008.vcxproj", "{A3F601E0-B54C-4DD8-8A97-FDEF7624EE60}" +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "02-woodeneye-008", "examples\demo\02-woodeneye-008\02-woodeneye-008.vcxproj", "{A3F601E0-B54C-4DD8-8A97-FDEF7624EE60}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "03-infinite-monkeys", "examples\game\03-infinite-monkeys\03-infinite-monkeys.vcxproj", "{75AEE75A-C016-4497-960B-D767B822237D}" +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "03-infinite-monkeys", "examples\demo\03-infinite-monkeys\03-infinite-monkeys.vcxproj", "{75AEE75A-C016-4497-960B-D767B822237D}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution diff --git a/libs/SDL3/VisualC/SDL/SDL.vcxproj b/libs/SDL3/VisualC/SDL/SDL.vcxproj index a6371238..42d0c13d 100644 --- a/libs/SDL3/VisualC/SDL/SDL.vcxproj +++ b/libs/SDL3/VisualC/SDL/SDL.vcxproj @@ -259,6 +259,7 @@ + @@ -352,6 +353,8 @@ + + @@ -409,13 +412,16 @@ + + - + + @@ -483,6 +489,7 @@ + @@ -522,7 +529,6 @@ - @@ -585,31 +591,7 @@ - - - - - - - - - - - - - - - - - - - - - - - - @@ -690,6 +672,7 @@ + @@ -720,6 +703,7 @@ + diff --git a/libs/SDL3/VisualC/SDL/SDL.vcxproj.filters b/libs/SDL3/VisualC/SDL/SDL.vcxproj.filters index ada79400..d1d24865 100644 --- a/libs/SDL3/VisualC/SDL/SDL.vcxproj.filters +++ b/libs/SDL3/VisualC/SDL/SDL.vcxproj.filters @@ -211,6 +211,12 @@ {00009d5ded166cc6c6680ec771a30000} + + {00004d6806b6238cae0ed62db5440000} + + + {000028b2ea36d7190d13777a4dc70000} + @@ -279,6 +285,9 @@ API Headers + + API Headers + API Headers @@ -438,6 +447,12 @@ filesystem + + file + + + file + main @@ -501,9 +516,6 @@ dynapi - - events - events @@ -678,6 +690,9 @@ video\yuv2rgb + + video\windows + video\windows @@ -923,6 +938,9 @@ gpu + + + @@ -935,6 +953,9 @@ camera + + dialog + dialog @@ -944,6 +965,15 @@ filesystem\windows + + file\generic + + + file + + + file\windows + main\generic @@ -1079,81 +1109,9 @@ joystick - - libm - - - libm - - - libm - - - libm - - - libm - - - libm - - - libm - - - libm - - - libm - - - libm - - - libm - - - libm - - - libm - - - libm - - - libm - - - libm - - - libm - - - libm - - - libm - - - libm - - - libm - libm - - libm - - - libm - - - libm - loadso\windows @@ -1178,9 +1136,6 @@ audio\dummy - - audio\wasapi - audio\wasapi @@ -1277,6 +1232,9 @@ time\windows + + video + video @@ -1349,6 +1307,9 @@ video\dummy + + video\windows + video\windows @@ -1499,15 +1460,6 @@ render\direct3d11 - - render\gpu - - - render\gpu - - - render\gpu - render\opengl @@ -1550,12 +1502,6 @@ power\windows - - process - - - process\windows - render\direct3d12 @@ -1601,15 +1547,20 @@ gpu - - gpu - gpu gpu + + + + + + + + diff --git a/libs/SDL3/VisualC/VisualC/examples/game/01-snake/01-snake.vcxproj b/libs/SDL3/VisualC/VisualC/examples/game/01-snake/01-snake.vcxproj index 9bdfd52e..7da99a23 100644 --- a/libs/SDL3/VisualC/VisualC/examples/game/01-snake/01-snake.vcxproj +++ b/libs/SDL3/VisualC/VisualC/examples/game/01-snake/01-snake.vcxproj @@ -6,8 +6,8 @@ - - + + \ No newline at end of file diff --git a/libs/SDL3/VisualC/examples/game/01-snake/01-snake.vcxproj b/libs/SDL3/VisualC/examples/demo/01-snake/01-snake.vcxproj similarity index 79% rename from libs/SDL3/VisualC/examples/game/01-snake/01-snake.vcxproj rename to libs/SDL3/VisualC/examples/demo/01-snake/01-snake.vcxproj index d9c0d862..85128b40 100644 --- a/libs/SDL3/VisualC/examples/game/01-snake/01-snake.vcxproj +++ b/libs/SDL3/VisualC/examples/demo/01-snake/01-snake.vcxproj @@ -6,8 +6,8 @@ - - + + \ No newline at end of file diff --git a/libs/SDL3/VisualC/examples/game/02-woodeneye-008/02-woodeneye-008.vcxproj b/libs/SDL3/VisualC/examples/demo/02-woodeneye-008/02-woodeneye-008.vcxproj similarity index 80% rename from libs/SDL3/VisualC/examples/game/02-woodeneye-008/02-woodeneye-008.vcxproj rename to libs/SDL3/VisualC/examples/demo/02-woodeneye-008/02-woodeneye-008.vcxproj index da893126..08f1da99 100644 --- a/libs/SDL3/VisualC/examples/game/02-woodeneye-008/02-woodeneye-008.vcxproj +++ b/libs/SDL3/VisualC/examples/demo/02-woodeneye-008/02-woodeneye-008.vcxproj @@ -6,8 +6,8 @@ - - + + \ No newline at end of file diff --git a/libs/SDL3/VisualC/examples/game/03-infinite-monkeys/03-infinite-monkeys.vcxproj b/libs/SDL3/VisualC/examples/demo/03-infinite-monkeys/03-infinite-monkeys.vcxproj similarity index 80% rename from libs/SDL3/VisualC/examples/game/03-infinite-monkeys/03-infinite-monkeys.vcxproj rename to libs/SDL3/VisualC/examples/demo/03-infinite-monkeys/03-infinite-monkeys.vcxproj index 58e3c817..a08c5e4a 100644 --- a/libs/SDL3/VisualC/examples/game/03-infinite-monkeys/03-infinite-monkeys.vcxproj +++ b/libs/SDL3/VisualC/examples/demo/03-infinite-monkeys/03-infinite-monkeys.vcxproj @@ -6,8 +6,8 @@ - - + + \ No newline at end of file diff --git a/libs/SDL3/Xcode/SDL/Info-Framework.plist b/libs/SDL3/Xcode/SDL/Info-Framework.plist index 8e9f72f4..23c3d509 100644 --- a/libs/SDL3/Xcode/SDL/Info-Framework.plist +++ b/libs/SDL3/Xcode/SDL/Info-Framework.plist @@ -19,10 +19,10 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 3.1.6 + 3.1.7 CFBundleSignature SDLX CFBundleVersion - 3.1.6 + 3.1.7 diff --git a/libs/SDL3/Xcode/SDL/SDL.xcodeproj/project.pbxproj b/libs/SDL3/Xcode/SDL/SDL.xcodeproj/project.pbxproj index 30701079..08dfd070 100644 --- a/libs/SDL3/Xcode/SDL/SDL.xcodeproj/project.pbxproj +++ b/libs/SDL3/Xcode/SDL/SDL.xcodeproj/project.pbxproj @@ -40,10 +40,13 @@ 000040E76FDC6AE48CBF0000 /* SDL_hashtable.c in Sources */ = {isa = PBXBuildFile; fileRef = 000078E1881E857EBB6C0000 /* SDL_hashtable.c */; }; 0000481D255AF155B42C0000 /* SDL_sysfsops.c in Sources */ = {isa = PBXBuildFile; fileRef = 0000F4E6AA3EF99DA3C80000 /* SDL_sysfsops.c */; }; 0000494CC93F3E624D3C0000 /* SDL_systime.c in Sources */ = {isa = PBXBuildFile; fileRef = 00003F472C51CE7DF6160000 /* SDL_systime.c */; }; + 00004D0B73767647AD550000 /* SDL_asyncio_generic.c in Sources */ = {isa = PBXBuildFile; fileRef = 0000FB02CDE4BE34A87E0000 /* SDL_asyncio_generic.c */; }; 000080903BC03006F24E0000 /* SDL_filesystem.c in Sources */ = {isa = PBXBuildFile; fileRef = 00002B010DB1A70931C20000 /* SDL_filesystem.c */; }; 000095FA1BDE436CF3AF0000 /* SDL_time.c in Sources */ = {isa = PBXBuildFile; fileRef = 0000641A9BAC11AB3FBE0000 /* SDL_time.c */; }; 000098E9DAA43EF6FF7F0000 /* SDL_camera.c in Sources */ = {isa = PBXBuildFile; fileRef = 0000035D38C3899C7EFD0000 /* SDL_camera.c */; }; + 0000A03C0F32C43816F40000 /* SDL_asyncio_windows_ioring.c in Sources */ = {isa = PBXBuildFile; fileRef = 000030DD21496B5C0F210000 /* SDL_asyncio_windows_ioring.c */; }; 0000A4DA2F45A31DC4F00000 /* SDL_sysmain_callbacks.m in Sources */ = {isa = PBXBuildFile; fileRef = 0000BB287BA0A0178C1A0000 /* SDL_sysmain_callbacks.m */; }; + 0000AEB9AE90228CA2D60000 /* SDL_asyncio.c in Sources */ = {isa = PBXBuildFile; fileRef = 00003928A612EC33D42C0000 /* SDL_asyncio.c */; }; 0000D5B526B85DE7AB1C0000 /* SDL_cocoapen.m in Sources */ = {isa = PBXBuildFile; fileRef = 0000CCA310B73A7B59910000 /* SDL_cocoapen.m */; }; 007317A40858DECD00B2BC32 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0073179D0858DECD00B2BC32 /* Cocoa.framework */; platformFilters = (macos, ); }; 007317A60858DECD00B2BC32 /* IOKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0073179F0858DECD00B2BC32 /* IOKit.framework */; platformFilters = (ios, maccatalyst, macos, ); }; @@ -300,28 +303,6 @@ A7D8BA7923E2514400DCD162 /* SDL_glfuncs.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A90E23E2514000DCD162 /* SDL_glfuncs.h */; }; A7D8BA7F23E2514400DCD162 /* SDL_render_gl.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A90F23E2514000DCD162 /* SDL_render_gl.c */; }; A7D8BA8523E2514400DCD162 /* SDL_shaders_gl.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A91023E2514000DCD162 /* SDL_shaders_gl.c */; }; - A7D8BA8B23E2514400DCD162 /* s_sin.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A91223E2514000DCD162 /* s_sin.c */; }; - A7D8BA9123E2514400DCD162 /* s_cos.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A91323E2514000DCD162 /* s_cos.c */; }; - A7D8BA9723E2514400DCD162 /* s_copysign.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A91423E2514000DCD162 /* s_copysign.c */; }; - A7D8BA9D23E2514400DCD162 /* s_fabs.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A91523E2514000DCD162 /* s_fabs.c */; }; - A7D8BAA323E2514400DCD162 /* k_rem_pio2.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A91623E2514000DCD162 /* k_rem_pio2.c */; }; - A7D8BAA923E2514400DCD162 /* k_sin.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A91723E2514000DCD162 /* k_sin.c */; }; - A7D8BAAF23E2514400DCD162 /* s_atan.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A91823E2514000DCD162 /* s_atan.c */; }; - A7D8BAB523E2514400DCD162 /* k_cos.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A91923E2514000DCD162 /* k_cos.c */; }; - A7D8BABB23E2514400DCD162 /* s_scalbn.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A91A23E2514000DCD162 /* s_scalbn.c */; }; - A7D8BAC123E2514500DCD162 /* math_private.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A91B23E2514000DCD162 /* math_private.h */; }; - A7D8BAC723E2514500DCD162 /* e_pow.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A91C23E2514000DCD162 /* e_pow.c */; }; - A7D8BACD23E2514500DCD162 /* e_atan2.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A91D23E2514000DCD162 /* e_atan2.c */; }; - A7D8BAD323E2514500DCD162 /* s_tan.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A91E23E2514000DCD162 /* s_tan.c */; }; - A7D8BAD923E2514500DCD162 /* e_rem_pio2.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A91F23E2514000DCD162 /* e_rem_pio2.c */; }; - A7D8BADF23E2514500DCD162 /* e_fmod.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A92023E2514000DCD162 /* e_fmod.c */; }; - A7D8BAE523E2514500DCD162 /* e_exp.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A92123E2514000DCD162 /* e_exp.c */; }; - A7D8BAEB23E2514500DCD162 /* e_log10.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A92223E2514000DCD162 /* e_log10.c */; }; - A7D8BAF123E2514500DCD162 /* e_log.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A92323E2514000DCD162 /* e_log.c */; }; - A7D8BAF723E2514500DCD162 /* e_sqrt.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A92423E2514000DCD162 /* e_sqrt.c */; }; - A7D8BAFD23E2514500DCD162 /* s_floor.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A92523E2514000DCD162 /* s_floor.c */; }; - A7D8BB0323E2514500DCD162 /* math_libm.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A92623E2514000DCD162 /* math_libm.h */; }; - A7D8BB0923E2514500DCD162 /* k_tan.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A92723E2514000DCD162 /* k_tan.c */; }; A7D8BB1523E2514500DCD162 /* SDL_mouse.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A92A23E2514000DCD162 /* SDL_mouse.c */; }; A7D8BB1B23E2514500DCD162 /* SDL_mouse_c.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A92B23E2514000DCD162 /* SDL_mouse_c.h */; }; A7D8BB2123E2514500DCD162 /* scancodes_windows.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A92C23E2514000DCD162 /* scancodes_windows.h */; }; @@ -346,8 +327,6 @@ A7D8BBA523E2514500DCD162 /* SDL_events_c.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A94223E2514000DCD162 /* SDL_events_c.h */; }; A7D8BBAB23E2514500DCD162 /* SDL_windowevents_c.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A94323E2514000DCD162 /* SDL_windowevents_c.h */; }; A7D8BBB123E2514500DCD162 /* SDL_assert.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A94423E2514000DCD162 /* SDL_assert.c */; }; - A7D8BBC523E2561500DCD162 /* SDL_steamcontroller.c in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A7A723E2513E00DCD162 /* SDL_steamcontroller.c */; }; - A7D8BBC723E2561500DCD162 /* SDL_steamcontroller.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A7A523E2513E00DCD162 /* SDL_steamcontroller.h */; }; A7D8BBD223E2574800DCD162 /* SDL_uikitappdelegate.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A62F23E2513D00DCD162 /* SDL_uikitappdelegate.h */; }; A7D8BBD323E2574800DCD162 /* SDL_uikitappdelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = A7D8A61E23E2513D00DCD162 /* SDL_uikitappdelegate.m */; }; A7D8BBD423E2574800DCD162 /* SDL_uikitclipboard.h in Headers */ = {isa = PBXBuildFile; fileRef = A7D8A62123E2513D00DCD162 /* SDL_uikitclipboard.h */; }; @@ -407,7 +386,10 @@ F32DDAD12AB795A30041EAA5 /* SDL_audioqueue.c in Sources */ = {isa = PBXBuildFile; fileRef = F32DDACB2AB795A30041EAA5 /* SDL_audioqueue.c */; }; F32DDAD32AB795A30041EAA5 /* SDL_audioqueue.h in Headers */ = {isa = PBXBuildFile; fileRef = F32DDACD2AB795A30041EAA5 /* SDL_audioqueue.h */; }; F32DDAD42AB795A30041EAA5 /* SDL_audioresample.c in Sources */ = {isa = PBXBuildFile; fileRef = F32DDACE2AB795A30041EAA5 /* SDL_audioresample.c */; }; + F338A1182D1B37D8007CDFDF /* SDL_tray.m in Sources */ = {isa = PBXBuildFile; fileRef = F338A1172D1B37D8007CDFDF /* SDL_tray.m */; }; + F338A11A2D1B37E4007CDFDF /* SDL_tray.c in Sources */ = {isa = PBXBuildFile; fileRef = F338A1192D1B37E4007CDFDF /* SDL_tray.c */; }; F34B9895291DEFF500AAC96E /* SDL_hidapi_steam.c in Sources */ = {isa = PBXBuildFile; fileRef = A75FDAAC23E2795C00529352 /* SDL_hidapi_steam.c */; }; + F35B79632D03A7B900C6D591 /* SDL_asyncio.h in Headers */ = {isa = PBXBuildFile; fileRef = 00004945A946DF5B1AED0000 /* SDL_asyncio.h */; settings = {ATTRIBUTES = (Public, ); }; }; F362B9192B3349E200D30B94 /* controller_list.h in Headers */ = {isa = PBXBuildFile; fileRef = F362B9152B3349E200D30B94 /* controller_list.h */; }; F362B91A2B3349E200D30B94 /* SDL_gamepad_c.h in Headers */ = {isa = PBXBuildFile; fileRef = F362B9162B3349E200D30B94 /* SDL_gamepad_c.h */; }; F362B91B2B3349E200D30B94 /* SDL_steam_virtual_gamepad.h in Headers */ = {isa = PBXBuildFile; fileRef = F362B9172B3349E200D30B94 /* SDL_steam_virtual_gamepad.h */; }; @@ -471,11 +453,9 @@ F3E5A6EB2AD5E0E600293D83 /* SDL_properties.c in Sources */ = {isa = PBXBuildFile; fileRef = F3E5A6EA2AD5E0E600293D83 /* SDL_properties.c */; }; F3E5A6ED2AD5E10800293D83 /* SDL_properties.h in Headers */ = {isa = PBXBuildFile; fileRef = F3E5A6EC2AD5E10800293D83 /* SDL_properties.h */; settings = {ATTRIBUTES = (Public, ); }; }; F3F07D5A269640160074468B /* SDL_hidapi_luna.c in Sources */ = {isa = PBXBuildFile; fileRef = F3F07D59269640160074468B /* SDL_hidapi_luna.c */; }; - F3F528CB2C29E1C300E6CC26 /* s_isnanf.c in Sources */ = {isa = PBXBuildFile; fileRef = F3F528C62C29E1C300E6CC26 /* s_isnanf.c */; }; - F3F528CC2C29E1C300E6CC26 /* s_isinf.c in Sources */ = {isa = PBXBuildFile; fileRef = F3F528C72C29E1C300E6CC26 /* s_isinf.c */; }; - F3F528CD2C29E1C300E6CC26 /* s_isnan.c in Sources */ = {isa = PBXBuildFile; fileRef = F3F528C82C29E1C300E6CC26 /* s_isnan.c */; }; - F3F528CE2C29E1C300E6CC26 /* s_modf.c in Sources */ = {isa = PBXBuildFile; fileRef = F3F528C92C29E1C300E6CC26 /* s_modf.c */; }; - F3F528CF2C29E1C300E6CC26 /* s_isinff.c in Sources */ = {isa = PBXBuildFile; fileRef = F3F528CA2C29E1C300E6CC26 /* s_isinff.c */; }; + F3F15D7F2D011912007AE210 /* SDL_dialog.c in Sources */ = {isa = PBXBuildFile; fileRef = F3F15D7D2D011912007AE210 /* SDL_dialog.c */; }; + F3F15D802D011912007AE210 /* SDL_dialog_utils.h in Headers */ = {isa = PBXBuildFile; fileRef = F3F15D7E2D011912007AE210 /* SDL_dialog_utils.h */; }; + F3F15D812D011912007AE210 /* SDL_dialog.h in Headers */ = {isa = PBXBuildFile; fileRef = F3F15D7C2D011912007AE210 /* SDL_dialog.h */; }; F3F7D8ED2933074E00816151 /* SDL_audio.h in Headers */ = {isa = PBXBuildFile; fileRef = F3F7D8AA2933074900816151 /* SDL_audio.h */; settings = {ATTRIBUTES = (Public, ); }; }; F3F7D8F12933074E00816151 /* SDL_platform.h in Headers */ = {isa = PBXBuildFile; fileRef = F3F7D8AB2933074900816151 /* SDL_platform.h */; settings = {ATTRIBUTES = (Public, ); }; }; F3F7D8F52933074E00816151 /* SDL_stdinc.h in Headers */ = {isa = PBXBuildFile; fileRef = F3F7D8AC2933074900816151 /* SDL_stdinc.h */; settings = {ATTRIBUTES = (Public, ); }; }; @@ -576,8 +556,12 @@ 0000035D38C3899C7EFD0000 /* SDL_camera.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_camera.c; sourceTree = ""; }; 00002B010DB1A70931C20000 /* SDL_filesystem.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_filesystem.c; sourceTree = ""; }; 00002F2F5496FA184A0F0000 /* SDL_cocoapen.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_cocoapen.h; sourceTree = ""; }; + 000030DD21496B5C0F210000 /* SDL_asyncio_windows_ioring.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_asyncio_windows_ioring.c; sourceTree = ""; }; 00003260407E1002EAC10000 /* SDL_main_callbacks.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_main_callbacks.h; sourceTree = ""; }; + 00003928A612EC33D42C0000 /* SDL_asyncio.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_asyncio.c; sourceTree = ""; }; 00003F472C51CE7DF6160000 /* SDL_systime.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_systime.c; sourceTree = ""; }; + 00004945A946DF5B1AED0000 /* SDL_asyncio.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_asyncio.h; path = SDL3/SDL_asyncio.h; sourceTree = ""; }; + 0000585B2CAB450B40540000 /* SDL_sysasyncio.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_sysasyncio.h; sourceTree = ""; }; 00005BD74B46358B33A20000 /* SDL_camera_dummy.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_camera_dummy.c; sourceTree = ""; }; 00005D3EB902478835E20000 /* SDL_syscamera.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_syscamera.h; sourceTree = ""; }; 0000641A9BAC11AB3FBE0000 /* SDL_time.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_time.c; sourceTree = ""; }; @@ -585,12 +569,14 @@ 000084ED0A56E3ED52F90000 /* SDL_camera.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_camera.h; path = SDL3/SDL_camera.h; sourceTree = ""; }; 00008B79BF08CBCEAC460000 /* SDL_camera_coremedia.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDL_camera_coremedia.m; sourceTree = ""; }; 00009003C7148E1126CA0000 /* SDL_camera_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_camera_c.h; sourceTree = ""; }; + 0000919399B1A908267F0000 /* SDL_asyncio_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_asyncio_c.h; sourceTree = ""; }; 00009366FB9FBBD54C390000 /* SDL_main_callbacks.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_main_callbacks.c; sourceTree = ""; }; 0000B6ADCD88CAD6610F0000 /* SDL_hashtable.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_hashtable.h; sourceTree = ""; }; 0000BB287BA0A0178C1A0000 /* SDL_sysmain_callbacks.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDL_sysmain_callbacks.m; sourceTree = ""; }; 0000CCA310B73A7B59910000 /* SDL_cocoapen.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDL_cocoapen.m; sourceTree = ""; }; 0000F4E6AA3EF99DA3C80000 /* SDL_sysfsops.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_sysfsops.c; sourceTree = ""; }; 0000F6C6A072ED4E3D660000 /* SDL_dialog_utils.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_dialog_utils.c; sourceTree = ""; }; + 0000FB02CDE4BE34A87E0000 /* SDL_asyncio_generic.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_asyncio_generic.c; sourceTree = ""; }; 0073179D0858DECD00B2BC32 /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = System/Library/Frameworks/Cocoa.framework; sourceTree = SDKROOT; }; 0073179F0858DECD00B2BC32 /* IOKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOKit.framework; path = System/Library/Frameworks/IOKit.framework; sourceTree = SDKROOT; }; 007317C10858E15000B2BC32 /* Carbon.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Carbon.framework; path = System/Library/Frameworks/Carbon.framework; sourceTree = SDKROOT; }; @@ -798,8 +784,6 @@ A7D8A78823E2513E00DCD162 /* SDL_sysmutex_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_sysmutex_c.h; sourceTree = ""; }; A7D8A79E23E2513E00DCD162 /* SDL_gamepad_db.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_gamepad_db.h; sourceTree = ""; }; A7D8A7A023E2513E00DCD162 /* SDL_sysjoystick.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_sysjoystick.c; sourceTree = ""; }; - A7D8A7A523E2513E00DCD162 /* SDL_steamcontroller.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_steamcontroller.h; sourceTree = ""; }; - A7D8A7A723E2513E00DCD162 /* SDL_steamcontroller.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_steamcontroller.c; sourceTree = ""; }; A7D8A7A923E2513E00DCD162 /* SDL_joystick.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_joystick.c; sourceTree = ""; }; A7D8A7AD23E2513E00DCD162 /* SDL_gamepad.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_gamepad.c; sourceTree = ""; }; A7D8A7C223E2513E00DCD162 /* SDL_hidapi_xbox360.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_hidapi_xbox360.c; sourceTree = ""; }; @@ -885,28 +869,6 @@ A7D8A90E23E2514000DCD162 /* SDL_glfuncs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_glfuncs.h; sourceTree = ""; }; A7D8A90F23E2514000DCD162 /* SDL_render_gl.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_render_gl.c; sourceTree = ""; }; A7D8A91023E2514000DCD162 /* SDL_shaders_gl.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_shaders_gl.c; sourceTree = ""; }; - A7D8A91223E2514000DCD162 /* s_sin.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = s_sin.c; sourceTree = ""; }; - A7D8A91323E2514000DCD162 /* s_cos.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = s_cos.c; sourceTree = ""; }; - A7D8A91423E2514000DCD162 /* s_copysign.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = s_copysign.c; sourceTree = ""; }; - A7D8A91523E2514000DCD162 /* s_fabs.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = s_fabs.c; sourceTree = ""; }; - A7D8A91623E2514000DCD162 /* k_rem_pio2.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = k_rem_pio2.c; sourceTree = ""; }; - A7D8A91723E2514000DCD162 /* k_sin.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = k_sin.c; sourceTree = ""; }; - A7D8A91823E2514000DCD162 /* s_atan.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = s_atan.c; sourceTree = ""; }; - A7D8A91923E2514000DCD162 /* k_cos.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = k_cos.c; sourceTree = ""; }; - A7D8A91A23E2514000DCD162 /* s_scalbn.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = s_scalbn.c; sourceTree = ""; }; - A7D8A91B23E2514000DCD162 /* math_private.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = math_private.h; sourceTree = ""; }; - A7D8A91C23E2514000DCD162 /* e_pow.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = e_pow.c; sourceTree = ""; }; - A7D8A91D23E2514000DCD162 /* e_atan2.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = e_atan2.c; sourceTree = ""; }; - A7D8A91E23E2514000DCD162 /* s_tan.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = s_tan.c; sourceTree = ""; }; - A7D8A91F23E2514000DCD162 /* e_rem_pio2.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = e_rem_pio2.c; sourceTree = ""; }; - A7D8A92023E2514000DCD162 /* e_fmod.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = e_fmod.c; sourceTree = ""; }; - A7D8A92123E2514000DCD162 /* e_exp.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = e_exp.c; sourceTree = ""; }; - A7D8A92223E2514000DCD162 /* e_log10.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = e_log10.c; sourceTree = ""; }; - A7D8A92323E2514000DCD162 /* e_log.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = e_log.c; sourceTree = ""; }; - A7D8A92423E2514000DCD162 /* e_sqrt.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = e_sqrt.c; sourceTree = ""; }; - A7D8A92523E2514000DCD162 /* s_floor.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = s_floor.c; sourceTree = ""; }; - A7D8A92623E2514000DCD162 /* math_libm.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = math_libm.h; sourceTree = ""; }; - A7D8A92723E2514000DCD162 /* k_tan.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = k_tan.c; sourceTree = ""; }; A7D8A92A23E2514000DCD162 /* SDL_mouse.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_mouse.c; sourceTree = ""; }; A7D8A92B23E2514000DCD162 /* SDL_mouse_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_mouse_c.h; sourceTree = ""; }; A7D8A92C23E2514000DCD162 /* scancodes_windows.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = scancodes_windows.h; sourceTree = ""; }; @@ -967,6 +929,8 @@ F32DDACB2AB795A30041EAA5 /* SDL_audioqueue.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_audioqueue.c; sourceTree = ""; }; F32DDACD2AB795A30041EAA5 /* SDL_audioqueue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_audioqueue.h; sourceTree = ""; }; F32DDACE2AB795A30041EAA5 /* SDL_audioresample.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_audioresample.c; sourceTree = ""; }; + F338A1172D1B37D8007CDFDF /* SDL_tray.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = SDL_tray.m; sourceTree = ""; }; + F338A1192D1B37E4007CDFDF /* SDL_tray.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = SDL_tray.c; sourceTree = ""; }; F362B9152B3349E200D30B94 /* controller_list.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = controller_list.h; sourceTree = ""; }; F362B9162B3349E200D30B94 /* SDL_gamepad_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_gamepad_c.h; sourceTree = ""; }; F362B9172B3349E200D30B94 /* SDL_steam_virtual_gamepad.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_steam_virtual_gamepad.h; sourceTree = ""; }; @@ -1044,11 +1008,9 @@ F3E5A6EA2AD5E0E600293D83 /* SDL_properties.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_properties.c; sourceTree = ""; }; F3E5A6EC2AD5E10800293D83 /* SDL_properties.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_properties.h; path = SDL3/SDL_properties.h; sourceTree = ""; }; F3F07D59269640160074468B /* SDL_hidapi_luna.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_hidapi_luna.c; sourceTree = ""; }; - F3F528C62C29E1C300E6CC26 /* s_isnanf.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = s_isnanf.c; sourceTree = ""; }; - F3F528C72C29E1C300E6CC26 /* s_isinf.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = s_isinf.c; sourceTree = ""; }; - F3F528C82C29E1C300E6CC26 /* s_isnan.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = s_isnan.c; sourceTree = ""; }; - F3F528C92C29E1C300E6CC26 /* s_modf.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = s_modf.c; sourceTree = ""; }; - F3F528CA2C29E1C300E6CC26 /* s_isinff.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = s_isinff.c; sourceTree = ""; }; + F3F15D7C2D011912007AE210 /* SDL_dialog.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SDL_dialog.h; sourceTree = ""; }; + F3F15D7D2D011912007AE210 /* SDL_dialog.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = SDL_dialog.c; sourceTree = ""; }; + F3F15D7E2D011912007AE210 /* SDL_dialog_utils.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SDL_dialog_utils.h; sourceTree = ""; }; F3F7BE3B2CBD79D200C984AF /* config.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = config.xcconfig; sourceTree = ""; }; F3F7D8AA2933074900816151 /* SDL_audio.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_audio.h; path = SDL3/SDL_audio.h; sourceTree = ""; }; F3F7D8AB2933074900816151 /* SDL_platform.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_platform.h; path = SDL3/SDL_platform.h; sourceTree = ""; }; @@ -1158,6 +1120,14 @@ path = unix; sourceTree = ""; }; + 000013C0F2EADC24ADC10000 /* generic */ = { + isa = PBXGroup; + children = ( + 0000FB02CDE4BE34A87E0000 /* SDL_asyncio_generic.c */, + ); + path = generic; + sourceTree = ""; + }; 000023E01FD84242AF850000 /* dummy */ = { isa = PBXGroup; children = ( @@ -1186,6 +1156,14 @@ path = posix; sourceTree = ""; }; + 000064F9A2AAE947C1CD0000 /* windows */ = { + isa = PBXGroup; + children = ( + 000030DD21496B5C0F210000 /* SDL_asyncio_windows_ioring.c */, + ); + path = windows; + sourceTree = ""; + }; 000082EF09C89B62BD840000 /* main */ = { isa = PBXGroup; children = ( @@ -1227,7 +1205,9 @@ 0153844A006D81B07F000001 /* Public Headers */ = { isa = PBXGroup; children = ( + F3F7D8CF2933074C00816151 /* SDL.h */, F3F7D8E02933074D00816151 /* SDL_assert.h */, + 00004945A946DF5B1AED0000 /* SDL_asyncio.h */, F3F7D8B92933074A00816151 /* SDL_atomic.h */, F3F7D8AA2933074900816151 /* SDL_audio.h */, F3F7D8E72933074E00816151 /* SDL_begin_code.h */, @@ -1259,26 +1239,26 @@ F3F7D8D92933074C00816151 /* SDL_loadso.h */, F3F7D8C42933074B00816151 /* SDL_locale.h */, F3F7D8B72933074A00816151 /* SDL_log.h */, - F3B38CCA296E2E52005DA6D3 /* SDL_main_impl.h */, F3F7D8B02933074900816151 /* SDL_main.h */, + F3B38CCA296E2E52005DA6D3 /* SDL_main_impl.h */, F3F7D8B62933074A00816151 /* SDL_messagebox.h */, F3F7D8D22933074C00816151 /* SDL_metal.h */, F3F7D8D52933074C00816151 /* SDL_misc.h */, F3F7D8DA2933074D00816151 /* SDL_mouse.h */, F3F7D8E62933074E00816151 /* SDL_mutex.h */, F3B38CCD296E2E52005DA6D3 /* SDL_oldnames.h */, - F3F7D8C02933074A00816151 /* SDL_opengl_glext.h */, F3F7D8E12933074D00816151 /* SDL_opengl.h */, + F3F7D8C02933074A00816151 /* SDL_opengl_glext.h */, F3F7D8C62933074B00816151 /* SDL_opengles.h */, + F3F7D8C72933074B00816151 /* SDL_opengles2.h */, F3F7D8AE2933074900816151 /* SDL_opengles2_gl2.h */, F3F7D8BD2933074A00816151 /* SDL_opengles2_gl2ext.h */, F3F7D8C92933074B00816151 /* SDL_opengles2_gl2platform.h */, F3F7D8B12933074900816151 /* SDL_opengles2_khrplatform.h */, - F3F7D8C72933074B00816151 /* SDL_opengles2.h */, 63134A212A7902CF0021E9A6 /* SDL_pen.h */, F3F7D8B52933074A00816151 /* SDL_pixels.h */, - F3B38CCB296E2E52005DA6D3 /* SDL_platform_defines.h */, F3F7D8AB2933074900816151 /* SDL_platform.h */, + F3B38CCB296E2E52005DA6D3 /* SDL_platform_defines.h */, F3F7D8DB2933074D00816151 /* SDL_power.h */, F3B439472C93595900792030 /* SDL_process.h */, F3E5A6EC2AD5E10800293D83 /* SDL_properties.h */, @@ -1298,7 +1278,6 @@ F3F7D8E42933074D00816151 /* SDL_version.h */, F3F7D8C52933074B00816151 /* SDL_video.h */, F3F7D8D42933074C00816151 /* SDL_vulkan.h */, - F3F7D8CF2933074C00816151 /* SDL.h */, ); name = "Public Headers"; path = ../../include; @@ -1349,7 +1328,6 @@ A7D8A5C223E2513D00DCD162 /* haptic */, A7D8A80923E2513F00DCD162 /* hidapi */, A7D8A79D23E2513E00DCD162 /* joystick */, - A7D8A91123E2514000DCD162 /* libm */, A7D8A85D23E2513F00DCD162 /* loadso */, 566E26CB246274AE00718109 /* locale */, 000082EF09C89B62BD840000 /* main */, @@ -1363,25 +1341,26 @@ A7D8A77623E2513E00DCD162 /* thread */, 0000F5E7419220E3A8AB0000 /* time */, A7D8A5DE23E2513D00DCD162 /* timer */, + F338A1142D1B3735007CDFDF /* tray */, A7D8A5EB23E2513D00DCD162 /* video */, - A7D8A7F523E2513F00DCD162 /* SDL_assert_c.h */, - A7D8A94423E2514000DCD162 /* SDL_assert.c */, - A7D8A57523E2513D00DCD162 /* SDL_error_c.h */, - A7D8A8BF23E2513F00DCD162 /* SDL_error.c */, - F382071C284F362F004DD584 /* SDL_guid.c */, - 000078E1881E857EBB6C0000 /* SDL_hashtable.c */, - 0000B6ADCD88CAD6610F0000 /* SDL_hashtable.h */, - A7D8A8D123E2514000DCD162 /* SDL_hints_c.h */, - A7D8A5AB23E2513D00DCD162 /* SDL_hints.c */, - A7D8A58323E2513D00DCD162 /* SDL_internal.h */, - A1BB8B6127F6CF320057CFA8 /* SDL_list.c */, - A1BB8B6227F6CF330057CFA8 /* SDL_list.h */, - F386F6E42884663E001840AA /* SDL_log_c.h */, - A7D8A5DD23E2513D00DCD162 /* SDL_log.c */, - F3E5A6EA2AD5E0E600293D83 /* SDL_properties.c */, - F386F6E52884663E001840AA /* SDL_utils_c.h */, - F386F6E62884663E001840AA /* SDL_utils.c */, A7D8A57123E2513D00DCD162 /* SDL.c */, + A7D8A94423E2514000DCD162 /* SDL_assert.c */, + A7D8A7F523E2513F00DCD162 /* SDL_assert_c.h */, + A7D8A8BF23E2513F00DCD162 /* SDL_error.c */, + A7D8A57523E2513D00DCD162 /* SDL_error_c.h */, + F382071C284F362F004DD584 /* SDL_guid.c */, + 0000B6ADCD88CAD6610F0000 /* SDL_hashtable.h */, + 000078E1881E857EBB6C0000 /* SDL_hashtable.c */, + A7D8A5AB23E2513D00DCD162 /* SDL_hints.c */, + A7D8A8D123E2514000DCD162 /* SDL_hints_c.h */, + A7D8A58323E2513D00DCD162 /* SDL_internal.h */, + A1BB8B6227F6CF330057CFA8 /* SDL_list.h */, + A1BB8B6127F6CF320057CFA8 /* SDL_list.c */, + A7D8A5DD23E2513D00DCD162 /* SDL_log.c */, + F386F6E42884663E001840AA /* SDL_log_c.h */, + F3E5A6EA2AD5E0E600293D83 /* SDL_properties.c */, + F386F6E62884663E001840AA /* SDL_utils.c */, + F386F6E52884663E001840AA /* SDL_utils_c.h */, ); name = "Library Source"; path = ../../src; @@ -1857,7 +1836,6 @@ A7D8A7CC23E2513E00DCD162 /* darwin */, A7D8A79F23E2513E00DCD162 /* dummy */, A7D8A7BE23E2513E00DCD162 /* hidapi */, - A7D8A7A123E2513E00DCD162 /* steam */, 75E09157241EA924004729E1 /* virtual */, F362B9152B3349E200D30B94 /* controller_list.h */, F3820712284F3609004DD584 /* controller_type.c */, @@ -1883,15 +1861,6 @@ path = dummy; sourceTree = ""; }; - A7D8A7A123E2513E00DCD162 /* steam */ = { - isa = PBXGroup; - children = ( - A7D8A7A723E2513E00DCD162 /* SDL_steamcontroller.c */, - A7D8A7A523E2513E00DCD162 /* SDL_steamcontroller.h */, - ); - path = steam; - sourceTree = ""; - }; A7D8A7AA23E2513E00DCD162 /* apple */ = { isa = PBXGroup; children = ( @@ -1942,6 +1911,11 @@ isa = PBXGroup; children = ( A7D8A7DB23E2513F00DCD162 /* SDL_iostream.c */, + 00003928A612EC33D42C0000 /* SDL_asyncio.c */, + 0000919399B1A908267F0000 /* SDL_asyncio_c.h */, + 0000585B2CAB450B40540000 /* SDL_sysasyncio.h */, + 000013C0F2EADC24ADC10000 /* generic */, + 000064F9A2AAE947C1CD0000 /* windows */, ); path = file; sourceTree = ""; @@ -2199,40 +2173,6 @@ path = opengl; sourceTree = ""; }; - A7D8A91123E2514000DCD162 /* libm */ = { - isa = PBXGroup; - children = ( - A7D8A91D23E2514000DCD162 /* e_atan2.c */, - A7D8A92123E2514000DCD162 /* e_exp.c */, - A7D8A92023E2514000DCD162 /* e_fmod.c */, - A7D8A92323E2514000DCD162 /* e_log.c */, - A7D8A92223E2514000DCD162 /* e_log10.c */, - A7D8A91C23E2514000DCD162 /* e_pow.c */, - A7D8A91F23E2514000DCD162 /* e_rem_pio2.c */, - A7D8A92423E2514000DCD162 /* e_sqrt.c */, - A7D8A91923E2514000DCD162 /* k_cos.c */, - A7D8A91623E2514000DCD162 /* k_rem_pio2.c */, - A7D8A91723E2514000DCD162 /* k_sin.c */, - A7D8A92723E2514000DCD162 /* k_tan.c */, - A7D8A92623E2514000DCD162 /* math_libm.h */, - A7D8A91B23E2514000DCD162 /* math_private.h */, - A7D8A91823E2514000DCD162 /* s_atan.c */, - A7D8A91423E2514000DCD162 /* s_copysign.c */, - A7D8A91323E2514000DCD162 /* s_cos.c */, - A7D8A91523E2514000DCD162 /* s_fabs.c */, - A7D8A92523E2514000DCD162 /* s_floor.c */, - F3F528C72C29E1C300E6CC26 /* s_isinf.c */, - F3F528CA2C29E1C300E6CC26 /* s_isinff.c */, - F3F528C82C29E1C300E6CC26 /* s_isnan.c */, - F3F528C62C29E1C300E6CC26 /* s_isnanf.c */, - F3F528C92C29E1C300E6CC26 /* s_modf.c */, - A7D8A91A23E2514000DCD162 /* s_scalbn.c */, - A7D8A91223E2514000DCD162 /* s_sin.c */, - A7D8A91E23E2514000DCD162 /* s_tan.c */, - ); - path = libm; - sourceTree = ""; - }; A7D8A92923E2514000DCD162 /* events */ = { isa = PBXGroup; children = ( @@ -2333,6 +2273,31 @@ path = gpu; sourceTree = ""; }; + F338A1142D1B3735007CDFDF /* tray */ = { + isa = PBXGroup; + children = ( + F338A1162D1B378D007CDFDF /* cocoa */, + F338A1152D1B3786007CDFDF /* dummy */, + ); + path = tray; + sourceTree = ""; + }; + F338A1152D1B3786007CDFDF /* dummy */ = { + isa = PBXGroup; + children = ( + F338A1192D1B37E4007CDFDF /* SDL_tray.c */, + ); + path = dummy; + sourceTree = ""; + }; + F338A1162D1B378D007CDFDF /* cocoa */ = { + isa = PBXGroup; + children = ( + F338A1172D1B37D8007CDFDF /* SDL_tray.m */, + ); + path = cocoa; + sourceTree = ""; + }; F36C7ACF294B9F5E004D61C3 /* core */ = { isa = PBXGroup; children = ( @@ -2346,6 +2311,9 @@ children = ( F37E18552BA50ED50098C111 /* cocoa */, F37E18562BA50F2A0098C111 /* dummy */, + F3F15D7C2D011912007AE210 /* SDL_dialog.h */, + F3F15D7D2D011912007AE210 /* SDL_dialog.c */, + F3F15D7E2D011912007AE210 /* SDL_dialog_utils.h */, 0000F6C6A072ED4E3D660000 /* SDL_dialog_utils.c */, ); path = dialog; @@ -2491,6 +2459,8 @@ A7D8B8A223E2514400DCD162 /* SDL_diskaudio.h in Headers */, F3B439482C93595900792030 /* SDL_process.h in Headers */, A7D8BB3F23E2514500DCD162 /* SDL_displayevents_c.h in Headers */, + F3F15D802D011912007AE210 /* SDL_dialog_utils.h in Headers */, + F3F15D812D011912007AE210 /* SDL_dialog.h in Headers */, A7D8BA1923E2514400DCD162 /* SDL_draw.h in Headers */, F3C2CB222C5DDDB2004D7998 /* SDL_categories_c.h in Headers */, E479118E2BA9555500CE3B7F /* SDL_sysstorage.h in Headers */, @@ -2560,6 +2530,7 @@ F31A92C828D4CB39003BFD6A /* SDL_offscreenopengles.h in Headers */, A7D8AB6D23E2514100DCD162 /* SDL_offscreenvideo.h in Headers */, A7D8AB8523E2514100DCD162 /* SDL_offscreenwindow.h in Headers */, + F35B79632D03A7B900C6D591 /* SDL_asyncio.h in Headers */, F37E18642BAA40670098C111 /* SDL_time_c.h in Headers */, F3B38CDB296E2E52005DA6D3 /* SDL_oldnames.h in Headers */, F3F7D9C92933074E00816151 /* SDL_opengl.h in Headers */, @@ -2601,7 +2572,6 @@ F310138F2C1F2CB700FBE946 /* SDL_sysstdlib.h in Headers */, F3F7D8F52933074E00816151 /* SDL_stdinc.h in Headers */, F362B91B2B3349E200D30B94 /* SDL_steam_virtual_gamepad.h in Headers */, - A7D8BBC723E2561500DCD162 /* SDL_steamcontroller.h in Headers */, F3F7D9312933074E00816151 /* SDL_surface.h in Headers */, A7D8B85A23E2514400DCD162 /* SDL_sysaudio.h in Headers */, A7D8AAD423E2514100DCD162 /* SDL_syshaptic.h in Headers */, @@ -2665,8 +2635,6 @@ A7D8B23023E2514200DCD162 /* gl2platform.h in Headers */, A75FDB5823E39E6100529352 /* hidapi.h in Headers */, A7D8B23623E2514200DCD162 /* khrplatform.h in Headers */, - A7D8BB0323E2514500DCD162 /* math_libm.h in Headers */, - A7D8BAC123E2514500DCD162 /* math_private.h in Headers */, A7D8BB5123E2514500DCD162 /* scancodes_darwin.h in Headers */, A7D8BB5D23E2514500DCD162 /* scancodes_linux.h in Headers */, A7D8BB2123E2514500DCD162 /* scancodes_windows.h in Headers */, @@ -2825,7 +2793,6 @@ A7D8B9E323E2514400DCD162 /* SDL_drawline.c in Sources */, A7D8AE7C23E2514100DCD162 /* SDL_yuv.c in Sources */, A7D8B62F23E2514300DCD162 /* SDL_sysfilesystem.m in Sources */, - A7D8BAC723E2514500DCD162 /* e_pow.c in Sources */, A7D8B41C23E2514300DCD162 /* SDL_systls.c in Sources */, 9846B07C287A9020000C35C8 /* SDL_hidapi_shield.c in Sources */, F31013C72C24E98200FBE946 /* SDL_keymap.c in Sources */, @@ -2837,7 +2804,6 @@ F36C34322C0F876500991150 /* SDL_offscreenvulkan.c in Sources */, A7D8A95123E2514000DCD162 /* SDL_spinlock.c in Sources */, F34B9895291DEFF500AAC96E /* SDL_hidapi_steam.c in Sources */, - A7D8BAAF23E2514400DCD162 /* s_atan.c in Sources */, A7D8B75223E2514300DCD162 /* SDL_sysloadso.c in Sources */, A7D8BBE123E2574800DCD162 /* SDL_uikitopenglview.m in Sources */, A79745702B2E9D39009D224A /* SDL_hidapi_steamdeck.c in Sources */, @@ -2848,6 +2814,7 @@ A7D8B86623E2514400DCD162 /* SDL_audiocvt.c in Sources */, A7D8B9F523E2514400DCD162 /* SDL_rotate.c in Sources */, A7D8BBE323E2574800DCD162 /* SDL_uikitvideo.m in Sources */, + F338A1182D1B37D8007CDFDF /* SDL_tray.m in Sources */, 5616CA4E252BB2A6005D5928 /* SDL_sysurl.m in Sources */, F3B439562C937DAB00792030 /* SDL_process.c in Sources */, A7D8A97523E2514000DCD162 /* SDL_coremotionsensor.m in Sources */, @@ -2856,9 +2823,7 @@ F31A92D228D4CB39003BFD6A /* SDL_offscreenopengles.c in Sources */, A1626A3E2617006A003F1973 /* SDL_triangle.c in Sources */, A7D8B3F223E2514300DCD162 /* SDL_thread.c in Sources */, - F3F528CF2C29E1C300E6CC26 /* s_isinff.c in Sources */, A7D8B55D23E2514300DCD162 /* SDL_hidapi_xbox360w.c in Sources */, - F3F528CB2C29E1C300E6CC26 /* s_isnanf.c in Sources */, A7D8A95723E2514000DCD162 /* SDL_atomic.c in Sources */, A75FDBCE23EA380300529352 /* SDL_hidapi_rumble.c in Sources */, E4F257952C81903800FCEAFC /* SDL_gpu_vulkan.c in Sources */, @@ -2869,7 +2834,6 @@ F37E18582BA50F3B0098C111 /* SDL_cocoadialog.m in Sources */, A7D8B43423E2514300DCD162 /* SDL_systhread.c in Sources */, A7D8BB3323E2514500DCD162 /* SDL_windowevents.c in Sources */, - A7D8BABB23E2514400DCD162 /* s_scalbn.c in Sources */, F3973FAB28A59BDD00B84553 /* SDL_crc16.c in Sources */, A7D8AB2B23E2514100DCD162 /* SDL_timer.c in Sources */, E4F257962C81903800FCEAFC /* SDL_gpu.c in Sources */, @@ -2889,6 +2853,7 @@ A7D8BA3723E2514400DCD162 /* SDL_d3dmath.c in Sources */, F3A9AE9C2C8A13C100AAC390 /* SDL_pipeline_gpu.c in Sources */, 75E0915A241EA924004729E1 /* SDL_virtualjoystick.c in Sources */, + F338A11A2D1B37E4007CDFDF /* SDL_tray.c in Sources */, A7D8ABEB23E2514100DCD162 /* SDL_nullvideo.c in Sources */, F3990E072A78833C000D8759 /* hid.m in Sources */, A7D8AB6723E2514100DCD162 /* SDL_offscreenevents.c in Sources */, @@ -2899,18 +2864,13 @@ A7D8BBE523E2574800DCD162 /* SDL_uikitview.m in Sources */, A7D8BBE923E2574800DCD162 /* SDL_uikitvulkan.m in Sources */, A7D8ABCD23E2514100DCD162 /* SDL_blit_slow.c in Sources */, - A7D8BA9723E2514400DCD162 /* s_copysign.c in Sources */, F3984CD025BCC92900374F43 /* SDL_hidapi_stadia.c in Sources */, A7D8AAB623E2514100DCD162 /* SDL_haptic.c in Sources */, E4F257922C81903800FCEAFC /* Metal_Blit.metal in Sources */, A7D8AF2423E2514100DCD162 /* SDL_cocoametalview.m in Sources */, A7D8B86023E2514400DCD162 /* SDL_audiotypecvt.c in Sources */, - A7D8BBC523E2561500DCD162 /* SDL_steamcontroller.c in Sources */, A7D8AD3223E2514100DCD162 /* SDL_blit_N.c in Sources */, A7D8BB7B23E2514500DCD162 /* SDL_dropevents.c in Sources */, - A7D8BACD23E2514500DCD162 /* e_atan2.c in Sources */, - A7D8BA8B23E2514400DCD162 /* s_sin.c in Sources */, - F3F528CE2C29E1C300E6CC26 /* s_modf.c in Sources */, A7D8BBEB23E2574800DCD162 /* SDL_uikitwindow.m in Sources */, F3B439532C935C2C00792030 /* SDL_posixprocess.c in Sources */, F395BF6525633B2400942BFF /* SDL_crc32.c in Sources */, @@ -2918,7 +2878,6 @@ A7D8AED623E2514100DCD162 /* SDL_cocoakeyboard.m in Sources */, A7D8AB1623E2514100DCD162 /* SDL_dynapi.c in Sources */, A7D8BA8523E2514400DCD162 /* SDL_shaders_gl.c in Sources */, - A7D8BAF123E2514500DCD162 /* e_log.c in Sources */, A7D8AED023E2514100DCD162 /* SDL_cocoamessagebox.m in Sources */, F376F6552559B4E300CFC0BC /* SDL_hidapi.c in Sources */, A7D8BA2B23E2514400DCD162 /* SDL_blendfillrect.c in Sources */, @@ -2928,14 +2887,13 @@ A7D8B8E423E2514400DCD162 /* SDL_error.c in Sources */, A7D8AD6823E2514100DCD162 /* SDL_blit.c in Sources */, A7D8B5BD23E2514300DCD162 /* SDL_iostream.c in Sources */, - A7D8BA9123E2514400DCD162 /* s_cos.c in Sources */, A7D8B9D123E2514400DCD162 /* SDL_yuv_sw.c in Sources */, A7D8B76A23E2514300DCD162 /* SDL_wave.c in Sources */, 5616CA4C252BB2A6005D5928 /* SDL_url.c in Sources */, - A7D8BAD323E2514500DCD162 /* s_tan.c in Sources */, F316ABDB2B5CA721002EF551 /* SDL_memmove.c in Sources */, A7D8AA6523E2514000DCD162 /* SDL_hints.c in Sources */, A7D8B53F23E2514300DCD162 /* SDL_hidapi_ps4.c in Sources */, + F3F15D7F2D011912007AE210 /* SDL_dialog.c in Sources */, F362B91C2B3349E200D30B94 /* SDL_steam_virtual_gamepad.c in Sources */, A7D8AD6E23E2514100DCD162 /* SDL_pixels.c in Sources */, A7D8B75E23E2514300DCD162 /* SDL_sysloadso.c in Sources */, @@ -2943,24 +2901,18 @@ A7D8B5F323E2514300DCD162 /* SDL_syspower.c in Sources */, A7D8B95023E2514400DCD162 /* SDL_iconv.c in Sources */, F3E5A6EB2AD5E0E600293D83 /* SDL_properties.c in Sources */, - A7D8BA9D23E2514400DCD162 /* s_fabs.c in Sources */, - F3F528CC2C29E1C300E6CC26 /* s_isinf.c in Sources */, F395C1B12569C6A000942BFF /* SDL_mfijoystick.m in Sources */, A7D8B99223E2514400DCD162 /* SDL_shaders_metal.metal in Sources */, F3990DF52A787C10000D8759 /* SDL_sysurl.m in Sources */, F316ABD92B5C3185002EF551 /* SDL_memcpy.c in Sources */, A7D8B97A23E2514400DCD162 /* SDL_render.c in Sources */, A7D8ABD323E2514100DCD162 /* SDL_stretch.c in Sources */, - A7D8BAFD23E2514500DCD162 /* s_floor.c in Sources */, A7D8AC3923E2514100DCD162 /* SDL_blit_copy.c in Sources */, - A7D8BADF23E2514500DCD162 /* e_fmod.c in Sources */, A7D8B5CF23E2514300DCD162 /* SDL_syspower.m in Sources */, - A7D8BAEB23E2514500DCD162 /* e_log10.c in Sources */, F3B439512C935C2400792030 /* SDL_dummyprocess.c in Sources */, A7D8B76423E2514300DCD162 /* SDL_mixer.c in Sources */, A7D8BB5723E2514500DCD162 /* SDL_events.c in Sources */, A7D8ADE623E2514100DCD162 /* SDL_blit_0.c in Sources */, - A7D8BB0923E2514500DCD162 /* k_tan.c in Sources */, A7D8B8A823E2514400DCD162 /* SDL_diskaudio.c in Sources */, 56A2373329F9C113003CCA5F /* SDL_sysrwlock.c in Sources */, F3A9AE9A2C8A13C100AAC390 /* SDL_shaders_gpu.c in Sources */, @@ -2980,7 +2932,6 @@ A7D8B95C23E2514400DCD162 /* SDL_string.c in Sources */, A7D8BA7F23E2514400DCD162 /* SDL_render_gl.c in Sources */, A7D8AE9423E2514100DCD162 /* SDL_cocoamodes.m in Sources */, - A7D8BAA323E2514400DCD162 /* k_rem_pio2.c in Sources */, A7D8B95623E2514400DCD162 /* SDL_getenv.c in Sources */, A7D8B56323E2514300DCD162 /* SDL_hidapi_gamecube.c in Sources */, A7D8B4DC23E2514300DCD162 /* SDL_joystick.c in Sources */, @@ -3000,7 +2951,6 @@ A7D8BB7523E2514500DCD162 /* SDL_clipboardevents.c in Sources */, E4F798202AD8D87F00669F54 /* SDL_video_unsupported.c in Sources */, A1BB8B6327F6CF330057CFA8 /* SDL_list.c in Sources */, - A7D8BAB523E2514400DCD162 /* k_cos.c in Sources */, A7D8B54523E2514300DCD162 /* SDL_hidapijoystick.c in Sources */, A7D8B97423E2514400DCD162 /* SDL_malloc.c in Sources */, A7D8B8C623E2514400DCD162 /* SDL_audio.c in Sources */, @@ -3010,14 +2960,12 @@ A7D8AB8B23E2514100DCD162 /* SDL_offscreenvideo.c in Sources */, A7D8B42E23E2514300DCD162 /* SDL_syscond.c in Sources */, A7D8AADA23E2514100DCD162 /* SDL_syshaptic.c in Sources */, - A7D8BAE523E2514500DCD162 /* e_exp.c in Sources */, F3FD042F2C9B755700824C4C /* SDL_hidapi_steam_hori.c in Sources */, A7D8BB8123E2514500DCD162 /* SDL_quit.c in Sources */, F3FA5A232B59ACE000FEAD97 /* yuv_rgb_lsx.c in Sources */, A7D8AEA623E2514100DCD162 /* SDL_cocoawindow.m in Sources */, A7D8B43A23E2514300DCD162 /* SDL_sysmutex.c in Sources */, A7D8AAB023E2514100DCD162 /* SDL_syshaptic.c in Sources */, - F3F528CD2C29E1C300E6CC26 /* s_isnan.c in Sources */, F3F07D5A269640160074468B /* SDL_hidapi_luna.c in Sources */, A7D8BBD523E2574800DCD162 /* SDL_uikitclipboard.m in Sources */, F386F6F92884663E001840AA /* SDL_utils.c in Sources */, @@ -3027,18 +2975,15 @@ A7D8B14023E2514200DCD162 /* SDL_blit_1.c in Sources */, A7D8BBDB23E2574800DCD162 /* SDL_uikitmetalview.m in Sources */, A7D8BB1523E2514500DCD162 /* SDL_mouse.c in Sources */, - A7D8BAD923E2514500DCD162 /* e_rem_pio2.c in Sources */, F395C19C2569C68F00942BFF /* SDL_iokitjoystick.c in Sources */, A7D8B4B223E2514300DCD162 /* SDL_sysjoystick.c in Sources */, A7D8B3E023E2514300DCD162 /* SDL_cpuinfo.c in Sources */, A7D8A99323E2514000DCD162 /* SDL_sensor.c in Sources */, - A7D8BAA923E2514400DCD162 /* k_sin.c in Sources */, A7D8AB4923E2514100DCD162 /* SDL_systimer.c in Sources */, F37E185A2BA50F450098C111 /* SDL_dummydialog.c in Sources */, A7D8BA2523E2514400DCD162 /* SDL_drawpoint.c in Sources */, F3681E802B7AA6240002C6FD /* SDL_cocoashape.m in Sources */, F388C95528B5F6F700661ECF /* SDL_hidapi_ps3.c in Sources */, - A7D8BAF723E2514500DCD162 /* e_sqrt.c in Sources */, F36C7AD1294BA009004D61C3 /* SDL_runapp.c in Sources */, A7D8AEAC23E2514100DCD162 /* SDL_cocoavideo.m in Sources */, A7D8A94B23E2514000DCD162 /* SDL.c in Sources */, @@ -3060,6 +3005,9 @@ 0000140640E77F73F1DF0000 /* SDL_dialog_utils.c in Sources */, 0000D5B526B85DE7AB1C0000 /* SDL_cocoapen.m in Sources */, 6312C66D2B42341400A7BB00 /* SDL_murmur3.c in Sources */, + 0000AEB9AE90228CA2D60000 /* SDL_asyncio.c in Sources */, + 00004D0B73767647AD550000 /* SDL_asyncio_generic.c in Sources */, + 0000A03C0F32C43816F40000 /* SDL_asyncio_windows_ioring.c in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -3081,8 +3029,8 @@ CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; DEPLOYMENT_POSTPROCESSING = YES; - DYLIB_COMPATIBILITY_VERSION = 107.0.0; - DYLIB_CURRENT_VERSION = 107.0.0; + DYLIB_COMPATIBILITY_VERSION = 108.0.0; + DYLIB_CURRENT_VERSION = 108.0.0; DYLIB_INSTALL_NAME_BASE = "@rpath"; ENABLE_STRICT_OBJC_MSGSEND = YES; GCC_ALTIVEC_EXTENSIONS = YES; @@ -3114,7 +3062,7 @@ "@loader_path/Frameworks", ); MACOSX_DEPLOYMENT_TARGET = 10.11; - MARKETING_VERSION = 3.1.6; + MARKETING_VERSION = 3.1.7; OTHER_LDFLAGS = "$(CONFIG_FRAMEWORK_LDFLAGS)"; PRODUCT_BUNDLE_IDENTIFIER = org.libsdl.SDL3; PRODUCT_NAME = SDL3; @@ -3142,8 +3090,8 @@ ALLOW_TARGET_PLATFORM_SPECIALIZATION = YES; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; - DYLIB_COMPATIBILITY_VERSION = 107.0.0; - DYLIB_CURRENT_VERSION = 107.0.0; + DYLIB_COMPATIBILITY_VERSION = 108.0.0; + DYLIB_CURRENT_VERSION = 108.0.0; DYLIB_INSTALL_NAME_BASE = "@rpath"; ENABLE_STRICT_OBJC_MSGSEND = YES; ENABLE_TESTABILITY = YES; @@ -3175,7 +3123,7 @@ "@loader_path/Frameworks", ); MACOSX_DEPLOYMENT_TARGET = 10.11; - MARKETING_VERSION = 3.1.6; + MARKETING_VERSION = 3.1.7; ONLY_ACTIVE_ARCH = YES; OTHER_LDFLAGS = "$(CONFIG_FRAMEWORK_LDFLAGS)"; PRODUCT_BUNDLE_IDENTIFIER = org.libsdl.SDL3; diff --git a/libs/SDL3/Xcode/SDL/pkg-support/SDL.info b/libs/SDL3/Xcode/SDL/pkg-support/SDL.info index 08b21172..38315815 100644 --- a/libs/SDL3/Xcode/SDL/pkg-support/SDL.info +++ b/libs/SDL3/Xcode/SDL/pkg-support/SDL.info @@ -1,4 +1,4 @@ -Title SDL 3.1.6 +Title SDL 3.1.7 Version 1 Description SDL Library for macOS (http://www.libsdl.org) DefaultLocation /Library/Frameworks diff --git a/libs/SDL3/Xcode/SDL/pkg-support/share/cmake/SDL3/SDL3Config.cmake b/libs/SDL3/Xcode/SDL/pkg-support/share/cmake/SDL3/SDL3Config.cmake index 9d29aae9..f1585814 100644 --- a/libs/SDL3/Xcode/SDL/pkg-support/share/cmake/SDL3/SDL3Config.cmake +++ b/libs/SDL3/Xcode/SDL/pkg-support/share/cmake/SDL3/SDL3Config.cmake @@ -112,7 +112,7 @@ if(NOT TARGET SDL3::SDL3-shared) set_target_properties(SDL3::SDL3-shared PROPERTIES FRAMEWORK "TRUE" - IMPORTED_LOCATION "${_sdl3_framework_path}/SDL3" + IMPORTED_LOCATION "${_sdl3_framework_path}" INTERFACE_LINK_LIBRARIES "SDL3::Headers" ) endif() diff --git a/libs/SDL3/android-project/app/src/main/java/org/libsdl/app/HIDDeviceBLESteamController.java b/libs/SDL3/android-project/app/src/main/java/org/libsdl/app/HIDDeviceBLESteamController.java index a7b85d0c..d2dc0d23 100644 --- a/libs/SDL3/android-project/app/src/main/java/org/libsdl/app/HIDDeviceBLESteamController.java +++ b/libs/SDL3/android-project/app/src/main/java/org/libsdl/app/HIDDeviceBLESteamController.java @@ -470,7 +470,7 @@ class HIDDeviceBLESteamController extends BluetoothGattCallback implements HIDDe // Only register controller with the native side once it has been fully configured if (!isRegistered()) { Log.v(TAG, "Registering Steam Controller with ID: " + getId()); - mManager.HIDDeviceConnected(getId(), getIdentifier(), getVendorId(), getProductId(), getSerialNumber(), getVersion(), getManufacturerName(), getProductName(), 0, 0, 0, 0); + mManager.HIDDeviceConnected(getId(), getIdentifier(), getVendorId(), getProductId(), getSerialNumber(), getVersion(), getManufacturerName(), getProductName(), 0, 0, 0, 0, true); setRegistered(); } } diff --git a/libs/SDL3/android-project/app/src/main/java/org/libsdl/app/HIDDeviceManager.java b/libs/SDL3/android-project/app/src/main/java/org/libsdl/app/HIDDeviceManager.java index fe791432..37d80ca0 100644 --- a/libs/SDL3/android-project/app/src/main/java/org/libsdl/app/HIDDeviceManager.java +++ b/libs/SDL3/android-project/app/src/main/java/org/libsdl/app/HIDDeviceManager.java @@ -355,7 +355,7 @@ public class HIDDeviceManager { HIDDeviceUSB device = new HIDDeviceUSB(this, usbDevice, interface_index); int id = device.getId(); mDevicesById.put(id, device); - HIDDeviceConnected(id, device.getIdentifier(), device.getVendorId(), device.getProductId(), device.getSerialNumber(), device.getVersion(), device.getManufacturerName(), device.getProductName(), usbInterface.getId(), usbInterface.getInterfaceClass(), usbInterface.getInterfaceSubclass(), usbInterface.getInterfaceProtocol()); + HIDDeviceConnected(id, device.getIdentifier(), device.getVendorId(), device.getProductId(), device.getSerialNumber(), device.getVersion(), device.getManufacturerName(), device.getProductName(), usbInterface.getId(), usbInterface.getInterfaceClass(), usbInterface.getInterfaceSubclass(), usbInterface.getInterfaceProtocol(), false); } } } @@ -679,7 +679,7 @@ public class HIDDeviceManager { private native void HIDDeviceRegisterCallback(); private native void HIDDeviceReleaseCallback(); - native void HIDDeviceConnected(int deviceID, String identifier, int vendorId, int productId, String serial_number, int release_number, String manufacturer_string, String product_string, int interface_number, int interface_class, int interface_subclass, int interface_protocol); + native void HIDDeviceConnected(int deviceID, String identifier, int vendorId, int productId, String serial_number, int release_number, String manufacturer_string, String product_string, int interface_number, int interface_class, int interface_subclass, int interface_protocol, boolean bBluetooth); native void HIDDeviceOpenPending(int deviceID); native void HIDDeviceOpenResult(int deviceID, boolean opened); native void HIDDeviceDisconnected(int deviceID); diff --git a/libs/SDL3/android-project/app/src/main/java/org/libsdl/app/HIDDeviceUSB.java b/libs/SDL3/android-project/app/src/main/java/org/libsdl/app/HIDDeviceUSB.java index 5b5d201f..27414386 100644 --- a/libs/SDL3/android-project/app/src/main/java/org/libsdl/app/HIDDeviceUSB.java +++ b/libs/SDL3/android-project/app/src/main/java/org/libsdl/app/HIDDeviceUSB.java @@ -154,6 +154,11 @@ class HIDDeviceUSB implements HIDDevice { @Override public int writeReport(byte[] report, boolean feature) { + if (mConnection == null) { + Log.w(TAG, "writeReport() called with no device connection"); + return -1; + } + if (feature) { int res = -1; int offset = 0; @@ -201,6 +206,11 @@ class HIDDeviceUSB implements HIDDevice { boolean skipped_report_id = false; byte report_number = report[0]; + if (mConnection == null) { + Log.w(TAG, "readReport() called with no device connection"); + return false; + } + if (report_number == 0x0) { /* Offset the return buffer by 1, so that the report ID will remain in byte 0. */ diff --git a/libs/SDL3/android-project/app/src/main/java/org/libsdl/app/SDLActivity.java b/libs/SDL3/android-project/app/src/main/java/org/libsdl/app/SDLActivity.java index 23681998..8666885a 100644 --- a/libs/SDL3/android-project/app/src/main/java/org/libsdl/app/SDLActivity.java +++ b/libs/SDL3/android-project/app/src/main/java/org/libsdl/app/SDLActivity.java @@ -60,7 +60,7 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh private static final String TAG = "SDL"; private static final int SDL_MAJOR_VERSION = 3; private static final int SDL_MINOR_VERSION = 1; - private static final int SDL_MICRO_VERSION = 6; + private static final int SDL_MICRO_VERSION = 7; /* // Display InputType.SOURCE/CLASS of events and devices // diff --git a/libs/SDL3/build-scripts/SDL_migration.cocci b/libs/SDL3/build-scripts/SDL_migration.cocci index 7a36ec85..27a549fd 100644 --- a/libs/SDL3/build-scripts/SDL_migration.cocci +++ b/libs/SDL3/build-scripts/SDL_migration.cocci @@ -1081,7 +1081,7 @@ typedef SDL_GameControllerButton, SDL_GamepadButton; @@ @@ - SDL_GameControllerFromInstanceID -+ SDL_GetGamepadFromInstanceID ++ SDL_GetGamepadFromID (...) @@ @@ @@ -1318,7 +1318,7 @@ typedef SDL_GameControllerButton, SDL_GamepadButton; @@ @@ - SDL_JoystickFromInstanceID -+ SDL_GetJoystickFromInstanceID ++ SDL_GetJoystickFromID (...) @@ @@ @@ -1398,7 +1398,7 @@ typedef SDL_GameControllerButton, SDL_GamepadButton; @@ @@ - SDL_JoystickInstanceID -+ SDL_GetJoystickInstanceID ++ SDL_GetJoystickID (...) @@ @@ @@ -1807,7 +1807,7 @@ expression e2; @@ @@ - SDL_SensorFromInstanceID -+ SDL_GetSensorFromInstanceID ++ SDL_GetSensorFromID (...) @@ @@ @@ -1817,7 +1817,7 @@ expression e2; @@ @@ - SDL_SensorGetInstanceID -+ SDL_GetSensorInstanceID ++ SDL_GetSensorID (...) @@ @@ diff --git a/libs/SDL3/build-scripts/build-release.py b/libs/SDL3/build-scripts/build-release.py index 3295c1f8..2002039e 100644 --- a/libs/SDL3/build-scripts/build-release.py +++ b/libs/SDL3/build-scripts/build-release.py @@ -328,6 +328,10 @@ def configure_text(text: str, context: dict[str, str]) -> str: return text +def configure_text_list(text_list: list[str], context: dict[str, str]) -> list[str]: + return [configure_text(text=e, context=context) for e in text_list] + + class ArchiveFileTree: def __init__(self): self._tree: dict[str, NodeInArchive] = {} @@ -343,7 +347,7 @@ class ArchiveFileTree: added_files = dict() def calculate_symlink_target(s: NodeInArchive) -> str: - dest_dir = os.path.dirname(s.path) + dest_dir = os.path.dirname(s.arcpath) if dest_dir: dest_dir += "/" target = dest_dir + s.symtarget @@ -357,12 +361,15 @@ class ArchiveFileTree: # Add files in first pass for arcpath, node in self._tree.items(): + assert node is not None, f"{arcpath} -> node" if node.data is not None: archiver.add_file_data(arcpath=arc_join(archive_base, arcpath), data=node.data, time=node.time, mode=node.mode) - added_files[node.path] = node + assert node.arcpath is not None, f"{node=}" + added_files[node.arcpath] = node elif node.path is not None: archiver.add_file_path(arcpath=arc_join(archive_base, arcpath), path=node.path) - added_files[node.path] = node + assert node.arcpath is not None, f"{node=}" + added_files[node.arcpath] = node elif node.symtarget is not None: remaining_symlinks.add(node) elif node.directory: @@ -370,6 +377,8 @@ class ArchiveFileTree: else: raise ValueError(f"Invalid Archive Node: {repr(node)}") + assert None not in added_files + # Resolve symlinks in second pass: zipfile does not support symlinks, so add files to zip archive while True: if not remaining_symlinks: @@ -380,18 +389,18 @@ class ArchiveFileTree: symlink_files_for_zip = {} symlink_target_path = calculate_symlink_target(symlink) if symlink_target_path in added_files: - symlink_files_for_zip[symlink.path] = added_files[symlink_target_path] + symlink_files_for_zip[symlink.arcpath] = added_files[symlink_target_path] else: symlink_target_path_slash = symlink_target_path + "/" for added_file in added_files: if added_file.startswith(symlink_target_path_slash): - path_in_symlink = symlink.path + "/" + added_file.removeprefix(symlink_target_path_slash) + path_in_symlink = symlink.arcpath + "/" + added_file.removeprefix(symlink_target_path_slash) symlink_files_for_zip[path_in_symlink] = added_files[added_file] if symlink_files_for_zip: symlinks_this_time.add(symlink) extra_added_files.update(symlink_files_for_zip) files_for_zip = [{"arcpath": f"{archive_base}/{sym_path}", "data": sym_info.data, "mode": sym_info.mode} for sym_path, sym_info in symlink_files_for_zip.items()] - archiver.add_symlink(arcpath=f"{archive_base}/{symlink.path}", target=symlink.symtarget, time=symlink.time, files_for_zip=files_for_zip) + archiver.add_symlink(arcpath=f"{archive_base}/{symlink.arcpath}", target=symlink.symtarget, time=symlink.time, files_for_zip=files_for_zip) # if not symlinks_this_time: # logger.info("files added: %r", set(path for path in added_files.keys())) assert symlinks_this_time, f"No targets found for symlinks: {remaining_symlinks}" @@ -545,6 +554,7 @@ class Releaser: "PROJECT_VERSION": self.version, "PROJECT_COMMIT": self.commit, "PROJECT_REVISION": self.revision, + "PROJECT_ROOT": str(self.root), } if extra_context: ctx.update(extra_context) @@ -741,15 +751,20 @@ class Releaser: install_path = build_parent_dir / f"install-{triplet}" shutil.rmtree(install_path, ignore_errors=True) build_path.mkdir(parents=True, exist_ok=True) + context = self.get_context({ + "ARCH": arch, + "DEP_PREFIX": str(mingw_deps_path / triplet), + }) + extra_args = configure_text_list(text_list=self.release_info["mingw"]["autotools"]["args"], context=context) + with self.section_printer.group(f"Configuring MinGW {triplet} (autotools)"): - extra_args = [arg.replace("@DEP_PREFIX@", str(mingw_deps_path / triplet)) for arg in self.release_info["mingw"]["autotools"]["args"]] assert "@" not in " ".join(extra_args), f"@ should not be present in extra arguments ({extra_args})" self.executer.run([ self.root / "configure", f"--prefix={install_path}", - f"--includedir={install_path}/include", - f"--libdir={install_path}/lib", - f"--bindir={install_path}/bin", + f"--includedir=${{prefix}}/include", + f"--libdir=${{prefix}}/lib", + f"--bindir=${{prefix}}/bin", f"--host={triplet}", f"--build=x86_64-none-linux-gnu", ] + extra_args, cwd=build_path, env=new_env) @@ -757,7 +772,13 @@ class Releaser: self.executer.run(["make", f"-j{self.cpu_count}"], cwd=build_path, env=new_env) with self.section_printer.group(f"Install MinGW {triplet} (autotools)"): self.executer.run(["make", "install"], cwd=build_path, env=new_env) - archive_file_tree.add_directory_tree(arc_dir=arc_join(arc_root, triplet), path=install_path) + archive_file_tree.add_directory_tree(arc_dir=arc_join(arc_root, triplet), path=install_path, time=self.arc_time) + + print("Recording arch-dependent extra files for MinGW development archive ...") + extra_context = { + "TRIPLET": ARCH_TO_TRIPLET[arch], + } + archive_file_tree.add_file_mapping(arc_dir=arc_root, file_mapping=self.release_info["mingw"]["autotools"].get("files", {}), file_mapping_root=self.root, context=self.get_context(extra_context=extra_context), time=self.arc_time) if "cmake" in self.release_info["mingw"]: assert self.release_info["mingw"]["cmake"]["shared-static"] in ("args", "both") @@ -770,6 +791,12 @@ class Releaser: assert arch not in mingw_archs mingw_archs.add(arch) + context = self.get_context({ + "ARCH": arch, + "DEP_PREFIX": str(mingw_deps_path / triplet), + }) + extra_args = configure_text_list(text_list=self.release_info["mingw"]["cmake"]["args"], context=context) + build_path = build_parent_dir / f"build-{triplet}" install_path = build_parent_dir / f"install-{triplet}" shutil.rmtree(install_path, ignore_errors=True) @@ -780,7 +807,6 @@ class Releaser: args_for_shared_static = (["-DBUILD_SHARED_LIBS=ON"], ["-DBUILD_SHARED_LIBS=OFF"]) for arg_for_shared_static in args_for_shared_static: with self.section_printer.group(f"Configuring MinGW {triplet} (CMake)"): - extra_args = [arg.replace("@DEP_PREFIX@", str(mingw_deps_path / triplet)) for arg in self.release_info["mingw"]["cmake"]["args"]] assert "@" not in " ".join(extra_args), f"@ should not be present in extra arguments ({extra_args})" self.executer.run([ f"cmake", @@ -803,6 +829,13 @@ class Releaser: self.executer.run(["cmake", "--install", str(build_path)], cwd=build_path, env=new_env) archive_file_tree.add_directory_tree(arc_dir=arc_join(arc_root, triplet), path=install_path, time=self.arc_time) + print("Recording arch-dependent extra files for MinGW development archive ...") + extra_context = { + "TRIPLET": ARCH_TO_TRIPLET[arch], + } + archive_file_tree.add_file_mapping(arc_dir=arc_root, file_mapping=self.release_info["mingw"]["cmake"].get("files", {}), file_mapping_root=self.root, context=self.get_context(extra_context=extra_context), time=self.arc_time) + print("... done") + print("Recording extra files for MinGW development archive ...") archive_file_tree.add_file_mapping(arc_dir=arc_root, file_mapping=self.release_info["mingw"].get("files", {}), file_mapping_root=self.root, context=self.get_context(), time=self.arc_time) print("... done") @@ -1231,6 +1264,10 @@ class Releaser: zip_path = self.dist_path / f"{self.project}-devel-{self.version}-VC.zip" arc_root = f"{self.project}-{self.version}" + def copy_files_devel(ctx): + archive_file_tree.add_file_mapping(arc_dir=arc_root, file_mapping=self.release_info["msvc"]["files-devel"], file_mapping_root=self.root, context=ctx, time=self.arc_time) + + logger.info("Collecting files...") archive_file_tree = ArchiveFileTree() if "msbuild" in self.release_info["msvc"]: @@ -1238,12 +1275,13 @@ class Releaser: arch_platform = self._arch_to_vs_platform(arch=arch) platform_context = self.get_context(arch_platform.extra_context()) archive_file_tree.add_file_mapping(arc_dir=arc_root, file_mapping=self.release_info["msvc"]["msbuild"]["files-devel"], file_mapping_root=self.root, context=platform_context, time=self.arc_time) + copy_files_devel(ctx=platform_context) if "cmake" in self.release_info["msvc"]: for arch in self.release_info["msvc"]["cmake"]["archs"]: arch_platform = self._arch_to_vs_platform(arch=arch) platform_context = self.get_context(arch_platform.extra_context()) archive_file_tree.add_file_mapping(arc_dir=arc_root, file_mapping=self.release_info["msvc"]["cmake"]["files-devel"], file_mapping_root=self._arch_platform_to_install_path(arch_platform), context=platform_context, time=self.arc_time) - archive_file_tree.add_file_mapping(arc_dir=arc_root, file_mapping=self.release_info["msvc"]["files-devel"], file_mapping_root=self.root, context=self.get_context(), time=self.arc_time) + copy_files_devel(ctx=platform_context) with Archiver(zip_path=zip_path) as archiver: archive_file_tree.add_to_archiver(archive_base="", archiver=archiver) diff --git a/libs/SDL3/build-scripts/build-web-examples.pl b/libs/SDL3/build-scripts/build-web-examples.pl index 0053295e..211682e1 100644 --- a/libs/SDL3/build-scripts/build-web-examples.pl +++ b/libs/SDL3/build-scripts/build-web-examples.pl @@ -71,6 +71,62 @@ sub build_latest { } } +sub get_category_description { + my $category = shift; + my $retval = ucfirst($category); + + if (open(my $fh, '<', "$examples_dir/$category/description.txt")) { + $retval = <$fh>; + chomp($retval); + close($fh); + } + + return $retval; +} + +sub get_categories { + my @categories = (); + + if (open(my $fh, '<', "$examples_dir/categories.txt")) { + while (<$fh>) { + chomp; + s/\A\s+//; + s/\s+\Z//; + next if $_ eq ''; + next if /\A\#/; + push @categories, $_; + } + close($fh); + } else { + opendir(my $dh, $examples_dir) or die("Couldn't opendir '$examples_dir': $!\n"); + foreach my $dir (sort readdir $dh) { + next if ($dir eq '.') || ($dir eq '..'); # obviously skip current and parent entries. + next if not -d "$examples_dir/$dir"; # only care about subdirectories. + push @categories, $dir; + } + closedir($dh); + } + + return @categories; +} + +sub get_examples_for_category { + my $category = shift; + + my @examples = (); + + opendir(my $dh, "$examples_dir/$category") or die("Couldn't opendir '$examples_dir/$category': $!\n"); + foreach my $dir (sort readdir $dh) { + next if ($dir eq '.') || ($dir eq '..'); # obviously skip current and parent entries. + next if not -d "$examples_dir/$category/$dir"; # only care about subdirectories. + + push @examples, $dir; + } + closedir($dh); + + return @examples; +} + sub handle_example_dir { my $category = shift; my $example = shift; @@ -99,25 +155,43 @@ sub handle_example_dir { $basefname = "$category-$basefname"; my $jsfname = "$basefname.js"; my $wasmfname = "$basefname.wasm"; + my $thumbnailfname = 'thumbnail.png'; + my $onmouseoverfname = 'onmouseover.webp'; my $jssrc = "$compile_dir/examples/$jsfname"; my $wasmsrc = "$compile_dir/examples/$wasmfname"; + my $thumbnailsrc = "$examples_dir/$category/$example/$thumbnailfname"; + my $onmouseoversrc = "$examples_dir/$category/$example/$onmouseoverfname"; my $jsdst = "$dst/$jsfname"; my $wasmdst = "$dst/$wasmfname"; + my $thumbnaildst = "$dst/$thumbnailfname"; + my $onmouseoverdst = "$dst/$onmouseoverfname"; my $description = ''; + my $has_paragraph = 0; if (open(my $readmetxth, '<', "$examples_dir/$category/$example/README.txt")) { while (<$readmetxth>) { chomp; s/\A\s+//; s/\s+\Z//; - $description .= "$_
"; + if (($_ eq '') && ($description ne '')) { + $has_paragraph = 1; + } else { + if ($has_paragraph) { + $description .= "\n
\n
\n"; + $has_paragraph = 0; + } + $description .= "$_ "; + } } close($readmetxth); + $description =~ s/\s+\Z//; } do_mkdir($dst); do_copy($jssrc, $jsdst); do_copy($wasmsrc, $wasmdst); + do_copy($thumbnailsrc, $thumbnaildst) if ( -f $thumbnailsrc ); + do_copy($onmouseoversrc, $onmouseoverdst) if ( -f $onmouseoversrc ); my $highlight_cmd = "highlight '--outdir=$dst' --style-outfile=highlight.css --fragment --enclose-pre --stdout --syntax=c '--plug-in=$examples_dir/highlight-plugin.lua'"; print("$highlight_cmd\n"); @@ -146,16 +220,27 @@ sub handle_example_dir { waitpid($pid, 0); + my $other_examples_html = "
    "; + foreach my $example (get_examples_for_category($category)) { + $other_examples_html .= "
  • $category/$example
  • "; + } + $other_examples_html .= "
"; + + my $category_description = get_category_description($category); + my $preview_image = get_example_thumbnail($project, $category, $example); my $html = ''; open my $htmltemplate, '<', "$examples_dir/template.html" or die("Couldn't open '$examples_dir/template.html': $!\n"); while (<$htmltemplate>) { s/\@project_name\@/$project/g; s/\@category_name\@/$category/g; + s/\@category_description\@/$category_description/g; s/\@example_name\@/$example/g; s/\@javascript_file\@/$jsfname/g; s/\@htmlified_source_code\@/$htmlified_source_code/g; s/\@description\@/$description/g; + s/\@preview_image\@/$preview_image/g; + s/\@other_examples_html\@/$other_examples_html/g; $html .= $_; } close($htmltemplate); @@ -165,11 +250,61 @@ sub handle_example_dir { close($htmloutput); } +sub get_example_thumbnail { + my $project = shift; + my $category = shift; + my $example = shift; + + if ( -f "$examples_dir/$category/$example/thumbnail.png" ) { + return "/$project/$category/$example/thumbnail.png"; + } elsif ( -f "$examples_dir/$category/thumbnail.png" ) { + return "/$project/$category/thumbnail.png"; + } + + return "/$project/thumbnail.png"; +} + +sub generate_example_thumbnail { + my $project = shift; + my $category = shift; + my $example = shift; + + my $example_no_num = "$example"; + $example_no_num =~ s/\A\d+\-//; + + my $example_image_url = get_example_thumbnail($project, $category, $example); + + my $example_mouseover_html = ''; + if ( -f "$examples_dir/$category/$example/onmouseover.webp" ) { + $example_mouseover_html = "onmouseover=\"this.src='/$project/$category/$example/onmouseover.webp'\" onmouseout=\"this.src='$example_image_url';\""; + } elsif ( -f "$examples_dir/$category/onmouseover.webp" ) { + $example_mouseover_html = "onmouseover=\"this.src='/$project/$category/onmouseover.webp'\" onmouseout=\"this.src='$example_image_url';\""; + } + + return " + +
+ +
$example_no_num
+
+
" + ; +} + +sub generate_example_thumbnails_for_category { + my $project = shift; + my $category = shift; + my @examples = get_examples_for_category($category); + my $retval = ''; + foreach my $example (@examples) { + $retval .= generate_example_thumbnail($project, $category, $example); + } + return $retval; +} + sub handle_category_dir { my $category = shift; - # !!! FIXME: this needs to generate a preview page for all the examples things in the category. - print("Category $category ...\n"); do_mkdir("$output_dir/$category"); @@ -183,6 +318,36 @@ sub handle_category_dir { } closedir($dh); + + my $examples_list_html = generate_example_thumbnails_for_category($project, $category); + + my $dst = "$output_dir/$category"; + + do_copy("$examples_dir/$category/thumbnail.png", "$dst/thumbnail.png") if ( -f "$examples_dir/$category/thumbnail.png" ); + do_copy("$examples_dir/$category/onmouseover.webp", "$dst/onmouseover.webp") if ( -f "$examples_dir/$category/onmouseover.webp" ); + + my $category_description = get_category_description($category); + my $preview_image = "/$project/thumbnail.png"; + if ( -f "$examples_dir/$category/thumbnail.png" ) { + $preview_image = "/$project/$category/thumbnail.png"; + } + + # write category page + my $html = ''; + open my $htmltemplate, '<', "$examples_dir/template-category.html" or die("Couldn't open '$examples_dir/template-category.html': $!\n"); + while (<$htmltemplate>) { + s/\@project_name\@/$project/g; + s/\@category_name\@/$category/g; + s/\@category_description\@/$category_description/g; + s/\@examples_list_html\@/$examples_list_html/g; + s/\@preview_image\@/$preview_image/g; + $html .= $_; + } + close($htmltemplate); + + open my $htmloutput, '>', "$dst/index.html" or die("Couldn't open '$dst/index.html': $!\n"); + print $htmloutput $html; + close($htmloutput); } @@ -210,6 +375,9 @@ do_mkdir($output_dir); build_latest(); +do_copy("$examples_dir/template.css", "$output_dir/examples.css"); +do_copy("$examples_dir/template-placeholder.png", "$output_dir/thumbnail.png"); + opendir(my $dh, $examples_dir) or die("Couldn't opendir '$examples_dir': $!\n"); while (readdir($dh)) { @@ -221,6 +389,32 @@ while (readdir($dh)) { closedir($dh); +# write homepage +my $homepage_list_html = ""; +foreach my $category (get_categories()) { + my $category_description = get_category_description($category); + $homepage_list_html .= "

$category_description

"; + $homepage_list_html .= "
"; + $homepage_list_html .= generate_example_thumbnails_for_category($project, $category); + $homepage_list_html .= "
"; +} + +my $preview_image = "/$project/thumbnail.png"; + +my $dst = "$output_dir/"; +my $html = ''; +open my $htmltemplate, '<', "$examples_dir/template-homepage.html" or die("Couldn't open '$examples_dir/template-category.html': $!\n"); +while (<$htmltemplate>) { + s/\@project_name\@/$project/g; + s/\@homepage_list_html\@/$homepage_list_html/g; + s/\@preview_image\@/$preview_image/g; + $html .= $_; +} +close($htmltemplate); + +open my $htmloutput, '>', "$dst/index.html" or die("Couldn't open '$dst/index.html': $!\n"); +print $htmloutput $html; +close($htmloutput); + print("All examples built successfully!\n"); exit(0); # success! - diff --git a/libs/SDL3/build-scripts/create-release.py b/libs/SDL3/build-scripts/create-release.py index 22144499..14916fa8 100644 --- a/libs/SDL3/build-scripts/create-release.py +++ b/libs/SDL3/build-scripts/create-release.py @@ -23,18 +23,20 @@ def determine_remote() -> str: def main(): default_remote = determine_remote() - current_commit = subprocess.check_output(["git", "rev-parse", "HEAD"], cwd=ROOT, text=True).strip() - parser = argparse.ArgumentParser(allow_abbrev=False) parser.add_argument("--ref", required=True, help=f"Name of branch or tag containing release.yml") parser.add_argument("--remote", "-R", default=default_remote, help=f"Remote repo (default={default_remote})") - parser.add_argument("--commit", default=current_commit, help=f"Commit (default={current_commit})") + parser.add_argument("--commit", help=f"Input 'commit' of release.yml (default is the hash of the ref)") args = parser.parse_args() + if args.commit is None: + args.commit = subprocess.check_output(["git", "rev-parse", args.ref], cwd=ROOT, text=True).strip() + print(f"Running release.yml workflow:") - print(f" commit = {args.commit}") print(f" remote = {args.remote}") + print(f" ref = {args.ref}") + print(f" commit = {args.commit}") subprocess.check_call(["gh", "-R", args.remote, "workflow", "run", "release.yml", "--ref", args.ref, "-f", f"commit={args.commit}"], cwd=ROOT) diff --git a/libs/SDL3/build-scripts/fnsince.pl b/libs/SDL3/build-scripts/fnsince.pl index 20cbb30b..8e8ec48e 100644 --- a/libs/SDL3/build-scripts/fnsince.pl +++ b/libs/SDL3/build-scripts/fnsince.pl @@ -90,11 +90,15 @@ foreach my $release (@releases) { my $tag = $fulltags{$release}; my $blobname = "$tag:src/dynapi/SDL_dynapi_overrides.h"; - if ($release =~ /\A3\.[01]\.\d+/) { # make everything up to the first SDL3 prerelease look like 3.1.3 (ABI lock version). + if ($release =~ /\A3\.(0\.\d+|1\.[0123])/) { # make everything up to the first SDL3 prerelease look like 3.1.3 (ABI lock version). $release = '3.1.3'; } - else { $release = '3.2.0'; } # !!! FIXME: REMOVE ME WHEN 3.2.0 SHIPS! + # !!! FIXME: REMOVE ME WHEN 3.2.0 SHIPS! + elsif (not $release =~ /\A3\.1\.\d+/) { # a couple of releases after the initial 3.1.3, let them through. + $release = '3.2.0'; + } + # !!! FIXME: REMOVE ME WHEN 3.2.0 SHIPS! open(PIPEFH, '-|', "git show '$blobname'") or die "Failed to read git blob '$blobname': $!\n"; while () { diff --git a/libs/SDL3/build-scripts/pkg-support/android/cmake/SDL3Config.cmake b/libs/SDL3/build-scripts/pkg-support/android/cmake/SDL3Config.cmake index a41275dc..5b92a456 100644 --- a/libs/SDL3/build-scripts/pkg-support/android/cmake/SDL3Config.cmake +++ b/libs/SDL3/build-scripts/pkg-support/android/cmake/SDL3Config.cmake @@ -1,7 +1,7 @@ # SDL CMake configuration file: # This file is meant to be placed in lib/cmake/SDL3 subfolder of a reconstructed Android SDL3 SDK -cmake_minimum_required(VERSION 3.0...3.5) +cmake_minimum_required(VERSION 3.0...3.28) include(FeatureSummary) set_package_properties(SDL3 PROPERTIES diff --git a/libs/SDL3/build-scripts/pkg-support/msvc/cmake/SDL3Config.cmake.in b/libs/SDL3/build-scripts/pkg-support/msvc/cmake/SDL3Config.cmake.in index 5463b498..6387376e 100644 --- a/libs/SDL3/build-scripts/pkg-support/msvc/cmake/SDL3Config.cmake.in +++ b/libs/SDL3/build-scripts/pkg-support/msvc/cmake/SDL3Config.cmake.in @@ -1,7 +1,7 @@ # @<@PROJECT_NAME@>@ CMake configuration file: # This file is meant to be placed in a cmake subfolder of @<@PROJECT_NAME@>@-devel-@<@PROJECT_VERSION@>@-VC.zip -cmake_minimum_required(VERSION 3.0...3.5) +cmake_minimum_required(VERSION 3.0...3.28) include(FeatureSummary) set_package_properties(SDL3 PROPERTIES diff --git a/libs/SDL3/build-scripts/rename_macros.py b/libs/SDL3/build-scripts/rename_macros.py index ba386cd4..978120cc 100644 --- a/libs/SDL3/build-scripts/rename_macros.py +++ b/libs/SDL3/build-scripts/rename_macros.py @@ -113,7 +113,6 @@ RENAMED_MACROS = { "__LINUX__": "SDL_PLATFORM_LINUX", "__OS2__": "SDL_PLATFORM_OS2", # "__ANDROID__": "SDL_PLATFORM_ANDROID, - "__NGAGE__": "SDL_PLATFORM_NGAGE", "__APPLE__": "SDL_PLATFORM_APPLE", "__TVOS__": "SDL_PLATFORM_TVOS", "__IPHONEOS__": "SDL_PLATFORM_IOS", diff --git a/libs/SDL3/build-scripts/wikiheaders.pl b/libs/SDL3/build-scripts/wikiheaders.pl index 510ee397..2ea852f7 100644 --- a/libs/SDL3/build-scripts/wikiheaders.pl +++ b/libs/SDL3/build-scripts/wikiheaders.pl @@ -51,6 +51,12 @@ my $wikipreamble = undef; my $wikiheaderfiletext = 'Defined in %fname%'; my $manpageheaderfiletext = 'Defined in %fname%'; my $headercategoryeval = undef; +my $quickrefenabled = 0; +my @quickrefcategoryorder; +my $quickreftitle = undef; +my $quickrefurl = undef; +my $quickrefdesc = undef; +my $quickrefmacroregex = undef; my $changeformat = undef; my $manpath = undef; my $gitrev = undef; @@ -122,6 +128,12 @@ if (defined $optionsfname) { $wikiheaderfiletext = $val, next if $key eq 'wikiheaderfiletext'; $manpageheaderfiletext = $val, next if $key eq 'manpageheaderfiletext'; $headercategoryeval = $val, next if $key eq 'headercategoryeval'; + $quickrefenabled = int($val), next if $key eq 'quickrefenabled'; + @quickrefcategoryorder = split(/,/, $val), next if $key eq 'quickrefcategoryorder'; + $quickreftitle = $val, next if $key eq 'quickreftitle'; + $quickrefurl = $val, next if $key eq 'quickrefurl'; + $quickrefdesc = $val, next if $key eq 'quickrefdesc'; + $quickrefmacroregex = $val, next if $key eq 'quickrefmacroregex'; } } close(OPTIONS); @@ -647,6 +659,7 @@ my %headersymsrettype = (); # $headersymsrettype{"SDL_OpenAudio"} -> string of C my %wikitypes = (); # contains string of wiki page extension, like $wikitypes{"SDL_OpenAudio"} == 'mediawiki' my %wikisyms = (); # contains references to hash of strings, each string being the full contents of a section of a wiki page, like $wikisyms{"SDL_OpenAudio"}{"Remarks"}. my %wikisectionorder = (); # contains references to array, each array item being a key to a wikipage section in the correct order, like $wikisectionorder{"SDL_OpenAudio"}[2] == 'Remarks' +my %quickreffuncorder = (); # contains references to array, each array item being a key to a category with functions in the order they appear in the headers, like $quickreffuncorder{"Audio"}[0] == 'SDL_GetNumAudioDrivers' my %referenceonly = (); # $referenceonly{"Y"} -> symbol name that this symbol is bound to. This makes wiki pages that say "See X" where "X" is a typedef and "Y" is a define attached to it. These pages are generated in the wiki only and do not bridge to the headers or manpages. @@ -720,6 +733,279 @@ sub sanitize_c_typename { return $str; } +my %big_ascii = ( + 'A' => [ "\x{20}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2557}\x{20}", "\x{2588}\x{2588}\x{2554}\x{2550}\x{2550}\x{2588}\x{2588}\x{2557}", "\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2551}", "\x{2588}\x{2588}\x{2554}\x{2550}\x{2550}\x{2588}\x{2588}\x{2551}", "\x{2588}\x{2588}\x{2551}\x{20}\x{20}\x{2588}\x{2588}\x{2551}", "\x{255A}\x{2550}\x{255D}\x{20}\x{20}\x{255A}\x{2550}\x{255D}" ], + 'B' => [ "\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2557}\x{20}", "\x{2588}\x{2588}\x{2554}\x{2550}\x{2550}\x{2588}\x{2588}\x{2557}", "\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2554}\x{255D}", "\x{2588}\x{2588}\x{2554}\x{2550}\x{2550}\x{2588}\x{2588}\x{2557}", "\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2554}\x{255D}", "\x{255A}\x{2550}\x{2550}\x{2550}\x{2550}\x{2550}\x{255D}\x{20}" ], + 'C' => [ "\x{20}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2557}", "\x{2588}\x{2588}\x{2554}\x{2550}\x{2550}\x{2550}\x{2550}\x{255D}", "\x{2588}\x{2588}\x{2551}\x{20}\x{20}\x{20}\x{20}\x{20}", "\x{2588}\x{2588}\x{2551}\x{20}\x{20}\x{20}\x{20}\x{20}", "\x{255A}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2557}", "\x{20}\x{255A}\x{2550}\x{2550}\x{2550}\x{2550}\x{2550}\x{255D}" ], + 'D' => [ "\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2557}\x{20}", "\x{2588}\x{2588}\x{2554}\x{2550}\x{2550}\x{2588}\x{2588}\x{2557}", "\x{2588}\x{2588}\x{2551}\x{20}\x{20}\x{2588}\x{2588}\x{2551}", "\x{2588}\x{2588}\x{2551}\x{20}\x{20}\x{2588}\x{2588}\x{2551}", "\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2554}\x{255D}", "\x{255A}\x{2550}\x{2550}\x{2550}\x{2550}\x{2550}\x{255D}\x{20}" ], + 'E' => [ "\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2557}", "\x{2588}\x{2588}\x{2554}\x{2550}\x{2550}\x{2550}\x{2550}\x{255D}", "\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2557}\x{20}\x{20}", "\x{2588}\x{2588}\x{2554}\x{2550}\x{2550}\x{255D}\x{20}\x{20}", "\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2557}", "\x{255A}\x{2550}\x{2550}\x{2550}\x{2550}\x{2550}\x{2550}\x{255D}" ], + 'F' => [ "\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2557}", "\x{2588}\x{2588}\x{2554}\x{2550}\x{2550}\x{2550}\x{2550}\x{255D}", "\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2557}\x{20}\x{20}", "\x{2588}\x{2588}\x{2554}\x{2550}\x{2550}\x{255D}\x{20}\x{20}", "\x{2588}\x{2588}\x{2551}\x{20}\x{20}\x{20}\x{20}\x{20}", "\x{255A}\x{2550}\x{255D}\x{20}\x{20}\x{20}\x{20}\x{20}" ], + 'G' => [ "\x{20}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2557}\x{20}", "\x{2588}\x{2588}\x{2554}\x{2550}\x{2550}\x{2550}\x{2550}\x{255D}\x{20}", "\x{2588}\x{2588}\x{2551}\x{20}\x{20}\x{2588}\x{2588}\x{2588}\x{2557}", "\x{2588}\x{2588}\x{2551}\x{20}\x{20}\x{20}\x{2588}\x{2588}\x{2551}", "\x{255A}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2554}\x{255D}", "\x{20}\x{255A}\x{2550}\x{2550}\x{2550}\x{2550}\x{2550}\x{255D}\x{20}" ], + 'H' => [ "\x{2588}\x{2588}\x{2557}\x{20}\x{20}\x{2588}\x{2588}\x{2557}", "\x{2588}\x{2588}\x{2551}\x{20}\x{20}\x{2588}\x{2588}\x{2551}", "\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2551}", "\x{2588}\x{2588}\x{2554}\x{2550}\x{2550}\x{2588}\x{2588}\x{2551}", "\x{2588}\x{2588}\x{2551}\x{20}\x{20}\x{2588}\x{2588}\x{2551}", "\x{255A}\x{2550}\x{255D}\x{20}\x{20}\x{255A}\x{2550}\x{255D}" ], + 'I' => [ "\x{2588}\x{2588}\x{2557}", "\x{2588}\x{2588}\x{2551}", "\x{2588}\x{2588}\x{2551}", "\x{2588}\x{2588}\x{2551}", "\x{2588}\x{2588}\x{2551}", "\x{255A}\x{2550}\x{255D}" ], + 'J' => [ "\x{20}\x{20}\x{20}\x{20}\x{20}\x{2588}\x{2588}\x{2557}", "\x{20}\x{20}\x{20}\x{20}\x{20}\x{2588}\x{2588}\x{2551}", "\x{20}\x{20}\x{20}\x{20}\x{20}\x{2588}\x{2588}\x{2551}", "\x{2588}\x{2588}\x{20}\x{20}\x{20}\x{2588}\x{2588}\x{2551}", "\x{255A}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2554}\x{255D}", "\x{20}\x{255A}\x{2550}\x{2550}\x{2550}\x{2550}\x{255D}\x{20}" ], + 'K' => [ "\x{2588}\x{2588}\x{2557}\x{20}\x{20}\x{2588}\x{2588}\x{2557}", "\x{2588}\x{2588}\x{2551}\x{20}\x{2588}\x{2588}\x{2554}\x{255D}", "\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2554}\x{255D}\x{20}", "\x{2588}\x{2588}\x{2554}\x{2550}\x{2588}\x{2588}\x{2557}\x{20}", "\x{2588}\x{2588}\x{2551}\x{20}\x{20}\x{2588}\x{2588}\x{2557}", "\x{255A}\x{2550}\x{255D}\x{20}\x{20}\x{255A}\x{2550}\x{255D}" ], + 'L' => [ "\x{2588}\x{2588}\x{2557}\x{20}\x{20}\x{20}\x{20}\x{20}", "\x{2588}\x{2588}\x{2551}\x{20}\x{20}\x{20}\x{20}\x{20}", "\x{2588}\x{2588}\x{2551}\x{20}\x{20}\x{20}\x{20}\x{20}", "\x{2588}\x{2588}\x{2551}\x{20}\x{20}\x{20}\x{20}\x{20}", "\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2557}", "\x{255A}\x{2550}\x{2550}\x{2550}\x{2550}\x{2550}\x{2550}\x{255D}" ], + 'M' => [ "\x{2588}\x{2588}\x{2588}\x{2557}\x{20}\x{20}\x{20}\x{2588}\x{2588}\x{2588}\x{2557}", "\x{2588}\x{2588}\x{2588}\x{2588}\x{2557}\x{20}\x{2588}\x{2588}\x{2588}\x{2588}\x{2551}", "\x{2588}\x{2588}\x{2554}\x{2588}\x{2588}\x{2588}\x{2588}\x{2554}\x{2588}\x{2588}\x{2551}", "\x{2588}\x{2588}\x{2551}\x{255A}\x{2588}\x{2588}\x{2554}\x{255D}\x{2588}\x{2588}\x{2551}", "\x{2588}\x{2588}\x{2551}\x{20}\x{255A}\x{2550}\x{255D}\x{20}\x{2588}\x{2588}\x{2551}", "\x{255A}\x{2550}\x{255D}\x{20}\x{20}\x{20}\x{20}\x{20}\x{255A}\x{2550}\x{255D}" ], + 'N' => [ "\x{2588}\x{2588}\x{2588}\x{2557}\x{20}\x{20}\x{20}\x{2588}\x{2588}\x{2557}", "\x{2588}\x{2588}\x{2588}\x{2588}\x{2557}\x{20}\x{20}\x{2588}\x{2588}\x{2551}", "\x{2588}\x{2588}\x{2554}\x{2588}\x{2588}\x{2557}\x{20}\x{2588}\x{2588}\x{2551}", "\x{2588}\x{2588}\x{2551}\x{255A}\x{2588}\x{2588}\x{2557}\x{2588}\x{2588}\x{2551}", "\x{2588}\x{2588}\x{2551}\x{20}\x{255A}\x{2588}\x{2588}\x{2588}\x{2588}\x{2551}", "\x{255A}\x{2550}\x{255D}\x{20}\x{20}\x{255A}\x{2550}\x{2550}\x{2550}\x{255D}" ], + 'O' => [ "\x{20}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2557}\x{20}", "\x{2588}\x{2588}\x{2554}\x{2550}\x{2550}\x{2550}\x{2588}\x{2588}\x{2557}", "\x{2588}\x{2588}\x{2551}\x{20}\x{20}\x{20}\x{2588}\x{2588}\x{2551}", "\x{2588}\x{2588}\x{2551}\x{20}\x{20}\x{20}\x{2588}\x{2588}\x{2551}", "\x{255A}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2554}\x{255D}", "\x{20}\x{255A}\x{2550}\x{2550}\x{2550}\x{2550}\x{2550}\x{255D}\x{20}" ], + 'P' => [ "\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2557}\x{20}", "\x{2588}\x{2588}\x{2554}\x{2550}\x{2550}\x{2588}\x{2588}\x{2557}", "\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2554}\x{255D}", "\x{2588}\x{2588}\x{2554}\x{2550}\x{2550}\x{2550}\x{255D}\x{20}", "\x{2588}\x{2588}\x{2551}\x{20}\x{20}\x{20}\x{20}\x{20}", "\x{255A}\x{2550}\x{255D}\x{20}\x{20}\x{20}\x{20}\x{20}" ], + 'Q' => [ "\x{20}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2557}", "\x{2588}\x{2588}\x{2554}\x{2550}\x{2550}\x{2550}\x{2588}\x{2588}\x{2557}", "\x{2588}\x{2588}\x{2551}\x{20}\x{20}\x{20}\x{2588}\x{2588}\x{2551}", "\x{2588}\x{2588}\x{2551}\x{2584}\x{2584}\x{20}\x{2588}\x{2588}\x{2551}", "\x{255A}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2554}\x{255D}", "\x{20}\x{255A}\x{2550}\x{2550}\x{2580}\x{2580}\x{2550}\x{255D}\x{20}" ], + 'R' => [ "\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2557}\x{20}", "\x{2588}\x{2588}\x{2554}\x{2550}\x{2550}\x{2588}\x{2588}\x{2557}", "\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2554}\x{255D}", "\x{2588}\x{2588}\x{2554}\x{2550}\x{2550}\x{2588}\x{2588}\x{2557}", "\x{2588}\x{2588}\x{2551}\x{20}\x{20}\x{2588}\x{2588}\x{2551}", "\x{255A}\x{2550}\x{255D}\x{20}\x{20}\x{255A}\x{2550}\x{255D}" ], + 'S' => [ "\x{20}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2557}", "\x{2588}\x{2588}\x{2554}\x{2550}\x{2550}\x{2550}\x{2550}\x{255D}", "\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2557}", "\x{255A}\x{2550}\x{2550}\x{2550}\x{2550}\x{2588}\x{2588}\x{2551}", "\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2554}\x{255D}", "\x{255A}\x{2550}\x{2550}\x{2550}\x{2550}\x{2550}\x{255D}\x{20}" ], + 'T' => [ "\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2557}", "\x{255A}\x{2550}\x{2550}\x{2588}\x{2588}\x{2554}\x{2550}\x{2550}\x{255D}", "\x{20}\x{20}\x{20}\x{2588}\x{2588}\x{2551}\x{20}\x{20}\x{20}", "\x{20}\x{20}\x{20}\x{2588}\x{2588}\x{2551}\x{20}\x{20}\x{20}", "\x{20}\x{20}\x{20}\x{2588}\x{2588}\x{2551}\x{20}\x{20}\x{20}", "\x{20}\x{20}\x{20}\x{255A}\x{2550}\x{255D}\x{20}\x{20}\x{20}" ], + 'U' => [ "\x{2588}\x{2588}\x{2557}\x{20}\x{20}\x{20}\x{2588}\x{2588}\x{2557}", "\x{2588}\x{2588}\x{2551}\x{20}\x{20}\x{20}\x{2588}\x{2588}\x{2551}", "\x{2588}\x{2588}\x{2551}\x{20}\x{20}\x{20}\x{2588}\x{2588}\x{2551}", "\x{2588}\x{2588}\x{2551}\x{20}\x{20}\x{20}\x{2588}\x{2588}\x{2551}", "\x{255A}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2554}\x{255D}", "\x{20}\x{255A}\x{2550}\x{2550}\x{2550}\x{2550}\x{2550}\x{255D}\x{20}" ], + 'V' => [ "\x{2588}\x{2588}\x{2557}\x{20}\x{20}\x{20}\x{2588}\x{2588}\x{2557}", "\x{2588}\x{2588}\x{2551}\x{20}\x{20}\x{20}\x{2588}\x{2588}\x{2551}", "\x{2588}\x{2588}\x{2551}\x{20}\x{20}\x{20}\x{2588}\x{2588}\x{2551}", "\x{255A}\x{2588}\x{2588}\x{2557}\x{20}\x{2588}\x{2588}\x{2554}\x{255D}", "\x{20}\x{255A}\x{2588}\x{2588}\x{2588}\x{2588}\x{2554}\x{255D}\x{20}", "\x{20}\x{20}\x{255A}\x{2550}\x{2550}\x{2550}\x{255D}\x{20}\x{20}" ], + 'W' => [ "\x{2588}\x{2588}\x{2557}\x{20}\x{20}\x{20}\x{20}\x{2588}\x{2588}\x{2557}", "\x{2588}\x{2588}\x{2551}\x{20}\x{20}\x{20}\x{20}\x{2588}\x{2588}\x{2551}", "\x{2588}\x{2588}\x{2551}\x{20}\x{2588}\x{2557}\x{20}\x{2588}\x{2588}\x{2551}", "\x{2588}\x{2588}\x{2551}\x{2588}\x{2588}\x{2588}\x{2557}\x{2588}\x{2588}\x{2551}", "\x{255A}\x{2588}\x{2588}\x{2588}\x{2554}\x{2588}\x{2588}\x{2588}\x{2554}\x{255D}", "\x{20}\x{255A}\x{2550}\x{2550}\x{255D}\x{255A}\x{2550}\x{2550}\x{255D}\x{20}" ], + 'X' => [ "\x{2588}\x{2588}\x{2557}\x{20}\x{20}\x{2588}\x{2588}\x{2557}", "\x{255A}\x{2588}\x{2588}\x{2557}\x{2588}\x{2588}\x{2554}\x{255D}", "\x{20}\x{255A}\x{2588}\x{2588}\x{2588}\x{2554}\x{255D}\x{20}", "\x{20}\x{2588}\x{2588}\x{2554}\x{2588}\x{2588}\x{2557}\x{20}", "\x{2588}\x{2588}\x{2554}\x{255D}\x{20}\x{2588}\x{2588}\x{2557}", "\x{255A}\x{2550}\x{255D}\x{20}\x{20}\x{255A}\x{2550}\x{255D}" ], + 'Y' => [ "\x{2588}\x{2588}\x{2557}\x{20}\x{20}\x{20}\x{2588}\x{2588}\x{2557}", "\x{255A}\x{2588}\x{2588}\x{2557}\x{20}\x{2588}\x{2588}\x{2554}\x{255D}", "\x{20}\x{255A}\x{2588}\x{2588}\x{2588}\x{2588}\x{2554}\x{255D}\x{20}", "\x{20}\x{20}\x{255A}\x{2588}\x{2588}\x{2554}\x{255D}\x{20}\x{20}", "\x{20}\x{20}\x{20}\x{2588}\x{2588}\x{2551}\x{20}\x{20}\x{20}", "\x{20}\x{20}\x{20}\x{255A}\x{2550}\x{255D}\x{20}\x{20}\x{20}" ], + 'Z' => [ "\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2557}", "\x{255A}\x{2550}\x{2550}\x{2588}\x{2588}\x{2588}\x{2554}\x{255D}", "\x{20}\x{20}\x{2588}\x{2588}\x{2588}\x{2554}\x{255D}\x{20}", "\x{20}\x{2588}\x{2588}\x{2588}\x{2554}\x{255D}\x{20}\x{20}", "\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2557}", "\x{255A}\x{2550}\x{2550}\x{2550}\x{2550}\x{2550}\x{2550}\x{255D}" ], + ' ' => [ "\x{20}\x{20}\x{20}\x{20}", "\x{20}\x{20}\x{20}\x{20}", "\x{20}\x{20}\x{20}\x{20}", "\x{20}\x{20}\x{20}\x{20}", "\x{20}\x{20}\x{20}\x{20}", "\x{20}\x{20}\x{20}\x{20}" ], + '.' => [ "\x{20}\x{20}\x{20}", "\x{20}\x{20}\x{20}", "\x{20}\x{20}\x{20}", "\x{20}\x{20}\x{20}", "\x{2588}\x{2588}\x{2557}", "\x{255A}\x{2550}\x{255D}" ], + ',' => [ "\x{20}\x{20}\x{20}", "\x{20}\x{20}\x{20}", "\x{20}\x{20}\x{20}", "\x{20}\x{20}\x{20}", "\x{2584}\x{2588}\x{2557}", "\x{255A}\x{2550}\x{255D}" ], + '/' => [ "\x{20}\x{20}\x{20}\x{20}\x{2588}\x{2588}\x{2557}", "\x{20}\x{20}\x{20}\x{2588}\x{2588}\x{2554}\x{255D}", "\x{20}\x{20}\x{2588}\x{2588}\x{2554}\x{255D}\x{20}", "\x{20}\x{2588}\x{2588}\x{2554}\x{255D}\x{20}\x{20}", "\x{2588}\x{2588}\x{2554}\x{255D}\x{20}\x{20}\x{20}", "\x{255A}\x{2550}\x{255D}\x{20}\x{20}\x{20}\x{20}" ], + '!' => [ "\x{2588}\x{2588}\x{2557}", "\x{2588}\x{2588}\x{2551}", "\x{2588}\x{2588}\x{2551}", "\x{255A}\x{2550}\x{255D}", "\x{2588}\x{2588}\x{2557}", "\x{255A}\x{2550}\x{255D}" ], + '_' => [ "\x{20}\x{20}\x{20}\x{20}\x{20}\x{20}\x{20}\x{20}", "\x{20}\x{20}\x{20}\x{20}\x{20}\x{20}\x{20}\x{20}", "\x{20}\x{20}\x{20}\x{20}\x{20}\x{20}\x{20}\x{20}", "\x{20}\x{20}\x{20}\x{20}\x{20}\x{20}\x{20}\x{20}", "\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2557}", "\x{255A}\x{2550}\x{2550}\x{2550}\x{2550}\x{2550}\x{2550}\x{255D}" ], + '0' => [ "\x{20}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2557}\x{20}", "\x{2588}\x{2588}\x{2554}\x{2550}\x{2588}\x{2588}\x{2588}\x{2588}\x{2557}", "\x{2588}\x{2588}\x{2551}\x{2588}\x{2588}\x{2554}\x{2588}\x{2588}\x{2551}", "\x{2588}\x{2588}\x{2588}\x{2588}\x{2554}\x{255D}\x{2588}\x{2588}\x{2551}", "\x{255A}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2554}\x{255D}", "\x{20}\x{255A}\x{2550}\x{2550}\x{2550}\x{2550}\x{2550}\x{255D}\x{20}" ], + '1' => [ "\x{20}\x{2588}\x{2588}\x{2557}", "\x{2588}\x{2588}\x{2588}\x{2551}", "\x{255A}\x{2588}\x{2588}\x{2551}", "\x{20}\x{2588}\x{2588}\x{2551}", "\x{20}\x{2588}\x{2588}\x{2551}", "\x{20}\x{255A}\x{2550}\x{255D}" ], + '2' => [ "\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2557}\x{20}", "\x{255A}\x{2550}\x{2550}\x{2550}\x{2550}\x{2588}\x{2588}\x{2557}", "\x{20}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2554}\x{255D}", "\x{2588}\x{2588}\x{2554}\x{2550}\x{2550}\x{2550}\x{255D}\x{20}", "\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2557}", "\x{255A}\x{2550}\x{2550}\x{2550}\x{2550}\x{2550}\x{2550}\x{255D}" ], + '3' => [ "\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2557}\x{20}", "\x{255A}\x{2550}\x{2550}\x{2550}\x{2550}\x{2588}\x{2588}\x{2557}", "\x{20}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2554}\x{255D}", "\x{20}\x{255A}\x{2550}\x{2550}\x{2550}\x{2588}\x{2588}\x{2557}", "\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2554}\x{255D}", "\x{255A}\x{2550}\x{2550}\x{2550}\x{2550}\x{2550}\x{255D}\x{20}" ], + '4' => [ "\x{2588}\x{2588}\x{2557}\x{20}\x{20}\x{2588}\x{2588}\x{2557}", "\x{2588}\x{2588}\x{2551}\x{20}\x{20}\x{2588}\x{2588}\x{2551}", "\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2551}", "\x{255A}\x{2550}\x{2550}\x{2550}\x{2550}\x{2588}\x{2588}\x{2551}", "\x{20}\x{20}\x{20}\x{20}\x{20}\x{2588}\x{2588}\x{2551}", "\x{20}\x{20}\x{20}\x{20}\x{20}\x{255A}\x{2550}\x{255D}" ], + '5' => [ "\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2557}", "\x{2588}\x{2588}\x{2554}\x{2550}\x{2550}\x{2550}\x{2550}\x{255D}", "\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2557}", "\x{255A}\x{2550}\x{2550}\x{2550}\x{2550}\x{2588}\x{2588}\x{2551}", "\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2551}", "\x{255A}\x{2550}\x{2550}\x{2550}\x{2550}\x{2550}\x{2550}\x{255D}" ], + '6' => [ "\x{20}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2557}\x{20}", "\x{2588}\x{2588}\x{2554}\x{2550}\x{2550}\x{2550}\x{2550}\x{255D}\x{20}", "\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2557}\x{20}", "\x{2588}\x{2588}\x{2554}\x{2550}\x{2550}\x{2550}\x{2588}\x{2588}\x{2557}", "\x{255A}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2554}\x{255D}", "\x{20}\x{255A}\x{2550}\x{2550}\x{2550}\x{2550}\x{2550}\x{255D}\x{20}" ], + '7' => [ "\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2557}", "\x{255A}\x{2550}\x{2550}\x{2550}\x{2550}\x{2588}\x{2588}\x{2551}", "\x{20}\x{20}\x{20}\x{20}\x{2588}\x{2588}\x{2554}\x{255D}", "\x{20}\x{20}\x{20}\x{2588}\x{2588}\x{2554}\x{255D}\x{20}", "\x{20}\x{20}\x{20}\x{2588}\x{2588}\x{2551}\x{20}\x{20}", "\x{20}\x{20}\x{20}\x{255A}\x{2550}\x{255D}\x{20}\x{20}" ], + '8' => [ "\x{20}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2557}\x{20}", "\x{2588}\x{2588}\x{2554}\x{2550}\x{2550}\x{2588}\x{2588}\x{2557}", "\x{255A}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2554}\x{255D}", "\x{2588}\x{2588}\x{2554}\x{2550}\x{2550}\x{2588}\x{2588}\x{2557}", "\x{255A}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2554}\x{255D}", "\x{20}\x{255A}\x{2550}\x{2550}\x{2550}\x{2550}\x{255D}\x{20}" ], + '9' => [ "\x{20}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2557}\x{20}", "\x{2588}\x{2588}\x{2554}\x{2550}\x{2550}\x{2588}\x{2588}\x{2557}", "\x{255A}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2551}", "\x{20}\x{255A}\x{2550}\x{2550}\x{2550}\x{2588}\x{2588}\x{2551}", "\x{20}\x{2588}\x{2588}\x{2588}\x{2588}\x{2588}\x{2554}\x{255D}", "\x{20}\x{255A}\x{2550}\x{2550}\x{2550}\x{2550}\x{255D}\x{20}" ], +); + +sub print_big_ascii_string { + my $fh = shift; + my $str = shift; + my $comment = shift; + my $lowascii = shift; + $comment = '' if not defined $comment; + $lowascii = 0 if not defined $lowascii; + + my @chars = split //, $str; + my $charcount = scalar(@chars); + + binmode($fh, ":utf8"); + + my $maxrows = $lowascii ? 5 : 6; + + for(my $rownum = 0; $rownum < $maxrows; $rownum++){ + print $fh $comment; + my $charidx = 0; + foreach my $ch (@chars) { + my $rowsref = $big_ascii{uc($ch)}; + die("Don't have a big ascii entry for '$ch'!\n") if not defined $rowsref; + my $row = @$rowsref[$rownum]; + + if ($lowascii) { + my @x = split //, $row; + foreach (@x) { + my $v = ($_ eq "\x{2588}") ? 'X' : ' '; + print $fh $v; + } + } else { + print $fh $row; + } + + $charidx++; + + if ($charidx < $charcount) { + print $fh " "; + } + } + print $fh "\n"; + } +} + +sub generate_quickref { + my $briefsref = shift; + my $path = shift; + my $lowascii = shift; + + # !!! FIXME: this gitrev and majorver/etc stuff is copy/pasted a few times now. + if (!$gitrev) { + $gitrev = `cd "$srcpath" ; git rev-list HEAD~..`; + chomp($gitrev); + } + + # !!! FIXME + open(FH, '<', "$srcpath/$versionfname") or die("Can't open '$srcpath/$versionfname': $!\n"); + my $majorver = 0; + my $minorver = 0; + my $microver = 0; + while () { + chomp; + if (/$versionmajorregex/) { + $majorver = int($1); + } elsif (/$versionminorregex/) { + $minorver = int($1); + } elsif (/$versionmicroregex/) { + $microver = int($1); + } + } + close(FH); + my $fullversion = "$majorver.$minorver.$microver"; + + my $tmppath = "$path.tmp"; + open(my $fh, '>', $tmppath) or die("Can't open '$tmppath': $!\n"); + + if (not @quickrefcategoryorder) { + @quickrefcategoryorder = sort keys %headercategorydocs; + } + + #my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = gmtime(time); + #my $datestr = sprintf("%04d-%02d-%02d %02d:%02d:%02d GMT", $year+1900, $mon+1, $mday, $hour, $min, $sec); + + print $fh "\n\n"; + + # Just something to test big_ascii output. + #print_big_ascii_string($fh, "ABCDEFGHIJ", '', $lowascii); + #print_big_ascii_string($fh, "KLMNOPQRST", '', $lowascii); + #print_big_ascii_string($fh, "UVWXYZ0123", '', $lowascii); + #print_big_ascii_string($fh, "456789JT3A", '', $lowascii); + #print_big_ascii_string($fh, "hello, _a.b/c_!!", '', $lowascii); + + # Dan Bechard's work was on an SDL2 cheatsheet: + # https://blog.theprogrammingjunkie.com/post/sdl2-cheatsheet/ + + if ($lowascii) { + print $fh "# QuickReferenceNoUnicode\n\n"; + print $fh "If you want to paste this into a text editor that can handle\n"; + print $fh "fancy Unicode section headers, try using\n"; + print $fh "[QuickReference](QuickReference) instead.\n\n"; + } else { + print $fh "# QuickReference\n\n"; + print $fh "If you want to paste this into a text editor that can't handle\n"; + print $fh "the fancy Unicode section headers, try using\n"; + print $fh "[QuickReferenceNoUnicode](QuickReferenceNoUnicode) instead.\n\n"; + } + + print $fh "```c\n"; + print $fh "// $quickreftitle\n" if defined $quickreftitle; + print $fh "//\n"; + print $fh "// $quickrefurl\n//\n" if defined $quickrefurl; + print $fh "// $quickrefdesc\n" if defined $quickrefdesc; + #print $fh "// When this document was written: $datestr\n"; + print $fh "// Based on $projectshortname version $fullversion\n"; + #print $fh "// git revision $gitrev\n"; + print $fh "//\n"; + print $fh "// This can be useful in an IDE with search and syntax highlighting.\n"; + print $fh "//\n"; + print $fh "// Original idea for this document came from Dan Bechard (thanks!)\n"; + print $fh "// ASCII art generated by: https://patorjk.com/software/taag/#p=display&f=ANSI%20Shadow (with modified 'S' for readability)\n\n"; + + foreach (@quickrefcategoryorder) { + my $cat = $_; + my $maxlen = 0; + my @csigs = (); + my $funcorderref = $quickreffuncorder{$cat}; + next if not defined $funcorderref; + + foreach (@$funcorderref) { + my $sym = $_; + my $csig = ''; + + if ($headersymstype{$sym} == 1) { # function + $csig = "${headersymsrettype{$sym}} $sym"; + my $fnsigparams = $headersymsparaminfo{$sym}; + if (not defined($fnsigparams)) { + $csig .= '(void);'; + } else { + my $sep = '('; + for (my $i = 0; $i < scalar(@$fnsigparams); $i += 2) { + my $paramname = @$fnsigparams[$i]; + my $paramtype = @$fnsigparams[$i+1]; + my $spc = ($paramtype =~ /\*\Z/) ? '' : ' '; + $csig .= "$sep$paramtype$spc$paramname"; + $sep = ', '; + } + $csig .= ");"; + } + } elsif ($headersymstype{$sym} == 2) { # macro + next if defined $quickrefmacroregex && not $sym =~ /$quickrefmacroregex/; + + $csig = (split /\n/, $headerdecls{$sym})[0]; # get the first line from a multiline string. + if (not $csig =~ s/\A(\#define [a-zA-Z0-9_]*\(.*?\))(\s+.*)?\Z/$1/) { + $csig =~ s/\A(\#define [a-zA-Z0-9_]*)(\s+.*)?\Z/$1/; + } + chomp($csig); + } + + my $len = length($csig); + $maxlen = $len if $len > $maxlen; + + push @csigs, $sym; + push @csigs, $csig; + } + + $maxlen += 2; + + next if (not @csigs); + + print $fh "\n"; + print_big_ascii_string($fh, $cat, '// ', $lowascii); + print $fh "\n"; + + while (@csigs) { + my $sym = shift @csigs; + my $csig = shift @csigs; + my $brief = $$briefsref{$sym}; + if (defined $brief) { + $brief = "$brief"; + chomp($brief); + my $thiswikitype = defined $wikitypes{$sym} ? $wikitypes{$sym} : 'md'; # default to MarkDown for new stuff. + $brief = dewikify($thiswikitype, $brief); + my $spaces = ' ' x ($maxlen - length($csig)); + $brief = "$spaces// $brief"; + } else { + $brief = ''; + } + print $fh "$csig$brief\n"; + } + } + + print $fh "```\n\n"; + + close($fh); + +# # Don't overwrite the file if nothing has changed besides the timestamp +# # and git revision. +# my $matches = 1; +# if ( not -f $path ) { +# $matches = 0; # always write if the file hasn't been created yet. +# } else { +# open(my $fh_a, '<', $tmppath) or die("Can't open '$tmppath': $!\n"); +# open(my $fh_b, '<', $path) or die("Can't open '$path': $!\n"); +# while (1) { +# my $a = <$fh_a>; +# my $b = <$fh_b>; +# $matches = 0, last if ((not defined $a) != (not defined $b)); +# last if ((not defined $a) || (not defined $b)); +# if ($a ne $b) { +# next if ($a =~ /\A\/\/ When this document was written:/); +# next if ($a =~ /\A\/\/ git revision /); +# $matches = 0; +# last; +# } +# } +# +# close($fh_a); +# close($fh_b); +# } +# +# if ($matches) { +# unlink($tmppath); # it's the same file except maybe the date/gitrev. Don't overwrite it. +# } else { +# rename($tmppath, $path) or die("Can't rename '$tmppath' to '$path': $!\n"); +# } + rename($tmppath, $path) or die("Can't rename '$tmppath' to '$path': $!\n"); +} + + my $incpath = "$srcpath"; $incpath .= "/$incsubdir" if $incsubdir ne ''; @@ -749,10 +1035,12 @@ while (my $d = readdir(DH)) { } my @contents = (); + my @function_order = (); my $ignoring_lines = 0; my $header_comment = -1; my $saw_category_doxygen = -1; my $lineno = 0; + while () { chomp; $lineno++; @@ -1073,7 +1361,6 @@ while (my $d = readdir(DH)) { } } $decl .= $additional_decl; - } elsif ($symtype == 2) { # a macro if ($decl =~ /\A\s*\#\s*define\s+(.*?)(\(.*?\)|)\s+/) { $sym = $1; @@ -1301,6 +1588,7 @@ while (my $d = readdir(DH)) { $headersymstype{$sym} = $symtype; $headersymsparaminfo{$sym} = \@paraminfo if (scalar(@paraminfo) > 0); $headersymsrettype{$sym} = $rettype if (defined($rettype)); + push @function_order, $sym if ($symtype == 1) || ($symtype == 2); push @contents, join("\n", @templines); push @contents, join("\n", @decllines) if (scalar(@decllines) > 0); } @@ -1309,6 +1597,7 @@ while (my $d = readdir(DH)) { close(FH); $headers{$dent} = \@contents; + $quickreffuncorder{$current_wiki_category} = \@function_order if defined $current_wiki_category; } closedir(DH); @@ -1785,6 +2074,8 @@ if ($copy_direction == 1) { # --copy-to-headers } elsif ($copy_direction == -1) { # --copy-to-wiki + my %briefs = (); # $briefs{'SDL_OpenAudio'} -> the \brief string for the function. + if (defined $changeformat) { $dewikify_mode = $changeformat; $wordwrap_mode = $changeformat; @@ -1856,6 +2147,8 @@ if ($copy_direction == 1) { # --copy-to-headers $sections{'Remarks'} = "$remarks\n" if $remarks ne ''; $sections{'Syntax'} = $syntax; + $briefs{$sym} = $brief; + my %params = (); # have to parse these and build up the wiki tables after, since Markdown needs to know the length of the largest string. :/ my @paramsorder = (); my $fnsigparams = $headersymsparaminfo{$sym}; @@ -2415,6 +2708,11 @@ __EOF__ } } + # Write out quick reference pages... + if ($quickrefenabled) { + generate_quickref(\%briefs, "$wikipath/QuickReference.md", 0); + generate_quickref(\%briefs, "$wikipath/QuickReferenceNoUnicode.md", 1); + } } elsif ($copy_direction == -2) { # --copy-to-manpages # This only takes from the wiki data, since it has sections we omit from the headers, like code examples. diff --git a/libs/SDL3/cmake/android/FindSdlAndroid.cmake b/libs/SDL3/cmake/android/FindSdlAndroid.cmake index 38a2d7a1..851848f7 100644 --- a/libs/SDL3/cmake/android/FindSdlAndroid.cmake +++ b/libs/SDL3/cmake/android/FindSdlAndroid.cmake @@ -61,7 +61,7 @@ This module will set the following variables in your project: #]=======================================================================] -cmake_minimum_required(VERSION 3.7) +cmake_minimum_required(VERSION 3.7...3.28) if(NOT PROJECT_NAME MATCHES "^SDL.*") message(WARNING "This module is internal to SDL and is currently not supported.") diff --git a/libs/SDL3/cmake/android/FindSdlAndroidBuildTools.cmake b/libs/SDL3/cmake/android/FindSdlAndroidBuildTools.cmake index b8825d92..999a268e 100644 --- a/libs/SDL3/cmake/android/FindSdlAndroidBuildTools.cmake +++ b/libs/SDL3/cmake/android/FindSdlAndroidBuildTools.cmake @@ -52,7 +52,7 @@ This module responds to the flags: #]=======================================================================] -cmake_minimum_required(VERSION 3.7) +cmake_minimum_required(VERSION 3.7...3.28) if(NOT PROJECT_NAME MATCHES "^SDL.*") message(WARNING "This module is internal to SDL and is currently not supported.") diff --git a/libs/SDL3/cmake/android/FindSdlAndroidPlatform.cmake b/libs/SDL3/cmake/android/FindSdlAndroidPlatform.cmake index 7b569e3e..fbe53c30 100644 --- a/libs/SDL3/cmake/android/FindSdlAndroidPlatform.cmake +++ b/libs/SDL3/cmake/android/FindSdlAndroidPlatform.cmake @@ -55,7 +55,7 @@ This module responds to the flags: #]=======================================================================] -cmake_minimum_required(VERSION 3.7) +cmake_minimum_required(VERSION 3.7...3.28) if(NOT PROJECT_NAME MATCHES "^SDL.*") message(WARNING "This module is internal to SDL and is currently not supported.") diff --git a/libs/SDL3/cmake/android/SdlAndroidFunctions.cmake b/libs/SDL3/cmake/android/SdlAndroidFunctions.cmake index b7b3aa84..4acce470 100644 --- a/libs/SDL3/cmake/android/SdlAndroidFunctions.cmake +++ b/libs/SDL3/cmake/android/SdlAndroidFunctions.cmake @@ -5,7 +5,7 @@ It is (currently) limited to packaging binaries for a single architecture. #]=======================================================================] -cmake_minimum_required(VERSION 3.7) +cmake_minimum_required(VERSION 3.7...3.28) if(NOT PROJECT_NAME MATCHES "^SDL.*") message(WARNING "This module is internal to SDL and is currently not supported.") diff --git a/libs/SDL3/cmake/android/SdlAndroidScript.cmake b/libs/SDL3/cmake/android/SdlAndroidScript.cmake index dd98f9b4..15dea2d1 100644 --- a/libs/SDL3/cmake/android/SdlAndroidScript.cmake +++ b/libs/SDL3/cmake/android/SdlAndroidScript.cmake @@ -6,7 +6,7 @@ Because #]=======================================================================] -cmake_minimum_required(VERSION 3.16) +cmake_minimum_required(VERSION 3.16...3.28) if(NOT CMAKE_SCRIPT_MODE_FILE) message(FATAL_ERROR "This file can only be used in CMake script mode") diff --git a/libs/SDL3/cmake/sdlchecks.cmake b/libs/SDL3/cmake/sdlchecks.cmake index 4efdf86a..c0bdabc4 100644 --- a/libs/SDL3/cmake/sdlchecks.cmake +++ b/libs/SDL3/cmake/sdlchecks.cmake @@ -307,6 +307,7 @@ macro(CheckX11) find_file(HAVE_XRANDR_H NAMES "X11/extensions/Xrandr.h" HINTS "${X11_INCLUDEDIR}") find_file(HAVE_XFIXES_H_ NAMES "X11/extensions/Xfixes.h" HINTS "${X11_INCLUDEDIR}") find_file(HAVE_XRENDER_H NAMES "X11/extensions/Xrender.h" HINTS "${X11_INCLUDEDIR}") + find_file(HAVE_XSYNC_H NAMES "X11/extensions/sync.h" HINTS "${X11_INCLUDEDIR}") find_file(HAVE_XSS_H NAMES "X11/extensions/scrnsaver.h" HINTS "${X11_INCLUDEDIR}") find_file(HAVE_XSHAPE_H NAMES "X11/extensions/shape.h" HINTS "${X11_INCLUDEDIR}") find_file(HAVE_XDBE_H NAMES "X11/extensions/Xdbe.h" HINTS "${X11_INCLUDEDIR}") @@ -445,6 +446,11 @@ macro(CheckX11) set(HAVE_X11_XFIXES TRUE) endif() + if(SDL_X11_XSYNC AND HAVE_XSYNC_H AND XEXT_LIB) + set(SDL_VIDEO_DRIVER_X11_XSYNC 1) + set(HAVE_X11_XSYNC TRUE) + endif() + if(SDL_X11_XRANDR AND HAVE_XRANDR_H AND XRANDR_LIB) if(HAVE_X11_SHARED) set(SDL_VIDEO_DRIVER_X11_DYNAMIC_XRANDR "\"${XRANDR_LIB_SONAME}\"") diff --git a/libs/SDL3/cmake/sdlcpu.cmake b/libs/SDL3/cmake/sdlcpu.cmake index d63a57f9..0c2ca1f5 100644 --- a/libs/SDL3/cmake/sdlcpu.cmake +++ b/libs/SDL3/cmake/sdlcpu.cmake @@ -61,8 +61,8 @@ const char *arch_${known_arch} = \"INFO<${known_arch}=\" ARCH_${known_arch} \">\ set(src_arch_detect "${src_vars} int main(int argc, char *argv[]) { - (void)argv; int result = 0; + (void)argv; ${src_main} return result; }") diff --git a/libs/SDL3/docs/README-documentation-rules.md b/libs/SDL3/docs/README-documentation-rules.md index ae705378..3151de76 100644 --- a/libs/SDL3/docs/README-documentation-rules.md +++ b/libs/SDL3/docs/README-documentation-rules.md @@ -242,6 +242,15 @@ wikiheaders will complain loudly if you don't do this, and exit with an error message. +## Don't repeat type names in `\param` and `\returns` sections. + +Wikiheaders will explicitly mention the datatype for each parameter and the +return value, linking to the datatype's wikipage. Users reading the headers +can see the types in the function signature right below the documentation +comment. So don't mention the type a second time in the documentation if +possible. It looks cluttered and repetitive to do so. + + ## Code examples go in the wiki. We don't want the headers cluttered up with code examples. These live on the diff --git a/libs/SDL3/docs/README-linux.md b/libs/SDL3/docs/README-linux.md index 473c591e..ce740ea8 100644 --- a/libs/SDL3/docs/README-linux.md +++ b/libs/SDL3/docs/README-linux.md @@ -21,7 +21,7 @@ Ubuntu 18.04, all available features enabled: libxkbcommon-dev libdrm-dev libgbm-dev libgl1-mesa-dev libgles2-mesa-dev \ libegl1-mesa-dev libdbus-1-dev libibus-1.0-dev libudev-dev fcitx-libs-dev -Ubuntu 22.04+ can also add `libpipewire-0.3-dev libwayland-dev libdecor-0-dev` to that command line. +Ubuntu 22.04+ can also add `libpipewire-0.3-dev libwayland-dev libdecor-0-dev liburing-dev` to that command line. Fedora 35, all available features enabled: @@ -34,6 +34,8 @@ Fedora 35, all available features enabled: libdrm-devel mesa-libgbm-devel libusb-devel libdecor-devel \ pipewire-jack-audio-connection-kit-devel \ +Fedora 39+ can also add `liburing-devel` to that command line. + NOTES: - The sndio audio target is unavailable on Fedora (but probably not what you should want to use anyhow). diff --git a/libs/SDL3/docs/README-main-functions.md b/libs/SDL3/docs/README-main-functions.md index e36654fc..75b9e2cc 100644 --- a/libs/SDL3/docs/README-main-functions.md +++ b/libs/SDL3/docs/README-main-functions.md @@ -204,3 +204,33 @@ data, as this pointer will not be provided to your app again. The SDL_AppResult value that terminated the app is provided here, in case it's useful to know if this was a successful or failing run of the app. + + +## Summary and Best Practices + +- **Always Include SDL_main.h in One Source File:** When working with SDL, + remember that SDL_main.h must only be included in one source file in your + project. Including it in multiple files will lead to conflicts and undefined + behavior. + +- **Avoid Redefining main:** If you're using SDL's entry point system (which + renames `main` to `SDL_main`), do not define `main` yourself. SDL takes care + of this for you, and redefining it can cause issues, especially when linking + with SDL libraries. + +- **Using SDL's Callback System:** If you're working with more complex + scenarios, such as requiring more control over your application's flow + (e.g., with games or apps that need extensive event handling), consider + using SDL's callback system. Define the necessary callbacks and SDL will + handle initialization, event processing, and cleanup automatically. + +- **Platform-Specific Considerations:** On platforms like Windows, SDL handles + the platform-specific entry point (like `WinMain`) automatically. This means + you don't need to worry about writing platform-specific entry code when + using SDL. + +- **When to Skip SDL_main.h:** If you do not require SDL's custom entry point + (for example, if you're integrating SDL into an existing application or a + scripting environment), you can omit SDL_main.h. However, this will limit + SDL's ability to abstract away platform-specific entry point details. + diff --git a/libs/SDL3/docs/README-migration.md b/libs/SDL3/docs/README-migration.md index e213fa81..59f3914a 100644 --- a/libs/SDL3/docs/README-migration.md +++ b/libs/SDL3/docs/README-migration.md @@ -179,7 +179,7 @@ SDL_AudioDeviceID now represents both an open audio device's handle (a "logical" Devices are opened by physical device instance ID, and a new logical instance ID is generated by the open operation; This allows any device to be opened multiple times, possibly by unrelated pieces of code. SDL will manage the logical devices to provide a single stream of audio to the physical device behind the scenes. -Devices are not opened by an arbitrary string name anymore, but by device instance ID (or magic numbers to request a reasonable default, like a NULL string in SDL2). In SDL2, the string was used to open both a standard list of system devices, but also allowed for arbitrary devices, such as hostnames of network sound servers. In SDL3, many of the backends that supported arbitrary device names are obsolete and have been removed; of those that remain, arbitrary devices will be opened with a default device ID and an SDL_hint, so specific end-users can set an environment variable to fit their needs and apps don't have to concern themselves with it. +Devices are not opened by an arbitrary string name anymore, but by device instance ID (or magic numbers to request a reasonable default, like a NULL string would do in SDL2). In SDL2, the string was used to open both a standard list of system devices, but also allowed for arbitrary devices, such as hostnames of network sound servers. In SDL3, many of the backends that supported arbitrary device names are obsolete and have been removed; of those that remain, arbitrary devices will be opened with a default device ID and an SDL_hint, so specific end-users can set an environment variable to fit their needs and apps don't have to concern themselves with it. Many functions that would accept a device index and an `iscapture` parameter now just take an SDL_AudioDeviceID, as they are unique across all devices, instead of separate indices into playback and recording device lists. @@ -214,7 +214,7 @@ SDL_QueueAudio(), SDL_DequeueAudio, and SDL_ClearQueuedAudio and SDL_GetQueuedAu APIs that use channel counts used to use a Uint8 for the channel; now they use int. -SDL_AudioSpec has been reduced; now it only holds format, channel, and sample rate. SDL_GetSilenceValueForFormat() can provide the information from the SDL_AudioSpec's `silence` field. The other SDL2 SDL_AudioSpec fields aren't relevant anymore. +SDL_AudioSpec has been reduced; now it only holds format, channel, and sample rate. SDL_GetSilenceValueForFormat() can provide the information from the SDL_AudioSpec's removed `silence` field. SDL3 now manages the removed `samples` field; apps that want more control over device latency and throughput can force a newly-opened device's sample count with the SDL_HINT_AUDIO_DEVICE_SAMPLE_FRAMES hint, but most apps should not risk messing with the defaults. The other SDL2 SDL_AudioSpec fields aren't relevant anymore. SDL_GetAudioDeviceSpec() is removed; use SDL_GetAudioDeviceFormat() instead. @@ -820,12 +820,14 @@ The following hints have been renamed: The following hints have been removed: * SDL_HINT_ACCELEROMETER_AS_JOYSTICK * SDL_HINT_ANDROID_BLOCK_ON_PAUSE_PAUSEAUDIO - the audio will be paused when the application is paused, and SDL_HINT_ANDROID_BLOCK_ON_PAUSE can be used to control that +* SDL_HINT_AUDIO_DEVICE_APP_NAME - replaced by either using the appname param to SDL_SetAppMetadata() or setting SDL_PROP_APP_METADATA_NAME_STRING with SDL_SetAppMetadataProperty() * SDL_HINT_GAMECONTROLLER_USE_BUTTON_LABELS - gamepad buttons are always positional * SDL_HINT_GRAB_KEYBOARD - use SDL_SetWindowKeyboardGrab() instead * SDL_HINT_IDLE_TIMER_DISABLED - use SDL_DisableScreenSaver() instead * SDL_HINT_IME_INTERNAL_EDITING - replaced with SDL_HINT_IME_IMPLEMENTED_UI * SDL_HINT_IME_SHOW_UI - replaced with SDL_HINT_IME_IMPLEMENTED_UI * SDL_HINT_IME_SUPPORT_EXTENDED_TEXT - the normal text editing event has extended text +* SDL_HINT_MOUSE_RELATIVE_MODE_WARP - relative mode is always implemented at the hardware level or reported as unavailable * SDL_HINT_MOUSE_RELATIVE_SCALING - mouse coordinates are no longer automatically scaled by the SDL renderer * SDL_HINT_PS2_DYNAMIC_VSYNC - use SDL_SetRenderVSync(renderer, -1) instead * SDL_HINT_RENDER_BATCHING - Render batching is always enabled, apps should call SDL_FlushRenderer() before calling into a lower-level graphics API. @@ -848,7 +850,6 @@ The following hints have been removed: * SDL_HINT_WINRT_PRIVACY_POLICY_LABEL - WinRT support was removed in SDL3. * SDL_HINT_WINRT_PRIVACY_POLICY_URL - WinRT support was removed in SDL3. * SDL_HINT_XINPUT_USE_OLD_JOYSTICK_MAPPING -* SDL_HINT_AUDIO_DEVICE_APP_NAME - replaced by either using the appname param to SDL_SetAppMetadata() or setting SDL_PROP_APP_METADATA_NAME_STRING with SDL_SetAppMetadataProperty() The following environment variables have been renamed: * SDL_AUDIODRIVER => SDL_AUDIO_DRIVER @@ -1290,7 +1291,6 @@ The following platform preprocessor macros have been renamed: | `__LINUX__` | `SDL_PLATFORM_LINUX` | | `__MACOSX__` | `SDL_PLATFORM_MACOS` | | `__NETBSD__` | `SDL_PLATFORM_NETBSD` | -| `__NGAGE__` | `SDL_PLATFORM_NGAGE` | | `__OPENBSD__` | `SDL_PLATFORM_OPENBSD` | | `__OS2__` | `SDL_PLATFORM_OS2` | | `__OSF__` | `SDL_PLATFORM_OSF` | @@ -2210,7 +2210,6 @@ The following functions have been renamed: * SDL_SetWindowDisplayMode() => SDL_SetWindowFullscreenMode(), returns bool The following functions have been removed: -* SDL_GetClosestFullscreenDisplayMode() * SDL_GetDisplayDPI() - not reliable across platforms, approximately replaced by multiplying SDL_GetWindowDisplayScale() times 160 on iPhone and Android, and 96 on other platforms. * SDL_GetDisplayMode() * SDL_GetNumDisplayModes() - replaced with SDL_GetFullscreenDisplayModes() diff --git a/libs/SDL3/docs/README-ngage.md b/libs/SDL3/docs/README-ngage.md index 363760b9..84192b01 100644 --- a/libs/SDL3/docs/README-ngage.md +++ b/libs/SDL3/docs/README-ngage.md @@ -1,44 +1,5 @@ -Nokia N-Gage -============ +Support for the Nokia N-Gage has been removed from SDL3 (but will make a +comeback when newer compilers are available for the platform). -SDL port for Symbian S60v1 and v2 with a main focus on the Nokia N-Gage -(Classic and QD) by [Michael Fitzmayer](https://github.com/mupfdev). +SDL2 still supports this platform. -Compiling ---------- - -SDL is part of the [N-Gage SDK.](https://github.com/ngagesdk) project. -The library is included in the -[toolchain](https://github.com/ngagesdk/ngage-toolchain) as a -sub-module. - -A complete example project based on SDL can be found in the GitHub -account of the SDK: [Wordle](https://github.com/ngagesdk/wordle). - -Current level of implementation -------------------------------- - -The video driver currently provides full screen video support with -keyboard input. - -At the moment only the software renderer works. - -Audio is not yet implemented. - -Acknowledgements ----------------- - -Thanks to Hannu Viitala, Kimmo Kinnunen and Markus Mertama for the -valuable insight into Symbian programming. Without the SDL 1.2 port -which was specially developed for CDoom (Doom for the Nokia 9210), this -adaptation would not have been possible. - -I would like to thank my friends -[Razvan](https://twitter.com/bewarerazvan) and [Dan -Whelan](https://danwhelan.ie/), for their continuous support. Without -you and the [N-Gage community](https://discord.gg/dbUzqJ26vs), I would -have lost my patience long ago. - -Last but not least, I would like to thank the development team of -[EKA2L1](https://12z1.com/) (an experimental Symbian OS emulator). Your -patience and support in troubleshooting helped me a lot. diff --git a/libs/SDL3/docs/README-raspberrypi.md b/libs/SDL3/docs/README-raspberrypi.md index 9984ec6d..ba34f47b 100644 --- a/libs/SDL3/docs/README-raspberrypi.md +++ b/libs/SDL3/docs/README-raspberrypi.md @@ -3,27 +3,35 @@ Raspberry Pi Requirements: -Raspbian (other Linux distros may work as well). +Raspberry Pi OS (other Linux distros may work as well). -Features --------- +In modern times, the Raspberry Pi works mostly like any other Linux device: +for video, you can use X11, Wayland, or KMSDRM. For audio, you can use ALSA, +PulseAudio, or PipeWire, etc. OpenGL, OpenGL ES, and Vulkan are known to work. -* Works without X11 -* Hardware accelerated OpenGL ES 2.x -* Sound via ALSA -* Input (mouse/keyboard/joystick) via EVDEV -* Hotplugging of input devices via UDEV +There is a video backend in SDL called "rpi" that uses a deprecated Broadcom +interface (named "dispmanx") to draw directly to the console without X11. +Newer Raspberry Pi OS releases don't support this (and work fine with our +"kmsdrm" backend for the same purposes, a standard Linux interface). Don't +panic if you can't use this backend, or CMake says it can't find libraries it +needs for this. + +SDL has, in past times, worked on the original Raspberry Pi and the RPi 2, but +these devices are no longer targets we actively test; if they broke, please +report bugs or send patches! + +The Raspberry Pi 3 and later (in 32-bit and 64-bit mode) are still known to +work well at the time of this writing. The Raspberry Pi Zero and Zero 2 are +also known to work well. -Raspbian Build Dependencies ---------------------------- +## Documentation Out Of Date -sudo apt-get install libudev-dev libasound2-dev libdbus-1-dev +The rest of this document is likely out of date; a lot has changed in recent +years in both SDL and the Raspberry Pi universe, and this document has not +been updated to reflect those details. Take the rest of this information with +a grain of salt! -You also need the VideoCore binary stuff that ships in /opt/vc for EGL and -OpenGL ES 2.x, it usually comes pre-installed, but in any case: - -sudo apt-get install libraspberrypi0 libraspberrypi-bin libraspberrypi-dev NEON @@ -31,8 +39,8 @@ NEON If your Pi has NEON support, make sure you add -mfpu=neon to your CFLAGS so that SDL will select some otherwise-disabled highly-optimized code. The -original Pi units don't have NEON, the Pi2 probably does, and the Pi3 -definitely does. +original Pi and Pi Zero units don't have NEON; everything from the Pi2/PiZero2 +and later do. Cross compiling from x86 Linux diff --git a/libs/SDL3/docs/README-touch.md b/libs/SDL3/docs/README-touch.md index 97925279..05edc2c8 100644 --- a/libs/SDL3/docs/README-touch.md +++ b/libs/SDL3/docs/README-touch.md @@ -14,7 +14,7 @@ Works out of box. Windows: Unfortunately there is no windows support as of yet. Support for Windows 7 is planned, but we currently have no way to test. If you have a Windows 7 WM_TOUCH supported device, and are willing to help test please contact me at jim.tla+sdl_touch@gmail.com -=========================================================================== + Events =========================================================================== SDL_EVENT_FINGER_DOWN: @@ -39,7 +39,6 @@ Fields: Same as SDL_EVENT_FINGER_DOWN. -=========================================================================== Functions =========================================================================== SDL provides the ability to access the underlying SDL_Finger structures. diff --git a/libs/SDL3/docs/release_checklist.md b/libs/SDL3/docs/release_checklist.md index 7f762944..56fb23d0 100644 --- a/libs/SDL3/docs/release_checklist.md +++ b/libs/SDL3/docs/release_checklist.md @@ -1,16 +1,19 @@ # Release checklist -* Run `build-scripts/create-release.py -R libsdl-org/SDL --ref ` to command - GitHub Actions to start creating release assets. - It's advisable to run this script regularly, and also prior to any release step. - When creating the release assets, `` must be the release tag - This makes sure the revision string baked into the archives is correct. +* Run `build-scripts/create-release.py -R libsdl-org/SDL --ref ` to do + a dry run creating the release assets. Verify that the archives are correct. -* When changing the version, run `build-scripts/update-version.sh X Y Z`, - where `X Y Z` are the major version, minor version, and patch level. So - `3 8 1` means "change the version to 3.8.1". This script does much of the - mechanical work. +* Tag the release, e.g. `git tag release-3.8.0; git push --tags` +* Run `build-scripts/create-release.py -R libsdl-org/SDL --ref ` + to have GitHub Actions create release assets. This makes sure the revision + string baked into the archives is correct. + +* Verify that the source archive REVISION.txt has the correct release tag. + +* Sign the source archives and upload everything to libsdl.org + +* Create a GitHub release and attach the archives you just generated. ## New feature release @@ -22,14 +25,16 @@ * Do the release +* Immediately create a branch for patch releases, e.g. `git branch release-3.EVEN.x` + +* Bump version number from 3.EVEN.0 to 3.(EVEN+1).0 + + * `./build-scripts/update-version.sh 3 EVEN+1 0` + * Update the website file include/header.inc.php to reflect the new version ## New bugfix release -* Check that no new API/ABI was added - - * If it was, do a new feature release (see above) instead - * Bump version number from 3.Y.Z to 3.Y.(Z+1) (Y is even) * `./build-scripts/update-version.sh 3 Y Z+1` @@ -38,14 +43,6 @@ * Update the website file include/header.inc.php to reflect the new version -## After a feature release - -* Create a branch like `release-3.4.x` - -* Bump version number to 3.ODD.0 for next development branch - - * `./build-scripts/update-version.sh 3 ODD 0` - ## New development prerelease * Bump version number from 3.Y.Z to 3.Y.(Z+1) (Y is odd) diff --git a/libs/SDL3/examples/CMakeLists.txt b/libs/SDL3/examples/CMakeLists.txt index dec58ddb..2a13a038 100644 --- a/libs/SDL3/examples/CMakeLists.txt +++ b/libs/SDL3/examples/CMakeLists.txt @@ -110,6 +110,7 @@ macro(add_sdl_example_executable TARGET) target_link_libraries(${TARGET} PRIVATE GL) elseif(EMSCRIPTEN) set_property(TARGET ${TARGET} PROPERTY SUFFIX ".html") + target_link_options(${TARGET} PRIVATE -sALLOW_MEMORY_GROWTH=1) endif() if(OPENGL_FOUND) @@ -138,11 +139,16 @@ add_sdl_example_executable(renderer-debug-text SOURCES renderer/18-debug-text/de add_sdl_example_executable(audio-simple-playback SOURCES audio/01-simple-playback/simple-playback.c) add_sdl_example_executable(audio-simple-playback-callback SOURCES audio/02-simple-playback-callback/simple-playback-callback.c) add_sdl_example_executable(audio-load-wav SOURCES audio/03-load-wav/load-wav.c DATAFILES ${CMAKE_CURRENT_SOURCE_DIR}/../test/sample.wav) +add_sdl_example_executable(audio-multiple-streams SOURCES audio/04-multiple-streams/multiple-streams.c DATAFILES ${CMAKE_CURRENT_SOURCE_DIR}/../test/sample.wav ${CMAKE_CURRENT_SOURCE_DIR}/../test/sword.wav) +add_sdl_example_executable(input-joystick-polling SOURCES input/01-joystick-polling/joystick-polling.c) +add_sdl_example_executable(input-joystick-events SOURCES input/02-joystick-events/joystick-events.c) add_sdl_example_executable(camera-read-and-draw SOURCES camera/01-read-and-draw/read-and-draw.c) add_sdl_example_executable(pen-drawing-lines SOURCES pen/01-drawing-lines/drawing-lines.c) -add_sdl_example_executable(game-snake SOURCES game/01-snake/snake.c) -add_sdl_example_executable(game-woodeneye-008 SOURCES game/02-woodeneye-008/woodeneye-008.c) -add_sdl_example_executable(game-infinite-monkeys SOURCES game/03-infinite-monkeys/infinite-monkeys.c) +add_sdl_example_executable(asyncio-load-bitmaps SOURCES asyncio/01-load-bitmaps/load-bitmaps.c DATAFILES ${CMAKE_CURRENT_SOURCE_DIR}/../test/sample.bmp ${CMAKE_CURRENT_SOURCE_DIR}/../test/gamepad_front.bmp ${CMAKE_CURRENT_SOURCE_DIR}/../test/speaker.bmp ${CMAKE_CURRENT_SOURCE_DIR}/../test/icon2x.bmp) +add_sdl_example_executable(demo-snake SOURCES demo/01-snake/snake.c) +add_sdl_example_executable(demo-woodeneye-008 SOURCES demo/02-woodeneye-008/woodeneye-008.c) +add_sdl_example_executable(demo-infinite-monkeys SOURCES demo/03-infinite-monkeys/infinite-monkeys.c) +add_sdl_example_executable(demo-bytepusher SOURCES demo/04-bytepusher/bytepusher.c) # When you add an example, remember to add the Visual Studio project as well: # - Add a new example in examples/ diff --git a/libs/SDL3/examples/asyncio/01-load-bitmaps/README.txt b/libs/SDL3/examples/asyncio/01-load-bitmaps/README.txt new file mode 100644 index 00000000..e4283d46 --- /dev/null +++ b/libs/SDL3/examples/asyncio/01-load-bitmaps/README.txt @@ -0,0 +1,6 @@ +This example code loads a few bitmap files from disk using the asynchronous +i/o, and then draws it to the window. It uses a task group to watch multiple +reads and deal with them in whatever order they finish. + +Note that for a single tiny file like this, you'd probably not want to bother +with async i/o in real life, but this is just an example of how to do it. diff --git a/libs/SDL3/examples/asyncio/01-load-bitmaps/load-bitmaps.c b/libs/SDL3/examples/asyncio/01-load-bitmaps/load-bitmaps.c new file mode 100644 index 00000000..44c2abf7 --- /dev/null +++ b/libs/SDL3/examples/asyncio/01-load-bitmaps/load-bitmaps.c @@ -0,0 +1,125 @@ +/* + * This example code loads a bitmap with asynchronous i/o and renders it. + * + * This code is public domain. Feel free to use it for any purpose! + */ + +#define SDL_MAIN_USE_CALLBACKS 1 /* use the callbacks instead of main() */ +#include +#include + +/* We will use this renderer to draw into this window every frame. */ +static SDL_Window *window = NULL; +static SDL_Renderer *renderer = NULL; +static SDL_AsyncIOQueue *queue = NULL; + +#define TOTAL_TEXTURES 4 +static const char * const bmps[TOTAL_TEXTURES] = { "sample.bmp", "gamepad_front.bmp", "speaker.bmp", "icon2x.bmp" }; +static SDL_Texture *textures[TOTAL_TEXTURES]; +static const SDL_FRect texture_rects[TOTAL_TEXTURES] = { + { 116, 156, 408, 167 }, + { 20, 200, 96, 60 }, + { 525, 180, 96, 96 }, + { 288, 375, 64, 64 } +}; + +/* This function runs once at startup. */ +SDL_AppResult SDL_AppInit(void **appstate, int argc, char *argv[]) +{ + int i; + + if (!SDL_Init(SDL_INIT_VIDEO)) { + SDL_ShowSimpleMessageBox(SDL_MESSAGEBOX_ERROR, "Couldn't initialize SDL!", SDL_GetError(), NULL); + return SDL_APP_FAILURE; + } + + if (!SDL_CreateWindowAndRenderer("examples/asyncio/load-bitmaps", 640, 480, 0, &window, &renderer)) { + SDL_ShowSimpleMessageBox(SDL_MESSAGEBOX_ERROR, "Couldn't create window/renderer!", SDL_GetError(), NULL); + return SDL_APP_FAILURE; + } + + queue = SDL_CreateAsyncIOQueue(); + if (!queue) { + SDL_ShowSimpleMessageBox(SDL_MESSAGEBOX_ERROR, "Couldn't create async i/o queue!", SDL_GetError(), NULL); + return SDL_APP_FAILURE; + } + + /* Load some .bmp files asynchronously from wherever the app is being run from, put them in the same queue. */ + for (i = 0; i < SDL_arraysize(bmps); i++) { + char *path = NULL; + SDL_asprintf(&path, "%s%s", SDL_GetBasePath(), bmps[i]); /* allocate a string of the full file path */ + /* you _should) check for failure, but we'll just go on without files here. */ + SDL_LoadFileAsync(path, queue, (void *) bmps[i]); /* attach the filename as app-specific data, so we can see it later. */ + SDL_free(path); + } + + return SDL_APP_CONTINUE; /* carry on with the program! */ +} + +/* This function runs when a new event (mouse input, keypresses, etc) occurs. */ +SDL_AppResult SDL_AppEvent(void *appstate, SDL_Event *event) +{ + if (event->type == SDL_EVENT_QUIT) { + return SDL_APP_SUCCESS; /* end the program, reporting success to the OS. */ + } + + return SDL_APP_CONTINUE; /* carry on with the program! */ +} + +/* This function runs once per frame, and is the heart of the program. */ +SDL_AppResult SDL_AppIterate(void *appstate) +{ + SDL_AsyncIOOutcome outcome; + int i; + + if (SDL_GetAsyncIOResult(queue, &outcome)) { /* a .bmp file load has finished? */ + if (outcome.result == SDL_ASYNCIO_COMPLETE) { + /* this might be _any_ of the bmps; they might finish loading in any order. */ + for (i = 0; i < SDL_arraysize(bmps); i++) { + /* this doesn't need a strcmp because we gave the pointer from this array to SDL_LoadFileAsync */ + if (outcome.userdata == bmps[i]) { + break; + } + } + + if (i < SDL_arraysize(bmps)) { /* (just in case.) */ + SDL_Surface *surface = SDL_LoadBMP_IO(SDL_IOFromConstMem(outcome.buffer, (size_t) outcome.bytes_transferred), true); + if (surface) { /* the renderer is not multithreaded, so create the texture here once the data loads. */ + textures[i] = SDL_CreateTextureFromSurface(renderer, surface); + if (!textures[i]) { + SDL_ShowSimpleMessageBox(SDL_MESSAGEBOX_ERROR, "Couldn't create texture!", SDL_GetError(), NULL); + return SDL_APP_FAILURE; + } + SDL_DestroySurface(surface); + } + } + } + SDL_free(outcome.buffer); + } + + SDL_SetRenderDrawColor(renderer, 0, 0, 0, 255); + SDL_RenderClear(renderer); + + for (i = 0; i < SDL_arraysize(textures); i++) { + SDL_RenderTexture(renderer, textures[i], NULL, &texture_rects[i]); + } + + SDL_RenderPresent(renderer); + + return SDL_APP_CONTINUE; /* carry on with the program! */ +} + +/* This function runs once at shutdown. */ +void SDL_AppQuit(void *appstate, SDL_AppResult result) +{ + int i; + + SDL_DestroyAsyncIOQueue(queue); + + for (i = 0; i < SDL_arraysize(textures); i++) { + SDL_DestroyTexture(textures[i]); + } + + /* SDL will clean up the window/renderer for us. */ +} + diff --git a/libs/SDL3/examples/asyncio/01-load-bitmaps/thumbnail.png b/libs/SDL3/examples/asyncio/01-load-bitmaps/thumbnail.png new file mode 100644 index 0000000000000000000000000000000000000000..4f8be2a82c65b65c08e85f96ab1b907856d04b9f GIT binary patch literal 76234 zcmeEs^;?sF^fx6TDcvF6UD6;TQX(zgAl)FaA*q0LC?ixPqy_01T{1vG8b%{AHhP0? zJba$-_52Ud58wB8UE6)X&%Ir{ch2j)&N;6SFAa6bA2L70!NDQdeg5FVmp&>aBw(rbf0RNh8G^M`K9upqM_Gecje{fEiH9*Ep_#ZtZC0mcm3O6*H7k4 z2grH!Il5?lab0{=2nJ-~=&}z{;3>pp4w6t4ykp}eWVNQ+c!!{f8q*BM~r3DKMYikQ@6YF!3a;4guigagd*!^P!+ts`6eH|QP5w;K< zeRF#&k7M}ger4u5s-Cb>{r4_C5AVzS_wPrOjd5u2kF6vh#yq}X!q0GDK7IPsWk>)g z`F^{G@qzk()^w#f0{6R(PP91M_uJ;F|9kQO-mw35lK%~i|KGsi?1RfBTYI`{&J^@2 zTJ6x8V?TPW6pI&GaRti9WG< zYv9sM7Bib3$^Uen)VYHaGGt^K*$2&ClDIe#B=6+G(LU$cmS)J9I|*G&v~m;T{8)9YwCnc6={FqUDJ=D8dVBrQ z_5K(>di%0D_a83lrVGTn= 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 +#include + +/* We will use this renderer to draw into this window every frame. */ +static SDL_Window *window = NULL; +static SDL_Renderer *renderer = NULL; +static SDL_AudioDeviceID audio_device = 0; + +/* things that are playing sound (the audiostream itself, plus the original data, so we can refill to loop. */ +typedef struct Sound { + Uint8 *wav_data; + Uint32 wav_data_len; + SDL_AudioStream *stream; +} Sound; + +static Sound sounds[2]; + +static bool init_sound(const char *fname, Sound *sound) +{ + bool retval = false; + SDL_AudioSpec spec; + char *wav_path = NULL; + + /* Load the .wav files from wherever the app is being run from. */ + SDL_asprintf(&wav_path, "%s%s", SDL_GetBasePath(), fname); /* allocate a string of the full file path */ + if (!SDL_LoadWAV(wav_path, &spec, &sound->wav_data, &sound->wav_data_len)) { + SDL_Log("Couldn't load .wav file: %s", SDL_GetError()); + return false; + } + + /* Create an audio stream. Set the source format to the wav's format (what + we'll input), leave the dest format NULL here (it'll change to what the + device wants once we bind it). */ + sound->stream = SDL_CreateAudioStream(&spec, NULL); + if (!sound->stream) { + SDL_Log("Couldn't create audio stream: %s", SDL_GetError()); + } else if (!SDL_BindAudioStream(audio_device, sound->stream)) { /* once bound, it'll start playing when there is data available! */ + SDL_Log("Failed to bind '%s' stream to device: %s", fname, SDL_GetError()); + } else { + retval = true; /* success! */ + } + + SDL_free(wav_path); /* done with this string. */ + return retval; +} + + +/* This function runs once at startup. */ +SDL_AppResult SDL_AppInit(void **appstate, int argc, char *argv[]) +{ + + SDL_SetAppMetadata("Example Audio Multiple Streams", "1.0", "com.example.audio-multiple-streams"); + + if (!SDL_Init(SDL_INIT_VIDEO | SDL_INIT_AUDIO)) { + SDL_Log("Couldn't initialize SDL: %s", SDL_GetError()); + return SDL_APP_FAILURE; + } + + if (!SDL_CreateWindowAndRenderer("examples/audio/multiple-streams", 640, 480, 0, &window, &renderer)) { + SDL_Log("Couldn't create window/renderer: %s", SDL_GetError()); + return SDL_APP_FAILURE; + } + + /* open the default audio device in whatever format it prefers; our audio streams will adjust to it. */ + audio_device = SDL_OpenAudioDevice(SDL_AUDIO_DEVICE_DEFAULT_PLAYBACK, NULL); + if (audio_device == 0) { + SDL_Log("Couldn't open audio device: %s", SDL_GetError()); + return SDL_APP_FAILURE; + } + + if (!init_sound("sample.wav", &sounds[0])) { + return SDL_APP_FAILURE; + } else if (!init_sound("sword.wav", &sounds[1])) { + return SDL_APP_FAILURE; + } + + return SDL_APP_CONTINUE; /* carry on with the program! */ +} + +/* This function runs when a new event (mouse input, keypresses, etc) occurs. */ +SDL_AppResult SDL_AppEvent(void *appstate, SDL_Event *event) +{ + if (event->type == SDL_EVENT_QUIT) { + return SDL_APP_SUCCESS; /* end the program, reporting success to the OS. */ + } + return SDL_APP_CONTINUE; /* carry on with the program! */ +} + +/* This function runs once per frame, and is the heart of the program. */ +SDL_AppResult SDL_AppIterate(void *appstate) +{ + int i; + + for (i = 0; i < SDL_arraysize(sounds); i++) { + /* If less than a full copy of the audio is queued for playback, put another copy in there. + This is overkill, but easy when lots of RAM is cheap. One could be more careful and + queue less at a time, as long as the stream doesn't run dry. */ + if (SDL_GetAudioStreamAvailable(sounds[i].stream) < ((int) sounds[i].wav_data_len)) { + SDL_PutAudioStreamData(sounds[i].stream, sounds[i].wav_data, (int) sounds[i].wav_data_len); + } + } + + /* just blank the screen. */ + SDL_SetRenderDrawColor(renderer, 0, 0, 0, 255); + SDL_RenderClear(renderer); + SDL_RenderPresent(renderer); + + return SDL_APP_CONTINUE; /* carry on with the program! */ +} + +/* This function runs once at shutdown. */ +void SDL_AppQuit(void *appstate, SDL_AppResult result) +{ + int i; + + SDL_CloseAudioDevice(audio_device); + + for (i = 0; i < SDL_arraysize(sounds); i++) { + if (sounds[i].stream) { + SDL_DestroyAudioStream(sounds[i].stream); + } + SDL_free(sounds[i].wav_data); + } + + /* SDL will clean up the window/renderer for us. */ +} diff --git a/libs/SDL3/examples/audio/onmouseover.webp b/libs/SDL3/examples/audio/onmouseover.webp new file mode 100644 index 0000000000000000000000000000000000000000..1f3ba4b20805627c4ba3f0ac1785a4ec3314f09e GIT binary patch literal 176470 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
T$-|?V&9o6gD6VCmHD*~M;kwJ@ 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 z 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

utoc~K?74%79gPcm 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 z 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