git: 6d5ea5b1e6a1 - main - devel/sdl3: Fix joystick support
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sat, 15 Mar 2025 01:38:20 UTC
The branch main has been updated by amdmi3:
URL: https://cgit.FreeBSD.org/ports/commit/?id=6d5ea5b1e6a167cb9759d26df2cf32273be543aa
commit 6d5ea5b1e6a167cb9759d26df2cf32273be543aa
Author: Dmitry Marakasov <amdmi3@FreeBSD.org>
AuthorDate: 2025-03-07 19:09:55 +0000
Commit: Dmitry Marakasov <amdmi3@FreeBSD.org>
CommitDate: 2025-03-15 01:34:40 +0000
devel/sdl3: Fix joystick support
PR: 284919
Submitted by: bsdcode@disroot.org
---
devel/sdl3/Makefile | 5 +++--
devel/sdl3/files/patch-cmake_FindLibUSB.cmake | 11 +++++++++++
devel/sdl3/files/patch-src_hidapi_SDL__hidapi.c | 20 ++++++++++++++++++++
devel/sdl3/pkg-plist | 2 ++
4 files changed, 36 insertions(+), 2 deletions(-)
diff --git a/devel/sdl3/Makefile b/devel/sdl3/Makefile
index 311a11b1685a..2344b70e28fc 100644
--- a/devel/sdl3/Makefile
+++ b/devel/sdl3/Makefile
@@ -1,7 +1,7 @@
PORTNAME= sdl3
DISTVERSIONPREFIX= release-
DISTVERSION= 3.2.8
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= devel
MAINTAINER= amdmi3@FreeBSD.org
@@ -12,7 +12,7 @@ WWW= https://www.libsdl.org/ \
LICENSE= ZLIB
LICENSE_FILE= ${WRKSRC}/LICENSE.txt
-USES= cmake iconv pkgconfig
+USES= cmake iconv localbase pkgconfig
USE_GITHUB= yes
GH_ACCOUNT= libsdl-org
GH_PROJECT= SDL
@@ -36,6 +36,7 @@ OPTIONS_DEFINE_powerpc= ALTIVEC
OPTIONS_DEFINE_powerpc64= ALTIVEC
OPTIONS_DEFAULT_powerpc= ALTIVEC
OPTIONS_DEFAULT_powerpc64= ALTIVEC
+OPTIONS_SUB= yes
AUDIO_DESC= Audio drivers
VIDEO_DESC= Video drivers
diff --git a/devel/sdl3/files/patch-cmake_FindLibUSB.cmake b/devel/sdl3/files/patch-cmake_FindLibUSB.cmake
new file mode 100644
index 000000000000..e3d17818a63d
--- /dev/null
+++ b/devel/sdl3/files/patch-cmake_FindLibUSB.cmake
@@ -0,0 +1,11 @@
+--- cmake/FindLibUSB.cmake.orig 2025-03-04 22:37:06 UTC
++++ cmake/FindLibUSB.cmake
+@@ -10,7 +10,7 @@ find_library(LibUSB_LIBRARY
+ endif()
+
+ find_library(LibUSB_LIBRARY
+- NAMES usb-1.0 libusb-1.0
++ NAMES usb-1.0 libusb-1.0 usb
+ HINTS ${PC_LibUSB_LIBRARY_DIRS}
+ )
+
diff --git a/devel/sdl3/files/patch-src_hidapi_SDL__hidapi.c b/devel/sdl3/files/patch-src_hidapi_SDL__hidapi.c
new file mode 100644
index 000000000000..d5dcefd07e25
--- /dev/null
+++ b/devel/sdl3/files/patch-src_hidapi_SDL__hidapi.c
@@ -0,0 +1,20 @@
+--- src/hidapi/SDL_hidapi.c.orig 2025-03-04 22:37:06 UTC
++++ src/hidapi/SDL_hidapi.c
+@@ -710,7 +710,7 @@ static struct
+ );
+ void (LIBUSB_CALL *free_config_descriptor)(struct libusb_config_descriptor *config);
+ uint8_t (LIBUSB_CALL *get_bus_number)(libusb_device *dev);
+- int (LIBUSB_CALL *get_port_numbers)(libusb_device *dev, uint8_t *port_numbers, int port_numbers_len);
++ int (LIBUSB_CALL *get_port_numbers)(libusb_device *dev, uint8_t *port_numbers, uint8_t port_numbers_len);
+ uint8_t (LIBUSB_CALL *get_device_address)(libusb_device *dev);
+ int (LIBUSB_CALL *open)(libusb_device *dev, libusb_device_handle **dev_handle);
+ void (LIBUSB_CALL *close)(libusb_device_handle *dev_handle);
+@@ -1188,7 +1188,7 @@ int SDL_hid_init(void)
+ LOAD_LIBUSB_SYMBOL(int (LIBUSB_CALL *)(libusb_device *, uint8_t, struct libusb_config_descriptor **), get_config_descriptor)
+ LOAD_LIBUSB_SYMBOL(void (LIBUSB_CALL *)(struct libusb_config_descriptor *), free_config_descriptor)
+ LOAD_LIBUSB_SYMBOL(uint8_t (LIBUSB_CALL *)(libusb_device *), get_bus_number)
+- LOAD_LIBUSB_SYMBOL(int (LIBUSB_CALL *)(libusb_device *dev, uint8_t *port_numbers, int port_numbers_len), get_port_numbers)
++ LOAD_LIBUSB_SYMBOL(int (LIBUSB_CALL *)(libusb_device *dev, uint8_t *port_numbers, uint8_t port_numbers_len), get_port_numbers)
+ LOAD_LIBUSB_SYMBOL(uint8_t (LIBUSB_CALL *)(libusb_device *), get_device_address)
+ LOAD_LIBUSB_SYMBOL(int (LIBUSB_CALL *)(libusb_device *, libusb_device_handle **), open)
+ LOAD_LIBUSB_SYMBOL(void (LIBUSB_CALL *)(libusb_device_handle *), close)
diff --git a/devel/sdl3/pkg-plist b/devel/sdl3/pkg-plist
index efd56a8c7eb4..92c49fdbb024 100644
--- a/devel/sdl3/pkg-plist
+++ b/devel/sdl3/pkg-plist
@@ -83,6 +83,8 @@ include/SDL3/SDL_tray.h
include/SDL3/SDL_version.h
include/SDL3/SDL_video.h
include/SDL3/SDL_vulkan.h
+%%HIDAPI%%lib/cmake/SDL3/FindLibUSB.cmake
+%%HIDAPI%%lib/cmake/SDL3/PkgConfigHelper.cmake
lib/cmake/SDL3/SDL3Config.cmake
lib/cmake/SDL3/SDL3ConfigVersion.cmake
lib/cmake/SDL3/SDL3headersTargets.cmake