Anonymous Maarten
6c29778826
VC+d3d12: use __has_include to detect presence of d3d12 ehaders
...
backport of 4fa5006247
2024-05-27 02:42:20 +02:00
Anonymous Maarten
6c10201e58
cmake: direct3d12 renderer needs d3d12.h and d3d12sdklayers.h
...
Older MinGW releases don't ship d3d12sdklayers.h
backport of 3af4f120d0
2024-05-27 02:34:26 +02:00
Anonymous Maarten
c79e616806
d3d12: older Windows SDK headers contain wrong function prototypes
...
Declare correct function pointers ourselves.
Backport of:
- 98fcf112e7
- 89a4d9ae67
2024-05-25 00:41:47 +02:00
Anonymous Maarten
54c435409b
d3d12: xbox has no DXGI_PRESENT flags
2024-05-25 00:41:47 +02:00
Anonymous Maarten
62f35ab1b6
Use SDL_test + don't use macros
...
The structure of the existing loop makes the inner loop of the previous commit unnecessary.
Manual backport of 558630d59c
2024-05-16 17:54:13 +02:00
Anonymous Maarten
9216b7a5ee
stdinc: modify default alloca prototype
...
For compatibilty with TinyCC.
Backport of 06758685a5
2024-04-10 10:05:08 +02:00
Anonymous Maarten
eb185e8d88
VisualC: remove vulkan.hpp
2024-03-25 18:04:40 +01:00
Anonymous Maarten
3184936950
cmake: we only need a C++ compiler for Android, Haiku and UWP
2024-03-11 01:26:13 +01:00
Anonymous Maarten
a420eb79bb
cmake: run testautomation with CTest on ci
2024-01-21 23:44:53 +01:00
Anonymous Maarten
41fc398114
Move check for SDL_Delay upper bounds to testtimer
...
(cherry picked from commit f45761908a )
2024-01-21 23:44:53 +01:00
Anonymous Maarten
1737340978
Use helper_ddtod function to compare atan2 infinity cases
...
This fixes a test failure when building on mingw32 in Release mode.
2024-01-21 23:44:53 +01:00
Anonymous Maarten
69a6efcd1b
Avoid using higher precision floating point numbers by using it in a function
2024-01-21 23:44:53 +01:00
Anonymous Maarten
fbee0b86bf
video: verify SDL_GetNumVideoDisplays is succesful
2024-01-21 23:44:53 +01:00
Anonymous Maarten
880c69392a
testautomation_math: do relative comparison + more precise correct trigonometric values
2024-01-21 23:44:53 +01:00
Anonymous Maarten
811adaa342
Only test error message when using specific video drivers
...
The dummy driver does not sen an error message when passing
a NULL rect argument to SDL_SetTextInputRect.
2024-01-21 23:44:53 +01:00
Anonymous Maarten
472a415c8f
video: move standard c, sse and lsx implementations of yuv2rgb to its own source
2024-01-18 17:06:27 -08:00
Anonymous Maarten
d1c5038f16
testautomation: don't do float equality tests
...
(cherry picked from commit 474c8d0073 )
2024-01-09 06:06:46 -08:00
Anonymous Maarten and Simon McVittie
3ff56fda1a
testautomation: only require accelerated renderer with non-dummy video driver
...
Backported from SDL3 commit 85e3099b .
Co-authored-by: Simon McVittie <smcv@collabora.com >
Resolves: https://github.com/libsdl-org/SDL/issues/8799
2024-01-08 11:01:06 -08:00
Anonymous Maarten
10c292b055
cmake+xcode: use IMPORTED SHARED framework target
2023-12-10 11:50:11 +01:00
Anonymous Maarten
0134672345
cmake: copy sources to binary directory in separate target
...
Don't do it in POST_BUILD to avoid multiple parallel builds
stepping on each others toes.
Also don't use copy_if_different, but unconditionally copy it.
The build system should take care of dependencies.
SDL2 backport of fea6e7afb1
2023-11-28 23:03:30 +01:00
Anonymous Maarten
baaac5cca3
cmake: Android expects SDL programs to be built as shared libraries
2023-11-23 03:39:36 +01:00
Anonymous Maarten
5abcfdb93e
SDL_stdinc.h: fix compile warning when using SDL_PR[iux]64 on Android
2023-11-23 03:38:59 +01:00
Anonymous Maarten
4940b5dbc2
SDL_bsdjoystick: fix -Wundef warning on FreeBSD
2023-11-22 06:50:00 +03:00
Anonymous Maarten
4a3a9f3ad8
Older gcc does not support #pragma GCC diagnostic inside functions
2023-11-09 23:34:05 +01:00
Anonymous Maarten
d38ccfa88f
x11: Ignore deprecated declaration of XKeycodeToKeysym
2023-11-09 18:46:27 +01:00
Anonymous Maarten
f0d65436fb
ci: re-enable Intel compilers on ci
2023-11-09 18:07:10 +01:00
Anonymous Maarten
adc0880520
cmake: also install pdb files of static libraries
2023-11-09 03:23:24 +01:00
Anonymous Maarten
8b1b6734f6
cmake: fold HAVE_INPUT_EVENTS into HAVE_LINUX_INPUT_H
2023-11-02 21:28:39 +01:00
Anonymous Maarten
517db6d887
cmake: reset check state before testing -fobjc-arc
2023-10-30 21:08:30 +01:00
Anonymous Maarten
20630b2e6c
cmake: check -fobjc-arc compiler flag on Apple platforms
2023-10-30 19:56:46 +01:00
Anonymous Maarten
7774de0fe3
cmake: file(RELATIVE_PATH) needs 2 absolute paths
2023-10-30 19:45:49 +01:00
Anonymous Maarten
90255914a8
cmake: install pdb's when present
2023-10-22 18:53:34 +02:00
Anonymous Maarten
e417c6cffe
ci: stop FreeBSD job after 30 minutes
2023-10-11 00:23:10 +02:00
Anonymous Maarten
43c57e3239
triangle: don't read destination pixel when you're going to discard it anyways
2023-10-05 13:46:28 +02:00
Anonymous Maarten
2d5c05a69c
blit_slow: don't read destination pixel when you're going to discard it anyways
...
(cherry picked from commit 4cd0c13823 )
2023-10-04 19:42:46 -07:00
Anonymous Maarten
321c2f8f24
ci: disable Intel compilers
2023-10-02 09:14:29 +02:00
Anonymous Maarten and elahav
71b7790be8
snd_pcm_plugin_flush was removed in QNX 7.1 and later
...
Co-authored-by: elahav <elahav@users.noreply.github.com >
2023-09-30 16:48:51 +02:00
Anonymous Maarten and elahav
933ec9e978
cmake: add qnx support
...
Co-authored-by: elahav <elahav@users.noreply.github.com >
2023-09-30 16:48:51 +02:00
Anonymous Maarten and elahav
a263cc2369
Allow the use of posix_spawn() instead of vfork/execlp()
...
Backport of #7041
Co-authored-by: elahav <elahav@users.noreply.github.com >
2023-09-30 16:48:51 +02:00
Anonymous Maarten
92dc226018
cmake: make sure SDL_GetPrefPath is run before testfilesystem
...
60 seconds timeout ought to be sufficient.
2023-09-10 15:33:22 +02:00
Anonymous Maarten
2adebcd6cc
ci: run tests in parallel
2023-09-10 15:20:34 +02:00
Anonymous Maarten
b388f6e32d
cmake: use MSVC_RUNTIME_LIBRARY to force MT
2023-09-09 19:16:31 +02:00
Anonymous Maarten
0b995f21e7
wayland: add SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_EGL
2023-08-30 23:03:47 +02:00
Anonymous Maarten
bb1fe302cf
wayland: don't define SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_* macro's
...
They mess with #ifdef conditional in headers.
2023-08-30 22:46:17 +02:00
Anonymous Maarten
10135b2d7b
Fix overflow when doing SDL_sscanf("%hd", ...)
...
An overflow occured in the stdlib_sscanf test, when using msys2 clang32 toolchain.
(cherry picked from commit 342ec51131 )
2023-08-10 15:06:57 -07:00
Anonymous Maarten
0465224616
Sync -Wsign-compare warning fix from sdl2-compat
2023-08-09 02:53:48 +02:00
Anonymous Maarten
9d6b028e01
tests: build tests with fast math disabled
2023-08-09 02:53:48 +02:00
Anonymous Maarten
fcae9cd210
cmake: build with -Wdocumentation
2023-08-09 02:53:48 +02:00
Anonymous Maarten
e5f3b22d63
cmake: update cmake_minimum_required to avoid deprecated warning
2023-08-09 02:53:48 +02:00
Anonymous Maarten
64f17314a2
MSVC has __declspec(deprecated)
2023-08-09 02:53:48 +02:00
Anonymous Maarten
2b0ca87119
SDL_atomic.h: __ARM_ARCH is not always defined for an arm platform
...
e.g. riscos toolchain
(cherry picked from commit 8105f1d5b5 )
2023-07-26 20:39:20 +03:00
Anonymous Maarten
322dbdde4e
ci: bump mymindstorm/setup-emsdk to latest tag
2023-07-22 17:36:27 +02:00
Anonymous Maarten
57e9a9eee6
ci: move 'set -eu' to after source_cmd
2023-07-14 15:02:10 +02:00
Anonymous Maarten
1c6a649362
cmake: check whether SONAME actualy exists
...
//Have include libunwind.h
2023-07-05 00:25:24 +02:00
Anonymous Maarten
0262f757e1
cmake: check whether libunwind can be compiled and linked against
2023-07-05 00:25:24 +02:00
Anonymous Maarten
8908d16285
cmake: explicitly disable WINDOWS_EXPORT_ALL_SYMBOLS for SDL2
...
This fixes the following errors when a dll attempts to link to a shared SDL2::SDL2:
m.c.obj : error LNK2019: unresolved external symbol __imp___acrt_iob_func referenced in function printf
m.c.obj : error LNK2019: unresolved external symbol __imp___stdio_common_vfprintf referenced in function _vfprintf_l
MSVCRTD.lib(init.obj) : error LNK2019: unresolved external symbol _CrtDbgReport referenced in function _CRT_RTC_INIT
MSVCRTD.lib(init.obj) : error LNK2019: unresolved external symbol _CrtDbgReportW referenced in function _CRT_RTC_INITW
MSVCRTD.lib(error.obj) : error LNK2019: unresolved external symbol strcpy_s referenced in function "void __cdecl _RTC_StackFailure(void *,char const *)" (?_RTC_StackFailure@@YAXPEAXPEBD@Z)
MSVCRTD.lib(error.obj) : error LNK2019: unresolved external symbol strcat_s referenced in function "void __cdecl _RTC_StackFailure(void *,char const *)" (?_RTC_StackFailure@@YAXPEAXPEBD@Z)
MSVCRTD.lib(error.obj) : error LNK2019: unresolved external symbol __stdio_common_vsprintf_s referenced in function _vsprintf_s_l
MSVCRTD.lib(error.obj) : error LNK2001: unresolved external symbol __C_specific_handler_noexcept
MSVCRTD.lib(pdblkup.obj) : error LNK2019: unresolved external symbol _wmakepath_s referenced in function "int __cdecl GetPdbDllPathFromFilePath(wchar_t const *,wchar_t *,unsigned __int64)" (?GetPdbDllPathFromFilePath@@YAHPEB_WPEA_W_K@Z)
MSVCRTD.lib(pdblkup.obj) : error LNK2019: unresolved external symbol _wsplitpath_s referenced in function "int __cdecl GetPdbDllPathFromFilePath(wchar_t const *,wchar_t *,unsigned __int64)" (?GetPdbDllPathFromFilePath@@YAHPEB_WPEA_W_K@Z)
MSVCRTD.lib(pdblkup.obj) : error LNK2019: unresolved external symbol wcscpy_s referenced in function "int __cdecl GetPdbDllPathFromFilePath(wchar_t const *,wchar_t *,unsigned __int64)" (?GetPdbDllPathFromFilePath@@YAHPEB_WPEA_W_K@Z)
MSVCRTD.lib(pdblkup.obj) : error LNK2019: unresolved external symbol __vcrt_GetModuleFileNameW referenced in function "struct HINSTANCE__ * __cdecl GetPdbDll(void)" (?GetPdbDll@@YAPEAUHINSTANCE__@@XZ)
MSVCRTD.lib(pdblkup.obj) : error LNK2019: unresolved external symbol __vcrt_GetModuleHandleW referenced in function "struct HINSTANCE__ * __cdecl GetPdbDll(void)" (?GetPdbDll@@YAPEAUHINSTANCE__@@XZ)
MSVCRTD.lib(pdblkup.obj) : error LNK2019: unresolved external symbol __vcrt_LoadLibraryExW referenced in function "struct HINSTANCE__ * __cdecl GetPdbDll(void)" (?GetPdbDll@@YAPEAUHINSTANCE__@@XZ)
2023-07-05 00:15:46 +02:00
Anonymous Maarten
e6f635ca17
wayland: don't use libdecor_frame_get_* functions when header doesn't have it
...
and we're statically linking to the library.
This fixes building SDL with -DSDL_WAYLAND_SHARED=OFF
(cherry picked from commit 5b5b67df20 )
2023-06-29 16:04:47 -04:00
Anonymous Maarten
14f4fd3f11
git commit -m "cmake: set maximum policy to 3.5
...
This fixes the following warning when configuring with CMake 3.27+:
```
CMake Deprecation Warning at CMakeLists.txt:3190 (cmake_minimum_required):
Compatibility with CMake < 3.5 will be removed from a future version of
CMake.
Update the VERSION argument <min> value or use a ...<max> suffix to tell
CMake that the project does not need compatibility with older versions.
```
2023-06-07 20:35:32 +02:00
Anonymous Maarten
d6cd450624
windows: SDL_Delay expects a 32-bit integer
2023-05-27 02:34:41 +02:00
Anonymous Maarten
e875775940
windows: SDL_immdevice needs SDL_timer.h include
2023-05-27 02:10:18 +02:00
Anonymous Maarten
72606d97e6
cmake: allow #include "SDL2/SDL.h.h" when using SDL2 as subproject
2023-05-27 01:48:30 +02:00
Anonymous Maarten
c68976360d
Fix -Wunused-function warning when configuring with -DSDL_X11_XINPUT2=OFF
2023-05-26 15:28:58 -04:00
Anonymous Maarten
d361acdd4e
testgles2_sdf: build with CMake + fix build errors/warnings
2023-05-19 15:24:52 +02:00
Anonymous Maarten
535ec1a921
cmake: allow users of sdl2-config.cmake to not add -mwindows to the link options
2023-04-18 14:10:12 -04:00
Anonymous Maarten
d2a2787783
Fix remaining -Wimplicit-fallthrough warnings
2023-03-28 19:24:33 +02:00
Anonymous Maarten
85fecbb10b
video: fix warnings about unused variables when building without duff's loop
...
(cherry picked from commit 0c3777d566 )
2023-03-28 10:21:36 -07:00
Anonymous Maarten
ec3e333fb8
testautomation_audio: fix -Wimplicit-fallthrough warning
...
(cherry picked from commit 11c70406c3 )
2023-03-28 10:21:36 -07:00
Anonymous Maarten
1402d13556
video/blit: fix -Wimplicit-fallthrough warnings
...
(cherry picked from commit f7961b7c9a )
2023-03-28 10:21:35 -07:00
Anonymous Maarten
03c239ded9
testsurround: fix channel names
...
Used table in include/SDL3/SDL_audio.h as reference.
(cherry picked from commit e1b8a03239 )
2023-03-28 10:21:35 -07:00
Anonymous Maarten
cd64e0b6e3
SDL_blit_copy: Don't call potentially FPU using SDL_memcpy in SDL_memcpyMMX
2023-03-27 06:13:28 +00:00
Anonymous Maarten
51c10bef0b
cmake: disable warnings in libm + warning about EMMS instruction
...
SDL_BlitCopyMMX ends with _mm_empty(), so the MMX state should be emptied.
(_mm_empty is the intrinsic function for emms)
2023-03-27 06:13:28 +00:00
Anonymous Maarten
d1dc195208
Implement _intel_fast_(memcpy|memset)
...
The classic Intel compiler generates calls to these functions when
building the SDL library with SDL_LIBC=OFF.
2023-03-27 06:13:28 +00:00
Anonymous Maarten
5e5b029d6c
cmake: add /Q_no-use-libirc flag when building a no-libc library
...
The new Intel LLVM library needs this because when building SDL2
in release mode.
2023-03-27 06:13:28 +00:00
Anonymous Maarten
b58285b7ed
ci: test with (old) Intel compiler + (new) oneAPI compiler
2023-03-27 06:13:28 +00:00
Anonymous Maarten
e5ebbdafd4
cmake: add support for building with Intel C compiler
2023-03-27 06:13:28 +00:00
Anonymous Maarten
977781d3f4
testautomation_math: avoid equality tests with INFINITY
...
Fixes this warning:
warning: comparison with infinity always evaluates to false in fast floating point modes [-Wtautological-constant-compare]
2023-03-27 06:13:28 +00:00
Anonymous Maarten
984af1a725
cmake: new LLVM based Intel compiler does not recognize MSVC's /MP
2023-03-27 06:13:28 +00:00
Anonymous Maarten
5aa76de35f
cpuinfo: use __cpuidex instead of __cpuid
...
The classic Intel Compiler does not clear the ecx register prior
to executing the cpuid opcode.
2023-03-27 06:13:28 +00:00
Anonymous Maarten
1158cff9ea
cmake: increase threshold for stack probes
...
The /Gs argument controls the number of bytes that local variables
can occupy before a stack probe is initiated.
By setting it to a huge value, no calls to __chkstk are inserted.
This change is needed for the classic Intel C compiler to build SDL
with -DSDL_LIBC=OFF.
2023-03-27 06:13:28 +00:00
Anonymous Maarten
ae3a34a388
byteswap: Don't use intrinsic byteswap functions with Intel C compiler
...
It reroutes intrinsic _byteswap_u(short|long|int64) call to libc function.
2023-03-27 06:13:28 +00:00
Anonymous Maarten
ce4c54e2b2
cmake: get_filename_component(EXT) retturns extension including leading dot
2023-03-15 14:55:56 +01:00
Anonymous Maarten
6c495a92f0
cmake: use compatible interface properties to disallow linking to a different version of SDL
2023-03-03 23:41:18 +01:00
Anonymous Maarten
817141c162
ci: install pkg-config on Macos runner
...
(cherry picked from commit 86f0c69465 )
2023-02-17 01:05:00 +03:00
Anonymous Maarten
c5035d8ffd
include: add comment documenting the change(s) to SDL_opengl_glext.h
2023-02-04 02:44:37 +01:00
Anonymous Maarten
0dc4373aad
opengl: make SDL_opengl_glext.h's include compatible with macos
...
- Mesa defines __gl_glext_h_
- Apple defines __glext_h_
2023-02-03 21:05:54 +01:00
Anonymous Maarten
8800d40442
cmake: assume autotools static libraries with lib prefix and .a suffix
2023-02-01 19:05:44 +01:00
Anonymous Maarten
d9d84c8d73
ci: test PVR_PSP2 (gles/gl) and gib (gles)
2023-01-25 00:22:50 +01:00
Anonymous Maarten
e927e5d440
vita: add missing static libraries for using gles with pib
2023-01-25 00:22:50 +01:00
Anonymous Maarten
33ec2a5e94
vita: fix reformatting error in SDL_vtagl_pvr.c
2023-01-25 00:22:50 +01:00
Anonymous Maarten
a8a5bd3d6b
cmake: allow disabling OpenGL support when building with GLES using PSP2-PVR
2023-01-25 00:22:50 +01:00
Anonymous Maarten
c0445c23bf
vita: PVR needs to link to sceIme_stub library
2023-01-23 05:08:59 +01:00
Anonymous Maarten
01a4cf8a10
ci: don't require EXTRA_ prefix on input environment variables
2023-01-15 17:29:37 +01:00
Anonymous Maarten
f51f7fbb94
n3ds: fix exported libraries of n3ds
2023-01-15 17:29:37 +01:00
Anonymous Maarten
460b7b247f
cmake: do all compile tests with -D_GNU_SOURCE=1
2023-01-08 19:21:50 +01:00
Anonymous Maarten
5df106603d
cmake: move platform detection to cmake/sdl/paltform.cmake for re-use by SDL2-compat
2022-11-29 20:20:33 +01:00
Anonymous Maarten
84039e2514
cmake: use target_link_libraries to pass -Wl,--undefined=WinMain
...
(cherry-picked from commit e2060de714 )
2022-11-29 21:15:21 +03:00
Anonymous Maarten
dcd1252368
cmake: test for lsx and lasx intrinsics for loongarch
2022-11-25 21:50:43 +01:00
Anonymous Maarten
edb75bc29e
cmake: make all assembly options depend on SDL_ASSEMBLY and architecture
2022-11-25 21:50:25 +01:00
Anonymous Maarten
660cec69b1
cmake: find libudev library so it gets priority
2022-11-25 21:37:42 +01:00
Anonymous Maarten
a2611edcf3
cmake: add support for some BSD's wscons input
2022-11-25 21:37:36 +01:00