[arch-commits] Commit in sdl2/repos/extra-x86_64 (PKGBUILD PKGBUILD fix-hidapi.patch)

Jan Steffens heftig at gemini.archlinux.org
Sat Dec 25 01:04:27 UTC 2021


    Date: Saturday, December 25, 2021 @ 01:04:27
  Author: heftig
Revision: 433048

archrelease: copy trunk to extra-x86_64

Added:
  sdl2/repos/extra-x86_64/PKGBUILD
    (from rev 433047, sdl2/trunk/PKGBUILD)
Deleted:
  sdl2/repos/extra-x86_64/PKGBUILD
  sdl2/repos/extra-x86_64/fix-hidapi.patch

------------------+
 PKGBUILD         |  101 +++++++++++++++-----------------
 fix-hidapi.patch |  165 -----------------------------------------------------
 2 files changed, 49 insertions(+), 217 deletions(-)

Deleted: PKGBUILD
===================================================================
--- PKGBUILD	2021-12-25 01:04:17 UTC (rev 433047)
+++ PKGBUILD	2021-12-25 01:04:27 UTC (rev 433048)
@@ -1,52 +0,0 @@
-# Maintainer: Sven-Hendrik Haase <svenstaro at gmail.com>
-
-pkgname=sdl2
-pkgver=2.0.18
-pkgrel=2
-pkgdesc="A library for portable low-level access to a video framebuffer, audio output, mouse, and keyboard (Version 2)"
-arch=('x86_64')
-url="https://www.libsdl.org"
-license=('MIT')
-depends=('glibc' 'libxext' 'libxrender' 'libx11' 'libgl' 'libxcursor' 'libibus' 'hidapi' 'libusb')
-makedepends=('alsa-lib' 'mesa' 'libpulse' 'libxrandr' 'libxinerama' 'wayland' 'libxkbcommon'
-             'wayland-protocols' 'ibus' 'fcitx' 'libxss' 'cmake' 'jack' 'ninja' 'pipewire'
-             'libdecor')
-optdepends=('alsa-lib: ALSA audio driver'
-            'libpulse: PulseAudio audio driver'
-            'jack: JACK audio driver'
-            'pipewire: PipeWire audio driver'
-            'libdecor: Wayland client decorations')
-source=("https://www.libsdl.org/release/SDL2-${pkgver}.tar.gz"{,.sig}
-        sdl2-wayland1.20.patch::https://github.com/libsdl-org/SDL/pull/5092.patch)
-sha512sums=('8688b855ce15d574fb0726dd2a44109bb7b34d81c652c51025a32bf7eb7015ceb685834cf9fc3f97a2f5f5a3203f548ce6845420fafae7e5dc6bb9d11ce1740d'
-            'SKIP'
-            'efa2d01a5861f99597eac0cff7e67efc03bd3877d8ad53d711b1ab54a59f93ef5bc6ffe776b9ac7e3103688a56f79e7d0e4155852dedd0d1982a1e334a2f8d37')
-validpgpkeys=('1528635D8053A57F77D1E08630A59377A7763BE6') # Sam Lantinga
-
-prepare() {
-  cd SDL2-${pkgver}
-  patch -Np1 -i "$srcdir"/sdl2-wayland1.20.patch
-}
-
-build() {
-  cd SDL2-${pkgver}
-  cmake \
-      -Bbuild \
-      -GNinja \
-      -DCMAKE_INSTALL_PREFIX=/usr \
-      -DSDL_STATIC=OFF \
-      -DSDL_DLOPEN=ON \
-      -DSDL_RPATH=OFF
-  ninja -C build
-}
-
-package() {
-  cd SDL2-${pkgver}
-  DESTDIR="${pkgdir}" ninja -C build install
-
-  sed -i "s/libSDL2\.a/libSDL2main.a/g" "$pkgdir"/usr/lib/cmake/SDL2/SDL2Targets-noconfig.cmake
-
-  install -Dm644 LICENSE.txt "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
-}
-
-# vim: ts=2 sw=2 et:

Copied: sdl2/repos/extra-x86_64/PKGBUILD (from rev 433047, sdl2/trunk/PKGBUILD)
===================================================================
--- PKGBUILD	                        (rev 0)
+++ PKGBUILD	2021-12-25 01:04:27 UTC (rev 433048)
@@ -0,0 +1,49 @@
+# Maintainer: Sven-Hendrik Haase <svenstaro at gmail.com>
+
+pkgname=sdl2
+pkgver=2.0.18
+pkgrel=3
+pkgdesc="A library for portable low-level access to a video framebuffer, audio output, mouse, and keyboard (Version 2)"
+arch=('x86_64')
+url="https://www.libsdl.org"
+license=('MIT')
+depends=('glibc' 'libxext' 'libxrender' 'libx11' 'libgl' 'libxcursor' 'libibus' 'hidapi' 'libusb')
+makedepends=('alsa-lib' 'mesa' 'libpulse' 'libxrandr' 'libxinerama' 'wayland' 'libxkbcommon'
+             'wayland-protocols' 'ibus' 'fcitx' 'libxss' 'cmake' 'jack' 'ninja' 'pipewire'
+             'libdecor')
+optdepends=('alsa-lib: ALSA audio driver'
+            'libpulse: PulseAudio audio driver'
+            'jack: JACK audio driver'
+            'pipewire: PipeWire audio driver'
+            'libdecor: Wayland client decorations')
+source=("https://www.libsdl.org/release/SDL2-${pkgver}.tar.gz"{,.sig}
+        sdl2-wayland1.20.patch::https://github.com/libsdl-org/SDL/pull/5092.patch)
+sha512sums=('8688b855ce15d574fb0726dd2a44109bb7b34d81c652c51025a32bf7eb7015ceb685834cf9fc3f97a2f5f5a3203f548ce6845420fafae7e5dc6bb9d11ce1740d'
+            'SKIP'
+            'efa2d01a5861f99597eac0cff7e67efc03bd3877d8ad53d711b1ab54a59f93ef5bc6ffe776b9ac7e3103688a56f79e7d0e4155852dedd0d1982a1e334a2f8d37')
+validpgpkeys=('1528635D8053A57F77D1E08630A59377A7763BE6') # Sam Lantinga
+
+prepare() {
+  cd SDL2-${pkgver}
+  patch -Np1 -i "$srcdir"/sdl2-wayland1.20.patch
+}
+
+build() {
+  CFLAGS+=" -ffat-lto-objects"
+  cmake -S SDL2-${pkgver} -B build -G Ninja \
+    -D CMAKE_INSTALL_PREFIX=/usr \
+    -D SDL_STATIC=OFF \
+    -D SDL_DLOPEN=ON \
+    -D SDL_RPATH=OFF
+  cmake --build build
+}
+
+package() {
+  DESTDIR="${pkgdir}" cmake --install build
+
+  sed -i "s/libSDL2\.a/libSDL2main.a/g" "$pkgdir"/usr/lib/cmake/SDL2/SDL2Targets-noconfig.cmake
+
+  install -Dm644 SDL2-${pkgver}/LICENSE.txt "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+}
+
+# vim:set ts=2 sw=2 et:

Deleted: fix-hidapi.patch
===================================================================
--- fix-hidapi.patch	2021-12-25 01:04:17 UTC (rev 433047)
+++ fix-hidapi.patch	2021-12-25 01:04:27 UTC (rev 433048)
@@ -1,165 +0,0 @@
---- a/src/hidapi/SDL_hidapi.c	Sun Jun 28 17:45:07 2020 -0400
-+++ a/src/hidapi/SDL_hidapi.c	Mon Jul 06 10:47:27 2020 +0200
-@@ -301,7 +301,7 @@ 
- #include "hidapi.h"
- 
- struct hidapi_backend {
--#define F(x) typeof(x) *x
-+#define F(x) __typeof__(x) *x
-     F(hid_write);
-     F(hid_read_timeout);
-     F(hid_read);
-@@ -458,8 +458,9 @@ 
- #ifdef SDL_LIBUSB_DYNAMIC
-     libusb_ctx.libhandle = SDL_LoadObject(SDL_LIBUSB_DYNAMIC);
-     if (libusb_ctx.libhandle != NULL) {
-+        SDL_bool loaded = SDL_TRUE;
-         #define LOAD_LIBUSB_SYMBOL(func) \
--            libusb_ctx.func = SDL_LoadFunction(libusb_ctx.libhandle, "libusb_" #func);
-+            if (!(libusb_ctx.func = SDL_LoadFunction(libusb_ctx.libhandle, "libusb_" #func))) {loaded = SDL_FALSE;}
-         LOAD_LIBUSB_SYMBOL(init)
-         LOAD_LIBUSB_SYMBOL(exit)
-         LOAD_LIBUSB_SYMBOL(get_device_list)
-@@ -488,9 +489,17 @@ 
-         LOAD_LIBUSB_SYMBOL(handle_events_completed)
-         #undef LOAD_LIBUSB_SYMBOL
- 
--        if ((err = LIBUSB_hid_init()) < 0) {
-+        if (loaded == SDL_TRUE) {
-+            if ((err = LIBUSB_hid_init()) < 0) {
-+                SDL_UnloadObject(libusb_ctx.libhandle);
-+                libusb_ctx.libhandle = NULL;
-+                return err;
-+            }
-+        } else {
-             SDL_UnloadObject(libusb_ctx.libhandle);
--            return err;
-+            libusb_ctx.libhandle = NULL;
-+            /* SDL_LogWarn(SDL_LOG_CATEGORY_INPUT, SDL_LIBUSB_DYNAMIC " found but could not load function."); */
-+            /* ignore error: continue without libusb */
-         }
-     }
- #endif /* SDL_LIBUSB_DYNAMIC */
-@@ -502,13 +511,16 @@ 
-     if (udev_ctx && (err = PLATFORM_hid_init()) < 0) {
- #ifdef SDL_LIBUSB_DYNAMIC
-         if (libusb_ctx.libhandle) {
-+            LIBUSB_hid_exit();
-             SDL_UnloadObject(libusb_ctx.libhandle);
-+            libusb_ctx.libhandle = NULL;
-         }
- #endif /* SDL_LIBUSB_DYNAMIC */
-         return err;
-     }
- #endif /* HAVE_PLATFORM_BACKEND */
- 
-+    SDL_hidapi_wasinit = SDL_TRUE;
-     return 0;
- }
- 
-@@ -519,6 +531,7 @@ 
-     if (SDL_hidapi_wasinit == SDL_FALSE) {
-         return 0;
-     }
-+    SDL_hidapi_wasinit = SDL_FALSE;
- 
- #if HAVE_PLATFORM_BACKEND
-     if (udev_ctx) {
-@@ -529,6 +542,7 @@ 
-     if (libusb_ctx.libhandle) {
-         err |= LIBUSB_hid_exit(); /* Ehhhhh */
-         SDL_UnloadObject(libusb_ctx.libhandle);
-+        libusb_ctx.libhandle = NULL;
-     }
- #endif /* SDL_LIBUSB_DYNAMIC */
-     return err;
-@@ -546,16 +560,30 @@ 
- #endif
-     struct hid_device_info *devs = NULL, *last = NULL, *new_dev;
- 
--    if (SDL_hidapi_wasinit == SDL_FALSE) {
--        hid_init();
-+    if (hid_init() != 0) {
-+        return NULL;
-     }
- 
- #ifdef SDL_LIBUSB_DYNAMIC
-     if (libusb_ctx.libhandle) {
-         usb_devs = LIBUSB_hid_enumerate(vendor_id, product_id);
-+  #ifdef DEBUG_HIDAPI
-+        SDL_Log("libusb devices found:");
-+  #endif
-         for (usb_dev = usb_devs; usb_dev; usb_dev = usb_dev->next) {
-             new_dev = (struct hid_device_info*) SDL_malloc(sizeof(struct hid_device_info));
-+            if (!new_dev) {
-+                LIBUSB_hid_free_enumeration(usb_devs);
-+                hid_free_enumeration(devs);
-+                SDL_OutOfMemory();
-+                return NULL;
-+            }
-             LIBUSB_CopyHIDDeviceInfo(usb_dev, new_dev);
-+  #ifdef DEBUG_HIDAPI
-+            SDL_Log(" - %ls %ls 0x%.4hx 0x%.4hx",
-+                    usb_dev->manufacturer_string, usb_dev->product_string,
-+                    usb_dev->vendor_id, usb_dev->product_id);
-+  #endif
- 
-             if (last != NULL) {
-                 last->next = new_dev;
-@@ -570,8 +598,16 @@ 
- #if HAVE_PLATFORM_BACKEND
-     if (udev_ctx) {
-         raw_devs = PLATFORM_hid_enumerate(vendor_id, product_id);
-+#ifdef DEBUG_HIDAPI
-+        SDL_Log("hidraw devices found:");
-+#endif
-         for (raw_dev = raw_devs; raw_dev; raw_dev = raw_dev->next) {
-             SDL_bool bFound = SDL_FALSE;
-+#ifdef DEBUG_HIDAPI
-+            SDL_Log(" - %ls %ls 0x%.4hx 0x%.4hx",
-+                    raw_dev->manufacturer_string, raw_dev->product_string,
-+                    raw_dev->vendor_id, raw_dev->product_id);
-+#endif
- #ifdef SDL_LIBUSB_DYNAMIC
-             for (usb_dev = usb_devs; usb_dev; usb_dev = usb_dev->next) {
-                 if (raw_dev->vendor_id == usb_dev->vendor_id &&
-@@ -584,6 +620,17 @@ 
- #endif
-             if (!bFound) {
-                 new_dev = (struct hid_device_info*) SDL_malloc(sizeof(struct hid_device_info));
-+                if (!new_dev) {
-+#ifdef SDL_LIBUSB_DYNAMIC
-+                    if (libusb_ctx.libhandle) {
-+                        LIBUSB_hid_free_enumeration(usb_devs);
-+                    }
-+#endif
-+                    PLATFORM_hid_free_enumeration(raw_devs);
-+                    hid_free_enumeration(devs);
-+                    SDL_OutOfMemory();
-+                    return NULL;
-+                }
-                 PLATFORM_CopyHIDDeviceInfo(raw_dev, new_dev);
-                 new_dev->next = NULL;
- 
-@@ -624,8 +671,8 @@ 
- {
-     hid_device *pDevice = NULL;
- 
--    if (SDL_hidapi_wasinit == SDL_FALSE) {
--        hid_init();
-+    if (hid_init() != 0) {
-+        return NULL;
-     }
- 
- #if HAVE_PLATFORM_BACKEND
-@@ -651,8 +698,8 @@ 
- {
-     hid_device *pDevice = NULL;
- 
--    if (SDL_hidapi_wasinit == SDL_FALSE) {
--        hid_init();
-+    if (hid_init() != 0) {
-+        return NULL;
-     }
- 
- #if HAVE_PLATFORM_BACKEND



More information about the arch-commits mailing list