usb 1.8.1-libusb.6 → 1.8.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (192) hide show
  1. package/.gitmodules +1 -1
  2. package/CHANGELOG.md +76 -0
  3. package/{Readme.md → README.md} +6 -0
  4. package/binding.gyp +14 -4
  5. package/libusb/.private/pre-commit.sh +1 -7
  6. package/libusb/AUTHORS +3 -44
  7. package/libusb/ChangeLog +2 -74
  8. package/libusb/INSTALL +234 -0
  9. package/libusb/README +28 -0
  10. package/libusb/TODO +1 -1
  11. package/libusb/Xcode/common.xcconfig +0 -12
  12. package/libusb/Xcode/libusb.xcodeproj/project.pbxproj +1 -959
  13. package/libusb/android/README +2 -4
  14. package/libusb/autogen.sh +1 -1
  15. package/libusb/bootstrap.sh +16 -3
  16. package/libusb/configure.ac +80 -108
  17. package/libusb/doc/doxygen.cfg.in +739 -1785
  18. package/libusb/examples/Makefile.am +1 -1
  19. package/libusb/examples/dpfp.c +1 -3
  20. package/libusb/examples/dpfp_threaded.c +10 -23
  21. package/libusb/examples/ezusb.c +3 -3
  22. package/libusb/examples/ezusb.h +2 -2
  23. package/libusb/examples/fxload.c +9 -31
  24. package/libusb/examples/hotplugtest.c +7 -35
  25. package/libusb/examples/listdevs.c +1 -3
  26. package/libusb/examples/sam3u_benchmark.c +3 -3
  27. package/libusb/examples/xusb.c +34 -40
  28. package/libusb/libusb/Makefile.am +23 -49
  29. package/libusb/libusb/core.c +457 -855
  30. package/libusb/libusb/descriptor.c +78 -72
  31. package/libusb/libusb/hotplug.c +76 -122
  32. package/libusb/libusb/hotplug.h +25 -42
  33. package/libusb/libusb/io.c +390 -625
  34. package/libusb/libusb/libusb-1.0.def +0 -12
  35. package/libusb/libusb/libusb.h +150 -218
  36. package/libusb/libusb/libusbi.h +176 -346
  37. package/libusb/libusb/os/darwin_usb.c +319 -604
  38. package/libusb/libusb/os/darwin_usb.h +20 -61
  39. package/libusb/libusb/os/linux_netlink.c +146 -186
  40. package/libusb/libusb/os/linux_udev.c +14 -36
  41. package/libusb/libusb/os/linux_usbfs.c +225 -426
  42. package/libusb/libusb/os/linux_usbfs.h +3 -5
  43. package/libusb/libusb/os/netbsd_usb.c +77 -21
  44. package/libusb/libusb/os/openbsd_usb.c +115 -32
  45. package/libusb/libusb/os/poll_posix.c +5 -38
  46. package/libusb/libusb/os/poll_posix.h +0 -3
  47. package/libusb/libusb/os/poll_windows.c +626 -277
  48. package/libusb/libusb/os/poll_windows.h +44 -11
  49. package/libusb/libusb/os/threads_posix.c +26 -24
  50. package/libusb/libusb/os/threads_posix.h +21 -73
  51. package/libusb/libusb/os/threads_windows.c +157 -71
  52. package/libusb/libusb/os/threads_windows.h +44 -68
  53. package/libusb/libusb/os/wince_usb.c +420 -276
  54. package/libusb/libusb/os/wince_usb.h +28 -23
  55. package/libusb/libusb/os/windows_common.h +58 -78
  56. package/libusb/libusb/os/windows_usb.c +5347 -0
  57. package/libusb/libusb/os/windows_usb.h +971 -0
  58. package/libusb/libusb/strerror.c +7 -41
  59. package/libusb/libusb/sync.c +13 -41
  60. package/libusb/libusb/version.h +1 -1
  61. package/libusb/libusb/version_nano.h +1 -1
  62. package/libusb/libusb-1.0.pc.in +1 -1
  63. package/libusb/msvc/config.h +4 -5
  64. package/libusb/msvc/ddk_build.cmd +43 -87
  65. package/libusb/msvc/fxload_2010.vcxproj +104 -24
  66. package/libusb/msvc/fxload_2010.vcxproj.filters +25 -0
  67. package/libusb/msvc/fxload_2012.vcxproj +107 -24
  68. package/libusb/msvc/fxload_2012.vcxproj.filters +25 -0
  69. package/libusb/msvc/fxload_2013.vcxproj +107 -24
  70. package/libusb/msvc/fxload_sources +1 -1
  71. package/libusb/msvc/getopt_2010.vcxproj +75 -16
  72. package/libusb/msvc/getopt_2010.vcxproj.filters +26 -0
  73. package/libusb/msvc/getopt_2012.vcxproj +79 -16
  74. package/libusb/msvc/getopt_2012.vcxproj.filters +26 -0
  75. package/libusb/msvc/getopt_2013.vcxproj +79 -16
  76. package/libusb/msvc/getopt_sources +2 -6
  77. package/libusb/msvc/hotplugtest_2010.vcxproj +99 -18
  78. package/libusb/msvc/hotplugtest_2010.vcxproj.filters +14 -0
  79. package/libusb/msvc/hotplugtest_2012.vcxproj +102 -18
  80. package/libusb/msvc/hotplugtest_2012.vcxproj.filters +14 -0
  81. package/libusb/msvc/hotplugtest_2013.vcxproj +102 -18
  82. package/libusb/msvc/hotplugtest_sources +1 -1
  83. package/libusb/msvc/libusb_2005.sln +20 -20
  84. package/libusb/msvc/libusb_2010.sln +46 -57
  85. package/libusb/msvc/libusb_2012.sln +46 -57
  86. package/libusb/msvc/libusb_2013.sln +50 -57
  87. package/libusb/msvc/libusb_2015.sln +52 -59
  88. package/libusb/msvc/libusb_dll.dsp +2 -2
  89. package/libusb/msvc/libusb_dll_2005.vcproj +2 -30
  90. package/libusb/msvc/libusb_dll_2010.vcxproj +90 -26
  91. package/libusb/msvc/libusb_dll_2010.vcxproj.filters +81 -0
  92. package/libusb/msvc/libusb_dll_2012.vcxproj +96 -28
  93. package/libusb/msvc/libusb_dll_2012.vcxproj.filters +84 -0
  94. package/libusb/msvc/libusb_dll_2013.vcxproj +96 -28
  95. package/libusb/msvc/libusb_dll_wince.vcproj +1 -9
  96. package/libusb/msvc/libusb_sources +5 -10
  97. package/libusb/msvc/libusb_static.dsp +2 -2
  98. package/libusb/msvc/libusb_static_2005.vcproj +4 -32
  99. package/libusb/msvc/libusb_static_2010.vcxproj +83 -24
  100. package/libusb/msvc/libusb_static_2010.vcxproj.filters +74 -0
  101. package/libusb/msvc/libusb_static_2012.vcxproj +87 -25
  102. package/libusb/msvc/libusb_static_2012.vcxproj.filters +74 -0
  103. package/libusb/msvc/libusb_static_2013.vcxproj +87 -25
  104. package/libusb/msvc/libusb_static_wince.vcproj +26 -20
  105. package/libusb/msvc/libusb_wince.sln +88 -88
  106. package/libusb/msvc/listdevs_2010.vcxproj +99 -16
  107. package/libusb/msvc/listdevs_2010.vcxproj.filters +14 -0
  108. package/libusb/msvc/listdevs_2012.vcxproj +102 -16
  109. package/libusb/msvc/listdevs_2012.vcxproj.filters +14 -0
  110. package/libusb/msvc/listdevs_2013.vcxproj +102 -16
  111. package/libusb/msvc/listdevs_sources +1 -2
  112. package/libusb/msvc/stress_2010.vcxproj +101 -20
  113. package/libusb/msvc/stress_2010.vcxproj.filters +25 -0
  114. package/libusb/msvc/stress_2012.vcxproj +104 -20
  115. package/libusb/msvc/stress_2012.vcxproj.filters +25 -0
  116. package/libusb/msvc/stress_2013.vcxproj +104 -20
  117. package/libusb/msvc/xusb_2010.vcxproj +98 -17
  118. package/libusb/msvc/xusb_2010.vcxproj.filters +14 -0
  119. package/libusb/msvc/xusb_2012.vcxproj +101 -17
  120. package/libusb/msvc/xusb_2012.vcxproj.filters +14 -0
  121. package/libusb/msvc/xusb_2013.vcxproj +101 -17
  122. package/libusb/msvc/xusb_sources +1 -1
  123. package/libusb/tests/stress.c +2 -2
  124. package/libusb/tests/testlib.c +4 -0
  125. package/libusb.gypi +10 -13
  126. package/package.json +7 -12
  127. package/prebuilds/android-arm/node.napi.armv7.node +0 -0
  128. package/prebuilds/android-arm64/node.napi.armv8.node +0 -0
  129. package/prebuilds/darwin-x64+arm64/node.napi.node +0 -0
  130. package/prebuilds/linux-arm/node.napi.armv6.node +0 -0
  131. package/prebuilds/linux-arm/node.napi.armv7.node +0 -0
  132. package/prebuilds/linux-arm64/node.napi.armv8.node +0 -0
  133. package/prebuilds/linux-ia32/node.napi.node +0 -0
  134. package/prebuilds/linux-x64/node.napi.glibc.node +0 -0
  135. package/prebuilds/linux-x64/node.napi.musl.node +0 -0
  136. package/prebuilds/win32-ia32/node.napi.node +0 -0
  137. package/prebuilds/win32-x64/node.napi.node +0 -0
  138. package/src/device.cc +6 -6
  139. package/src/node_usb.cc +23 -20
  140. package/src/node_usb.h +1 -0
  141. package/src/uv_async_queue.h +33 -25
  142. package/usb.js +6 -51
  143. package/index.js +0 -20
  144. package/libusb/.travis.yml +0 -49
  145. package/libusb/Brewfile +0 -4
  146. package/libusb/README.md +0 -32
  147. package/libusb/Xcode/config.h +0 -25
  148. package/libusb/android/config.h +0 -75
  149. package/libusb/appveyor.yml +0 -41
  150. package/libusb/appveyor_cygwin.bat +0 -11
  151. package/libusb/appveyor_minGW.bat +0 -19
  152. package/libusb/examples/testlibusb.c +0 -277
  153. package/libusb/libusb/os/haiku_pollfs.cpp +0 -367
  154. package/libusb/libusb/os/haiku_usb.h +0 -113
  155. package/libusb/libusb/os/haiku_usb_backend.cpp +0 -533
  156. package/libusb/libusb/os/haiku_usb_raw.cpp +0 -267
  157. package/libusb/libusb/os/haiku_usb_raw.h +0 -188
  158. package/libusb/libusb/os/sunos_usb.c +0 -1695
  159. package/libusb/libusb/os/sunos_usb.h +0 -80
  160. package/libusb/libusb/os/windows_nt_common.c +0 -1010
  161. package/libusb/libusb/os/windows_nt_common.h +0 -110
  162. package/libusb/libusb/os/windows_nt_shared_types.h +0 -147
  163. package/libusb/libusb/os/windows_usbdk.c +0 -830
  164. package/libusb/libusb/os/windows_usbdk.h +0 -103
  165. package/libusb/libusb/os/windows_winusb.c +0 -4391
  166. package/libusb/libusb/os/windows_winusb.h +0 -783
  167. package/libusb/msvc/appveyor.bat +0 -27
  168. package/libusb/msvc/fxload_2015.vcxproj +0 -91
  169. package/libusb/msvc/fxload_2017.vcxproj +0 -114
  170. package/libusb/msvc/getopt_2015.vcxproj +0 -73
  171. package/libusb/msvc/getopt_2017.vcxproj +0 -98
  172. package/libusb/msvc/hotplugtest_2015.vcxproj +0 -83
  173. package/libusb/msvc/hotplugtest_2017.vcxproj +0 -106
  174. package/libusb/msvc/libusb_2017.sln +0 -186
  175. package/libusb/msvc/libusb_dll_2015.vcxproj +0 -107
  176. package/libusb/msvc/libusb_dll_2017.vcxproj +0 -134
  177. package/libusb/msvc/libusb_static_2015.vcxproj +0 -98
  178. package/libusb/msvc/libusb_static_2017.vcxproj +0 -117
  179. package/libusb/msvc/listdevs_2015.vcxproj +0 -83
  180. package/libusb/msvc/listdevs_2017.vcxproj +0 -106
  181. package/libusb/msvc/stress_2015.vcxproj +0 -87
  182. package/libusb/msvc/stress_2017.vcxproj +0 -110
  183. package/libusb/msvc/stress_sources +0 -21
  184. package/libusb/msvc/testlibusb_2010.vcxproj +0 -82
  185. package/libusb/msvc/testlibusb_2012.vcxproj +0 -83
  186. package/libusb/msvc/testlibusb_2013.vcxproj +0 -83
  187. package/libusb/msvc/testlibusb_2015.vcxproj +0 -83
  188. package/libusb/msvc/testlibusb_2017.vcxproj +0 -106
  189. package/libusb/msvc/testlibusb_sources +0 -20
  190. package/libusb/msvc/xusb_2015.vcxproj +0 -83
  191. package/libusb/msvc/xusb_2017.vcxproj +0 -106
  192. package/libusb/travis-autogen.sh +0 -39
package/.gitmodules CHANGED
@@ -1,3 +1,3 @@
1
1
  [submodule "libusb"]
2
2
  path = libusb
3
- url = https://github.com/libusb/libusb.git
3
+ url = https://github.com/node-usb/libusb.git
package/CHANGELOG.md ADDED
@@ -0,0 +1,76 @@
1
+ # Changelog
2
+
3
+ ## [1.8.7] - 2022-02-07
4
+
5
+ ### Fixed
6
+ - Fixed prebuildify tags which lead to missing binaries - [`477`](https://github.com/node-usb/node-usb/pull/477) ([Rob Moran](https://github.com/thegecko))
7
+
8
+ ## [1.8.5] - 2022-01-29
9
+
10
+ ### Fixed
11
+ - Fixed lack of universal binary for MacOS darwin arm64 - [`473`](https://github.com/node-usb/node-usb/pull/473) ([Rob Moran](https://github.com/thegecko))
12
+
13
+ ## [1.8.2] - 2022-01-07
14
+
15
+ ### Added
16
+ - Added definition for `NAPI_VERSION 4` and added N-API v4 target to prebuildify - ([Rob Moran](https://github.com/thegecko))
17
+
18
+ ### Fixed
19
+ - Fixed exit delay and hang by moving queue start/stop to device open/close - [`460`](https://github.com/node-usb/node-usb/pull/460) ([MikeColeGuru](https://github.com/MikeColeGuru))
20
+
21
+ ## [1.8.1] - 2021-11-08
22
+
23
+ ### Added
24
+ - Added functionality to ref/unref the hotplug events - [`455`](https://github.com/node-usb/node-usb/pull/455) ([Guilherme Francescon](https://github.com/gfcittolin))
25
+ - Added CHANGELOG - [`454`](https://github.com/node-usb/node-usb/pull/454) ([Rob Moran](https://github.com/thegecko))
26
+
27
+ ### Fixed
28
+ - Fixed delay when exiting program - [`455`](https://github.com/node-usb/node-usb/pull/455) ([Rob Moran](https://github.com/thegecko))
29
+
30
+ ## [1.8.0] - 2021-10-14
31
+
32
+ ### Added
33
+ - Added prebuildify and GitHub action for native binaries - [`450`](https://github.com/node-usb/node-usb/pull/450) ([Rob Moran](https://github.com/thegecko))
34
+
35
+ ### Fixed
36
+ - Fixed crash after wake on Windows when using Electron - [`451`](https://github.com/node-usb/node-usb/pull/451) ([Rob Moran](https://github.com/thegecko))
37
+ - Fixed invalid initial refs - [`445`](https://github.com/node-usb/node-usb/pull/445) ([Alba Mendez](https://github.com/mildsunrise))
38
+
39
+ ### Changed
40
+ - Changed GitHub organisation to [node-usb](https://github.com/node-usb) - [`447`](https://github.com/node-usb/node-usb/pull/447) ([Rob Moran](https://github.com/thegecko))
41
+
42
+ ## [1.7.2] - 2021-08-30
43
+
44
+ ### Fixed
45
+ - Fixed crash when exiting on MacOS with Electron 9 - [`440`](https://github.com/node-usb/node-usb/pull/440) ([Daniel Main](https://github.com/danielmain))
46
+
47
+ ### Changed
48
+ - **Breaking:** Changed minimum Node.js version to `10` - [`428`](https://github.com/node-usb/node-usb/pull/428) ([Rob Moran](https://github.com/thegecko))
49
+
50
+ ## [1.7.1] - 2021-05-08
51
+
52
+ ### Fixed
53
+ - Fixed compiler warnings - [`419`](https://github.com/node-usb/node-usb/pull/419) ([Joel Purra](https://github.com/joelpurra))
54
+
55
+ ## [1.7.0] - 2021-04-10
56
+
57
+ ### Changed
58
+ - Changed native support to use Node Addon API - [`399`](https://github.com/node-usb/node-usb/pull/399) ([Georg Vienna](https://github.com/geovie))
59
+
60
+ ## [1.6.5] - 2021-02-14
61
+
62
+ ### Changed
63
+ - Changed prebuild for Electron 12 beta to nightly - [`410`](https://github.com/node-usb/node-usb/pull/410) ([Piotr Rogowski](https://github.com/karniv00l))
64
+
65
+ ### Removed
66
+ - Removed `portNumbers` test on arm64 - [`408`](https://github.com/node-usb/node-usb/pull/408) ([Rob Moran](https://github.com/thegecko))
67
+
68
+ ## [1.6.4] - 2021-01-30
69
+
70
+ ### Added
71
+ - Added prebuild for Electron 10 and 12 beta - [`407`](https://github.com/node-usb/node-usb/pull/407) ([Rob Moran](https://github.com/thegecko))
72
+ - Added prebuild for Electron 9 - [`362`](https://github.com/node-usb/node-usb/pull/362) (Luke Whyte)
73
+
74
+ ### Changed
75
+ - Changed to GitHub Actions for prebuild workflow - [`404`](https://github.com/node-usb/node-usb/pull/404) ([Rob Moran](https://github.com/thegecko))
76
+ - Changed Node.js 13 prebuild target to Node.js 14 - [`374`](https://github.com/node-usb/node-usb/pull/374) ([Micah Zoltu](https://github.com/MicahZoltu))
@@ -304,6 +304,12 @@ Attaches a callback to plugging in a `device`.
304
304
  ### usb.on('detach', function(device) { ... });
305
305
  Attaches a callback to unplugging a `device`.
306
306
 
307
+ ### usb.refHotplugEvents();
308
+ Restore (re-reference) the hotplug events unreferenced by `unrefHotplugEvents()`
309
+
310
+ ### usb.unrefHotplugEvents();
311
+ Listening to events will prevent the process to exit. By calling this function, hotplug events will be unreferenced by the event loop, allowing the process to exit even when listening for the `attach` and `detach` events.
312
+
307
313
 
308
314
  Development and testing
309
315
  =======================
package/binding.gyp CHANGED
@@ -10,7 +10,7 @@
10
10
  'cflags_cc!': [ '-fno-exceptions' ],
11
11
  'xcode_settings': { 'GCC_ENABLE_CPP_EXCEPTIONS': 'YES',
12
12
  'CLANG_CXX_LIBRARY': 'libc++',
13
- 'MACOSX_DEPLOYMENT_TARGET': '10.11',
13
+ 'MACOSX_DEPLOYMENT_TARGET': '10.7',
14
14
  },
15
15
  'msvs_settings': {
16
16
  'VCCLCompilerTool': { 'ExceptionHandling': 1 },
@@ -49,10 +49,20 @@
49
49
  }],
50
50
  ['OS=="mac"', {
51
51
  'xcode_settings': {
52
- 'OTHER_CFLAGS': [ '-std=c++1y', '-stdlib=libc++' ],
53
- 'OTHER_LDFLAGS': [ '-framework', 'CoreFoundation', '-framework', 'IOKit' ],
52
+ 'OTHER_CFLAGS': [
53
+ '-std=c++1y',
54
+ '-stdlib=libc++',
55
+ '-arch x86_64',
56
+ '-arch arm64'
57
+ ],
58
+ 'OTHER_LDFLAGS': [
59
+ '-framework', 'CoreFoundation',
60
+ '-framework', 'IOKit',
61
+ '-arch x86_64',
62
+ '-arch arm64'
63
+ ],
54
64
  'SDKROOT': 'macosx',
55
- 'MACOSX_DEPLOYMENT_TARGET': '10.11',
65
+ 'MACOSX_DEPLOYMENT_TARGET': '10.7',
56
66
  },
57
67
  }],
58
68
  ['OS=="win"', {
@@ -26,13 +26,7 @@
26
26
  BRANCH_OFFSET=10000
27
27
  ################################################################################
28
28
 
29
- if [ "$BASH_VERSION" = '' ]; then
30
- TYPE_CMD="type git >/dev/null 2>&1"
31
- else
32
- TYPE_CMD="type -P git &>/dev/null"
33
- fi
34
-
35
- eval $TYPE_CMD || { echo "git command not found. Aborting." >&2; exit 1; }
29
+ type -P git &>/dev/null || { echo "git command not found. Aborting." >&2; exit 1; }
36
30
 
37
31
  NANO=`git log --oneline | wc -l`
38
32
  NANO=`expr $NANO + $BRANCH_OFFSET`
package/libusb/AUTHORS CHANGED
@@ -1,84 +1,58 @@
1
1
  Copyright © 2001 Johannes Erdfelt <johannes@erdfelt.com>
2
2
  Copyright © 2007-2009 Daniel Drake <dsd@gentoo.org>
3
3
  Copyright © 2010-2012 Peter Stuge <peter@stuge.se>
4
- Copyright © 2008-2016 Nathan Hjelm <hjelmn@users.sourceforge.net>
4
+ Copyright © 2008-2013 Nathan Hjelm <hjelmn@users.sourceforge.net>
5
5
  Copyright © 2009-2013 Pete Batard <pete@akeo.ie>
6
6
  Copyright © 2009-2013 Ludovic Rousseau <ludovic.rousseau@gmail.com>
7
7
  Copyright © 2010-2012 Michael Plante <michael.plante@gmail.com>
8
8
  Copyright © 2011-2013 Hans de Goede <hdegoede@redhat.com>
9
9
  Copyright © 2012-2013 Martin Pieuchot <mpi@openbsd.org>
10
10
  Copyright © 2012-2013 Toby Gray <toby.gray@realvnc.com>
11
- Copyright © 2013-2018 Chris Dickens <christopher.a.dickens@gmail.com>
12
11
 
13
12
  Other contributors:
14
- Adrian Bunk
15
- Akshay Jaggi
16
13
  Alan Ott
17
14
  Alan Stern
18
15
  Alex Vatchenko
19
16
  Andrew Fernandes
20
- Andy Chunyu
21
- Andy McFadden
22
- Angus Gratton
23
- Anil Nair
24
17
  Anthony Clay
25
- Antonio Ospite
26
18
  Artem Egorkine
27
19
  Aurelien Jarno
28
20
  Bastien Nocera
29
21
  Bei Zhang
30
22
  Benjamin Dobell
31
- Brent Rector
32
23
  Carl Karsten
33
- Christophe Zeitouny
24
+ Chris Dickens
34
25
  Colin Walters
35
26
  Dave Camarillo
36
27
  David Engraf
37
28
  David Moore
38
29
  Davidlohr Bueso
39
- Dmitry Fleytman
40
- Doug Johnston
41
- Evan Hunter
42
30
  Federico Manzan
43
31
  Felipe Balbi
44
32
  Florian Albrechtskirchinger
45
33
  Francesco Montorsi
46
34
  Francisco Facioni
47
- Gaurav Gupta
48
35
  Graeme Gill
49
36
  Gustavo Zacarias
50
37
  Hans Ulrich Niedermann
51
38
  Hector Martin
52
39
  Hoi-Ho Chan
53
40
  Ilya Konstantinov
54
- Jakub Klama
55
41
  James Hanko
56
- Jeffrey Nichols
57
- Johann Richard
58
42
  John Sheu
59
- Jonathon Jongsma
60
- Joost Muller
61
- Josh Gao
62
43
  Joshua Blake
63
44
  Justin Bischoff
64
- KIMURA Masaru
65
45
  Karsten Koenig
66
46
  Konrad Rzepecki
67
47
  Kuangye Guo
68
48
  Lars Kanis
69
49
  Lars Wirzenius
70
- Lei Chen
71
50
  Luca Longinotti
72
- Marcus Meissner
73
51
  Markus Heidelberg
74
- Martin Ettl
75
52
  Martin Koegler
76
- Matthew Stapleton
77
53
  Matthias Bolte
78
- Michel Zou
79
54
  Mike Frysinger
80
55
  Mikhail Gusarov
81
- Morgan Leborgne
82
56
  Moritz Fischer
83
57
  Ларионов Даниил
84
58
  Nicholas Corgan
@@ -87,33 +61,18 @@ Orin Eman
87
61
  Paul Fertser
88
62
  Pekka Nikander
89
63
  Rob Walker
90
- Romain Vimont
91
- Roman Kalashnikov
92
- Sameeh Jubran
93
64
  Sean McBride
94
65
  Sebastian Pipping
95
- Sergey Serb
96
66
  Simon Haggett
97
- Simon Newton
98
- Stefan Agner
99
- Stefan Tauner
100
- Steinar H. Gunderson
101
67
  Thomas Röfer
102
- Tim Hutt
103
68
  Tim Roberts
104
- Tobias Klauser
105
69
  Toby Peterson
106
- Tormod Volden
107
70
  Trygve Laugstøl
108
71
  Uri Lublin
109
72
  Vasily Khoruzhick
110
73
  Vegard Storheil Eriksen
111
- Venkatesh Shukla
112
- Vianney le Clément de Saint-Marcq
113
- Victor Toso
114
74
  Vitali Lovich
115
- William Skellenger
116
75
  Xiaofan Chen
117
76
  Zoltán Kovács
118
77
  Роман Донченко
119
- parafin
78
+ xantares
package/libusb/ChangeLog CHANGED
@@ -1,86 +1,14 @@
1
1
  For detailed information about the changes below, please see the git log or
2
2
  visit: http://log.libusb.info
3
3
 
4
- 2019-08-28: v1.0.23
5
- * Add German translation (#446)
6
- * Add Hungarian translation (#493)
7
- * Android: Improved support for Android
8
- * BSD: Remove infinite recursion in OpenBSD backend
9
- * configure.ac: Fix detection of clock_gettime library (#439)
10
- * Core: abandon synchronous transfers when device closure is detected.
11
- * Core: fix error in handling the removal of file descriptors while handling
12
- events.
13
- * Darwin(macOS): Switch from using ResetDevice to USBDeviceReEnumerate (#455)
14
- * Darwin(macOS): Remove code that changed the device class used (#428)
15
- * Darwin(macOS): Reduce hotplug timeout to 1ms (from 5s)
16
- * New API libusb_set_log_cb() to redirect global and per context log
17
- messages to the provided log handling function
18
- * New API libusb_wrap_sys_device to allow the user to specify the
19
- usb device to use.
20
- * Solaris: Break infinite recursion in backend clock_gettime
21
- * Solaris: Enable timerfd on sunos when available
22
- * Windows: Add support for isochronous transfers with WinUSB
23
- * Various other bug fixes and improvements
24
-
25
- 2018-03-24: v1.0.22:
26
- * New libusb_set_option() API
27
- * Fix transfer timeout not being cleared upon resubmission
28
- * Report super speed plus devices on modern Linux and macOS
29
- * Darwin: Improve support for macOS Sierra and High Sierra
30
- * Darwin: SDK fixes and improvements
31
- * Linux: Let initialization succeed when no devices are present
32
- * Linux: Mark internal file descriptors with CLOEXEC flag
33
- * Solaris: Add support for attach/detach kernel driver
34
- * Windows: Add dynamic UsbDk backend selection
35
- * Windows: Add isochronous transfer support via libusbK
36
- * Windows: Add Visual Studio 2017 support
37
- * Windows: Fix enumeration problems on Windows 8 and later
38
- * Windows: Major rework of poll() emulation
39
- * Windows: Numerous HID API fixes
40
- * Windows: Support cancelation of individual transfers (Vista and later)
41
- * Various other bug fixes and improvements
42
-
43
- 2016-10-01: v1.0.21:
44
- * Core: Refactor code related to transfer flags and timeout handling
45
- * Darwin: Ignore root hub simulation devices
46
- * Darwin: Improved support for OS X El Capitan
47
- * Darwin: Work around devices with buggy endpoint descriptors
48
- * Darwin: Do not use objc_registerThreadWithCollector after its deprecation
49
- * Darwin: Use C11 atomics on 10.12+ as the OS atomics are now deprecated
50
- * Linux: Support preallocating kernel memory for zerocopy USB
51
- * Linux: Deal with receiving POLLERR before all transfers have completed
52
- * Solaris: Add solaris backend
53
- * Windows: Add Visual Studio 2015 support
54
- * Windows: Add usbdk backend
55
- * Prevent attempts to recursively handle events
56
- * Fix race condition in handle_timeout()
57
- * Allow transferred argument to be optional in bulk APIs
58
- * Various other bug fixes and improvements
59
-
60
- 2015-09-13: v1.0.20
61
- * Add Haiku support
62
- * Fix multiple memory and resource leaks (#16, #52, #76, #81)
63
- * Fix possible deadlock when executing transfer callback
64
- * New libusb_free_pollfds() API
65
- * Darwin: Fix devices not being detected on OS X 10.8 (#48)
66
- * Linux: Allow larger isochronous transfer submission (#23)
67
- * Windows: Fix broken builds Cygwin/MinGW builds and compiler warnings
68
- * Windows: Fix broken bus number lookup
69
- * Windows: Improve submission of control requests for composite devices
70
- * Examples: Add two-stage load support to fxload (#12)
71
- * Correctly report cancellations due to timeouts
72
- * Improve efficiency of event handling
73
- * Improve speed of transfer submission in multi-threaded environments
74
- * Various other bug fixes and improvements
75
- The (#xx) numbers are libusb issue numbers, see ie:
76
- https://github.com/libusb/libusb/issues/16
77
-
78
4
  2014-05-30: v1.0.19
79
5
  * Add support for USB bulk streams on Linux and Mac OS X (#11)
80
6
  * Windows: Add AMD and Intel USB-3.0 root hub support
81
7
  * Windows: Fix USB 3.0 speed detection on Windows 8 or later (#10)
82
8
  * Added Russian translation for libusb_strerror strings
83
9
  * All: Various small fixes and cleanups
10
+ The (#xx) numbers are libusb issue numbers, see ie:
11
+ https://github.com/libusb/libusb/issues/11
84
12
 
85
13
  2014-01-25: v1.0.18
86
14
  * Fix multiple memory leaks
package/libusb/INSTALL ADDED
@@ -0,0 +1,234 @@
1
+ Installation Instructions
2
+ *************************
3
+
4
+ Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005,
5
+ 2006 Free Software Foundation, Inc.
6
+
7
+ This file is free documentation; the Free Software Foundation gives
8
+ unlimited permission to copy, distribute and modify it.
9
+
10
+ Basic Installation
11
+ ==================
12
+
13
+ Briefly, the shell commands `./configure; make; make install' should
14
+ configure, build, and install this package. The following
15
+ more-detailed instructions are generic; see the `README' file for
16
+ instructions specific to this package.
17
+
18
+ The `configure' shell script attempts to guess correct values for
19
+ various system-dependent variables used during compilation. It uses
20
+ those values to create a `Makefile' in each directory of the package.
21
+ It may also create one or more `.h' files containing system-dependent
22
+ definitions. Finally, it creates a shell script `config.status' that
23
+ you can run in the future to recreate the current configuration, and a
24
+ file `config.log' containing compiler output (useful mainly for
25
+ debugging `configure').
26
+
27
+ It can also use an optional file (typically called `config.cache'
28
+ and enabled with `--cache-file=config.cache' or simply `-C') that saves
29
+ the results of its tests to speed up reconfiguring. Caching is
30
+ disabled by default to prevent problems with accidental use of stale
31
+ cache files.
32
+
33
+ If you need to do unusual things to compile the package, please try
34
+ to figure out how `configure' could check whether to do them, and mail
35
+ diffs or instructions to the address given in the `README' so they can
36
+ be considered for the next release. If you are using the cache, and at
37
+ some point `config.cache' contains results you don't want to keep, you
38
+ may remove or edit it.
39
+
40
+ The file `configure.ac' (or `configure.in') is used to create
41
+ `configure' by a program called `autoconf'. You need `configure.ac' if
42
+ you want to change it or regenerate `configure' using a newer version
43
+ of `autoconf'.
44
+
45
+ The simplest way to compile this package is:
46
+
47
+ 1. `cd' to the directory containing the package's source code and type
48
+ `./configure' to configure the package for your system.
49
+
50
+ Running `configure' might take a while. While running, it prints
51
+ some messages telling which features it is checking for.
52
+
53
+ 2. Type `make' to compile the package.
54
+
55
+ 3. Optionally, type `make check' to run any self-tests that come with
56
+ the package.
57
+
58
+ 4. Type `make install' to install the programs and any data files and
59
+ documentation.
60
+
61
+ 5. You can remove the program binaries and object files from the
62
+ source code directory by typing `make clean'. To also remove the
63
+ files that `configure' created (so you can compile the package for
64
+ a different kind of computer), type `make distclean'. There is
65
+ also a `make maintainer-clean' target, but that is intended mainly
66
+ for the package's developers. If you use it, you may have to get
67
+ all sorts of other programs in order to regenerate files that came
68
+ with the distribution.
69
+
70
+ Compilers and Options
71
+ =====================
72
+
73
+ Some systems require unusual options for compilation or linking that the
74
+ `configure' script does not know about. Run `./configure --help' for
75
+ details on some of the pertinent environment variables.
76
+
77
+ You can give `configure' initial values for configuration parameters
78
+ by setting variables in the command line or in the environment. Here
79
+ is an example:
80
+
81
+ ./configure CC=c99 CFLAGS=-g LIBS=-lposix
82
+
83
+ *Note Defining Variables::, for more details.
84
+
85
+ Compiling For Multiple Architectures
86
+ ====================================
87
+
88
+ You can compile the package for more than one kind of computer at the
89
+ same time, by placing the object files for each architecture in their
90
+ own directory. To do this, you can use GNU `make'. `cd' to the
91
+ directory where you want the object files and executables to go and run
92
+ the `configure' script. `configure' automatically checks for the
93
+ source code in the directory that `configure' is in and in `..'.
94
+
95
+ With a non-GNU `make', it is safer to compile the package for one
96
+ architecture at a time in the source code directory. After you have
97
+ installed the package for one architecture, use `make distclean' before
98
+ reconfiguring for another architecture.
99
+
100
+ Installation Names
101
+ ==================
102
+
103
+ By default, `make install' installs the package's commands under
104
+ `/usr/local/bin', include files under `/usr/local/include', etc. You
105
+ can specify an installation prefix other than `/usr/local' by giving
106
+ `configure' the option `--prefix=PREFIX'.
107
+
108
+ You can specify separate installation prefixes for
109
+ architecture-specific files and architecture-independent files. If you
110
+ pass the option `--exec-prefix=PREFIX' to `configure', the package uses
111
+ PREFIX as the prefix for installing programs and libraries.
112
+ Documentation and other data files still use the regular prefix.
113
+
114
+ In addition, if you use an unusual directory layout you can give
115
+ options like `--bindir=DIR' to specify different values for particular
116
+ kinds of files. Run `configure --help' for a list of the directories
117
+ you can set and what kinds of files go in them.
118
+
119
+ If the package supports it, you can cause programs to be installed
120
+ with an extra prefix or suffix on their names by giving `configure' the
121
+ option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
122
+
123
+ Optional Features
124
+ =================
125
+
126
+ Some packages pay attention to `--enable-FEATURE' options to
127
+ `configure', where FEATURE indicates an optional part of the package.
128
+ They may also pay attention to `--with-PACKAGE' options, where PACKAGE
129
+ is something like `gnu-as' or `x' (for the X Window System). The
130
+ `README' should mention any `--enable-' and `--with-' options that the
131
+ package recognizes.
132
+
133
+ For packages that use the X Window System, `configure' can usually
134
+ find the X include and library files automatically, but if it doesn't,
135
+ you can use the `configure' options `--x-includes=DIR' and
136
+ `--x-libraries=DIR' to specify their locations.
137
+
138
+ Specifying the System Type
139
+ ==========================
140
+
141
+ There may be some features `configure' cannot figure out automatically,
142
+ but needs to determine by the type of machine the package will run on.
143
+ Usually, assuming the package is built to be run on the _same_
144
+ architectures, `configure' can figure that out, but if it prints a
145
+ message saying it cannot guess the machine type, give it the
146
+ `--build=TYPE' option. TYPE can either be a short name for the system
147
+ type, such as `sun4', or a canonical name which has the form:
148
+
149
+ CPU-COMPANY-SYSTEM
150
+
151
+ where SYSTEM can have one of these forms:
152
+
153
+ OS KERNEL-OS
154
+
155
+ See the file `config.sub' for the possible values of each field. If
156
+ `config.sub' isn't included in this package, then this package doesn't
157
+ need to know the machine type.
158
+
159
+ If you are _building_ compiler tools for cross-compiling, you should
160
+ use the option `--target=TYPE' to select the type of system they will
161
+ produce code for.
162
+
163
+ If you want to _use_ a cross compiler, that generates code for a
164
+ platform different from the build platform, you should specify the
165
+ "host" platform (i.e., that on which the generated programs will
166
+ eventually be run) with `--host=TYPE'.
167
+
168
+ Sharing Defaults
169
+ ================
170
+
171
+ If you want to set default values for `configure' scripts to share, you
172
+ can create a site shell script called `config.site' that gives default
173
+ values for variables like `CC', `cache_file', and `prefix'.
174
+ `configure' looks for `PREFIX/share/config.site' if it exists, then
175
+ `PREFIX/etc/config.site' if it exists. Or, you can set the
176
+ `CONFIG_SITE' environment variable to the location of the site script.
177
+ A warning: not all `configure' scripts look for a site script.
178
+
179
+ Defining Variables
180
+ ==================
181
+
182
+ Variables not defined in a site shell script can be set in the
183
+ environment passed to `configure'. However, some packages may run
184
+ configure again during the build, and the customized values of these
185
+ variables may be lost. In order to avoid this problem, you should set
186
+ them in the `configure' command line, using `VAR=value'. For example:
187
+
188
+ ./configure CC=/usr/local2/bin/gcc
189
+
190
+ causes the specified `gcc' to be used as the C compiler (unless it is
191
+ overridden in the site shell script).
192
+
193
+ Unfortunately, this technique does not work for `CONFIG_SHELL' due to
194
+ an Autoconf bug. Until the bug is fixed you can use this workaround:
195
+
196
+ CONFIG_SHELL=/bin/bash /bin/bash ./configure CONFIG_SHELL=/bin/bash
197
+
198
+ `configure' Invocation
199
+ ======================
200
+
201
+ `configure' recognizes the following options to control how it operates.
202
+
203
+ `--help'
204
+ `-h'
205
+ Print a summary of the options to `configure', and exit.
206
+
207
+ `--version'
208
+ `-V'
209
+ Print the version of Autoconf used to generate the `configure'
210
+ script, and exit.
211
+
212
+ `--cache-file=FILE'
213
+ Enable the cache: use and save the results of the tests in FILE,
214
+ traditionally `config.cache'. FILE defaults to `/dev/null' to
215
+ disable caching.
216
+
217
+ `--config-cache'
218
+ `-C'
219
+ Alias for `--cache-file=config.cache'.
220
+
221
+ `--quiet'
222
+ `--silent'
223
+ `-q'
224
+ Do not print messages saying which checks are being made. To
225
+ suppress all normal output, redirect it to `/dev/null' (any error
226
+ messages will still be shown).
227
+
228
+ `--srcdir=DIR'
229
+ Look for the package's source code in directory DIR. Usually
230
+ `configure' can determine that directory automatically.
231
+
232
+ `configure' also accepts some other, not widely useful, options. Run
233
+ `configure --help' for more details.
234
+
package/libusb/README ADDED
@@ -0,0 +1,28 @@
1
+ libusb
2
+ ======
3
+
4
+ libusb is a library for USB device access from Linux, Mac OS X,
5
+ Windows and OpenBSD/NetBSD userspace.
6
+ It is written in C and licensed under the GNU Lesser General Public
7
+ License version 2.1 or, at your option, any later version (see COPYING).
8
+
9
+ libusb is abstracted internally in such a way that it can hopefully
10
+ be ported to other operating systems. Please see the PORTING file
11
+ for more information.
12
+
13
+ libusb homepage:
14
+ http://libusb.info/
15
+
16
+ Developers will wish to consult the API documentation:
17
+ http://api.libusb.info
18
+
19
+ Use the mailing list for questions, comments, etc:
20
+ http://mailing-list.libusb.info
21
+
22
+ - Pete Batard <pete@akeo.ie>
23
+ - Hans de Goede <hdegoede@redhat.com>
24
+ - Xiaofan Chen <xiaofanc@gmail.com>
25
+ - Ludovic Rousseau <ludovic.rousseau@gmail.com>
26
+ - Nathan Hjelm <hjelmn@users.sourceforge.net>
27
+ - Chris Dickens <christopher.a.dickens@gmail.com>
28
+ (Please use the mailing list rather than mailing developers directly)
package/libusb/TODO CHANGED
@@ -1,2 +1,2 @@
1
1
  Please see the libusb roadmap by visiting:
2
- https://github.com/libusb/libusb/milestones?direction=asc&sort=due_date&state=open
2
+ https://github.com/libusb/libusb/issues/milestones?direction=asc&sort=due_date
@@ -23,9 +23,6 @@ GCC_STRICT_ALIASING = NO
23
23
  // Use C99 dialect.
24
24
  GCC_C_LANGUAGE_STANDARD = c99
25
25
 
26
- // Don't search user paths with <> style #includes.
27
- ALWAYS_SEARCH_USER_PATHS = NO
28
-
29
26
  // Compiler warnings.
30
27
  GCC_WARN_64_TO_32_BIT_CONVERSION = YES
31
28
  GCC_WARN_ABOUT_RETURN_TYPE = YES
@@ -40,21 +37,12 @@ GCC_WARN_UNKNOWN_PRAGMAS = YES
40
37
  GCC_WARN_UNUSED_FUNCTION = YES
41
38
  GCC_WARN_UNUSED_LABEL = YES
42
39
  GCC_WARN_UNUSED_VARIABLE = YES
43
- GCC_WARN_UNUSED_PARAMETER = YES
44
40
  CLANG_WARN_EMPTY_BODY = YES
45
41
  CLANG_WARN_CONSTANT_CONVERSION = YES
46
42
  CLANG_WARN_ENUM_CONVERSION = YES
47
43
  CLANG_WARN_INT_CONVERSION = YES
48
44
  CLANG_WARN_DOCUMENTATION_COMMENTS = YES
49
45
  CLANG_WARN_BOOL_CONVERSION = YES
50
- CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES
51
- CLANG_WARN_FLOAT_CONVERSION = YES
52
- CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES
53
- CLANG_WARN_INFINITE_RECURSION = YES
54
- CLANG_WARN_ASSIGN_ENUM = YES
55
- CLANG_WARN_STRICT_PROTOTYPES = YES
56
- CLANG_WARN_COMMA = YES
57
- CLANG_WARN_SUSPICIOUS_IMPLICIT_CONVERSION = YES
58
46
 
59
47
  // Static analyzer warnings.
60
48
  CLANG_ANALYZER_SECURITY_FLOATLOOPCOUNTER = YES