source "package/ccid/Config.in"
source "package/dtc/Config.in"
source "package/gnu-efi/Config.in"
+ source "package/hidapi/Config.in"
source "package/lcdapi/Config.in"
source "package/libaio/Config.in"
source "package/libatasmart/Config.in"
--- /dev/null
+config BR2_PACKAGE_HIDAPI
+ bool "hidapi"
+ depends on BR2_PACKAGE_HAS_UDEV
+ depends on BR2_TOOLCHAIN_HAS_THREADS # libusb
+ select BR2_PACKAGE_LIBUSB
+ # When eudev is used as the udev provider, libgudev is
+ # automatically provided as it is part of eudev. However, when
+ # systemd is used as the udev provider, libgudev is not
+ # provided, and needs to be built separately. This is why we
+ # select the libgudev package only if systemd is used.
+ select BR2_PACKAGE_LIBGUDEV if BR2_INIT_SYSTEMD
+ help
+ HIDAPI is a multi-platform library which allows an application
+ to interface with USB and Bluetooth HID-Class devices on
+ Windows, Linux, and Mac OS X.
+
+ http://www.signal11.us/oss/hidapi/
+
+comment "hidapi needs udev /dev management and a toolchain w/ threads"
+ depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_PACKAGE_HAS_UDEV
--- /dev/null
+# Locally calculated
+sha256 33e206f5e145fc1bc6aeb55084d71b55d686533d23ad5bb762746ceba81e728b hidapi-d17db57b9d4354752e0af42f5f33007a42ef2906.tar.gz
--- /dev/null
+################################################################################
+#
+# hidapi
+#
+################################################################################
+
+# Use master version as the current stable is very old and some bugs
+# have been fixed since then.
+HIDAPI_VERSION = d17db57b9d4354752e0af42f5f33007a42ef2906
+HIDAPI_SITE = $(call github,signal11,hidapi,$(HIDAPI_VERSION))
+HIDAPI_INSTALL_STAGING = YES
+# No configure provided, so we need to autoreconf.
+HIDAPI_AUTORECONF = YES
+HIDAPI_LICENSE = GPLv3 or BSD-3c or HIDAPI license
+HIDAPI_LICENSE_FILES = LICENSE.txt LICENSE-gpl3.txt LICENSE-bsd.txt LICENSE-orig.txt
+
+HIDAPI_DEPENDENCIES = libusb
+
+# When eudev is used as the udev provider, libgudev is automatically
+# provided as it is part of eudev. However, when systemd is used as
+# the udev provider, libgudev is not provided, and needs to be built
+# separately. This is why we depend on the libgudev package only if
+# systemd is used.
+ifeq ($(BR2_INIT_SYSTEMD),y)
+HIDAPI_DEPENDENCIES += libgudev
+endif
+
+$(eval $(autotools-package))