# # spec file for package hidapi # # Copyright (c) 2023 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via https://bugs.opensuse.org/ # %define sover 0 Name: hidapi Version: 0.14.0 Release: 1.3 Summary: Simple library for communicating with USB and Bluetooth HID devices License: BSD-3-Clause OR GPL-3.0-or-later Group: System/Libraries URL: https://github.com/libusb/hidapi Source: https://github.com/libusb/hidapi/archive/%{name}-%{version}.tar.gz # PATCH-FIX-OPENSUSE do_not_install_docs.patch -- don't let make install put files into /usr/share/doc/packages Patch0: do_not_install_docs.patch BuildRequires: autoconf BuildRequires: automake BuildRequires: gcc-c++ BuildRequires: libtool BuildRequires: libusb-1_0-devel BuildRequires: make BuildRequires: pkgconfig BuildRequires: pkgconfig(libudev) %description HIDAPI is a library which allows an application to interface with USB and Bluetooth HID-Class devices. While it can be used to communicate with standard HID devices like keyboards, mice, and Joysticks, it is most useful when used with custom (Vendor-Defined) HID devices. %package -n libhidapi-devel Summary: Development libraries and header files for hidapi Group: Development/Libraries/C and C++ Requires: glibc-devel Requires: libhidapi-hidraw%{sover} = %{version} Requires: libhidapi-libusb%{sover} = %{version} Requires: libudev-devel Requires: libusb-1_0-devel %description -n libhidapi-devel This package contains the header files and libraries for building programs using the hidapi library. %package -n libhidapi-hidraw%{sover} Summary: Simple library for communicating with USB and Bluetooth HID devices Group: System/Libraries %description -n libhidapi-hidraw%{sover} HIDAPI is a library which allows an application to interface with USB and Bluetooth HID-Class devices. While it can be used to communicate with standard HID devices like keyboards, mice, and Joysticks, it is most useful when used with custom (Vendor-Defined) HID devices. %package -n libhidapi-libusb%{sover} Summary: Simple library for communicating with USB and Bluetooth HID devices Group: System/Libraries %description -n libhidapi-libusb%{sover} HIDAPI is a library which allows an application to interface with USB and Bluetooth HID-Class devices. While it can be used to communicate with standard HID devices like keyboards, mice, and Joysticks, it is most useful when used with custom (Vendor-Defined) HID devices. %prep %autosetup -p1 -n %{name}-%{name}-%{version} %build ./bootstrap %configure --disable-static --docdir=%{_defaultdocdir}/%{name} %make_build %install make install DESTDIR=%{?buildroot} find %{buildroot} -type f -name "*.la" -delete -print %post -n libhidapi-libusb%{sover} -p /sbin/ldconfig %post -n libhidapi-hidraw%{sover} -p /sbin/ldconfig %postun -n libhidapi-libusb%{sover} -p /sbin/ldconfig %postun -n libhidapi-hidraw%{sover} -p /sbin/ldconfig %files -n libhidapi-devel %doc README.md AUTHORS.txt HACKING.txt %{_includedir}/hidapi %{_libdir}/pkgconfig/* %{_libdir}/libhidapi-*.so %files -n libhidapi-hidraw%{sover} %license LICENSE* %{_libdir}/libhidapi-hidraw.so.%{sover}* %files -n libhidapi-libusb%{sover} %license LICENSE* %{_libdir}/libhidapi-libusb.so.%{sover}* %changelog * Thu Jul 20 2023 Dirk Müller - update to 0.14.0: * general: add `hid_get_report_descriptor` API function (#451) * libusb: fix crash in hid_enumerate() caused by a stale device handle (#526) * fixes (mostly error handling) of issues found by Coverity Scan (#552/#554/#555/#559/#560/#561) * various fixes and improvements * Sat Jan 21 2023 Dirk Müller - update to 0.13.1: * hidraw: fix invalid read past the UDEV buffer * Sun Jan 8 2023 Dirk Müller - update to 0.13.0: * general: add hid_get_device_info (#432); * general: Meson build script (as a wrapper over CMake) (#410); * general: add HID Bus Type in hid_device_info (#308); * libusb: primary usage_page/usage is now available with hid_get_device_info regardless of the compilation flags; * hidraw: Open files with O_CLOEXEC to not leak fds to child processes (#446); * hidraw: add support for HID over SPI (#486); * cmake: libusb: Ensure Iconv is found when provided via CFLAGS/LDFLAGS (#430); * Mon Jul 11 2022 Dirk Müller - update to 0.12.0: * libusb: improved CMake dependency on Iconv (#405) - as a result, better support for NetBSD; * general: documentation improvements; * general: small code cleanups/improvements; * many windows specific fixes - spec-cleaner cleanups * Sun Dec 5 2021 Dirk Müller - update to 0.11.0: * hidraw: (explicit) workaround to allow build with kernels older than 2.6.39 * libusb: stabilize device path (uses same semantic as Linux kernel) * libusb: add platform-specific hid_libusb_wrap_sys_device * general: lots of documentation improvements * general: (Windows) DDK build files are obsolete * general: add CMake build system * general: deprecated Autotools build scripts * lots of other small fixes and improvements - remove 0001-configure.ac-remove-duplicate-AC_CONFIG_MACRO_DIR-22.patch (obsolete) * Wed Jun 9 2021 Matwey Kornilov - Add 0001-configure.ac-remove-duplicate-AC_CONFIG_MACRO_DIR-22.patch: fix boo#1187056 * Mon Jan 11 2021 Wang Jun - Update to version 0.10.1 * Add FreeBSD/macOS/MinGW/Alpine/Arch Linux/Windows CI * Add hid_version/hid_version_str API (#192) * Add podspec to support releases via cocoapods * Add support for HID over I2C and uhid devices (#166) * Fix small casting issue * Fix race condition on device close (#189) * Fix API prototype for gcc flag -Wstrict-prototypes (#207) * Fix strict typecast (#206) * Fix -Wall -Wextra -pedantic -Werror compilation (#214) … * Drop workaround for kernel < 2.6.34 * Use pkg-config to find libusb on *freebsd * Reattach kernel driver in hidapi-libusb * Move local variable declaration to the beginning of the function * Mon Feb 3 2020 Dominique Leuenberger - BuildRequire pkgconfig(libudev) instead of libudev-devel: allow OBS to shortcut through the -mini flavors. * Mon Jul 22 2019 Matwey Kornilov - Use disabled services to follow Factory guidelines. * Mon Jul 22 2019 luca@z3ntu.xyz - Update to 0.9.0 - Switch upstream to libusb/hidapi because the original maintainer is not active anymore * Mon Mar 24 2014 matwey.kornilov@gmail.com - Supply LICENSE files with libraries * Fri Mar 14 2014 matwey.kornilov@gmail.com - Add do_not_install_docs.patch: don't let make install docs * Mon Jan 27 2014 matwey.kornilov@gmail.com - Initial version