Commit Graph
100 Commits
Author SHA1 Message Date
Anonymous Maarten 122c3e6a81 ci: create simpler Gradle testspriteminimal project instead 2024-06-18 00:38:35 +02:00
Anonymous Maarten 1a68d846de Create a functional CMake project using androidbuild.sh 2024-06-18 00:11:44 +02:00
Anonymous Maarten a64960cfc0 SDL_GLContext is not a void* pointer anymore 2024-06-15 14:44:09 +02:00
Anonymous Maarten 031dc0743f Use an opaque struct typedef for SDL_GLContext
Using a struct typedef instead of a void pointer results in extra C typechecks
2024-06-15 01:43:22 +02:00
Anonymous Maarten 32907a9606 Rename SDL_Swap(16|32|64)(LE|BE) to SDL_Swap(LE|BE)(16|32|64) 2024-06-12 02:29:39 +02:00
Anonymous Maarten ef6123886e Add SDL_ReadS8 and SDL_WriteS8 2024-06-12 01:39:08 +02:00
Anonymous Maarten 657c0135b1 android: android release binary should only contain a shared SDL3 library 2024-06-10 18:04:18 +02:00
Anonymous Maarten dd0bb25f66 cmake: remove SDL_STATIC_PIC cmake option.
Use CMAKE_POSITION_INDEPENDENT_CODE instead
2024-06-10 18:04:18 +02:00
Anonymous Maarten fd2b9c0602 cmake: don't check c++ compiler flags for asan when CXX is not enabled 2024-06-01 10:18:15 +02:00
Anonymous Maarten 6896c4c3bf tests: testcases accept a void pointer argument 2024-05-31 19:18:24 +02:00
Anonymous Maarten d5060423a2 testplatform: fix leak at exit time
A leak was present at exit time on the Emscripten platform
2024-05-31 18:53:36 +02:00
Anonymous Maarten 4b0f52b04e cmake: fall back to per-cpu test when all-in-one test fails
The 'all-in-one' test fails for Emscripten because try_compile does not copy back the actual binary:
the wasm file contains the machine parseable strings, not the html or js file(s).
2024-05-31 18:53:21 +02:00
Anonymous Maarten ddb826d1a0 VC+d3d12: spread test for __has_include and d3d12.h test over multiple lines 2024-05-27 03:02:10 +02:00
Anonymous Maarten 279fb3acc3 release: build mingw binaries on Ubuntu 24.04
Ubuntu 22.04 ships with mingw that does not support direct3d12.

[ci skip]
2024-05-27 02:30:51 +02:00
Anonymous Maarten 4fa5006247 VC+d3d12: use __has_include to detect presence of d3d12 ehaders 2024-05-27 00:44:53 +02:00
Anonymous Maarten bba76859f5 cmake: detect CPU architecture in 1 compilation 2024-05-26 23:52:48 +02:00
Anonymous Maarten 3af4f120d0 cmake: direct3d12 renderer needs d3d12.h and d3d12sdklayers.h
Older MinGW releases don't ship d3d12sdklayers.h
2024-05-26 23:00:41 +02:00
Anonymous Maarten fefa47e409 dropfile: main callbacks need extra CMake care on UWP 2024-05-25 16:35:11 +02:00
Anonymous Maarten 78e25d4994 testdropfile: convert to use callbacks 2024-05-25 04:44:07 +02:00
Anonymous Maarten 89a4d9ae67 cmake+d3d12: d3d12 now builds succesfully on older Windows SDKs, so simplify the checks 2024-05-24 21:48:04 +02:00
Anonymous Maarten 98fcf112e7 d3d12: older Windows SDK headers contain wrong function prototypes
Declare correct function pointers ourselves.
2024-05-24 19:39:45 +02:00
Anonymous Maarten f3695ef34e VC: don't import Microsoft.CPP.UpgradeFromVC[67]0.props projects
Only thing these do is define a _VC80_UPGRADE macro.
2024-05-24 11:13:40 +02:00
Anonymous Maarten 86b2f441c0 release: create arm64 Visual Studio binaries
[skip ci]
2024-05-23 00:13:10 +02:00
Anonymous Maarten 3c00af1ac6 cmake: preseed CMake cache on MSVC to speed up configuration 2024-05-22 21:03:12 +02:00
Anonymous Maarten e10666397e ci: build simple Android SDL app using gradle 2024-05-22 20:19:18 +02:00
Anonymous Maarten 8954e42bcb xcode: cmake scripts inside frameworks in side xcframework differ from the top cmake script 2024-05-22 20:17:13 +02:00
Anonymous Maarten e10207e831 cmake: disallow '#include "SDL.h"' 2024-05-22 20:17:13 +02:00
Anonymous Maarten 85c87f4140 release: use git archive to get sources 2024-05-22 01:28:44 +02:00
Anonymous Maarten 9b0203d9b1 release: Include pdb in Visual Studio release artifacts + build in C:\temp 2024-05-22 01:28:44 +02:00
Anonymous Maarten 45081db9d4 Build Android prefab in releaser.py script
[ci skip]
2024-05-22 01:28:44 +02:00
Anonymous Maarten 2123b84fbe SDL_test: add --hide-cursor to help 2024-05-21 22:56:29 +02:00
Anonymous Maarten d3d7c04bf8 testcamera: libSDL3_test destroys the window and renderer
This fixes a "DEBUG: Parameter 'renderer' is invalid" message when exiting testcamera.
2024-05-17 14:39:29 +02:00
Anonymous Maarten 18225f7bb5 libSDL3_test: don't remove windows and renders when quiting
This fixes a "DEBUG: Parameter 'texture' is invalid" message when exiting testcamera.
2024-05-17 14:39:29 +02:00
Anonymous Maarten a7d4ee05f6 video: hide window before destroying properties
This fixes a few "DEBUG: Parameter 'props' is invalid" messages, when exiting testcamera.
2024-05-17 14:39:29 +02:00
Anonymous Maarten 690875d555 testiconv: free all memory to fix --trackmem 2024-05-17 14:39:29 +02:00
Anonymous Maarten 831c79d32f testatomic: destroy threads + free all memory at quit to fix --trackmem 2024-05-17 14:39:29 +02:00
Anonymous Maarten a50e0319d5 ci: retry package creation multiple times
DMG creation on macOS occasionally fails, so try multiple times
https://gitlab.kitware.com/cmake/cmake/-/issues/25671
2024-05-16 22:55:57 +02:00
Anonymous Maarten 027856b9fa Revert changes to SDL_androidsensor.c 2024-05-16 16:47:25 +02:00
Anonymous Maarten 88980aeb21 android+test: testcamera needs CAMERA permissions 2024-05-16 16:43:53 +02:00
Anonymous Maarten c7205ab6b5 cmake: don't generate SDL3 jar for CMake versions < 3.19 2024-05-15 18:31:37 +02:00
Anonymous Maarten a4371d28ac doc: document how to use generator expressions + explain why we no longer provide CMake variables 2024-05-11 17:20:16 -04:00
Anonymous Maarten 818721fc9d ci: disable building docs on mingw32/clang32
See https://github.com/msys2/MINGW-packages/pull/20085
2024-05-07 22:35:31 +02:00
Anonymous Maarten 9aff68746f cmake: add khronos include directories with PRIVATE visibility 2024-05-07 17:37:21 +02:00
Anonymous Maarten 8f4cab0f83 ci: fix dmg release artifacts
- build-release.py: use absolute paths instead of resolved paths
- xcode: run the shell script with 'set -ex' for extra verbosity +
  failing when an error happens
- On macOS ci, /tmp resolves to /private/tmp, causing the shell script
  to not find the SDL3.xcframework. So don't  use /tmp.
2024-05-05 01:30:07 +02:00
Anonymous Maarten a8526f5a19 cmake: disable documentation installation by default 2024-05-02 19:54:37 +02:00
Anonymous Maarten 911fc9b17e testffmpeg: treat Khronos headers as system headers 2024-04-18 09:10:15 -07:00
Anonymous Maarten 7dd4f1ec22 SDL3 removed SDL_HINT_RENDER_SCALE_QUALITY hint
textures now default to linear filtering, use SDL_SetTextureScaleMode(texture, SDL_SCALEMODE_NEAREST) if you want nearest pixel mode instead
2024-04-17 16:38:15 -07:00
Anonymous Maarten 07b7ec68eb Add SDLTest_CompareMemory function to compare memory ranges 2024-04-15 03:05:05 -10:00
Anonymous Maarten 9f83647aec cmake: switch iOS and watchOS 2024-04-08 19:25:38 +02:00
Anonymous Maarten 2f26c58504 cmake: fix typo in cmake/sdlplatform.cmake 2024-04-02 23:44:15 +02:00
Anonymous Maarten 143b070074 cpuinfo: fix -Wmissing-prototypes warning 2024-04-02 18:57:36 +02:00
Anonymous Maarten 63cb541797 cmake: set SYSTEM property in SDL3Config.cmake for compatibility with older CMake versions 2024-04-01 20:09:51 +02:00
Anonymous Maarten 4eb0f10dda cmake: install SDL headers with SYSTEM property disabled
This causes the SDL include path to be added using -I instead of -isystem
2024-04-01 18:38:47 +02:00
Anonymous Maarten fb8ac1ab7d ci: verify SDL build system does not include installed SDL headers 2024-04-01 18:38:47 +02:00
Anonymous Maarten 19b01c39b0 ci: don't fix pspsdk toolchain anymore 2024-04-01 18:38:47 +02:00
Anonymous Maarten 72cf9c0ef4 test: don't run testautomation in parallel 2024-03-29 21:11:35 +01:00
Anonymous Maarten a65982e15d testevdev: include SDL_internal.h first, and fixup SDL_main.h 2024-03-26 00:10:40 +01:00
Anonymous Maarten 58f2e102a9 visualc: filters also contained 2 wrong include headers 2024-03-25 18:02:05 +01:00
Anonymous Maarten c7d32ff64b visualc: rename/remove 2 include paths 2024-03-25 17:10:31 +01:00
Anonymous Maarten cf3cf0e106 dmg: fix SDL_version.h issue in sdl3-config-version.cmake 2024-03-24 20:15:42 +01:00
Anonymous Maarten beb52ed54a pen: remove stray '#include <stdio.h>' 2024-03-24 16:58:59 +01:00
Anonymous Maarten f030533580 SDL_blit: remove SDL_BLIT_CPU_FEATURES override 2024-03-23 16:36:44 -07:00
Anonymous Maarten 1aa9ef7213 cpuinfo: reset cpu features on SDL_Quit 2024-03-23 16:36:44 -07:00
Anonymous Maarten 64465653b4 audio: always build fallback scalar converters 2024-03-23 16:36:44 -07:00
Anonymous Maarten 89b135e570 cmake: add automation and platform test without simd 2024-03-23 16:36:44 -07:00
Anonymous Maarten 1d0e5286aa Limit CPU features through a hint 2024-03-23 16:36:44 -07:00
Anonymous Maarten e19b6c0b95 Add releaser script + workflow 2024-03-23 21:41:23 +01:00
Anonymous Maarten c81d11fae4 mingw: add pkg-support files (INSTALL.txt and Makefile) 2024-03-23 21:41:20 +01:00
Anonymous Maarten 4defea47e1 dmg: fix sdl3-config.cmake 2024-03-23 21:41:20 +01:00
Anonymous Maarten 2ed0143425 visualc: fix sdl3-config.cmake 2024-03-23 21:41:20 +01:00
Anonymous Maarten 75a71bde4b cmake: build tests against installed SDL prefix 2024-03-23 21:41:20 +01:00
Anonymous Maarten 7f888f98f7 gles2: only build tests when building SDL3 or when the headers are available 2024-03-23 21:41:20 +01:00
Anonymous Maarten c493b40cc3 testffmpeg_vulkan: fix -Wincompatible-pointer-types warning
```
[1/1] Building C object test/CMakeFiles/testffmpeg.dir/testffmpeg_vulkan.c.o
/src/SDL/test/testffmpeg_vulkan.c: In function ‘BeginVulkanFrameRendering’:
/src/SDL/test/testffmpeg_vulkan.c:787:20: warning: passing argument 1 of ‘vk->lock_frame’ from incompatible pointer type [-Wincompatible-pointer-types]
  787 |     vk->lock_frame(frames, pVkFrame);
      |                    ^~~~~~
      |                    |
      |                    AVHWFramesContext *
/src/SDL/test/testffmpeg_vulkan.c:787:20: note: expected ‘struct AVHWFramesContext *’ but argument is of type ‘AVHWFramesContext *’
/src/SDL/test/testffmpeg_vulkan.c: In function ‘FinishVulkanFrameRendering’:
/src/SDL/test/testffmpeg_vulkan.c:885:22: warning: passing argument 1 of ‘vk->unlock_frame’ from incompatible pointer type [-Wincompatible-pointer-types]
  885 |     vk->unlock_frame(frames, pVkFrame);
      |                      ^~~~~~
      |                      |
      |                      AVHWFramesContext *
/src/SDL/test/testffmpeg_vulkan.c:885:22: note: expected ‘struct AVHWFramesContext *’ but argument is of type ‘AVHWFramesContext *’
```
2024-03-22 11:05:13 -07:00
Anonymous Maarten 2521ba47fe jack: set error message when failing to open jack client 2024-03-22 01:22:39 +01:00
Anonymous Maarten 009318c5a9 Fix warnings when building with -DSDL_LIBC=OFF on Linux 2024-03-18 21:29:08 +01:00
Anonymous Maarten f59dbf6a12 cmake: add -Wimplicit-fallthrough warning 2024-03-18 20:34:50 +01:00
Anonymous Maarten e5812a9fd2 testpen: don't include math.h 2024-03-16 20:37:31 +01:00
Anonymous Maarten 2f13f66c71 testautomation: fix renderer leak in video tests 2024-03-16 11:59:04 -07:00
Anonymous Maarten 572e088b8f SDL_IOFromMem/SDL_IOFromConstMem: free userdata on close 2024-03-15 23:55:29 +01:00
Anonymous Maarten db31367999 testffmpeg: use SDL_free instead of free 2024-03-15 21:26:40 +01:00
Anonymous Maarten f8c2ec5462 testffmpeg: use Uint64 instead of __u64 2024-03-15 21:26:40 +01:00
Anonymous Maarten bee8a95571 Fix SDL_LEAN_AND_MEAN build 2024-03-11 13:46:16 -07:00
Anonymous Maarten b5eb704fa8 cmake: we only need a C++ compiler for Android, Haiku and UWP
Our CMake script does (currently) not support NGage, Xbox One, or Xbox Series.
2024-03-11 00:27:54 +01:00
Anonymous Maarten 7341d5f361 cmake: allow hidapi to use libusb on Windows
When using SDL_HIDAPI_LIBUSB_SHARED=ON, extract the dll file name
from the import library.
2024-03-10 09:07:33 -07:00
Anonymous Maarten 3bc27d3856 hidapi_libusb: use SDL_wcscmp and SDL_wcslcpy from SDL 2024-03-10 09:07:33 -07:00
Anonymous Maarten 0e6fcf947a cmake: find libusb through LibUSB cmake module 2024-03-10 09:07:33 -07:00
Anonymous Maarten 3cc4705dd2 cmake: build OBJC sources with warning & error flags, ignoring deprecated declarations 2024-03-07 01:58:28 +01:00
Anonymous Maarten 4898505f23 cmake: add winres to the list of potential name rc compilers 2024-03-05 20:38:00 +01:00
Anonymous Maarten e03746b25f cmake: add -Wl,-rpath,${libdir} to Libs section of pc file for Apple platforms 2024-02-28 12:58:02 +01:00
Anonymous Maarten c8372e20d6 SDLTest_CommonEvent: only set done when it is finished 2024-02-28 12:57:30 +01:00
Anonymous Maarten 0a961915dc cmake: testffmpeg requires link to EGL library for EGL feature 2024-02-27 12:28:06 +01:00
Anonymous Maarten 1f536a1e77 cmake: fix SDL_RENDER_VULKAN reporting
Also fix an error when configuring with `-DSDL_VULKAN=ON
-DSDL_RENDER_VULKAN=FALSE`: the vulkan renderer is now correctly
disabled.
2024-02-26 20:37:10 +01:00
Anonymous Maarten e6d9251ecb docs: improve CMake documentation for Apple 2024-02-25 23:25:11 +01:00
Anonymous Maarten 5593ddb6a7 cmake: X11 is for Video, not Audio 2024-02-24 17:31:48 +01:00
Anonymous Maarten 7b1127d1fe cmake: Apple did not test SDL_CAMERA before adding camera support 2024-02-22 07:18:22 -05:00
Anonymous Maarten e176626bac cmake: only enable SDL drivers when its subsystem is enabled 2024-02-22 07:18:22 -05:00
Anonymous Maarten 99cef7e13b cmake: check SDL subsystem dependencies (and include Camera) 2024-02-22 07:18:22 -05:00
Anonymous Maarten 9a44d44cee cmake: build Windows mediafoundation SDL_camera support 2024-02-22 07:18:22 -05:00
Anonymous Maarten 279a650fae mediafoundation: fix SDL_camera_mediafoundation MinGW compile warnings 2024-02-22 07:18:22 -05:00
Anonymous Maarten 58e6eacf97 docs: SDL_INIT_EVERYTHING does not exist anymore 2024-02-21 00:52:04 +01:00