Commit Graph
100 Commits
Author SHA1 Message Date
Ozkan Sezer 3959765b81 SDL_waylandvulkan.c: fix type redefinition errors.
Fixes https://github.com/libsdl-org/SDL/issues/9620
2024-04-25 03:50:00 +03:00
Ozkan Sezer f06f761c2f remove SDL_quit.h include from SDL.h 2024-04-15 18:47:24 +03:00
Ozkan Sezer 6cf71ca9a9 SDL_stdinc.h: Android passes sizeof(ENUM) == sizeof(int) assertion
Reference issue: https://github.com/libsdl-org/SDL/issues/9392 .
2024-03-28 20:28:02 +03:00
Ozkan Sezer 693c75e36e SDL_x11events.c: fix build if Xinput2 is not available after 3dfc3b4c8 2024-03-26 11:56:02 +03:00
Ozkan Sezer 0556362c38 SDL_windowsevents.c: comment out unused local mouse var after 70b5cd44 2024-03-26 11:47:32 +03:00
Ozkan Sezer 5a1c48be5c remove non-existent vulkan.hpp and vulkan_mir.h from Xcode project 2024-03-25 21:23:32 +03:00
Ozkan Sezer 888cc29df6 add missing reserved field to struct SDL_JoyBallEvent,
Fixes https://github.com/libsdl-org/SDL/issues/9327
2024-03-21 20:10:50 +03:00
Ozkan Sezer d86ff6c6c0 remove stale / wrong information from SDL_RWread() documentation 2024-03-08 18:55:40 +03:00
Ozkan Sezer 9e89f093d9 remove stale / wrong information from SDL_RWread() documentation 2024-03-08 18:55:19 +03:00
Ozkan Sezer 4d20b82850 SDL_RWFromFile, stdio: allow named pipes along with regular files.
Fixes https://github.com/libsdl-org/SDL/issues/9174

(cherry picked from commit 177a836653)
2024-03-06 18:51:20 +03:00
Ozkan Sezer 98bec6749f hidapi, windows: sync with mainstream: change MAX_STRING_WCHARS to 126.
This merges mainstream commit
https://github.com/libusb/hidapi/commit/4f2e91bae80cc48e567a80bd9ae3dc53dc5b73c6
(authored by Vladimir Gladkov) into ours. From the original commit log:

Win32 HID API doc says: For USB devices, the maximum string length is
126 wide characters (not including the terminating NULL character).

For certain USB devices, using a buffer larger or equal to 127 wchars
results in successful completion of HID API functions, but a broken
string is stored in the output buffer. This behaviour persists even if
HID API is bypassed and HID IOCTLs are passed to the HID driver directly
(IOCTL_HID_GET_MANUFACTURER_STRING, IOCTL_HID_GET_PRODUCT_STRING, etc).

So, the buffer MUST NOT exceed 126 wchars.

windows: refactor ULONGLONG hid_internal_get_info(...) ->
 hid_internal_detect_bus_type_result hid_internal_detect_bus_type(...)

hid_internal_detect_bus_type is now only responsible for detection of
the bus type; rename it accordingly. Also, mixing an internal flag and
DEV_INST into an ULONGLONG retval feels kinda hackish; use a cleaner
approach instead (add an internal flag to help distinguishing between
BLUETOOTH and BLE devices, then clear it once we are done).
2024-03-05 14:39:20 +03:00
Ozkan Sezer 26e3ca7387 hidapi: minor sync with mainstream (for sake of symmetry, only.) 2024-03-05 14:33:06 +03:00
Ozkan Sezer 3b7533f4a2 SDL_camera_v4l2: allow building against older kernel headers 2024-02-22 00:50:40 +03:00
Ozkan Sezer cb3a1a82d5 SDL_memcpy.c, SDL_memmove.c, SDL_memset.c: don't use gcc builtins if !HAVE_LIBC
__builtin_memcpy, as well as __builtin_memset and __builtin_memmove, needn't be
inlined but emitted as a libc call, leading to infinitely recursive calls.

Fixes https://github.com/libsdl-org/SDL/issues/9090
2024-02-20 01:23:18 +03:00
Ozkan Sezer 6efe5f30ed don't let SDL_render.c:render_drivers[] have an empty initializer list. 2024-02-15 20:55:04 +03:00
Ozkan Sezer aae2d22852 Check the SDL_VIDEO_RENDER_??? macros with #if instead of #ifdef
Allows users to disable them by defining them as 0.

Closes https://github.com/libsdl-org/SDL/issues/8996

(manual port of https://github.com/libsdl-org/SDL/pull/9063 to SDL3.0)
2024-02-15 20:55:02 +03:00
Ozkan Sezer 97d6e58a19 mark SDL_CleanupWindowTextureData as SDLCALL. 2024-02-11 18:55:40 +03:00
Ozkan Sezer ee5289ef09 mark SDL_ClipboardTextCallback as SDLCALL 2024-02-11 18:55:40 +03:00
Ozkan Sezer 168322f358 SDL_properties.c: mark CleanupFreeableProperty and CleanupSurface as SDLCALL 2024-02-11 17:29:20 +03:00
Ozkan Sezer c00b6a8e20 SDL_kmsdrmvideo.c: clean-up includes, add clarifying note after 5ab879f 2024-02-01 11:04:10 +03:00
Ozkan Sezer 2a4db8c415 SDL_rwops.c (SDL_IsRegularFile): fix WinRT build failure due to S_ISREG
(cherry picked from commit fcd1c155cc)
2024-01-28 02:22:00 +03:00
Ozkan Sezer 019dc53764 SDL_RWFromFile, stdio: reject if the file is not a regular file.
Fixes https://github.com/libsdl-org/SDL/issues/8935
(cherry picked from commit 230ae797a7)
2024-01-28 01:44:50 +03:00
Ozkan Sezer 5ab879f89a SDL_kmsdrmvideo.c: move SDL_kmsdrmvulkan.h include to before all others
Fixes vulkan redefinition errors:

In file included from /tmp/SDL3/src/video/kmsdrm/.././khronos/vulkan/vulkan.h:11,
                 from /tmp/SDL3/src/video/kmsdrm/../SDL_vulkan_internal.h:52,
                 from /tmp/SDL3/src/video/kmsdrm/SDL_kmsdrmvulkan.h:32,
                 from /tmp/SDL3/src/video/kmsdrm/SDL_kmsdrmvideo.c:44:
/tmp/SDL3/src/video/kmsdrm/.././khronos/vulkan/vulkan_core.h:101: error: redefinition of typedef ‘VkInstance’
/tmp/SDL3/include/SDL3/SDL_vulkan.h:52: note: previous declaration of ‘VkInstance’ was here
In file included from /tmp/SDL3/src/video/kmsdrm/.././khronos/vulkan/vulkan.h:11,
                 from /tmp/SDL3/src/video/kmsdrm/../SDL_vulkan_internal.h:52,
                 from /tmp/SDL3/src/video/kmsdrm/SDL_kmsdrmvulkan.h:32,
                 from /tmp/SDL3/src/video/kmsdrm/SDL_kmsdrmvideo.c:44:
/tmp/SDL3/src/video/kmsdrm/.././khronos/vulkan/vulkan_core.h:7513: error: redefinition of typedef ‘VkSurfaceKHR’
/tmp/SDL3/include/SDL3/SDL_vulkan.h:53: note: previous declaration of ‘VkSurfaceKHR’ was here
make[2]: *** [CMakeFiles/SDL3-shared.dir/src/video/kmsdrm/SDL_kmsdrmvideo.c.o] Error 1
2024-01-26 03:20:14 +03:00
Ozkan Sezer 205c417f74 testgles2.c, testgles2_sdf.c: adjust for new SDL_PLATFORM_WINDOWS meaning. 2024-01-24 21:20:50 +03:00
Ozkan Sezer 6b3b7c7d4b SDL_hidapi_ps3.c: adjust for new SDL_PLATFORM_WINDOWS meaning. 2024-01-24 21:20:50 +03:00
Ozkan Sezer 81314c4998 SDL_render_gl.c: adjust for new SDL_PLATFORM_WINDOWS meaning. 2024-01-24 21:20:50 +03:00
Ozkan Sezer 1c79edbe02 SDL_test_memory.c: adjust for new SDL_PLATFORM_WINDOWS meaning. 2024-01-24 21:20:50 +03:00
Ozkan Sezer 07a0c0e402 SDL_hidapi.c: adjust for new SDL_PLATFORM_WINDOWS meaning. 2024-01-24 21:20:50 +03:00
Ozkan Sezer 34f03207c4 SDL_cpuinfo.c: adjust for new SDL_PLATFORM_WINDOWS meaning. 2024-01-24 21:20:50 +03:00
Ozkan Sezer fd6ec3b9aa SDL_intrin.h: adjust for new SDL_PLATFORM_WINDOWS meaning. 2024-01-24 21:20:50 +03:00
Ozkan Sezer 2654c52d0e macro SDL_PLATFORM_WINDOWS now means Win32 api and Windows-based OS's.
macro SDL_PLATFORM_WIN32 means desktop windows, i.e. anything other than
WinRT or GDK, etc.
2024-01-24 21:20:50 +03:00
Ozkan Sezer 12b01ef674 rename_macros.py: fix typo for __WIN32__ 2024-01-24 20:10:00 +03:00
Ozkan Sezer c5792cc0de SDL_thread.h: replace uses of __GDK__ and __WINRT__ (missed in #8875.) 2024-01-24 06:28:10 +03:00
Ozkan Sezer 4fdc291f5d Add spaces around SDL_PRI??? to avoid potential compiler warnings. 2024-01-18 23:41:10 +03:00
Ozkan Sezer f7ba340999 remove several instances of unnecessary emptry str "" after SDL_PRI??? 2024-01-18 17:25:50 +03:00
Ozkan Sezer f8cce4ead4 SDL_windowsevents.c: fixed -Werror=unused-variable 2024-01-12 18:56:10 +03:00
Ozkan Sezer b4b5dbd92f testcontroller.c: fixed warnings. 2024-01-03 14:40:20 +03:00
Ozkan Sezer e482f00a17 SDL_string.c (SDL_vsscanf): fix gcc build 2023-12-06 01:32:00 +03:00
Ozkan Sezer 63d4bd4e57 SDL_SendKeyboardText: remove workaround from 1e12d7c, fix use of iscntrl 2023-11-29 00:39:24 +03:00
Ozkan Sezer 2f806c89b5 initial import of hidapi netbsd uhid native backend from mainstream
https://github.com/libusb/hidapi/commit/c19ae126d8856b55af34d64ee11641920475961c
https://github.com/libusb/hidapi/pull/612
2023-11-26 20:20:28 +03:00
Ozkan Sezer d486de6349 cmake: fixed iconv detection test program
Fixes https://github.com/libsdl-org/SDL/issues/8614
2023-11-26 01:55:28 +03:00
Ozkan Sezer 08fac5b1b2 SDL_PenModifyForWacomID: return zero as axis_flags upon failure.
Fixes uninitialized warning in testautomation_pen.c:
testautomation_pen.c:1512: warning: 'mask' may be used uninitialized in this function
2023-11-23 11:56:50 +03:00
Ozkan Sezer aaba01aee4 hidapi: syncing with mainstream:
- macos, pthread_barrier_wait: properly check the wait condition
- windows: Assert that struct has the correct size
- windows: Fix printf/string-related issues
- other miscellaneous stuff irrelevant in SDL. (for symmetry...)
2023-11-23 11:35:02 +03:00
Ozkan Sezer 5730eb67f0 add HAVE_GCC_DIAGNOSTIC_PRAGMA to SDL_internal.h, use it 2023-11-23 11:33:20 +03:00
Ozkan Sezer 42c8366fdc revise iconv detection:
- check libiconv with a linkage test with iconv.h included
- check libc iconv with a linkage test with iconv.h included
  and LIBICONV_PLUG defined (in case libiconv header is in
  include path)
- add new configuration option to prefer iconv from libiconv,
  if available, over the libc version: SDL_LIBICONV, defaults
  to disabled.
- remove FindIconv + pkg_check_modules for iconv, and use our
  manual iconv finding only
- change FreeBSD specific LIBICONV_PLUG define in SDL_iconv.c
  to configuration result.
2023-11-23 04:30:56 +03:00
Ozkan Sezer 53544cabaa psp: fix copy/paste error from SDL2 in PSP_VideoQuit(). 2023-11-23 04:11:24 +03:00
Ozkan Sezer d1def7f033 cmake: add openbsd wscons sources to build, if supported 2023-11-22 06:21:28 +03:00
Ozkan Sezer 86d77bbcc5 kmsdrm: restrict KMSDRM_ReleaseVT/KMSDRM_AcquireVT to SDL_INPUT_LINUXEV 2023-11-22 06:21:28 +03:00
Ozkan Sezer 94ad1a4ae4 SDL_bsdjoystick.c: fix -Wundef warning. 2023-11-22 06:21:28 +03:00
Ozkan Sezer 39870031d1 use format string attributes for functions accepting va_list params, too 2023-11-17 15:56:10 +03:00
Ozkan Sezer 45fc828c95 move SDL_EVENT_WINDOW_PEN_ENTER and SDL_EVENT_WINDOW_PEN_LEAVE down
... to preserve compatibility with sdl2-compat.
2023-11-12 12:22:43 -08:00
Ozkan Sezer 5f920d6639 fix emscripten build after commit 07cb7c10 2023-11-07 07:55:30 +03:00
Ozkan Sezer c132295ad7 SDL_FlushEventMemory is not a public procedure. 2023-11-06 17:40:56 +03:00
Ozkan Sezer d2e005ee13 dynapi: remove duplicated SDL_LoadWAV entries 2023-11-05 20:32:50 +03:00
Ozkan Sezer 1a83bf2399 fix a possible memory leak in SDL_vasprintf() 2023-11-05 20:01:02 +03:00
Ozkan Sezer 5e869d1b35 fix Cocoa_Vulkan_GetInstanceExtensions prototype for Mac 2023-11-02 22:12:56 +03:00
Ozkan Sezer 338974bb29 SDL_test_memory.c: fix build against older windows SDKs. 2023-11-02 21:00:02 +03:00
Ozkan Sezer a9aa15c792 CI: change FreeBSD CI runner to cross-platform-actions. 2023-10-26 01:03:40 +03:00
Ozkan Sezer f7dc63bcc3 audio: another windows wasapi build fix. 2023-10-18 18:32:00 +03:00
Ozkan Sezer dd98330076 audio: fix windows wasapi build. 2023-10-18 18:20:00 +03:00
Ozkan Sezer 86ada8a9f0 fix testffmpeg.c build. 2023-10-10 14:02:40 +03:00
Ozkan Sezer 47cba08259 VisualC/pkg-support/cmake: remove subdir from public header include path 2023-09-30 14:33:02 +03:00
Ozkan Sezer 86505ea630 fix SDL_AudioStreamCallback documentation 2023-09-13 18:35:30 +03:00
Ozkan Sezer 1d8dfbb223 avoid type redefinition errors after PR/8181 2023-09-04 21:29:40 +03:00
Ozkan Sezer 923d612ca1 hidapi: sync macOS code with mainstream.
this merges mainstream commit 4009466d59c41f (mainstream PR/611)
2023-08-27 22:33:32 +03:00
Ozkan Sezer 363f4fa9c1 avoid type redefinition errors after commit ee806597b9.
(Reference issue: https://github.com/libsdl-org/SDL/issues/8142)
2023-08-27 22:22:10 +03:00
Ozkan Sezer 3b1d1e4e31 hidapi: sync the hidraw changes with mainstream
Apply mainstream commit 8a4de63b (mainstream PR/601) to our hidapi.
The patch is a direct apply of the mentioned commit, with one sdl-
specific part guarded by HIDAPI_IGNORE_DEVICE adapted accordingly.
2023-08-26 08:09:10 -07:00
Ozkan Sezer f617918e0a cmake: check linkage to libusb too, instead of libusb.h presence only.
avoids false positives when using a cross-toolchain file
2023-08-26 17:03:42 +02:00
Ozkan Sezer d86d02bbbf updated dynapi after SDL_GDKGetDefaultUser addition 2023-08-25 19:03:32 +03:00
Ozkan Sezer f464eb2c54 SDL_hidapi.c: change 'use_libusb_whitelist_default' into a macro.
Avoids 'initializer element is not constant' error from older compilers.
2023-08-14 17:01:24 +03:00
Ozkan Sezer f3cb46b083 SDL_thread.h: do not conflict with sdl2-compat::sdl3_include_wrapper.h
The windows hacks in there will not be needed any longer
2023-08-06 14:11:02 +03:00
Ozkan Sezer 2ba03b4db0 fix build after previous commit. 2023-08-05 18:15:10 +03:00
Ozkan Sezer 0026adffd4 apply force_align_arg_pointer attribute to correct version of SDL_RunApp 2023-08-05 18:10:10 +03:00
Ozkan Sezer 77446e2029 Unaligned stacks on i686-w64-mingw32 may lead to crashes
Port of original SDL2 patch by Christopher Wellons (@skeeto, #7607)
to SDL3.
2023-08-05 17:39:30 +03:00
Ozkan Sezer fb3ab3f113 SDL_video.c: move ngage video before offscreen.
Reference issue: https://github.com/libsdl-org/SDL/pull/8069.
2023-08-02 17:02:02 +03:00
Ozkan Sezer a509771a87 fix ios CI workflow after commit e4460e897f 2023-08-01 08:51:02 +03:00
Ozkan Sezer d3f2de7f29 fixed typo in prev. patch. 2023-07-28 07:35:04 +03:00
Ozkan Sezer 12b35c6a46 test/testnativecocoa.m: fixed deprecation warnings. 2023-07-28 07:20:50 +03:00
Ozkan Sezer 4ca0e937e1 hidapi: remove unwanted files (e.g.: .git*, etc...) 2023-07-19 00:55:04 +03:00
Ozkan Sezer 40ac818bf8 hidapi: sync with mainstream (typo fixes) 2023-07-19 00:40:10 +03:00
Ozkan Sezer 611b3dd1fd remove unused vulkan/*.hpp files. 2023-07-17 00:10:50 +03:00
Ozkan Sezer 133482a2c0 pulseaudio: eliminate <pulse/simple.h> include.
(cherry picked from commit 776a5e0d25)
2023-07-13 01:55:24 +03:00
Ozkan Sezer b3861650d3 need pulseaudio >=0.9.15. call pa_threaded_mainloop_set_name only if available. 2023-07-12 21:39:04 +03:00
Ozkan Sezer 1e50823a14 fixed linux build. 2023-07-10 20:35:50 +03:00
Ozkan Sezer 02398a8f11 Allow building against old Linux kernels. 2023-06-26 18:01:50 +03:00
Ozkan Sezer e4f53e6b21 testevdev.c: comment out two unused data to fix build. 2023-06-17 01:01:10 +03:00
Ozkan Sezer 4cfacd5cb7 SDL_dynapi.c: minor cosmetics. 2023-06-10 20:50:02 +03:00
Ozkan Sezer 0c862d9a55 added compiler support comment about #pragma push_macro/pop_macro. 2023-06-03 17:23:40 +03:00
Ozkan Sezer 8c476ca1b0 hidapi/libusb: need libusb >= 1.0.16 because of libusb_get_port_numbers 2023-06-02 07:26:38 -07:00
Ozkan Sezer e27c10a5b1 hidapi/libusb: don't try to dlsym libusb_wrap_sys_device
not used in SDL.
2023-06-02 07:26:38 -07:00
Ozkan Sezer 3ecdbf27cc hidapi: silence redefinition warnings 2023-06-02 07:25:02 -07:00
Ozkan Sezer e9e4a9175f testautomation_guid.c: fix integer warning in 32 bit builds. 2023-05-31 04:50:02 +03:00
Ozkan Sezer 9b147eb80b SDL_x11window.c: apply missing SDL2-to-SDL3 portage to fix build. 2023-05-31 01:55:50 +03:00
Ozkan Sezer c521e1286b SDL_dbus.h: define DBUS_TIMEOUT_USE_DEFAULT if not already defined. 2023-05-31 01:55:40 +03:00
Ozkan Sezer 20dfb7df2c hidapi/linux/hid.c: define BUS_SPI if not already defined. 2023-05-31 01:55:40 +03:00
Ozkan Sezer 77e59d4fa9 fixed build error due to -Wunused-function 2023-05-27 18:56:10 +03:00
Ozkan Sezer 8ea76ba116 move diagnostic pragma out of the function for old gcc versions. 2023-05-27 18:40:56 +03:00
Ozkan Sezer a8a72de6fb fix mingw build failures in CI with clang-tidy. 2023-05-26 23:55:04 +03:00
Ozkan Sezer 5c019bc97e style fixes for SDL_PROC macros. 2023-05-19 14:10:02 +03:00
Ozkan Sezer ef2ad2b0c6 windows/SDL_sysfilesystem.c: fix SHGetKnownFolderPath calling convention 2023-05-08 11:55:32 +03:00