Anonymous Maarten
26df689935
docs: expand CMake documentation + add minimal CMake project for reporting issues
2023-06-16 14:21:38 +02:00
Anonymous Maarten
76a919d458
cmake: don't force enable/disable SDL_HIDAPI_LIBUSB
...
Use CMakeDependentOption instead to configure SDL_HIDAPI_LIBUSB to a okay-ish variable.
2023-05-28 03:27:20 +02:00
Anonymous Maarten
860e52c99e
windows: SDL_Delay expects a 32-bit integer
2023-05-27 02:12:59 +02:00
Anonymous Maarten
13a6a72b88
windows: SDL_GetTicks64 -> SDL_GetTicks
2023-05-27 02:02:46 +02:00
Anonymous Maarten
b4291412a4
tests: build tests with C90 standard
...
C90 mode is disabled for:
- testautomation: use of isnan/isfinite
- testlock: use of kill
- testvulkan: use of c++ style strings in vulkan.h
2023-05-27 01:49:07 +02:00
Anonymous Maarten
5b5b67df20
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
2023-05-27 01:25:27 +02:00
Anonymous Maarten
c810e5f63d
video: set error code when SetWindowPosition fails
2023-05-05 17:50:32 +02:00
Anonymous Maarten
72e5a52c51
ci: use Haiku cross toolchain
...
A cross compiler is much faster then an emulated one.
2023-05-04 08:26:54 -04:00
Anonymous Maarten
fe68fd3af9
ci: disable pull_request trigger for haiku
2023-05-04 05:15:10 +02:00
Anonymous Maarten
c721155b89
cmake: prepend generated wayland protocol include path
2023-04-05 08:58:12 -04:00
Anonymous Maarten
ac72cdcf79
Fix -Wmissing-prototypes warning
...
./src/video/SDL_video.c:1734:13: warning: no previous prototype for function 'SDL_CreateWindowInternal' [-Wmissing-prototypes]
SDL_Window *SDL_CreateWindowInternal(const char *title, int x, int y, int w, int h, SDL_Window *parent, Uint32 flags)
^
./src/video/SDL_video.c:1734:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
SDL_Window *SDL_CreateWindowInternal(const char *title, int x, int y, int w, int h, SDL_Window *parent, Uint32 flags)
^
static
2023-04-05 05:39:48 +02:00
Anonymous Maarten
029e61a07e
cmake: split SDL_NEON into SDL_NEON and SDL_NEON_BLITTERS
2023-04-04 15:55:02 -07:00
Anonymous Maarten
b6ae281e97
Use #ifdef/#ifndef instead of #if defined/#if \!defined
2023-03-30 21:35:01 +00:00
Anonymous Maarten
c82cca0494
ci: use loongson official cross toolchains
2023-03-30 05:15:28 +02:00
Anonymous Maarten
eed266d266
SDL_syshaptic.c and SDL_sysjoystick.c need string.h for strerror
2023-03-30 04:19:43 +02:00
Anonymous Maarten
cf8899ec94
cmake: allow HAVE_LINUX_INPUT_H with !defined(HAVE_LIBC)
2023-03-30 04:19:36 +02:00
Anonymous Maarten
b99f380498
intrinsics: add lsx/lasx intrinsic headers when not disabled
...
__attribute__((target(xx))) is not supported by LoongArch64.
The following warning is emitted:
target attribute is not supported on this machine [-Wattributes]
2023-03-30 04:00:48 +02:00
Anonymous Maarten
94bca5a2a3
ci: add loongarch64 workflow
2023-03-30 03:24:52 +02:00
Anonymous Maarten
0c3777d566
video: fix warnings about unused variables when building without duff's loop
2023-03-28 16:59:27 +00:00
Anonymous Maarten
11c70406c3
testautomation_audio: fix -Wimplicit-fallthrough warning
2023-03-28 16:59:27 +00:00
Anonymous Maarten
f7961b7c9a
video/blit: fix -Wimplicit-fallthrough warnings
2023-03-28 16:59:27 +00:00
Anonymous Maarten
e1b8a03239
testsurround: fix channel names
...
Used table in include/SDL3/SDL_audio.h as reference.
2023-03-28 16:59:27 +00:00
Anonymous Maarten
cb076b83ff
cmake: fix testnative for Macos
2023-03-28 04:01:50 +02:00
Anonymous Maarten
1259a60731
cmake: build tests as library on Android
2023-03-28 01:30:55 +02:00
Anonymous Maarten
b8b852a55b
cmake: testnative can also be built on non-Linux
2023-03-28 00:43:54 +02:00
Anonymous Maarten
9ada9daf51
SDL_blit_copy: Don't call potentially FPU using SDL_memcpy in SDL_memcpyMMX
2023-03-27 06:12:49 +00:00
Anonymous Maarten
37c9329db2
cmake: rename SDL_AVX512 -> SDL_AVX512F cmake option
2023-03-27 06:12:49 +00:00
Anonymous Maarten
8789729b4a
cpuinfo: update \sa's of SDL_HasXXX functions
2023-03-27 06:12:49 +00:00
Anonymous Maarten
b0a5182e84
Sunset SDL_HasRDTSC
2023-03-27 06:12:49 +00:00
Anonymous Maarten
513025b182
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:12:49 +00:00
Anonymous Maarten
99a799ad8b
cmake: add /Q_no-use-libirc flag when building a no-libc library
...
The new Intel LLVM compiler needs this when building SDL3
in release mode.
2023-03-27 06:12:49 +00:00
Anonymous Maarten
46f5c1fe6a
Move and rename SDL_rdtsc macro to testautomation
2023-03-27 06:12:49 +00:00
Anonymous Maarten
a06046c55c
memset and memcpy are not intrinsic functions in new LLVM-based Intel compiler
2023-03-27 06:12:49 +00:00
Anonymous Maarten
4be82202de
cmake: new LLVM based Intel compiler does not recognize MSVC's /MP
2023-03-27 06:12:49 +00:00
Anonymous Maarten
51d96a1680
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:12:49 +00:00
Anonymous Maarten
095d4b1ffc
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:12:49 +00:00
Anonymous Maarten
09832c701c
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:12:49 +00:00
Anonymous Maarten
904e4a6e7c
ci: reduce amount of data copied back from VM in FreeBSD action
...
By reducing the amount of data to be copied back from the VM to the host,
we hope that the chance on failure is reduced.
2023-03-27 06:12:49 +00:00
Anonymous Maarten
e66f4fa71c
ci: test with (old) Intel compiler + (new) oneAPI compiler
2023-03-27 06:12:49 +00:00
Anonymous Maarten
d392ce516a
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:12:49 +00:00
Anonymous Maarten
29e19bf829
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:12:49 +00:00
Anonymous Maarten
345d1cd355
cmake: add support for building with Intel C compiler
2023-03-27 06:12:49 +00:00
Anonymous Maarten
97c3077678
cmake: detect rdtsc in CMake
2023-03-27 06:12:49 +00:00
Anonymous Maarten
e2f51bf38e
SDL_intrin.h: add SDL_rdtsc macro
2023-03-27 06:12:49 +00:00
Anonymous Maarten
749f3ebd14
Fix arguments of SDL_BlitCopyMMX
2023-03-24 02:18:06 +01:00
Anonymous Maarten
c30903882b
cmake+tests: include SDL_build_config.h in select tests + add include paths
2023-03-21 23:03:02 +03:00
Anonymous Maarten
0bd5ce13db
cmake: add underscore in SSE4_1 and SSE4_2 options
2023-03-21 23:03:02 +03:00
Anonymous Maarten
5775d5e112
Add intrinsics test automation
2023-03-21 23:03:02 +03:00
Anonymous Maarten
cb46cbe684
include: include intrinsics headers for RDTSC SSE4.1 and SSE4.2
2023-03-21 23:03:02 +03:00
Anonymous Maarten
905b892314
cmake: simplify mmx/sse/sse2/avx compiler support detection
2023-03-21 23:03:02 +03:00
Anonymous Maarten
6a9e2495f0
docs: add general information on how to build optimized binaries
2023-03-21 23:03:02 +03:00
Anonymous Maarten
b5b9ddb205
SDL_intrin.h: define SDL_<simd>_INTRINSICS in user-visible header
2023-03-21 23:03:02 +03:00
Anonymous Maarten
cd7a3f8af5
cmake: generate and install man pages
2023-03-21 02:19:19 +01:00
Anonymous Maarten
70edd54835
sdlwiki: SDL3 advises users to include through 'SDL3/SDL.h'
2023-03-21 02:19:19 +01:00
Anonymous Maarten
77b8edb5ad
wikiheaders.pl: add --manpath argument
2023-03-21 02:19:19 +01:00
Anonymous Maarten
81ca9d61d6
cmake+test: add more automated tests + use properties
2023-03-21 02:19:19 +01:00
Anonymous Maarten
115460a930
torturethread: sleep a bit in SubThreadFunc to avoid starvation
...
testtorture, built by MinGW from msys2, got blocked indefinitely.
2023-03-21 02:19:19 +01:00
Anonymous Maarten
6a9c692bb9
testsem: don't re-parse positional argument twice
2023-03-21 02:19:19 +01:00
Anonymous Maarten
abfc2a01ca
ci: disable parallel building for ps2
...
The ps2 builds were flaky.
https://github.com/ps2dev/ps2dev/issues/67
2023-03-21 02:19:19 +01:00
Anonymous Maarten
38219e08d9
ci: increase memory size of vmactions workflow
...
By default, the VM gets 1024MiB. https://github.com/vmactions/freebsd-vm/issues/28 suggests to increase it.
2023-03-21 02:19:19 +01:00
Anonymous Maarten
773aad14f8
cmake: Fix building without libsamplerate library
...
On Fedora, the headers for 32-bit and 64-bit are shared.
When building a 32-bit library, CMake found the header (that was installed
for the 64-bit libsamplerate development package). Because no 32-bit libsamplerate
library was installed, linking failed. (SDL_LIBSAMPLERATE_DYNAMIC was set to FALSE
because CMake could not find a library)
2023-03-20 05:34:41 +01:00
Anonymous Maarten
4a6528e3f0
testprograms: parse arguments using SDLTest_CommonState
2023-03-17 17:54:16 +01:00
Anonymous Maarten
8bea41f737
testthread: parse arguments using SDLTest_CommonState + add arguments
2023-03-17 17:54:16 +01:00
Anonymous Maarten
64b739bc1e
testlock: parse arguments using SDLTest_CommonState + extra arguments
2023-03-17 17:54:16 +01:00
Anonymous Maarten
4d86a83fa9
testver: don't allow any arguments
2023-03-17 17:54:16 +01:00
Anonymous Maarten
0268881e30
testspriteminimal: don't allow any arguments
2023-03-17 17:54:16 +01:00
Anonymous Maarten
08d5235da0
testintersections: check integer argument + no global done + get final tick before SDL shutdown
2023-03-17 17:54:16 +01:00
Anonymous Maarten
6e2851878f
testhittesting: use SDLTest_Common for creating window(s) and renderer(s)
2023-03-17 17:54:16 +01:00
Anonymous Maarten
75da730a88
testfile: fix reference values
2023-03-17 17:54:16 +01:00
Anonymous Maarten
ee13b74d59
testyuv: fix buffer overflow write
2023-03-17 17:54:16 +01:00
Anonymous Maarten
774e51627e
SDL_test: fix infinite loop when passing invalid argument
2023-03-17 17:54:16 +01:00
Anonymous Maarten
c52ad54b05
SDL_test: don't parse audio/video arguments when its subsystem is not enabled
2023-03-17 17:54:16 +01:00
Anonymous Maarten
c8d4ca35ad
SDL_test: always print common log usage, even without audio/video backend
2023-03-17 17:54:16 +01:00
Anonymous Maarten
08c85ebae0
SDL_test: introduce SDLTest_CommonDestroyState to only destroy SDLTest_CommonState
2023-03-17 17:54:16 +01:00
Anonymous Maarten
5109e19935
SDL_test: remove unused BuildCommonUsageString
2023-03-17 17:54:16 +01:00
Anonymous Maarten
9451d3079d
dynapi: SDL_DYNAPI_entry must be in version script
...
For SDL dynapi to work, the SDL_DYNAPI_entry symbol must be externally visible.
Adding __attribute__((visibility(default))) would not work
since version scripts override these.
2023-03-17 08:53:14 -07:00
Anonymous Maarten
7ea6ef4076
ci: add workflow for building SDL on ppc64le
2023-03-15 14:54:20 +01:00
Anonymous Maarten
e77132b8aa
ci: only store cache vita reqs when restore-cache didn't find anything
2023-03-15 14:54:20 +01:00
Anonymous Maarten
65178df717
ci: test ARM neon and simd on ci using vita toolchain
2023-03-15 14:54:20 +01:00
Anonymous Maarten
d27db3defa
cmake+video: always use altivec.h header for detection + introduce SDL_ENABLE_ALTIVEC
2023-03-15 14:54:20 +01:00
Anonymous Maarten
684709a5b6
cmake: fix building testautomation without X11 support
2023-03-15 14:54:20 +01:00
Anonymous Maarten
9cb5f0bfc6
video: fix ARM neon and simd
2023-03-15 14:54:20 +01:00
Anonymous Maarten
64e242fd77
cmake: Add test resources to list of files to clean
2023-03-15 14:54:20 +01:00
Anonymous Maarten
ba5b1f2fd2
Fix build with -DX11MODES_DEBUG in CPPFLAGS
2023-03-15 14:54:20 +01:00
Anonymous Maarten
d24ef0213b
SDL_threadprio.c uses SCHED_RR and SCHED_FIFO from sched.h
2023-03-15 14:54:20 +01:00
Anonymous Maarten
3db3424b4e
cmake: Detect powerpc architecture
2023-03-15 14:54:20 +01:00
Anonymous Maarten
fc4085b54e
cmake: Allow build system to disable arm neon intrinsics
2023-03-15 14:54:20 +01:00
Anonymous Maarten
46de6241d7
cmake: Allow build system to disable loongarch intrinsics
2023-03-15 14:54:20 +01:00
Anonymous Maarten
99b8313eb1
add SDL_DISABLE_MMX to SDL_build_config.h.cmake
2023-03-15 14:54:20 +01:00
Anonymous Maarten
4681240241
cmake: Detect AVX + allow build system to disable Intel intrinsics
2023-03-15 14:54:20 +01:00
Anonymous Maarten
683411e96f
cmake: only use precompile headers for C and CXX
2023-03-15 14:38:26 +01:00
Anonymous Maarten
7d55bbc0da
cmake: get_filename_component(EXT) returns extension including leading dot
2023-03-15 14:38:26 +01:00
Anonymous Maarten
c304fbded6
cmake: disable ccache by default
2023-03-09 20:24:03 +01:00
Anonymous Maarten
103fbcfc05
cmake: use compatible interface properties to disallow linking to a different version of SDL
2023-03-03 23:40:57 +01:00
Anonymous Maarten
790612f4f8
cmake: make sdltests_utils static library
2023-03-01 23:41:22 +01:00
Anonymous Maarten
02fede7c8c
cmake: initialize SDL_SHARED and SDL_STATIC from BUILD_SHARED_LIBS
2023-02-28 02:15:39 +01:00
Anonymous Maarten
f2a277414f
raspberry: SDL_DisplayMode's w/h members have been renamed to screen_w/screen_h
...
Found by running the coccinelle script on SDL's source tree.
2023-02-24 06:55:28 -08:00
Anonymous Maarten
f1202fccdc
cmake: create SDL3::SDL3-shared for VC and Xcode devel package
2023-02-20 00:43:53 +01:00
Anonymous Maarten
213fbd01c5
SDL_endian.h: improve doxygen documentation
2023-02-19 10:01:33 -08:00
Anonymous Maarten
549cedfa88
include: add \brief to includes
2023-02-19 10:01:33 -08:00