From 3b7b8f3c09491f4076b38baf170ad9f3aa249bad Mon Sep 17 00:00:00 2001
From: Sam Lantinga <[EMAIL REDACTED]>
Date: Wed, 24 May 2023 07:28:55 -0700
Subject: [PATCH] Updated hidapi to 0.14.0 release
Upstream: https://github.com/libusb/hidapi/releases/tag/hidapi-0.14.0
---
src/hidapi/.appveyor.yml | 31 +
src/hidapi/.builds/freebsd.yml | 34 +
src/hidapi/.builds/netbsd.yml | 18 +
src/hidapi/.builds/openbsd.yml | 19 +
src/hidapi/.cirrus.yml | 33 +
src/hidapi/.gitattributes | 7 +
src/hidapi/.github/workflows/builds.yml | 540 +
src/hidapi/.github/workflows/checks.yml | 196 +
src/hidapi/.github/workflows/docs.yaml | 58 +
src/hidapi/.gitignore | 32 +
src/hidapi/AUTHORS.txt | 4 +-
src/hidapi/BUILD.autotools.md | 114 +
src/hidapi/BUILD.cmake.md | 280 +
src/hidapi/BUILD.md | 127 +
src/hidapi/CMakeLists.txt | 105 +
src/hidapi/HACKING.txt | 26 +-
src/hidapi/Makefile.am | 10 +-
src/hidapi/README.md | 196 +
src/hidapi/README.txt | 339 -
src/hidapi/VERSION | 1 +
src/hidapi/android/hid.cpp | 1443 --
src/hidapi/android/hid.h | 39 -
src/hidapi/android/jni/Android.mk | 16 -
src/hidapi/android/jni/Application.mk | 2 -
src/hidapi/android/project.properties | 14 -
src/hidapi/configure.ac | 68 +-
src/hidapi/dist/hidapi.podspec | 31 +
.../documentation/cmake-gui-drop-down.png | Bin 0 -> 22316 bytes
.../documentation/cmake-gui-highlights.png | Bin 0 -> 77327 bytes
src/hidapi/doxygen/Doxyfile | 2832 ++--
src/hidapi/doxygen/main_page.md | 13 +
src/hidapi/hidapi/hidapi.h | 319 +-
src/hidapi/hidtest/.gitignore | 17 +
src/hidapi/hidtest/CMakeLists.txt | 40 +
src/hidapi/hidtest/Makefile.am | 14 +-
src/hidapi/hidtest/hidtest.cpp | 194 -
src/hidapi/hidtest/test.c | 316 +
src/hidapi/ios/Makefile-manual | 32 -
src/hidapi/ios/Makefile.am | 9 -
src/hidapi/ios/hid.m | 996 --
src/hidapi/libusb/.gitignore | 8 +
src/hidapi/libusb/CMakeLists.txt | 107 +
src/hidapi/libusb/Makefile-manual | 4 +
src/hidapi/libusb/Makefile.am | 9 +-
src/hidapi/libusb/Makefile.freebsd | 15 +-
src/hidapi/libusb/Makefile.haiku | 39 +
src/hidapi/libusb/Makefile.linux | 17 +-
src/hidapi/libusb/hid.c | 1317 +-
src/hidapi/libusb/hidapi_libusb.h | 56 +
src/hidapi/libusb/hidusb.cpp | 3 -
src/hidapi/linux/.gitignore | 18 +
src/hidapi/linux/CMakeLists.txt | 38 +
src/hidapi/linux/Makefile-manual | 17 +-
src/hidapi/linux/README.txt | 59 -
src/hidapi/linux/hid.c | 1324 +-
src/hidapi/linux/hidraw.cpp | 3 -
src/hidapi/m4/.gitignore | 5 +
src/hidapi/mac/.gitignore | 17 +
src/hidapi/mac/CMakeLists.txt | 48 +
src/hidapi/mac/Makefile-manual | 17 +-
src/hidapi/mac/hid.c | 1597 ++-
src/hidapi/mac/hidapi_darwin.h | 98 +
src/hidapi/meson.build | 22 +
src/hidapi/pc/.gitignore | 1 +
src/hidapi/pc/hidapi-hidraw.pc.in | 1 +
src/hidapi/pc/hidapi-libusb.pc.in | 1 +
src/hidapi/pc/hidapi.pc.in | 1 +
src/hidapi/src/CMakeLists.txt | 193 +
src/hidapi/src/cmake/hidapi-config.cmake.in | 61 +
src/hidapi/subprojects/README.md | 2 +
.../hidapi_build_cmake/CMakeLists.txt | 10 +
src/hidapi/testgui/.gitignore | 20 +
src/hidapi/testgui/Makefile.mingw | 2 +-
src/hidapi/testgui/copy_to_bundle.sh | 3 +-
src/hidapi/testgui/mac_support.cpp | 134 -
src/hidapi/testgui/mac_support_cocoa.m | 13 +-
src/hidapi/testgui/start.sh | 2 -
src/hidapi/testgui/testgui.sln | 40 +-
src/hidapi/testgui/testgui.vcproj | 434 +-
src/hidapi/udev/69-hid.rules | 36 +
src/hidapi/udev/99-hid.rules | 33 -
src/hidapi/windows/.gitignore | 17 +
src/hidapi/windows/CMakeLists.txt | 63 +
src/hidapi/windows/Makefile.am | 1 -
src/hidapi/windows/Makefile.mingw | 17 +-
src/hidapi/windows/ddk_build/hidapi.def | 17 -
src/hidapi/windows/ddk_build/makefile | 49 -
src/hidapi/windows/ddk_build/sources | 23 -
src/hidapi/windows/hid.c | 1476 +-
src/hidapi/windows/hidapi.rc | 35 +
src/hidapi/windows/hidapi.sln | 70 +-
src/hidapi/windows/hidapi.vcproj | 401 +-
src/hidapi/windows/hidapi.vcxproj | 200 +
src/hidapi/windows/hidapi_cfgmgr32.h | 30 +-
.../windows/hidapi_descriptor_reconstruct.c | 987 ++
.../windows/hidapi_descriptor_reconstruct.h | 238 +
src/hidapi/windows/hidapi_hidpi.h | 7 +
src/hidapi/windows/hidapi_hidsdi.h | 3 +-
src/hidapi/windows/hidapi_winapi.h | 74 +
src/hidapi/windows/hidtest.vcproj | 392 +-
src/hidapi/windows/hidtest.vcxproj | 176 +
.../windows/pp_data_dump/CMakeLists.txt | 15 +
src/hidapi/windows/pp_data_dump/README.md | 122 +
.../windows/pp_data_dump/pp_data_dump.c | 238 +
src/hidapi/windows/test/CMakeLists.txt | 76 +
.../test/data/045E_02FF_0005_0001.pp_data | 420 +
.../045E_02FF_0005_0001_expected.rpt_desc | 12 +
.../data/045E_02FF_0005_0001_real.rpt_desc | 64 +
.../test/data/046A_0011_0006_0001.pp_data | 183 +
.../046A_0011_0006_0001_expected.rpt_desc | 7 +
.../data/046A_0011_0006_0001_real.rpt_desc | 7 +
.../test/data/046D_0A37_0001_000C.pp_data | 532 +
.../046D_0A37_0001_000C_expected.rpt_desc | 16 +
.../data/046D_0A37_0001_000C_real.rpt_desc | 61 +
.../test/data/046D_B010_0001_000C.pp_data | 97 +
.../046D_B010_0001_000C_expected.rpt_desc | 3 +
.../data/046D_B010_0001_000C_real.rpt_desc | 38 +
.../test/data/046D_B010_0001_FF00.pp_data | 139 +
.../046D_B010_0001_FF00_expected.rpt_desc | 4 +
.../data/046D_B010_0001_FF00_real.rpt_desc | 39 +
.../test/data/046D_B010_0002_0001.pp_data | 302 +
.../046D_B010_0002_0001_expected.rpt_desc | 8 +
.../data/046D_B010_0002_0001_real.rpt_desc | 61 +
.../test/data/046D_B010_0002_FF00.pp_data | 139 +
.../046D_B010_0002_FF00_expected.rpt_desc | 4 +
.../data/046D_B010_0002_FF00_real.rpt_desc | 39 +
.../test/data/046D_B010_0006_0001.pp_data | 185 +
.../046D_B010_0006_0001_expected.rpt_desc | 7 +
.../data/046D_B010_0006_0001_real.rpt_desc | 58 +
.../test/data/046D_C077_0002_0001.pp_data | 252 +
.../046D_C077_0002_0001_expected.rpt_desc | 5 +
.../data/046D_C077_0002_0001_real.rpt_desc | 24 +
.../test/data/046D_C283_0004_0001.pp_data | 520 +
.../046D_C283_0004_0001_expected.rpt_desc | 18 +
.../data/046D_C283_0004_0001_real.rpt_desc | 18 +
.../test/data/046D_C52F_0001_000C.pp_data | 93 +
.../046D_C52F_0001_000C_expected.rpt_desc | 3 +
.../data/046D_C52F_0001_000C_real.rpt_desc | 12 +
.../test/data/046D_C52F_0001_FF00.pp_data | 139 +
.../046D_C52F_0001_FF00_expected.rpt_desc | 4 +
.../data/046D_C52F_0001_FF00_real.rpt_desc | 13 +
.../test/data/046D_C52F_0002_0001.pp_data | 302 +
.../046D_C52F_0002_0001_expected.rpt_desc | 8 +
.../data/046D_C52F_0002_0001_real.rpt_desc | 33 +
.../test/data/046D_C52F_0002_FF00.pp_data | 139 +
.../046D_C52F_0002_FF00_expected.rpt_desc | 4 +
.../data/046D_C52F_0002_FF00_real.rpt_desc | 13 +
.../test/data/046D_C534_0001_000C.pp_data | 93 +
.../046D_C534_0001_000C_expected.rpt_desc | 3 +
.../data/046D_C534_0001_000C_real.rpt_desc | 18 +
.../test/data/046D_C534_0001_FF00.pp_data | 139 +
.../046D_C534_0001_FF00_expected.rpt_desc | 4 +
.../data/046D_C534_0001_FF00_real.rpt_desc | 20 +
.../test/data/046D_C534_0002_0001.pp_data | 302 +
.../046D_C534_0002_0001_expected.rpt_desc | 8 +
.../data/046D_C534_0002_0001_real.rpt_desc | 44 +
.../test/data/046D_C534_0002_FF00.pp_data | 139 +
.../046D_C534_0002_FF00_expected.rpt_desc | 4 +
.../data/046D_C534_0002_FF00_real.rpt_desc | 22 +
.../test/data/046D_C534_0006_0001.pp_data | 185 +
.../046D_C534_0006_0001_expected.rpt_desc | 7 +
.../data/046D_C534_0006_0001_real.rpt_desc | 42 +
.../test/data/046D_C534_0080_0001.pp_data | 185 +
.../046D_C534_0080_0001_expected.rpt_desc | 4 +
.../data/046D_C534_0080_0001_real.rpt_desc | 22 +
.../test/data/047F_C056_0001_000C.pp_data | 385 +
.../047F_C056_0001_000C_expected.rpt_desc | 10 +
.../data/047F_C056_0001_000C_real.rpt_desc | 47 +
.../test/data/047F_C056_0003_FFA0.pp_data | 1255 ++
.../047F_C056_0003_FFA0_expected.rpt_desc | 24 +
.../data/047F_C056_0003_FFA0_real.rpt_desc | 113 +
.../test/data/047F_C056_0005_000B.pp_data | 461 +
.../047F_C056_0005_000B_expected.rpt_desc | 17 +
.../data/047F_C056_0005_000B_real.rpt_desc | 68 +
.../test/data/17CC_1130_0000_FF01.pp_data | 11508 ++++++++++++++++
.../17CC_1130_0000_FF01_expected.rpt_desc | 75 +
.../data/17CC_1130_0000_FF01_real.rpt_desc | 381 +
.../test/hid_report_reconstructor_test.c | 561 +
178 files changed, 31624 insertions(+), 7664 deletions(-)
create mode 100644 src/hidapi/.appveyor.yml
create mode 100644 src/hidapi/.builds/freebsd.yml
create mode 100644 src/hidapi/.builds/netbsd.yml
create mode 100644 src/hidapi/.builds/openbsd.yml
create mode 100644 src/hidapi/.cirrus.yml
create mode 100644 src/hidapi/.gitattributes
create mode 100644 src/hidapi/.github/workflows/builds.yml
create mode 100644 src/hidapi/.github/workflows/checks.yml
create mode 100644 src/hidapi/.github/workflows/docs.yaml
create mode 100644 src/hidapi/.gitignore
create mode 100644 src/hidapi/BUILD.autotools.md
create mode 100644 src/hidapi/BUILD.cmake.md
create mode 100644 src/hidapi/BUILD.md
create mode 100644 src/hidapi/CMakeLists.txt
create mode 100644 src/hidapi/README.md
delete mode 100644 src/hidapi/README.txt
create mode 100644 src/hidapi/VERSION
delete mode 100644 src/hidapi/android/hid.cpp
delete mode 100644 src/hidapi/android/hid.h
delete mode 100644 src/hidapi/android/jni/Android.mk
delete mode 100644 src/hidapi/android/jni/Application.mk
delete mode 100644 src/hidapi/android/project.properties
create mode 100644 src/hidapi/dist/hidapi.podspec
create mode 100644 src/hidapi/documentation/cmake-gui-drop-down.png
create mode 100644 src/hidapi/documentation/cmake-gui-highlights.png
create mode 100644 src/hidapi/doxygen/main_page.md
create mode 100644 src/hidapi/hidtest/.gitignore
create mode 100644 src/hidapi/hidtest/CMakeLists.txt
delete mode 100644 src/hidapi/hidtest/hidtest.cpp
create mode 100644 src/hidapi/hidtest/test.c
delete mode 100644 src/hidapi/ios/Makefile-manual
delete mode 100644 src/hidapi/ios/Makefile.am
delete mode 100644 src/hidapi/ios/hid.m
create mode 100644 src/hidapi/libusb/.gitignore
create mode 100644 src/hidapi/libusb/CMakeLists.txt
create mode 100644 src/hidapi/libusb/Makefile.haiku
create mode 100644 src/hidapi/libusb/hidapi_libusb.h
delete mode 100644 src/hidapi/libusb/hidusb.cpp
create mode 100644 src/hidapi/linux/.gitignore
create mode 100644 src/hidapi/linux/CMakeLists.txt
delete mode 100644 src/hidapi/linux/README.txt
delete mode 100644 src/hidapi/linux/hidraw.cpp
create mode 100644 src/hidapi/m4/.gitignore
create mode 100644 src/hidapi/mac/.gitignore
create mode 100644 src/hidapi/mac/CMakeLists.txt
create mode 100644 src/hidapi/mac/hidapi_darwin.h
create mode 100644 src/hidapi/meson.build
create mode 100644 src/hidapi/pc/.gitignore
create mode 100644 src/hidapi/src/CMakeLists.txt
create mode 100644 src/hidapi/src/cmake/hidapi-config.cmake.in
create mode 100644 src/hidapi/subprojects/README.md
create mode 100644 src/hidapi/subprojects/hidapi_build_cmake/CMakeLists.txt
create mode 100644 src/hidapi/testgui/.gitignore
delete mode 100644 src/hidapi/testgui/mac_support.cpp
delete mode 100755 src/hidapi/testgui/start.sh
create mode 100644 src/hidapi/udev/69-hid.rules
delete mode 100644 src/hidapi/udev/99-hid.rules
create mode 100644 src/hidapi/windows/.gitignore
create mode 100644 src/hidapi/windows/CMakeLists.txt
delete mode 100644 src/hidapi/windows/ddk_build/hidapi.def
delete mode 100644 src/hidapi/windows/ddk_build/makefile
delete mode 100644 src/hidapi/windows/ddk_build/sources
create mode 100644 src/hidapi/windows/hidapi.rc
create mode 100644 src/hidapi/windows/hidapi.vcxproj
create mode 100644 src/hidapi/windows/hidapi_descriptor_reconstruct.c
create mode 100644 src/hidapi/windows/hidapi_descriptor_reconstruct.h
create mode 100644 src/hidapi/windows/hidapi_winapi.h
create mode 100644 src/hidapi/windows/hidtest.vcxproj
create mode 100644 src/hidapi/windows/pp_data_dump/CMakeLists.txt
create mode 100644 src/hidapi/windows/pp_data_dump/README.md
create mode 100644 src/hidapi/windows/pp_data_dump/pp_data_dump.c
create mode 100644 src/hidapi/windows/test/CMakeLists.txt
create mode 100644 src/hidapi/windows/test/data/045E_02FF_0005_0001.pp_data
create mode 100644 src/hidapi/windows/test/data/045E_02FF_0005_0001_expected.rpt_desc
create mode 100644 src/hidapi/windows/test/data/045E_02FF_0005_0001_real.rpt_desc
create mode 100644 src/hidapi/windows/test/data/046A_0011_0006_0001.pp_data
create mode 100644 src/hidapi/windows/test/data/046A_0011_0006_0001_expected.rpt_desc
create mode 100644 src/hidapi/windows/test/data/046A_0011_0006_0001_real.rpt_desc
create mode 100644 src/hidapi/windows/test/data/046D_0A37_0001_000C.pp_data
create mode 100644 src/hidapi/windows/test/data/046D_0A37_0001_000C_expected.rpt_desc
create mode 100644 src/hidapi/windows/test/data/046D_0A37_0001_000C_real.rpt_desc
create mode 100644 src/hidapi/windows/test/data/046D_B010_0001_000C.pp_data
create mode 100644 src/hidapi/windows/test/data/046D_B010_0001_000C_expected.rpt_desc
create mode 100644 src/hidapi/windows/test/data/046D_B010_0001_000C_real.rpt_desc
create mode 100644 src/hidapi/windows/test/data/046D_B010_0001_FF00.pp_data
create mode 100644 src/hidapi/windows/test/data/046D_B010_0001_FF00_expected.rpt_desc
create mode 100644 src/hidapi/windows/test/data/046D_B010_0001_FF00_real.rpt_desc
create mode 100644 src/hidapi/windows/test/data/046D_B010_0002_0001.pp_data
create mode 100644 src/hidapi/windows/test/data/046D_B010_0002_0001_expected.rpt_desc
create mode 100644 src/hidapi/windows/test/data/046D_B010_0002_0001_real.rpt_desc
create mode 100644 src/hidapi/windows/test/data/046D_B010_0002_FF00.pp_data
create mode 100644 src/hidapi/windows/test/data/046D_B010_0002_FF00_expected.rpt_desc
create mode 100644 src/hidapi/windows/test/data/046D_B010_0002_FF00_real.rpt_desc
create mode 100644 src/hidapi/windows/test/data/046D_B010_0006_0001.pp_data
create mode 100644 src/hidapi/windows/test/data/046D_B010_0006_0001_expected.rpt_desc
create mode 100644 src/hidapi/windows/test/data/046D_B010_0006_0001_real.rpt_desc
create mode 100644 src/hidapi/windows/test/data/046D_C077_0002_0001.pp_data
create mode 100644 src/hidapi/windows/test/data/046D_C077_0002_0001_expected.rpt_desc
create mode 100644 src/hidapi/windows/test/data/046D_C077_0002_0001_real.rpt_desc
create mode 100644 src/hidapi/windows/test/data/046D_C283_0004_0001.pp_data
create mode 100644 src/hidapi/windows/test/data/046D_C283_0004_0001_expected.rpt_desc
create mode 100644 src/hidapi/windows/test/data/046D_C283_0004_0001_real.rpt_desc
create mode 100644 src/hidapi/windows/test/data/046D_C52F_0001_000C.pp_data
create mode 100644 src/hidapi/windows/test/data/046D_C52F_0001_000C_expected.rpt_desc
create mode 100644 src/hidapi/windows/test/data/046D_C52F_0001_000C_real.rpt_desc
create mode 100644 src/hidapi/windows/test/data/046D_C52F_0001_FF00.pp_data
create mode 100644 src/hidapi/windows/test/data/046D_C52F_0001_FF00_expected.rpt_desc
create mode 100644 src/hidapi/windows/test/data/046D_C52F_0001_FF00_real.rpt_desc
create mode 100644 src/hidapi/windows/test/data/046D_C52F_0002_0001.pp_data
create mode 100644 src/hidapi/windows/test/data/046D_C52F_0002_0001_expected.rpt_desc
create mode 100644 src/hidapi/windows/test/data/046D_C52F_0002_0001_real.rpt_desc
create mode 100644 src/hidapi/windows/test/data/046D_C52F_0002_FF00.pp_data
create mode 100644 src/hidapi/windows/test/data/046D_C52F_0002_FF00_expected.rpt_desc
create mode 100644 src/hidapi/windows/test/data/046D_C52F_0002_FF00_real.rpt_desc
create mode 100644 src/hidapi/windows/test/data/046D_C534_0001_000C.pp_data
create mode 100644 src/hidapi/windows/test/data/046D_C534_0001_000C_expected.rpt_desc
create mode 100644 src/hidapi/windows/test/data/046D_C534_0001_000C_real.rpt_desc
create mode 100644 src/hidapi/windows/test/data/046D_C534_0001_FF00.pp_data
create mode 100644 src/hidapi/windows/test/data/046D_C534_0001_FF00_expected.rpt_desc
create mode 100644 src/hidapi/windows/test/data/046D_C534_0001_FF00_real.rpt_desc
create mode 100644 src/hidapi/windows/test/data/046D_C534_0002_0001.pp_data
create mode 100644 src/hidapi/windows/test/data/046D_C534_0002_0001_expected.rpt_desc
create mode 100644 src/hidapi/windows/test/data/046D_C534_0002_0001_real.rpt_desc
create mode 100644 src/hidapi/windows/test/data/046D_C534_0002_FF00.pp_data
create mode 100644 src/hidapi/windows/test/data/046D_C534_0002_FF00_expected.rpt_desc
create mode 100644 src/hidapi/windows/test/data/046D_C534_0002_FF00_real.rpt_desc
create mode 100644 src/hidapi/windows/test/data/046D_C534_0006_0001.pp_data
create mode 100644 src/hidapi/windows/test/data/046D_C534_0006_0001_expected.rpt_desc
create mode 100644 src/hidapi/windows/test/data/046D_C534_0006_0001_real.rpt_desc
create mode 100644 src/hidapi/windows/test/data/046D_C534_0080_0001.pp_data
create mode 100644 src/hidapi/windows/test/data/046D_C534_0080_0001_expected.rpt_desc
create mode 100644 src/hidapi/windows/test/data/046D_C534_0080_0001_real.rpt_desc
create mode 100644 src/hidapi/windows/test/data/047F_C056_0001_000C.pp_data
create mode 100644 src/hidapi/windows/test/data/047F_C056_0001_000C_expected.rpt_desc
create mode 100644 src/hidapi/windows/test/data/047F_C056_0001_000C_real.rpt_desc
create mode 100644 src/hidapi/windows/test/data/047F_C056_0003_FFA0.pp_data
create mode 100644 src/hidapi/windows/test/data/047F_C056_0003_FFA0_expected.rpt_desc
create mode 100644 src/hidapi/windows/test/data/047F_C056_0003_FFA0_real.rpt_desc
create mode 100644 src/hidapi/windows/test/data/047F_C056_0005_000B.pp_data
create mode 100644 src/hidapi/windows/test/data/047F_C056_0005_000B_expected.rpt_desc
create mode 100644 src/hidapi/windows/test/data/047F_C056_0005_000B_real.rpt_desc
create mode 100644 src/hidapi/windows/test/data/17CC_1130_0000_FF01.pp_data
create mode 100644 src/hidapi/windows/test/data/17CC_1130_0000_FF01_expected.rpt_desc
create mode 100644 src/hidapi/windows/test/data/17CC_1130_0000_FF01_real.rpt_desc
create mode 100644 src/hidapi/windows/test/hid_report_reconstructor_test.c
diff --git a/src/hidapi/.appveyor.yml b/src/hidapi/.appveyor.yml
new file mode 100644
index 000000000000..210b3fa4636f
--- /dev/null
+++ b/src/hidapi/.appveyor.yml
@@ -0,0 +1,31 @@
+environment:
+ matrix:
+ - BUILD_ENV: msbuild
+ arch: x64
+ - BUILD_ENV: msbuild
+ arch: Win32
+ - BUILD_ENV: cygwin
+
+for:
+ -
+ matrix:
+ only:
+ - BUILD_ENV: msbuild
+
+ os: Visual Studio 2015
+
+ build_script:
+ - cmd: msbuild .\windows\hidapi.sln /p:Configuration=Release /p:Platform=%arch% /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll"
+
+ -
+ matrix:
+ only:
+ - BUILD_ENV: cygwin
+
+ os: Visual Studio 2022
+
+ install:
+ - cmd: C:\cygwin64\setup-x86_64.exe --quiet-mode --no-shortcuts --upgrade-also --packages autoconf,automake
+
+ build_script:
+ - cmd: C:\cygwin64\bin\bash -exlc "cd $APPVEYOR_BUILD_FOLDER; ./bootstrap; ./configure; make"
diff --git a/src/hidapi/.builds/freebsd.yml b/src/hidapi/.builds/freebsd.yml
new file mode 100644
index 000000000000..1679b03c386b
--- /dev/null
+++ b/src/hidapi/.builds/freebsd.yml
@@ -0,0 +1,34 @@
+image: freebsd/latest
+packages:
+- autoconf
+- automake
+- gmake
+- libiconv
+- libtool
+- pkgconf
+- cmake
+- ninja
+sources:
+- https://github.com/libusb/hidapi
+tasks:
+- configure: |
+ cd hidapi
+ echo Configure Autotools build
+ ./bootstrap
+ ./configure
+ echo Configure CMake build
+ mkdir -p build install_cmake
+ cmake -GNinja -B build -S . -DCMAKE_INSTALL_PREFIX=install_cmake
+- build-autotools: |
+ cd hidapi
+ make
+ make DESTDIR=$PWD/root install
+ make clean
+- build-cmake: |
+ cd hidapi/build
+ ninja
+ ninja install
+ ninja clean
+- build-manual: |
+ cd hidapi/libusb
+ gmake -f Makefile-manual
diff --git a/src/hidapi/.builds/netbsd.yml b/src/hidapi/.builds/netbsd.yml
new file mode 100644
index 000000000000..413d91c02016
--- /dev/null
+++ b/src/hidapi/.builds/netbsd.yml
@@ -0,0 +1,18 @@
+image: netbsd/latest
+packages:
+- cmake
+- pkgconf
+- libusb1
+- libiconv
+sources:
+- https://github.com/libusb/hidapi
+tasks:
+- configure: |
+ cd hidapi
+ mkdir -p build install
+ cmake -B build -S . -DCMAKE_INSTALL_PREFIX=install
+- build: |
+ cd hidapi/build
+ make
+ make install
+ make clean
diff --git a/src/hidapi/.builds/openbsd.yml b/src/hidapi/.builds/openbsd.yml
new file mode 100644
index 000000000000..780df7f661a4
--- /dev/null
+++ b/src/hidapi/.builds/openbsd.yml
@@ -0,0 +1,19 @@
+image: openbsd/latest
+packages:
+- cmake
+- pkgconf
+- libusb1--
+- libiconv
+- ninja
+sources:
+- https://github.com/libusb/hidapi
+tasks:
+- configure: |
+ cd hidapi
+ mkdir -p build install
+ cmake -GNinja -B build -S . -DCMAKE_INSTALL_PREFIX=install
+- build: |
+ cd hidapi/build
+ ninja
+ ninja install
+ ninja clean
diff --git a/src/hidapi/.cirrus.yml b/src/hidapi/.cirrus.yml
new file mode 100644
index 000000000000..b4cf201667fe
--- /dev/null
+++ b/src/hidapi/.cirrus.yml
@@ -0,0 +1,33 @@
+alpine_task:
+ container:
+ image: alpine:latest
+ install_script: apk add autoconf automake g++ gcc libusb-dev libtool linux-headers eudev-dev make musl-dev
+ script:
+ - ./bootstrap
+ - ./configure || { cat config.log; exit 1; }
+ - make
+ - make install
+
+freebsd11_task:
+ freebsd_instance:
+ image: freebsd-11-2-release-amd64
+ install_script:
+ - pkg install -y
+ autoconf automake libiconv libtool pkgconf
+ script:
+ - ./bootstrap
+ - ./configure || { cat config.log; exit 1; }
+ - make
+ - make install
+
+freebsd12_task:
+ freebsd_instance:
+ image: freebsd-12-1-release-amd64
+ install_script:
+ - pkg install -y
+ autoconf automake libiconv libtool pkgconf
+ script:
+ - ./bootstrap
+ - ./configure || { cat config.log; exit 1; }
+ - make
+ - make install
diff --git a/src/hidapi/.gitattributes b/src/hidapi/.gitattributes
new file mode 100644
index 000000000000..edb79febc569
--- /dev/null
+++ b/src/hidapi/.gitattributes
@@ -0,0 +1,7 @@
+* text=auto
+
+*.sln text eol=crlf
+*.vcproj text eol=crlf
+
+bootstrap text eol=lf
+configure.ac text eol=lf
diff --git a/src/hidapi/.github/workflows/builds.yml b/src/hidapi/.github/workflows/builds.yml
new file mode 100644
index 000000000000..056df2cc08c8
--- /dev/null
+++ b/src/hidapi/.github/workflows/builds.yml
@@ -0,0 +1,540 @@
+name: GitHub Builds
+
+on: [push, pull_request]
+
+env:
+ NIX_COMPILE_FLAGS: -Wall -Wextra -pedantic -Werror
+ MSVC_COMPILE_FLAGS: /W4 /WX
+
+jobs:
+ macos-automake:
+
+ runs-on: macos-latest
+
+ steps:
+ - uses: actions/checkout@v3
+ - name: Install build tools
+ run: brew install autoconf automake libtool
+ - name: Configure Automake
+ run: |
+ ./bootstrap
+ ./configure --prefix=$(pwd)/install
+ - name: Build Automake
+ run: |
+ make
+ make install
+ - name: Clean build
+ run: make clean
+ - name: Build Manual makefile
+ working-directory: mac
+ run: make -f Makefile-manual
+
+
+ macos-cmake:
+
+ runs-on: macos-latest
+
+ steps:
+ - uses: actions/checkout@v3
+ with:
+ path: hidapisrc
+ - name: Install dependencies
+ run: brew install meson ninja
+ - name: Configure CMake
+ run: |
+ rm -rf build install
+ cmake -B build/shared -S hidapisrc -DCMAKE_BUILD_TYPE=RelWithDebInfo -DHIDAPI_ENABLE_ASAN=ON -DCMAKE_INSTALL_PREFIX=install/shared -DHIDAPI_BUILD_HIDTEST=ON "-DCMAKE_C_FLAGS=${NIX_COMPILE_FLAGS}"
+ cmake -B build/static -S hidapisrc -DCMAKE_BUILD_TYPE=RelWithDebInfo -DHIDAPI_ENABLE_ASAN=ON -DCMAKE_INSTALL_PREFIX=install/static -DBUILD_SHARED_LIBS=FALSE -DHIDAPI_BUILD_HIDTEST=ON "-DCMAKE_C_FLAGS=${NIX_COMPILE_FLAGS}"
+ cmake -B build/framework -S hidapisrc -DCMAKE_BUILD_TYPE=RelWithDebInfo -DHIDAPI_ENABLE_ASAN=ON -DCMAKE_INSTALL_PREFIX=install/framework -DCMAKE_FRAMEWORK=ON -DHIDAPI_BUILD_HIDTEST=ON "-DCMAKE_C_FLAGS=${NIX_COMPILE_FLAGS}"
+ - name: Build CMake Shared
+ working-directory: build/shared
+ run: make install
+ - name: Build CMake Static
+ working-directory: build/static
+ run: make install
+ - name: Build CMake Framework
+ working-directory: build/framework
+ run: make install
+ - name: Check artifacts
+ uses: andstor/file-existence-action@v2
+ with:
+ files: "install/shared/lib/libhidapi.dylib, \
+ install/shared/include/hidapi/hidapi.h, \
+ install/shared/include/hidapi/hidapi_darwin.h, \
+ install/static/lib/libhidapi.a, \
+ install/static/include/hidapi/hidapi.h, \
+ install/static/include/hidapi/hidapi_darwin.h, \
+ install/framework/lib/hidapi.framework/hidapi, \
+ install/framework/lib/hidapi.framework/Headers/hidapi.h, \
+ install/framework/lib/hidapi.framework/Headers/hidapi_darwin.h"
+ fail: true
+ - name: Check CMake Export Package Shared
+ run: |
+ cmake \
+ -B build/shared_test \
+ -S hidapisrc/hidtest \
+ -Dhidapi_ROOT=install/shared \
+ -DCMAKE_INSTALL_PREFIX=install/shared_test \
+ "-DCMAKE_C_FLAGS=${NIX_COMPILE_FLAGS}"
+ cd build/shared_test
+ make install
+ - name: Check CMake Export Package Static
+ run: |
+ cmake \
+ -B build/static_test \
+ -S hidapisrc/hidtest \
+ -Dhidapi_ROOT=install/static \
+ -DCMAKE_INSTALL_PREFIX=install/static_test \
+ "-DCMAKE_C_FLAGS=${NIX_COMPILE_FLAGS}"
+ cd build/static_test
+ make install
+
+ - name: Check Meson build
+ run: |
+ meson setup build_meson hidapisrc
+ cd build_meson
+ ninja
+
+
+ ubuntu-cmake:
+
+ runs-on: ubuntu-latest
+
+ steps:
+ - uses: actions/checkout@v3
+ with:
+ path: hidapisrc
+ - name: Install dependencies
+ run: |
+ sudo apt update
+ sudo apt install libudev-dev libusb-1.0-0-dev python3-pip ninja-build
+ sudo -H pip3 install meson
+ - name: Configure CMake
+ run: |
+ rm -rf build install
+ cmake -B build/shared -S hidapisrc -DCMAKE_BUILD_TYPE=RelWithDebInfo -DHIDAPI_ENABLE_ASAN=ON -DCMAKE_INSTALL_PREFIX=install/shared -DHIDAPI_BUILD_HIDTEST=ON "-DCMAKE_C_FLAGS=${NIX_COMPILE_FLAGS}"
+ cmake -B build/static -S hidapisrc -DCMAKE_BUILD_TYPE=RelWithDebInfo -DHIDAPI_ENABLE_ASAN=ON -DCMAKE_INSTALL_PREFIX=install/static -DBUILD_SHARED_LIBS=FALSE -DHIDAPI_BUILD_HIDTEST=ON "-DCMAKE_C_FLAGS=${NIX_COMPILE_FLAGS}"
+ - name: Build CMake Shared
+ working-directory: build/shared
+ run: make install
+ - name: Build CMake Static
+ working-directory: build/static
+ run: make install
+ - name: Check artifacts
+ uses: andstor/file-existence-action@v2
+ with:
+ files: "install/shared/lib/libhidapi-libusb.so, \
+ install/shared/lib/libhidapi-hidraw.so, \
+ install/shared/include/hidapi/hidapi.h, \
+ install/shared/include/hidapi/hidapi_libusb.h, \
+ install/static/lib/libhidapi-libusb.a, \
+ install/static/lib/libhidapi-hidraw.a, \
+ install/static/include/hidapi/hidapi.h, \
+ install/static/include/hidapi/hidapi_libusb.h"
+ fail: true
+ - name: Check CMake Export Package Shared
+ run: |
+ cmake \
+ -B build/shared_test \
+ -S hidapisrc/hidtest \
+ -Dhidapi_ROOT=install/shared \
+ -DCMAKE_INSTALL_PREFIX=install/shared_test \
+ "-DCMAKE_C_FLAGS=${NIX_COMPILE_FLAGS}"
+ cd build/shared_test
+ make install
+ - name: Check CMake Export Package Static
+ run: |
+ cmake \
+ -B build/static_test \
+ -S hidapisrc/hidtest \
+ -Dhidapi_ROOT=install/static \
+ -DCMAKE_INSTALL_PREFIX=install/static_test \
+ "-DCMAKE_C_FLAGS=${NIX_COMPILE_FLAGS}"
+ cd build/static_test
+ make install
+
+ - name: Check Meson build
+ run: |
+ meson setup build_meson hidapisrc
+ cd build_meson
+ ninja
+
+
+ windows-cmake:
+
+ runs-on: windows-latest
+
+ steps:
+ - uses: actions/checkout@v3
+ with:
+ path: hidapisrc
+ - name: Install dependencies
+ run: |
+ choco install ninja
+ pip3 install meson
+ refreshenv
+ - name: Configure CMake MSVC
+ shell: cmd
+ run: |
+ cmake -B build\msvc -S hidapisrc -DCMAKE_BUILD_TYPE=RelWithDebInfo -DHIDAPI_WITH_TESTS=ON -DHIDAPI_BUILD_PP_DATA_DUMP=ON -DHIDAPI_ENABLE_ASAN=ON -DCMAKE_INSTALL_PREFIX=install\msvc -DHIDAPI_BUILD_HIDTEST=ON "-DCMAKE_C_FLAGS=%MSVC_COMPILE_FLAGS%"
+ - name: Build CMake MSVC
+ working-directory: build/msvc
+ run: cmake --build . --config RelWithDebInfo --target install
+ - name: Check artifacts MSVC
+ uses: andstor/file-existence-action@v2
+ with:
+ files: "install/msvc/lib/hidapi.lib, \
+
(Patch may be truncated, please check the link at the top of this post.)