You can subscribe to this list here.
| 2000 |
Jan
|
Feb
|
Mar
(2) |
Apr
(1) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(4) |
Nov
|
Dec
|
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2001 |
Jan
(4) |
Feb
(19) |
Mar
(5) |
Apr
(5) |
May
|
Jun
(3) |
Jul
(21) |
Aug
(27) |
Sep
|
Oct
(5) |
Nov
(4) |
Dec
(3) |
| 2002 |
Jan
(27) |
Feb
(33) |
Mar
(25) |
Apr
(40) |
May
(58) |
Jun
(25) |
Jul
(39) |
Aug
(23) |
Sep
(15) |
Oct
(26) |
Nov
(75) |
Dec
(35) |
| 2003 |
Jan
(29) |
Feb
(13) |
Mar
(24) |
Apr
(58) |
May
(27) |
Jun
(21) |
Jul
(11) |
Aug
(24) |
Sep
(6) |
Oct
(6) |
Nov
(30) |
Dec
(71) |
| 2004 |
Jan
(125) |
Feb
(47) |
Mar
(31) |
Apr
(29) |
May
(53) |
Jun
(29) |
Jul
(43) |
Aug
(19) |
Sep
(69) |
Oct
(38) |
Nov
(38) |
Dec
(37) |
| 2005 |
Jan
(59) |
Feb
(92) |
Mar
(32) |
Apr
(54) |
May
(29) |
Jun
(27) |
Jul
(34) |
Aug
(46) |
Sep
(47) |
Oct
(43) |
Nov
(63) |
Dec
(112) |
| 2006 |
Jan
(99) |
Feb
(117) |
Mar
(68) |
Apr
(59) |
May
(66) |
Jun
(32) |
Jul
(65) |
Aug
(85) |
Sep
(44) |
Oct
(113) |
Nov
(334) |
Dec
(42) |
| 2007 |
Jan
(64) |
Feb
(147) |
Mar
(245) |
Apr
(427) |
May
(229) |
Jun
(66) |
Jul
(56) |
Aug
(58) |
Sep
(82) |
Oct
(109) |
Nov
(196) |
Dec
(78) |
| 2008 |
Jan
(143) |
Feb
(79) |
Mar
(85) |
Apr
(126) |
May
(405) |
Jun
(259) |
Jul
(218) |
Aug
(118) |
Sep
(116) |
Oct
(135) |
Nov
(105) |
Dec
(79) |
| 2009 |
Jan
(196) |
Feb
(146) |
Mar
(60) |
Apr
(180) |
May
(229) |
Jun
(206) |
Jul
(126) |
Aug
(155) |
Sep
(276) |
Oct
(160) |
Nov
(120) |
Dec
(185) |
| 2010 |
Jan
(685) |
Feb
(581) |
Mar
(460) |
Apr
(650) |
May
(495) |
Jun
(567) |
Jul
(375) |
Aug
(518) |
Sep
(531) |
Oct
(487) |
Nov
(269) |
Dec
(461) |
| 2011 |
Jan
(524) |
Feb
(457) |
Mar
(385) |
Apr
(316) |
May
(229) |
Jun
(480) |
Jul
(302) |
Aug
(243) |
Sep
(411) |
Oct
(158) |
Nov
(171) |
Dec
(269) |
| 2012 |
Jan
(117) |
Feb
(177) |
Mar
(225) |
Apr
(251) |
May
(150) |
Jun
(228) |
Jul
(127) |
Aug
(74) |
Sep
(128) |
Oct
(106) |
Nov
(47) |
Dec
(73) |
| 2013 |
Jan
(83) |
Feb
(224) |
Mar
(69) |
Apr
(182) |
May
(118) |
Jun
(52) |
Jul
(180) |
Aug
(43) |
Sep
(43) |
Oct
(54) |
Nov
(18) |
Dec
(43) |
| 2014 |
Jan
(40) |
Feb
(78) |
Mar
(138) |
Apr
(85) |
May
(65) |
Jun
(81) |
Jul
(56) |
Aug
(116) |
Sep
(123) |
Oct
(60) |
Nov
(74) |
Dec
(99) |
| 2015 |
Jan
(120) |
Feb
(126) |
Mar
(176) |
Apr
(133) |
May
(124) |
Jun
(60) |
Jul
(54) |
Aug
(92) |
Sep
(134) |
Oct
(75) |
Nov
(48) |
Dec
(78) |
| 2016 |
Jan
(94) |
Feb
(89) |
Mar
(109) |
Apr
(33) |
May
(25) |
Jun
(64) |
Jul
(54) |
Aug
(26) |
Sep
(59) |
Oct
(30) |
Nov
(77) |
Dec
(16) |
| 2017 |
Jan
(37) |
Feb
(22) |
Mar
(25) |
Apr
(7) |
May
(36) |
Jun
(10) |
Jul
(64) |
Aug
(39) |
Sep
(22) |
Oct
(26) |
Nov
(27) |
Dec
(14) |
| 2018 |
Jan
(10) |
Feb
(31) |
Mar
(15) |
Apr
(35) |
May
(20) |
Jun
(13) |
Jul
(10) |
Aug
(6) |
Sep
(22) |
Oct
(13) |
Nov
(52) |
Dec
(23) |
| 2019 |
Jan
(25) |
Feb
(17) |
Mar
(30) |
Apr
(34) |
May
(12) |
Jun
(10) |
Jul
(26) |
Aug
(13) |
Sep
(24) |
Oct
(12) |
Nov
(9) |
Dec
(5) |
| 2020 |
Jan
(24) |
Feb
(12) |
Mar
(40) |
Apr
(20) |
May
(12) |
Jun
(10) |
Jul
(41) |
Aug
(20) |
Sep
(24) |
Oct
(4) |
Nov
(6) |
Dec
(38) |
| 2021 |
Jan
(34) |
Feb
(33) |
Mar
(10) |
Apr
(12) |
May
(10) |
Jun
(49) |
Jul
(49) |
Aug
(17) |
Sep
(43) |
Oct
(11) |
Nov
(2) |
Dec
(13) |
| 2022 |
Jan
(14) |
Feb
(14) |
Mar
(1) |
Apr
(6) |
May
(6) |
Jun
(10) |
Jul
|
Aug
(3) |
Sep
(6) |
Oct
(19) |
Nov
(9) |
Dec
(5) |
| 2023 |
Jan
(4) |
Feb
(9) |
Mar
(30) |
Apr
(17) |
May
(5) |
Jun
|
Jul
(39) |
Aug
(7) |
Sep
(3) |
Oct
(6) |
Nov
|
Dec
(3) |
| 2024 |
Jan
(2) |
Feb
|
Mar
(17) |
Apr
(16) |
May
(14) |
Jun
(13) |
Jul
(7) |
Aug
(3) |
Sep
(8) |
Oct
(19) |
Nov
(1) |
Dec
|
| 2025 |
Jan
|
Feb
|
Mar
(2) |
Apr
(1) |
May
(1) |
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| S | M | T | W | T | F | S |
|---|---|---|---|---|---|---|
|
1
|
2
(3) |
3
|
4
(2) |
5
|
6
(3) |
7
(1) |
|
8
(1) |
9
(1) |
10
|
11
|
12
(4) |
13
|
14
(1) |
|
15
(4) |
16
(1) |
17
(5) |
18
(1) |
19
(2) |
20
(3) |
21
|
|
22
|
23
|
24
(2) |
25
|
26
(1) |
27
|
28
|
|
29
(1) |
30
|
31
(1) |
|
|
|
|
|
From: Sameeh J. <sa...@da...> - 2017-01-31 12:09:19
|
WinUsb uses ERROR_GEN_FAILURE instead of ERROR_FUNCTION_FAILED,
this diffrence was observed while using Libusb's xusb example
application while alternating backends.
Signed-off-by: Sameeh Jubran <sa...@da...>
---
libusb/os/windows_usbdk.c | 6 +-----
1 file changed, 1 insertion(+), 5 deletions(-)
diff --git a/libusb/os/windows_usbdk.c b/libusb/os/windows_usbdk.c
index a588e51..2bf5bfa 100644
--- a/libusb/os/windows_usbdk.c
+++ b/libusb/os/windows_usbdk.c
@@ -799,16 +799,12 @@ static DWORD usbdk_translate_usbd_status(USBD_STATUS UsbdStatus)
return NO_ERROR;
switch (UsbdStatus) {
- case USBD_STATUS_STALL_PID:
- case USBD_STATUS_ENDPOINT_HALTED:
- case USBD_STATUS_BAD_START_FRAME:
- return ERROR_GEN_FAILURE;
case USBD_STATUS_TIMEOUT:
return ERROR_SEM_TIMEOUT;
case USBD_STATUS_CANCELED:
return ERROR_OPERATION_ABORTED;
default:
- return ERROR_FUNCTION_FAILED;
+ return ERROR_GEN_FAILURE;
}
}
--
2.7.4
|
|
From: Dmitry F. <dm...@da...> - 2017-01-29 10:03:13
|
> On 17 Jan 2017, at 09:52 AM, Dmitry Fleytman <dm...@da...> wrote: > >> >> On 16 Jan 2017, at 14:23 PM, diabolo <dia...@ya... <mailto:dia...@ya...>> wrote: >> >> To me this patch set and way of activating the back end is not a very good option. >> >> it can create conflict and regression issue when multiple libsub dll instance >> run on same pc and have specific winusb or libusbk backend requirement and expectation. >> >> I have such use case with multiple device with different libusbk , Winusb as requirement (usbdk is installed). I need specific feature /behavior of the respective back-end >> As is, I will end up using usbdk what will create trouble to my existing applications. >> >> Ideally for legacy and compatibility reason usbdk run time activation >> should be a fall back when none of the legacy back-end is available only. >> But that may not be any easy to detect and do. >> >> A s/w interface for usbdk run-time back-end selection could be a solution and is fine to me. >> With that new app can force usbdk back end activation and do not need any specific back end driver install or any device specific descriptor for winusb usage. > > Ability to force use of specific backend may be useful indeed. > What if we make probing for UsbDk default behavior and add an API or parameter for specific backend selection? > > Chris, what do you think about this? Ping. > > ~Dmitry >> >> regards >> michel >> |
|
From: Dmitry F. <dm...@da...> - 2017-01-26 16:28:00
|
> On 20 Jan 2017, at 12:54 PM, Xiaofan Chen <xia...@gm...> wrote:
>
> On Thu, Jan 19, 2017 at 9:03 PM, Sameeh Jubran <sa...@da...> wrote:
>> Can you see these errors in Winusb (using the same device)?
>>
>> [ 0.406097] [00001a50] libusb: debug [windows_transfer_callback]
>> handling I/O completion with errcode 31, size 0
>> [ 0.406596] [00001a50] libusb: debug [windows_transfer_callback]
>> detected endpoint stall
>>
>> If so, I think that these are the same errors, but due to different
>> error code handling in Winusb and Usbdk it results in a different log
>> in libusb, in the function windows_transfer_callback.
>
> I see. From the following WinUSB run log, it seems to be the case.
> Maybe this kind of backend differences should be aligned or at least
> documented somehow.
Yes, we will align error codes.
>
> mcuee@Win7HomeX64_PC MINGW32 /h/work/libusb/libusb/build_mingw32_winusb
> $ ./examples/xusb.exe 1366:0101
> Using libusb v1.0.21.11157
>
> Opening device 1366:0101...
>
> Reading device descriptor:
> length: 18
> device class: 0
> S/N: 3
> VID:PID: 1366:0101
> bcdDevice: 0001
> iMan:iProd:iSer: 1:2:3
> nb confs: 1
>
> Reading BOS descriptor: no descriptor
>
> Reading first configuration descriptor:
> nb interfaces: 1
> interface[0]: id = 0
> interface[0].altsetting[0]: num endpoints = 2
> Class.SubClass.Protocol: FF.FF.FF
> endpoint[0].address: 81
> max packet size: 0040
> polling interval: 00
> endpoint[1].address: 02
> max packet size: 0040
> polling interval: 00
>
> Claiming interface 0...
>
> Reading string descriptors:
> String (0x01): "SEGGER"
> String (0x02): "J-Link"
> String (0x03): "0077000044"
>
> Releasing interface 0...
> Closing device...
> libusb: error [init_device] device
> '\\.\USB#VID_045E&PID_0773&MI_01#6&1315E060&0&0001' is no longer
> connected!
> libusb: error [init_device] device
> '\\.\USB#VID_045E&PID_0773&MI_02#6&1315E060&0&0002' is no longer
> connected!
>
>
>
>
> mcuee@Win7HomeX64_PC MINGW32 /h/work/libusb/libusb/build_mingw32_winusb
> $ ./examples/xusb.exe -d 1366:0101
> [timestamp] [threadID] facility level [function call] <message>
> --------------------------------------------------------------------------------
> [ 0.000000] [0000123c] libusb: debug [libusb_init] created default context
> [ 0.000000] [0000123c] libusb: debug [libusb_init] libusb v1.0.21.11157
> [ 0.000000] [0000123c] libusb: debug [windows_init] Windows 11 or later 32 bit
> [ 0.000000] [0000123c] libusb: debug [setup_cancel_io] Will use
> CancelIoEx for I/O cancellation
> [ 0.015628] [0000123c] libusb: debug [winusbx_init] using libusbK DLL
> for universal access
> [ 0.015628] [0000123c] libusb: debug [winusbx_init] libusbK version: 3.0.7.0
> [ 0.015628] [0000123c] libusb: debug [winusbx_init] initalized sub API libusbK
> [ 0.015628] [0000123c] libusb: debug [winusbx_init] initalized sub API libusb0
> [ 0.015628] [0000123c] libusb: debug [winusbx_init] initalized sub API WinUSB
> [ 0.015628] [0000123c] libusb: debug [windows_init_clock] hires timer
> available (Frequency: 2050782 Hz)
> [ 0.015628] [0000123c] libusb: debug [windows_init_clock] timer thread
> will run on core #0
> [ 0.015628] [0000123c] libusb: debug [htab_create] using 1021 entries hash table
> [ 0.015628] [0000123c] libusb: debug [usbi_add_pollfd] add fd 0 events 1
> [ 0.015628] [0000123c] libusb: debug [libusb_get_device_list]
> [ 0.015628] [0000123c] libusb: debug [windows_get_device_list]
> allocating new device for session [381]
> [ 0.015628] [0000123c] libusb: debug [windows_get_device_list]
> allocating new device for session [340]
> [ 0.015628] [0000123c] libusb: debug [windows_get_device_list]
> allocating new device for session [4B]
> [ 0.015628] [0000123c] libusb: debug [windows_get_device_list]
> allocating new device for session [172]
> [ 0.015628] [0000123c] libusb: debug [get_api_type] driver(s): usbhub
> [ 0.015628] [0000123c] libusb: debug [get_api_type] matched driver
> name against HUB API
> [ 0.015628] [0000123c] libusb: debug [windows_get_device_list]
> allocating new device for session [325]
> [ 0.015628] [0000123c] libusb: debug [get_api_type] driver(s): usbhub
> [ 0.015628] [0000123c] libusb: debug [get_api_type] matched driver
> name against HUB API
> [ 0.015628] [0000123c] libusb: debug [windows_get_device_list]
> allocating new device for session [14E]
> [ 0.015628] [0000123c] libusb: debug [get_api_type] driver(s): usbhub
> [ 0.015628] [0000123c] libusb: debug [get_api_type] matched driver
> name against HUB API
> [ 0.015628] [0000123c] libusb: debug [windows_get_device_list]
> allocating new device for session [3F3]
> [ 0.015628] [0000123c] libusb: debug [get_api_type] driver(s): usbhub
> [ 0.015628] [0000123c] libusb: debug [get_api_type] matched driver
> name against HUB API
> [ 0.015628] [0000123c] libusb: debug [windows_get_device_list]
> allocating new device for session [22]
> [ 0.015628] [0000123c] libusb: debug [windows_get_device_list]
> allocating new device for session [26B]
> [ 0.015628] [0000123c] libusb: debug [init_device] got bus number from
> ancestor #3
> [ 0.015628] [0000123c] libusb: debug [init_device] found 1
> configurations (active conf: 1)
> [ 0.015628] [0000123c] libusb: debug [cache_config_descriptors] cached
> config descriptor 0 (bConfigurationValue=1, 84 bytes)
> [ 0.015628] [0000123c] libusb: debug [init_device] (bus: 2, addr: 3,
> depth: 1, port: 1):
> '\\.\USB#VID_045E&PID_0773&MI_00#6&1315E060&0&0000'
> [ 0.015628] [0000123c] libusb: debug [windows_get_device_list] found
> existing device for session [14E] (0.0)
> [ 0.015628] [0000123c] libusb: debug [init_device] (bus: 4, addr: 1,
> depth: 0, port: 0): '\\.\USB#ROOT_HUB#4&3A6FCBF5&0'
> [ 0.015628] [0000123c] libusb: debug [windows_get_device_list]
> allocating new device for session [3D2]
> [ 0.015628] [0000123c] libusb: error [init_device] device
> '\\.\USB#VID_045E&PID_0773&MI_01#6&1315E060&0&0001' is no longer
> connected!
> [ 0.015628] [0000123c] libusb: debug [windows_get_device_list] found
> existing device for session [3F3] (2.0)
> [ 0.015628] [0000123c] libusb: debug [init_device] (bus: 2, addr: 1,
> depth: 0, port: 0): '\\.\USB#ROOT_HUB#4&ED791&0'
> [ 0.031253] [0000123c] libusb: debug [windows_get_device_list]
> allocating new device for session [2B2]
> [ 0.031253] [0000123c] libusb: debug [init_device] got bus number from
> ancestor #2
> [ 0.031253] [0000123c] libusb: debug [init_device] found 1
> configurations (active conf: 1)
> [ 0.031253] [0000123c] libusb: debug [cache_config_descriptors] cached
> config descriptor 0 (bConfigurationValue=1, 569 bytes)
> [ 0.031253] [0000123c] libusb: debug [init_device] (bus: 3, addr: 4,
> depth: 1, port: 7): '\\.\USB#VID_13D3&PID_5130#5&20BE7240&0&7'
> [ 0.031253] [0000123c] libusb: debug [windows_get_device_list]
> allocating new device for session [206]
> [ 0.078127] [0000123c] libusb: debug [init_device] found 1
> configurations (active conf: 1)
> [ 0.078127] [0000123c] libusb: debug [cache_config_descriptors] cached
> config descriptor 0 (bConfigurationValue=1, 216 bytes)
> [ 0.078127] [0000123c] libusb: debug [init_device] (bus: 4, addr: 3,
> depth: 1, port: 1): '\\.\USB#VID_0B05&PID_1788#1C4BD6065A96'
> [ 0.078632] [0000123c] libusb: debug [windows_get_device_list]
> allocating new device for session [1A8]
> [ 0.078632] [0000123c] libusb: error [init_device] device
> '\\.\USB#VID_045E&PID_0773&MI_02#6&1315E060&0&0002' is no longer
> connected!
> [ 0.079127] [0000123c] libusb: debug [windows_get_device_list]
> allocating new device for session [181]
> [ 0.079127] [0000123c] libusb: debug [init_device] found 1
> configurations (active conf: 1)
> [ 0.079127] [0000123c] libusb: debug [cache_config_descriptors] cached
> config descriptor 0 (bConfigurationValue=1, 84 bytes)
> [ 0.079127] [0000123c] libusb: debug [init_device] (bus: 2, addr: 3,
> depth: 1, port: 1): '\\.\USB#VID_045E&PID_0773#5&2E09F03B&0&1'
> [ 0.079127] [0000123c] libusb: debug [windows_get_device_list]
> allocating new device for session [D5]
> [ 0.079127] [0000123c] libusb: debug [init_device] found 1
> configurations (active conf: 1)
> [ 0.079127] [0000123c] libusb: debug [cache_config_descriptors] cached
> config descriptor 0 (bConfigurationValue=1, 32 bytes)
> [ 0.079127] [0000123c] libusb: debug [init_device] (bus: 3, addr: 2,
> depth: 1, port: 5): '\\.\USB#VID_058F&PID_6366#058F63666433'
> [ 0.079127] [0000123c] libusb: debug [windows_get_device_list] found
> existing device for session [325] (0.0)
> [ 0.079127] [0000123c] libusb: debug [init_device] (bus: 1, addr: 1,
> depth: 0, port: 0): '\\.\USB#ROOT_HUB20#4&3287596&0'
> [ 0.079127] [0000123c] libusb: debug [windows_get_device_list] found
> existing device for session [22] (3.0)
> [ 0.079127] [0000123c] libusb: debug [init_device] (bus: 3, addr: 1,
> depth: 0, port: 0): '\\.\USB#ROOT_HUB20#4&37B181E7&0'
> [ 0.079127] [0000123c] libusb: debug [discovered_devs_append] need to
> increase capacity
> [ 0.079127] [0000123c] libusb: debug [windows_get_device_list] extra
> GUID: {4E8B1B7F-AFA6-4FD9-8EF0-B3E5959DD4C5}
> [ 0.079127] [0000123c] libusb: debug [windows_get_device_list]
> allocating new device for session [2E4]
> [ 0.079127] [0000123c] libusb: debug [init_device] found 1
> configurations (active conf: 1)
> [ 0.079127] [0000123c] libusb: debug [cache_config_descriptors] cached
> config descriptor 0 (bConfigurationValue=1, 32 bytes)
> [ 0.079127] [0000123c] libusb: debug [init_device] (bus: 2, addr: 2,
> depth: 1, port: 4): '\\.\USB#VID_1366&PID_0101#0077000044'
> [ 0.079127] [0000123c] libusb: debug [get_api_type] driver(s): usbccgp
> [ 0.079127] [0000123c] libusb: debug [get_api_type] upper filter driver(s): dc3d
> [ 0.079127] [0000123c] libusb: debug [get_api_type] matched driver
> name against Composite API
> [ 0.079127] [0000123c] libusb: debug [windows_get_device_list] found
> existing device for session [181] (2.3)
> [ 0.079127] [0000123c] libusb: debug [get_api_type] driver(s): WinUSB
> [ 0.079127] [0000123c] libusb: debug [get_api_type] matched driver
> name against WinUSB
> [ 0.079127] [0000123c] libusb: debug [windows_get_device_list] found
> existing device for session [2E4] (2.2)
> [ 0.079127] [0000123c] libusb: debug [get_api_type] driver(s): usbccgp
> [ 0.079127] [0000123c] libusb: debug [get_api_type] matched driver
> name against Composite API
> [ 0.079127] [0000123c] libusb: debug [windows_get_device_list] found
> existing device for session [2B2] (3.4)
> [ 0.079127] [0000123c] libusb: debug [get_api_type] driver(s): BTHUSB
> [ 0.079127] [0000123c] libusb: debug [windows_get_device_list] found
> existing device for session [206] (4.3)
> [ 0.079127] [0000123c] libusb: debug [get_api_type] driver(s): AmUStor
> [ 0.079127] [0000123c] libusb: debug [windows_get_device_list] found
> existing device for session [D5] (3.2)
> [ 0.079127] [0000123c] libusb: debug [get_api_type] driver(s): WinUSB
> [ 0.079127] [0000123c] libusb: debug [get_api_type] matched driver
> name against WinUSB
> [ 0.079127] [0000123c] libusb: debug [libusb_unref_device] destroy device 2.0
> [ 0.079127] [0000123c] libusb: debug [libusb_unref_device] destroy device 2.0
> [ 0.079127] [0000123c] libusb: debug [libusb_get_device_descriptor]
> [ 0.079127] [0000123c] libusb: debug [libusb_get_device_descriptor]
> [ 0.079127] [0000123c] libusb: debug [libusb_get_device_descriptor]
> [ 0.079127] [0000123c] libusb: debug [libusb_get_device_descriptor]
> [ 0.079127] [0000123c] libusb: debug [libusb_get_device_descriptor]
> [ 0.079127] [0000123c] libusb: debug [libusb_get_device_descriptor]
> [ 0.079127] [0000123c] libusb: debug [libusb_get_device_descriptor]
> [ 0.079127] [0000123c] libusb: debug [libusb_get_device_descriptor]
> [ 0.079127] [0000123c] libusb: debug [libusb_get_device_descriptor]
> [ 0.079127] [0000123c] libusb: debug [libusb_get_device_descriptor]
> [ 0.079127] [0000123c] libusb: debug [libusb_open] open 2.2
> [ 0.079127] [0000123c] libusb: debug [libusb_unref_device] destroy device 2.3
> [ 0.079127] [0000123c] libusb: debug [libusb_unref_device] destroy device 3.4
> [ 0.079127] [0000123c] libusb: debug [libusb_unref_device] destroy device 4.3
> [ 0.079127] [0000123c] libusb: debug [libusb_unref_device] destroy device 4.1
> [ 0.079127] [0000123c] libusb: debug [libusb_unref_device] destroy device 4.0
> [ 0.079127] [0000123c] libusb: debug [libusb_unref_device] destroy device 2.3
> [ 0.079127] [0000123c] libusb: debug [libusb_unref_device] destroy device 3.2
> [ 0.079127] [0000123c] libusb: debug [libusb_unref_device] destroy device 1.1
> [ 0.079127] [0000123c] libusb: debug [libusb_unref_device] destroy device 1.0
> [ 0.079127] [0000123c] libusb: debug [libusb_unref_device] destroy device 3.1
> [ 0.079127] [0000123c] libusb: debug [libusb_unref_device] destroy device 3.0
> [ 0.079127] [0000123c] libusb: debug [libusb_get_device_descriptor]
> [ 0.079127] [0000123c] libusb: debug [libusb_alloc_transfer] transfer 007DEF6C
> [ 0.079127] [0000123c] libusb: debug [libusb_submit_transfer] transfer 007DEF6C
> [ 0.079127] [0000123c] libusb: debug [libusb_claim_interface] interface 0
> [ 0.079127] [0000123c] libusb: debug [winusbx_claim_interface] claimed
> interface 0
> [ 0.079127] [0000123c] libusb: debug [windows_assign_endpoints]
> (re)assigned endpoint 81 to interface 0
> [ 0.079127] [0000123c] libusb: debug [windows_assign_endpoints]
> (re)assigned endpoint 02 to interface 0
> [ 0.079127] [0000123c] libusb: debug [auto_claim] auto-claimed
> interface 0 for control request
> [ 0.079127] [0000123c] libusb: debug [winusbx_submit_control_transfer]
> will use interface 0
> [ 0.079127] [0000123c] libusb: debug [usbi_add_pollfd] add fd 1 events 1
> [ 0.079127] [0000123c] libusb: debug [libusb_get_next_timeout] next
> timeout in 0.999512s
> [ 0.079127] [0000123c] libusb: debug
> [libusb_handle_events_timeout_completed] doing our own event handling
> [ 0.079127] [0000123c] libusb: debug [handle_events] poll fds
> modified, reallocating
> [ 0.079127] [0000123c] libusb: debug [handle_events] poll() 2 fds with
> timeout in 1000ms
> [ 0.079127] [0000123c] libusb: debug [handle_events] poll() returned 1
> [ 0.079127] [0000123c] libusb: debug [windows_handle_events] checking
> fd 1 with revents = 0001
> [ 0.079127] [0000123c] libusb: debug [usbi_remove_pollfd] remove fd 1
> [ 0.079127] [0000123c] libusb: debug [windows_transfer_callback]
> handling I/O completion with errcode 31, size 0
> [ 0.079127] [0000123c] libusb: debug [windows_transfer_callback]
> detected endpoint stall
> [ 0.079127] [0000123c] libusb: debug [libusb_release_interface] interface 0
> [ 0.079127] [0000123c] libusb: debug [auto_release] auto-released interface 0
> [ 0.079127] [0000123c] libusb: debug [usbi_handle_transfer_completion]
> transfer 007DEF6C has callback 6B807730
> [ 0.079127] [0000123c] libusb: debug [sync_transfer_cb] actual_length=0
> [ 0.079127] [0000123c] libusb: debug [libusb_free_transfer] transfer 007DEF6C
> [ 0.079127] [0000123c] libusb: debug [libusb_get_config_descriptor] index 0
> [ 0.079127] [0000123c] libusb: debug [libusb_claim_interface] interface 0
> [ 0.079127] [0000123c] libusb: debug [winusbx_claim_interface] claimed
> interface 0
> [ 0.079127] [0000123c] libusb: debug [windows_assign_endpoints]
> (re)assigned endpoint 81 to interface 0
> [ 0.079127] [0000123c] libusb: debug [windows_assign_endpoints]
> (re)assigned endpoint 02 to interface 0
> [ 0.079127] [0000123c] libusb: debug [libusb_alloc_transfer] transfer 007DEF6C
> [ 0.079127] [0000123c] libusb: debug [libusb_submit_transfer] transfer 007DEF6C
> [ 0.079127] [0000123c] libusb: debug [winusbx_submit_control_transfer]
> will use interface 0
> [ 0.079127] [0000123c] libusb: debug [usbi_add_pollfd] add fd 1 events 1
> [ 0.079127] [0000123c] libusb: debug [libusb_get_next_timeout] next
> timeout in 0.999513s
> [ 0.079127] [0000123c] libusb: debug
> [libusb_handle_events_timeout_completed] doing our own event handling
> [ 0.079127] [0000123c] libusb: debug [handle_events] poll fds
> modified, reallocating
> [ 0.079127] [0000123c] libusb: debug [handle_events] poll() 2 fds with
> timeout in 1000ms
> [ 0.079127] [0000123c] libusb: debug [handle_events] poll() returned 1
> [ 0.079127] [0000123c] libusb: debug [windows_handle_events] checking
> fd 1 with revents = 0001
> [ 0.079127] [0000123c] libusb: debug [usbi_remove_pollfd] remove fd 1
> [ 0.079127] [0000123c] libusb: debug [windows_transfer_callback]
> handling I/O completion with errcode 0, size 4
> [ 0.079127] [0000123c] libusb: debug [usbi_handle_transfer_completion]
> transfer 007DEF6C has callback 6B807730
> [ 0.079127] [0000123c] libusb: debug [sync_transfer_cb] actual_length=4
> [ 0.079127] [0000123c] libusb: debug [libusb_free_transfer] transfer 007DEF6C
> [ 0.079127] [0000123c] libusb: debug [libusb_alloc_transfer] transfer 007DEF6C
> [ 0.079127] [0000123c] libusb: debug [libusb_submit_transfer] transfer 007DEF6C
> [ 0.079127] [0000123c] libusb: debug [winusbx_submit_control_transfer]
> will use interface 0
> [ 0.079127] [0000123c] libusb: debug [usbi_add_pollfd] add fd 1 events 1
> [ 0.079127] [0000123c] libusb: debug [libusb_get_next_timeout] next
> timeout in 1.000000s
> [ 0.079127] [0000123c] libusb: debug
> [libusb_handle_events_timeout_completed] doing our own event handling
> [ 0.079127] [0000123c] libusb: debug [handle_events] poll fds
> modified, reallocating
> [ 0.079127] [0000123c] libusb: debug [handle_events] poll() 2 fds with
> timeout in 1000ms
> [ 0.079127] [0000123c] libusb: debug [handle_events] poll() returned 1
> [ 0.079127] [0000123c] libusb: debug [windows_handle_events] checking
> fd 1 with revents = 0001
> [ 0.079127] [0000123c] libusb: debug [usbi_remove_pollfd] remove fd 1
> [ 0.079127] [0000123c] libusb: debug [windows_transfer_callback]
> handling I/O completion with errcode 0, size 14
> [ 0.079127] [0000123c] libusb: debug [usbi_handle_transfer_completion]
> transfer 007DEF6C has callback 6B807730
> [ 0.079127] [0000123c] libusb: debug [sync_transfer_cb] actual_length=14
> [ 0.079127] [0000123c] libusb: debug [libusb_free_transfer] transfer 007DEF6C
> [ 0.079127] [0000123c] libusb: debug [libusb_alloc_transfer] transfer 007DEF6C
> [ 0.079127] [0000123c] libusb: debug [libusb_submit_transfer] transfer 007DEF6C
> [ 0.079127] [0000123c] libusb: debug [winusbx_submit_control_transfer]
> will use interface 0
> [ 0.079127] [0000123c] libusb: debug [usbi_add_pollfd] add fd 1 events 1
> [ 0.079127] [0000123c] libusb: debug [libusb_get_next_timeout] next
> timeout in 1.000000s
> [ 0.079127] [0000123c] libusb: debug
> [libusb_handle_events_timeout_completed] doing our own event handling
> [ 0.079127] [0000123c] libusb: debug [handle_events] poll fds
> modified, reallocating
> [ 0.079127] [0000123c] libusb: debug [handle_events] poll() 2 fds with
> timeout in 1000ms
> [ 0.079127] [0000123c] libusb: debug [handle_events] poll() returned 1
> [ 0.079127] [0000123c] libusb: debug [windows_handle_events] checking
> fd 1 with revents = 0001
> [ 0.079127] [0000123c] libusb: debug [usbi_remove_pollfd] remove fd 1
> [ 0.079127] [0000123c] libusb: debug [windows_transfer_callback]
> handling I/O completion with errcode 0, size 4
> [ 0.079127] [0000123c] libusb: debug [usbi_handle_transfer_completion]
> transfer 007DEF6C has callback 6B807730
> [ 0.079127] [0000123c] libusb: debug [sync_transfer_cb] actual_length=4
> [ 0.079127] [0000123c] libusb: debug [libusb_free_transfer] transfer 007DEF6C
> [ 0.079127] [0000123c] libusb: debug [libusb_alloc_transfer] transfer 007DEF6C
> [ 0.079127] [0000123c] libusb: debug [libusb_submit_transfer] transfer 007DEF6C
> [ 0.079127] [0000123c] libusb: debug [winusbx_submit_control_transfer]
> will use interface 0
> [ 0.079127] [0000123c] libusb: debug [usbi_add_pollfd] add fd 1 events 1
> [ 0.079127] [0000123c] libusb: debug [libusb_get_next_timeout] next
> timeout in 1.000000s
> [ 0.079127] [0000123c] libusb: debug
> [libusb_handle_events_timeout_completed] doing our own event handling
> [ 0.079127] [0000123c] libusb: debug [handle_events] poll fds
> modified, reallocating
> [ 0.079127] [0000123c] libusb: debug [handle_events] poll() 2 fds with
> timeout in 1000ms
> [ 0.094753] [0000123c] libusb: debug [handle_events] poll() returned 1
> [ 0.094753] [0000123c] libusb: debug [windows_handle_events] checking
> fd 1 with revents = 0001
> [ 0.094753] [0000123c] libusb: debug [usbi_remove_pollfd] remove fd 1
> [ 0.094753] [0000123c] libusb: debug [windows_transfer_callback]
> handling I/O completion with errcode 0, size 14
> [ 0.094753] [0000123c] libusb: debug [usbi_handle_transfer_completion]
> transfer 007DEF6C has callback 6B807730
> [ 0.094753] [0000123c] libusb: debug [sync_transfer_cb] actual_length=14
> [ 0.094753] [0000123c] libusb: debug [libusb_free_transfer] transfer 007DEF6C
> [ 0.094753] [0000123c] libusb: debug [libusb_alloc_transfer] transfer 007DEF6C
> [ 0.094753] [0000123c] libusb: debug [libusb_submit_transfer] transfer 007DEF6C
> [ 0.094753] [0000123c] libusb: debug [winusbx_submit_control_transfer]
> will use interface 0
> [ 0.094753] [0000123c] libusb: debug [usbi_add_pollfd] add fd 1 events 1
> [ 0.094753] [0000123c] libusb: debug [libusb_get_next_timeout] next
> timeout in 0.999513s
> [ 0.094753] [0000123c] libusb: debug
> [libusb_handle_events_timeout_completed] doing our own event handling
> [ 0.094753] [0000123c] libusb: debug [handle_events] poll fds
> modified, reallocating
> [ 0.094753] [0000123c] libusb: debug [handle_events] poll() 2 fds with
> timeout in 1000ms
> [ 0.094753] [0000123c] libusb: debug [handle_events] poll() returned 1
> [ 0.094753] [0000123c] libusb: debug [windows_handle_events] checking
> fd 1 with revents = 0001
> [ 0.094753] [0000123c] libusb: debug [usbi_remove_pollfd] remove fd 1
> [ 0.094753] [0000123c] libusb: debug [windows_transfer_callback]
> handling I/O completion with errcode 0, size 4
> [ 0.094753] [0000123c] libusb: debug [usbi_handle_transfer_completion]
> transfer 007DEF6C has callback 6B807730
> [ 0.094753] [0000123c] libusb: debug [sync_transfer_cb] actual_length=4
> [ 0.094753] [0000123c] libusb: debug [libusb_free_transfer] transfer 007DEF6C
> [ 0.094753] [0000123c] libusb: debug [libusb_alloc_transfer] transfer 007DEF6C
> [ 0.094753] [0000123c] libusb: debug [libusb_submit_transfer] transfer 007DEF6C
> [ 0.094753] [0000123c] libusb: debug [winusbx_submit_control_transfer]
> will use interface 0
> [ 0.094753] [0000123c] libusb: debug [usbi_add_pollfd] add fd 1 events 1
> [ 0.094753] [0000123c] libusb: debug [libusb_get_next_timeout] next
> timeout in 1.000000s
> [ 0.094753] [0000123c] libusb: debug
> [libusb_handle_events_timeout_completed] doing our own event handling
> [ 0.094753] [0000123c] libusb: debug [handle_events] poll fds
> modified, reallocating
> [ 0.094753] [0000123c] libusb: debug [handle_events] poll() 2 fds with
> timeout in 1000ms
> [ 0.094753] [0000123c] libusb: debug [handle_events] poll() returned 1
> [ 0.094753] [0000123c] libusb: debug [windows_handle_events] checking
> fd 1 with revents = 0001
> [ 0.094753] [0000123c] libusb: debug [usbi_remove_pollfd] remove fd 1
> [ 0.094753] [0000123c] libusb: debug [windows_transfer_callback]
> handling I/O completion with errcode 0, size 22
> [ 0.094753] [0000123cUsing libusb v1.0.21.11157
>
> Opening device 1366:0101...
>
> Reading device descriptor:
> length: 18
> device class: 0
> S/N: 3
> VID:PID: 1366:0101
> bcdDevice: 0001
> iMan:iProd:iSer: 1:2:3
> nb confs: 1
>
> Reading BOS descriptor: no descriptor
>
> Reading first configuration descriptor:
> nb interfaces: 1
> interface[0]: id = 0
> interface[0].altsetting[0]: num endpoints = 2
> Class.SubClass.Protocol: FF.FF.FF
> endpoint[0].address: 81
> max packet size: 0040
> polling interval: 00
> endpoint[1].address: 02
> max packet size: 0040
> polling interval: 00
>
> Claiming interface 0...
>
> Reading string descriptors:
> String (0x01): "SEGGER"
> String (0x02): "J-Link"
> String (0x03): "0077000044"
>
> Releasing interface 0...
> Closing device...
> ] libusb: debug [usbi_handle_transfer_completion] transfer 007DEF6C
> has callback 6B807730
> [ 0.094753] [0000123c] libusb: debug [sync_transfer_cb] actual_length=22
> [ 0.094753] [0000123c] libusb: debug [libusb_free_transfer] transfer 007DEF6C
> [ 0.094753] [0000123c] libusb: debug [libusb_alloc_transfer] transfer 007DEF6C
> [ 0.094753] [0000123c] libusb: debug [libusb_submit_transfer] transfer 007DEF6C
> [ 0.094753] [0000123c] libusb: debug [winusbx_submit_control_transfer]
> will use interface 0
> [ 0.094753] [0000123c] libusb: debug [usbi_add_pollfd] add fd 1 events 1
> [ 0.094753] [0000123c] libusb: debug [libusb_get_next_timeout] next
> timeout in 0.999512s
> [ 0.094753] [0000123c] libusb: debug
> [libusb_handle_events_timeout_completed] doing our own event handling
> [ 0.094753] [0000123c] libusb: debug [handle_events] poll fds
> modified, reallocating
> [ 0.094753] [0000123c] libusb: debug [handle_events] poll() 2 fds with
> timeout in 1000ms
> [ 0.094753] [0000123c] libusb: debug [handle_events] poll() returned 1
> [ 0.094753] [0000123c] libusb: debug [windows_handle_events] checking
> fd 1 with revents = 0001
> [ 0.094753] [0000123c] libusb: debug [usbi_remove_pollfd] remove fd 1
> [ 0.094753] [0000123c] libusb: debug [windows_transfer_callback]
> handling I/O completion with errcode 0, size 4
> [ 0.094753] [0000123c] libusb: debug [usbi_handle_transfer_completion]
> transfer 007DEF6C has callback 6B807730
> [ 0.094753] [0000123c] libusb: debug [sync_transfer_cb] actual_length=4
> [ 0.094753] [0000123c] libusb: debug [libusb_free_transfer] transfer 007DEF6C
> [ 0.094753] [0000123c] libusb: debug [libusb_alloc_transfer] transfer 007DEF6C
> [ 0.094753] [0000123c] libusb: debug [libusb_submit_transfer] transfer 007DEF6C
> [ 0.094753] [0000123c] libusb: debug [winusbx_submit_control_transfer]
> will use interface 0
> [ 0.094753] [0000123c] libusb: debug [usbi_add_pollfd] add fd 1 events 1
> [ 0.094753] [0000123c] libusb: debug [libusb_get_next_timeout] next
> timeout in 1.000000s
> [ 0.094753] [0000123c] libusb: debug
> [libusb_handle_events_timeout_completed] doing our own event handling
> [ 0.094753] [0000123c] libusb: debug [handle_events] poll fds
> modified, reallocating
> [ 0.094753] [0000123c] libusb: debug [handle_events] poll() 2 fds with
> timeout in 1000ms
> [ 0.110877] [0000123c] libusb: debug [handle_events] poll() returned 1
> [ 0.110877] [0000123c] libusb: debug [windows_handle_events] checking
> fd 1 with revents = 0001
> [ 0.110877] [0000123c] libusb: debug [usbi_remove_pollfd] remove fd 1
> [ 0.110877] [0000123c] libusb: debug [windows_transfer_callback]
> handling I/O completion with errcode 31, size 0
> [ 0.110877] [0000123c] libusb: debug [windows_transfer_callback]
> detected endpoint stall
> [ 0.110877] [0000123c] libusb: debug [usbi_handle_transfer_completion]
> transfer 007DEF6C has callback 6B807730
> [ 0.110877] [0000123c] libusb: debug [sync_transfer_cb] actual_length=0
> [ 0.110877] [0000123c] libusb: debug [libusb_free_transfer] transfer 007DEF6C
> [ 0.110877] [0000123c] libusb: debug [libusb_release_interface] interface 0
> [ 0.110877] [0000123c] libusb: debug [libusb_close]
> [ 0.110877] [0000123c] libusb: debug [libusb_unref_device] destroy device 2.2
> [ 0.110877] [0000123c] libusb: debug [libusb_unref_device] destroy device 2.1
> [ 0.110877] [0000123c] libusb: debug [libusb_unref_device] destroy device 2.0
> [ 0.110877] [0000123c] libusb: debug [libusb_exit]
> [ 0.110877] [0000123c] libusb: debug [libusb_exit] destroying default context
> [ 0.110877] [0000123c] libusb: debug [usbi_remove_pollfd] remove fd 0
> [ 0.110877] [00001124] libusb: debug [windows_clock_gettime_threaded]
> timer thread quitting
>
>
>
>
> --
> Xiaofan
|
|
From: Johann O. <joh...@si...> - 2017-01-24 14:16:24
|
Hello, i search a way to change under windows the configuration. We have a device with 2 configuration. This work correct under linux in the driver with usb_set_configuration. Now we must make a simple windows test tool for the interfaces on the second configuration. But all libusb_set_configuration, ... failed. I'have test libusb-0, libusbK API. How can I do this on a windows 7 Thanks Johann |
|
From: Xiaofan C. <xia...@gm...> - 2017-01-24 12:14:31
|
Hi Lei, Please help to comment on this pull request since it is said that you have reviewed the change. Thanks. https://github.com/libusb/libusb/pull/236 -- Xiaofan |
|
From: Tim R. <ti...@pr...> - 2017-01-20 19:43:05
|
On Wed, Jan 18, 2017 at 3:19 AM, Ben Hutchinson <be...@gm...> wrote: >> I'm talking about VB6. I don't use vb.net. For God's sake, why? You are using a tool that is 20 years old! Development tools do not age like wine, they age like milk. -- Tim Roberts, ti...@pr... Providenza & Boekelheide, Inc. |
|
From: Xiaofan C. <xia...@gm...> - 2017-01-20 10:54:16
|
On Thu, Jan 19, 2017 at 9:03 PM, Sameeh Jubran <sa...@da...> wrote:
> Can you see these errors in Winusb (using the same device)?
>
> [ 0.406097] [00001a50] libusb: debug [windows_transfer_callback]
> handling I/O completion with errcode 31, size 0
> [ 0.406596] [00001a50] libusb: debug [windows_transfer_callback]
> detected endpoint stall
>
> If so, I think that these are the same errors, but due to different
> error code handling in Winusb and Usbdk it results in a different log
> in libusb, in the function windows_transfer_callback.
I see. From the following WinUSB run log, it seems to be the case.
Maybe this kind of backend differences should be aligned or at least
documented somehow.
mcuee@Win7HomeX64_PC MINGW32 /h/work/libusb/libusb/build_mingw32_winusb
$ ./examples/xusb.exe 1366:0101
Using libusb v1.0.21.11157
Opening device 1366:0101...
Reading device descriptor:
length: 18
device class: 0
S/N: 3
VID:PID: 1366:0101
bcdDevice: 0001
iMan:iProd:iSer: 1:2:3
nb confs: 1
Reading BOS descriptor: no descriptor
Reading first configuration descriptor:
nb interfaces: 1
interface[0]: id = 0
interface[0].altsetting[0]: num endpoints = 2
Class.SubClass.Protocol: FF.FF.FF
endpoint[0].address: 81
max packet size: 0040
polling interval: 00
endpoint[1].address: 02
max packet size: 0040
polling interval: 00
Claiming interface 0...
Reading string descriptors:
String (0x01): "SEGGER"
String (0x02): "J-Link"
String (0x03): "0077000044"
Releasing interface 0...
Closing device...
libusb: error [init_device] device
'\\.\USB#VID_045E&PID_0773&MI_01#6&1315E060&0&0001' is no longer
connected!
libusb: error [init_device] device
'\\.\USB#VID_045E&PID_0773&MI_02#6&1315E060&0&0002' is no longer
connected!
mcuee@Win7HomeX64_PC MINGW32 /h/work/libusb/libusb/build_mingw32_winusb
$ ./examples/xusb.exe -d 1366:0101
[timestamp] [threadID] facility level [function call] <message>
--------------------------------------------------------------------------------
[ 0.000000] [0000123c] libusb: debug [libusb_init] created default context
[ 0.000000] [0000123c] libusb: debug [libusb_init] libusb v1.0.21.11157
[ 0.000000] [0000123c] libusb: debug [windows_init] Windows 11 or later 32 bit
[ 0.000000] [0000123c] libusb: debug [setup_cancel_io] Will use
CancelIoEx for I/O cancellation
[ 0.015628] [0000123c] libusb: debug [winusbx_init] using libusbK DLL
for universal access
[ 0.015628] [0000123c] libusb: debug [winusbx_init] libusbK version: 3.0.7.0
[ 0.015628] [0000123c] libusb: debug [winusbx_init] initalized sub API libusbK
[ 0.015628] [0000123c] libusb: debug [winusbx_init] initalized sub API libusb0
[ 0.015628] [0000123c] libusb: debug [winusbx_init] initalized sub API WinUSB
[ 0.015628] [0000123c] libusb: debug [windows_init_clock] hires timer
available (Frequency: 2050782 Hz)
[ 0.015628] [0000123c] libusb: debug [windows_init_clock] timer thread
will run on core #0
[ 0.015628] [0000123c] libusb: debug [htab_create] using 1021 entries hash table
[ 0.015628] [0000123c] libusb: debug [usbi_add_pollfd] add fd 0 events 1
[ 0.015628] [0000123c] libusb: debug [libusb_get_device_list]
[ 0.015628] [0000123c] libusb: debug [windows_get_device_list]
allocating new device for session [381]
[ 0.015628] [0000123c] libusb: debug [windows_get_device_list]
allocating new device for session [340]
[ 0.015628] [0000123c] libusb: debug [windows_get_device_list]
allocating new device for session [4B]
[ 0.015628] [0000123c] libusb: debug [windows_get_device_list]
allocating new device for session [172]
[ 0.015628] [0000123c] libusb: debug [get_api_type] driver(s): usbhub
[ 0.015628] [0000123c] libusb: debug [get_api_type] matched driver
name against HUB API
[ 0.015628] [0000123c] libusb: debug [windows_get_device_list]
allocating new device for session [325]
[ 0.015628] [0000123c] libusb: debug [get_api_type] driver(s): usbhub
[ 0.015628] [0000123c] libusb: debug [get_api_type] matched driver
name against HUB API
[ 0.015628] [0000123c] libusb: debug [windows_get_device_list]
allocating new device for session [14E]
[ 0.015628] [0000123c] libusb: debug [get_api_type] driver(s): usbhub
[ 0.015628] [0000123c] libusb: debug [get_api_type] matched driver
name against HUB API
[ 0.015628] [0000123c] libusb: debug [windows_get_device_list]
allocating new device for session [3F3]
[ 0.015628] [0000123c] libusb: debug [get_api_type] driver(s): usbhub
[ 0.015628] [0000123c] libusb: debug [get_api_type] matched driver
name against HUB API
[ 0.015628] [0000123c] libusb: debug [windows_get_device_list]
allocating new device for session [22]
[ 0.015628] [0000123c] libusb: debug [windows_get_device_list]
allocating new device for session [26B]
[ 0.015628] [0000123c] libusb: debug [init_device] got bus number from
ancestor #3
[ 0.015628] [0000123c] libusb: debug [init_device] found 1
configurations (active conf: 1)
[ 0.015628] [0000123c] libusb: debug [cache_config_descriptors] cached
config descriptor 0 (bConfigurationValue=1, 84 bytes)
[ 0.015628] [0000123c] libusb: debug [init_device] (bus: 2, addr: 3,
depth: 1, port: 1):
'\\.\USB#VID_045E&PID_0773&MI_00#6&1315E060&0&0000'
[ 0.015628] [0000123c] libusb: debug [windows_get_device_list] found
existing device for session [14E] (0.0)
[ 0.015628] [0000123c] libusb: debug [init_device] (bus: 4, addr: 1,
depth: 0, port: 0): '\\.\USB#ROOT_HUB#4&3A6FCBF5&0'
[ 0.015628] [0000123c] libusb: debug [windows_get_device_list]
allocating new device for session [3D2]
[ 0.015628] [0000123c] libusb: error [init_device] device
'\\.\USB#VID_045E&PID_0773&MI_01#6&1315E060&0&0001' is no longer
connected!
[ 0.015628] [0000123c] libusb: debug [windows_get_device_list] found
existing device for session [3F3] (2.0)
[ 0.015628] [0000123c] libusb: debug [init_device] (bus: 2, addr: 1,
depth: 0, port: 0): '\\.\USB#ROOT_HUB#4&ED791&0'
[ 0.031253] [0000123c] libusb: debug [windows_get_device_list]
allocating new device for session [2B2]
[ 0.031253] [0000123c] libusb: debug [init_device] got bus number from
ancestor #2
[ 0.031253] [0000123c] libusb: debug [init_device] found 1
configurations (active conf: 1)
[ 0.031253] [0000123c] libusb: debug [cache_config_descriptors] cached
config descriptor 0 (bConfigurationValue=1, 569 bytes)
[ 0.031253] [0000123c] libusb: debug [init_device] (bus: 3, addr: 4,
depth: 1, port: 7): '\\.\USB#VID_13D3&PID_5130#5&20BE7240&0&7'
[ 0.031253] [0000123c] libusb: debug [windows_get_device_list]
allocating new device for session [206]
[ 0.078127] [0000123c] libusb: debug [init_device] found 1
configurations (active conf: 1)
[ 0.078127] [0000123c] libusb: debug [cache_config_descriptors] cached
config descriptor 0 (bConfigurationValue=1, 216 bytes)
[ 0.078127] [0000123c] libusb: debug [init_device] (bus: 4, addr: 3,
depth: 1, port: 1): '\\.\USB#VID_0B05&PID_1788#1C4BD6065A96'
[ 0.078632] [0000123c] libusb: debug [windows_get_device_list]
allocating new device for session [1A8]
[ 0.078632] [0000123c] libusb: error [init_device] device
'\\.\USB#VID_045E&PID_0773&MI_02#6&1315E060&0&0002' is no longer
connected!
[ 0.079127] [0000123c] libusb: debug [windows_get_device_list]
allocating new device for session [181]
[ 0.079127] [0000123c] libusb: debug [init_device] found 1
configurations (active conf: 1)
[ 0.079127] [0000123c] libusb: debug [cache_config_descriptors] cached
config descriptor 0 (bConfigurationValue=1, 84 bytes)
[ 0.079127] [0000123c] libusb: debug [init_device] (bus: 2, addr: 3,
depth: 1, port: 1): '\\.\USB#VID_045E&PID_0773#5&2E09F03B&0&1'
[ 0.079127] [0000123c] libusb: debug [windows_get_device_list]
allocating new device for session [D5]
[ 0.079127] [0000123c] libusb: debug [init_device] found 1
configurations (active conf: 1)
[ 0.079127] [0000123c] libusb: debug [cache_config_descriptors] cached
config descriptor 0 (bConfigurationValue=1, 32 bytes)
[ 0.079127] [0000123c] libusb: debug [init_device] (bus: 3, addr: 2,
depth: 1, port: 5): '\\.\USB#VID_058F&PID_6366#058F63666433'
[ 0.079127] [0000123c] libusb: debug [windows_get_device_list] found
existing device for session [325] (0.0)
[ 0.079127] [0000123c] libusb: debug [init_device] (bus: 1, addr: 1,
depth: 0, port: 0): '\\.\USB#ROOT_HUB20#4&3287596&0'
[ 0.079127] [0000123c] libusb: debug [windows_get_device_list] found
existing device for session [22] (3.0)
[ 0.079127] [0000123c] libusb: debug [init_device] (bus: 3, addr: 1,
depth: 0, port: 0): '\\.\USB#ROOT_HUB20#4&37B181E7&0'
[ 0.079127] [0000123c] libusb: debug [discovered_devs_append] need to
increase capacity
[ 0.079127] [0000123c] libusb: debug [windows_get_device_list] extra
GUID: {4E8B1B7F-AFA6-4FD9-8EF0-B3E5959DD4C5}
[ 0.079127] [0000123c] libusb: debug [windows_get_device_list]
allocating new device for session [2E4]
[ 0.079127] [0000123c] libusb: debug [init_device] found 1
configurations (active conf: 1)
[ 0.079127] [0000123c] libusb: debug [cache_config_descriptors] cached
config descriptor 0 (bConfigurationValue=1, 32 bytes)
[ 0.079127] [0000123c] libusb: debug [init_device] (bus: 2, addr: 2,
depth: 1, port: 4): '\\.\USB#VID_1366&PID_0101#0077000044'
[ 0.079127] [0000123c] libusb: debug [get_api_type] driver(s): usbccgp
[ 0.079127] [0000123c] libusb: debug [get_api_type] upper filter driver(s): dc3d
[ 0.079127] [0000123c] libusb: debug [get_api_type] matched driver
name against Composite API
[ 0.079127] [0000123c] libusb: debug [windows_get_device_list] found
existing device for session [181] (2.3)
[ 0.079127] [0000123c] libusb: debug [get_api_type] driver(s): WinUSB
[ 0.079127] [0000123c] libusb: debug [get_api_type] matched driver
name against WinUSB
[ 0.079127] [0000123c] libusb: debug [windows_get_device_list] found
existing device for session [2E4] (2.2)
[ 0.079127] [0000123c] libusb: debug [get_api_type] driver(s): usbccgp
[ 0.079127] [0000123c] libusb: debug [get_api_type] matched driver
name against Composite API
[ 0.079127] [0000123c] libusb: debug [windows_get_device_list] found
existing device for session [2B2] (3.4)
[ 0.079127] [0000123c] libusb: debug [get_api_type] driver(s): BTHUSB
[ 0.079127] [0000123c] libusb: debug [windows_get_device_list] found
existing device for session [206] (4.3)
[ 0.079127] [0000123c] libusb: debug [get_api_type] driver(s): AmUStor
[ 0.079127] [0000123c] libusb: debug [windows_get_device_list] found
existing device for session [D5] (3.2)
[ 0.079127] [0000123c] libusb: debug [get_api_type] driver(s): WinUSB
[ 0.079127] [0000123c] libusb: debug [get_api_type] matched driver
name against WinUSB
[ 0.079127] [0000123c] libusb: debug [libusb_unref_device] destroy device 2.0
[ 0.079127] [0000123c] libusb: debug [libusb_unref_device] destroy device 2.0
[ 0.079127] [0000123c] libusb: debug [libusb_get_device_descriptor]
[ 0.079127] [0000123c] libusb: debug [libusb_get_device_descriptor]
[ 0.079127] [0000123c] libusb: debug [libusb_get_device_descriptor]
[ 0.079127] [0000123c] libusb: debug [libusb_get_device_descriptor]
[ 0.079127] [0000123c] libusb: debug [libusb_get_device_descriptor]
[ 0.079127] [0000123c] libusb: debug [libusb_get_device_descriptor]
[ 0.079127] [0000123c] libusb: debug [libusb_get_device_descriptor]
[ 0.079127] [0000123c] libusb: debug [libusb_get_device_descriptor]
[ 0.079127] [0000123c] libusb: debug [libusb_get_device_descriptor]
[ 0.079127] [0000123c] libusb: debug [libusb_get_device_descriptor]
[ 0.079127] [0000123c] libusb: debug [libusb_open] open 2.2
[ 0.079127] [0000123c] libusb: debug [libusb_unref_device] destroy device 2.3
[ 0.079127] [0000123c] libusb: debug [libusb_unref_device] destroy device 3.4
[ 0.079127] [0000123c] libusb: debug [libusb_unref_device] destroy device 4.3
[ 0.079127] [0000123c] libusb: debug [libusb_unref_device] destroy device 4.1
[ 0.079127] [0000123c] libusb: debug [libusb_unref_device] destroy device 4.0
[ 0.079127] [0000123c] libusb: debug [libusb_unref_device] destroy device 2.3
[ 0.079127] [0000123c] libusb: debug [libusb_unref_device] destroy device 3.2
[ 0.079127] [0000123c] libusb: debug [libusb_unref_device] destroy device 1.1
[ 0.079127] [0000123c] libusb: debug [libusb_unref_device] destroy device 1.0
[ 0.079127] [0000123c] libusb: debug [libusb_unref_device] destroy device 3.1
[ 0.079127] [0000123c] libusb: debug [libusb_unref_device] destroy device 3.0
[ 0.079127] [0000123c] libusb: debug [libusb_get_device_descriptor]
[ 0.079127] [0000123c] libusb: debug [libusb_alloc_transfer] transfer 007DEF6C
[ 0.079127] [0000123c] libusb: debug [libusb_submit_transfer] transfer 007DEF6C
[ 0.079127] [0000123c] libusb: debug [libusb_claim_interface] interface 0
[ 0.079127] [0000123c] libusb: debug [winusbx_claim_interface] claimed
interface 0
[ 0.079127] [0000123c] libusb: debug [windows_assign_endpoints]
(re)assigned endpoint 81 to interface 0
[ 0.079127] [0000123c] libusb: debug [windows_assign_endpoints]
(re)assigned endpoint 02 to interface 0
[ 0.079127] [0000123c] libusb: debug [auto_claim] auto-claimed
interface 0 for control request
[ 0.079127] [0000123c] libusb: debug [winusbx_submit_control_transfer]
will use interface 0
[ 0.079127] [0000123c] libusb: debug [usbi_add_pollfd] add fd 1 events 1
[ 0.079127] [0000123c] libusb: debug [libusb_get_next_timeout] next
timeout in 0.999512s
[ 0.079127] [0000123c] libusb: debug
[libusb_handle_events_timeout_completed] doing our own event handling
[ 0.079127] [0000123c] libusb: debug [handle_events] poll fds
modified, reallocating
[ 0.079127] [0000123c] libusb: debug [handle_events] poll() 2 fds with
timeout in 1000ms
[ 0.079127] [0000123c] libusb: debug [handle_events] poll() returned 1
[ 0.079127] [0000123c] libusb: debug [windows_handle_events] checking
fd 1 with revents = 0001
[ 0.079127] [0000123c] libusb: debug [usbi_remove_pollfd] remove fd 1
[ 0.079127] [0000123c] libusb: debug [windows_transfer_callback]
handling I/O completion with errcode 31, size 0
[ 0.079127] [0000123c] libusb: debug [windows_transfer_callback]
detected endpoint stall
[ 0.079127] [0000123c] libusb: debug [libusb_release_interface] interface 0
[ 0.079127] [0000123c] libusb: debug [auto_release] auto-released interface 0
[ 0.079127] [0000123c] libusb: debug [usbi_handle_transfer_completion]
transfer 007DEF6C has callback 6B807730
[ 0.079127] [0000123c] libusb: debug [sync_transfer_cb] actual_length=0
[ 0.079127] [0000123c] libusb: debug [libusb_free_transfer] transfer 007DEF6C
[ 0.079127] [0000123c] libusb: debug [libusb_get_config_descriptor] index 0
[ 0.079127] [0000123c] libusb: debug [libusb_claim_interface] interface 0
[ 0.079127] [0000123c] libusb: debug [winusbx_claim_interface] claimed
interface 0
[ 0.079127] [0000123c] libusb: debug [windows_assign_endpoints]
(re)assigned endpoint 81 to interface 0
[ 0.079127] [0000123c] libusb: debug [windows_assign_endpoints]
(re)assigned endpoint 02 to interface 0
[ 0.079127] [0000123c] libusb: debug [libusb_alloc_transfer] transfer 007DEF6C
[ 0.079127] [0000123c] libusb: debug [libusb_submit_transfer] transfer 007DEF6C
[ 0.079127] [0000123c] libusb: debug [winusbx_submit_control_transfer]
will use interface 0
[ 0.079127] [0000123c] libusb: debug [usbi_add_pollfd] add fd 1 events 1
[ 0.079127] [0000123c] libusb: debug [libusb_get_next_timeout] next
timeout in 0.999513s
[ 0.079127] [0000123c] libusb: debug
[libusb_handle_events_timeout_completed] doing our own event handling
[ 0.079127] [0000123c] libusb: debug [handle_events] poll fds
modified, reallocating
[ 0.079127] [0000123c] libusb: debug [handle_events] poll() 2 fds with
timeout in 1000ms
[ 0.079127] [0000123c] libusb: debug [handle_events] poll() returned 1
[ 0.079127] [0000123c] libusb: debug [windows_handle_events] checking
fd 1 with revents = 0001
[ 0.079127] [0000123c] libusb: debug [usbi_remove_pollfd] remove fd 1
[ 0.079127] [0000123c] libusb: debug [windows_transfer_callback]
handling I/O completion with errcode 0, size 4
[ 0.079127] [0000123c] libusb: debug [usbi_handle_transfer_completion]
transfer 007DEF6C has callback 6B807730
[ 0.079127] [0000123c] libusb: debug [sync_transfer_cb] actual_length=4
[ 0.079127] [0000123c] libusb: debug [libusb_free_transfer] transfer 007DEF6C
[ 0.079127] [0000123c] libusb: debug [libusb_alloc_transfer] transfer 007DEF6C
[ 0.079127] [0000123c] libusb: debug [libusb_submit_transfer] transfer 007DEF6C
[ 0.079127] [0000123c] libusb: debug [winusbx_submit_control_transfer]
will use interface 0
[ 0.079127] [0000123c] libusb: debug [usbi_add_pollfd] add fd 1 events 1
[ 0.079127] [0000123c] libusb: debug [libusb_get_next_timeout] next
timeout in 1.000000s
[ 0.079127] [0000123c] libusb: debug
[libusb_handle_events_timeout_completed] doing our own event handling
[ 0.079127] [0000123c] libusb: debug [handle_events] poll fds
modified, reallocating
[ 0.079127] [0000123c] libusb: debug [handle_events] poll() 2 fds with
timeout in 1000ms
[ 0.079127] [0000123c] libusb: debug [handle_events] poll() returned 1
[ 0.079127] [0000123c] libusb: debug [windows_handle_events] checking
fd 1 with revents = 0001
[ 0.079127] [0000123c] libusb: debug [usbi_remove_pollfd] remove fd 1
[ 0.079127] [0000123c] libusb: debug [windows_transfer_callback]
handling I/O completion with errcode 0, size 14
[ 0.079127] [0000123c] libusb: debug [usbi_handle_transfer_completion]
transfer 007DEF6C has callback 6B807730
[ 0.079127] [0000123c] libusb: debug [sync_transfer_cb] actual_length=14
[ 0.079127] [0000123c] libusb: debug [libusb_free_transfer] transfer 007DEF6C
[ 0.079127] [0000123c] libusb: debug [libusb_alloc_transfer] transfer 007DEF6C
[ 0.079127] [0000123c] libusb: debug [libusb_submit_transfer] transfer 007DEF6C
[ 0.079127] [0000123c] libusb: debug [winusbx_submit_control_transfer]
will use interface 0
[ 0.079127] [0000123c] libusb: debug [usbi_add_pollfd] add fd 1 events 1
[ 0.079127] [0000123c] libusb: debug [libusb_get_next_timeout] next
timeout in 1.000000s
[ 0.079127] [0000123c] libusb: debug
[libusb_handle_events_timeout_completed] doing our own event handling
[ 0.079127] [0000123c] libusb: debug [handle_events] poll fds
modified, reallocating
[ 0.079127] [0000123c] libusb: debug [handle_events] poll() 2 fds with
timeout in 1000ms
[ 0.079127] [0000123c] libusb: debug [handle_events] poll() returned 1
[ 0.079127] [0000123c] libusb: debug [windows_handle_events] checking
fd 1 with revents = 0001
[ 0.079127] [0000123c] libusb: debug [usbi_remove_pollfd] remove fd 1
[ 0.079127] [0000123c] libusb: debug [windows_transfer_callback]
handling I/O completion with errcode 0, size 4
[ 0.079127] [0000123c] libusb: debug [usbi_handle_transfer_completion]
transfer 007DEF6C has callback 6B807730
[ 0.079127] [0000123c] libusb: debug [sync_transfer_cb] actual_length=4
[ 0.079127] [0000123c] libusb: debug [libusb_free_transfer] transfer 007DEF6C
[ 0.079127] [0000123c] libusb: debug [libusb_alloc_transfer] transfer 007DEF6C
[ 0.079127] [0000123c] libusb: debug [libusb_submit_transfer] transfer 007DEF6C
[ 0.079127] [0000123c] libusb: debug [winusbx_submit_control_transfer]
will use interface 0
[ 0.079127] [0000123c] libusb: debug [usbi_add_pollfd] add fd 1 events 1
[ 0.079127] [0000123c] libusb: debug [libusb_get_next_timeout] next
timeout in 1.000000s
[ 0.079127] [0000123c] libusb: debug
[libusb_handle_events_timeout_completed] doing our own event handling
[ 0.079127] [0000123c] libusb: debug [handle_events] poll fds
modified, reallocating
[ 0.079127] [0000123c] libusb: debug [handle_events] poll() 2 fds with
timeout in 1000ms
[ 0.094753] [0000123c] libusb: debug [handle_events] poll() returned 1
[ 0.094753] [0000123c] libusb: debug [windows_handle_events] checking
fd 1 with revents = 0001
[ 0.094753] [0000123c] libusb: debug [usbi_remove_pollfd] remove fd 1
[ 0.094753] [0000123c] libusb: debug [windows_transfer_callback]
handling I/O completion with errcode 0, size 14
[ 0.094753] [0000123c] libusb: debug [usbi_handle_transfer_completion]
transfer 007DEF6C has callback 6B807730
[ 0.094753] [0000123c] libusb: debug [sync_transfer_cb] actual_length=14
[ 0.094753] [0000123c] libusb: debug [libusb_free_transfer] transfer 007DEF6C
[ 0.094753] [0000123c] libusb: debug [libusb_alloc_transfer] transfer 007DEF6C
[ 0.094753] [0000123c] libusb: debug [libusb_submit_transfer] transfer 007DEF6C
[ 0.094753] [0000123c] libusb: debug [winusbx_submit_control_transfer]
will use interface 0
[ 0.094753] [0000123c] libusb: debug [usbi_add_pollfd] add fd 1 events 1
[ 0.094753] [0000123c] libusb: debug [libusb_get_next_timeout] next
timeout in 0.999513s
[ 0.094753] [0000123c] libusb: debug
[libusb_handle_events_timeout_completed] doing our own event handling
[ 0.094753] [0000123c] libusb: debug [handle_events] poll fds
modified, reallocating
[ 0.094753] [0000123c] libusb: debug [handle_events] poll() 2 fds with
timeout in 1000ms
[ 0.094753] [0000123c] libusb: debug [handle_events] poll() returned 1
[ 0.094753] [0000123c] libusb: debug [windows_handle_events] checking
fd 1 with revents = 0001
[ 0.094753] [0000123c] libusb: debug [usbi_remove_pollfd] remove fd 1
[ 0.094753] [0000123c] libusb: debug [windows_transfer_callback]
handling I/O completion with errcode 0, size 4
[ 0.094753] [0000123c] libusb: debug [usbi_handle_transfer_completion]
transfer 007DEF6C has callback 6B807730
[ 0.094753] [0000123c] libusb: debug [sync_transfer_cb] actual_length=4
[ 0.094753] [0000123c] libusb: debug [libusb_free_transfer] transfer 007DEF6C
[ 0.094753] [0000123c] libusb: debug [libusb_alloc_transfer] transfer 007DEF6C
[ 0.094753] [0000123c] libusb: debug [libusb_submit_transfer] transfer 007DEF6C
[ 0.094753] [0000123c] libusb: debug [winusbx_submit_control_transfer]
will use interface 0
[ 0.094753] [0000123c] libusb: debug [usbi_add_pollfd] add fd 1 events 1
[ 0.094753] [0000123c] libusb: debug [libusb_get_next_timeout] next
timeout in 1.000000s
[ 0.094753] [0000123c] libusb: debug
[libusb_handle_events_timeout_completed] doing our own event handling
[ 0.094753] [0000123c] libusb: debug [handle_events] poll fds
modified, reallocating
[ 0.094753] [0000123c] libusb: debug [handle_events] poll() 2 fds with
timeout in 1000ms
[ 0.094753] [0000123c] libusb: debug [handle_events] poll() returned 1
[ 0.094753] [0000123c] libusb: debug [windows_handle_events] checking
fd 1 with revents = 0001
[ 0.094753] [0000123c] libusb: debug [usbi_remove_pollfd] remove fd 1
[ 0.094753] [0000123c] libusb: debug [windows_transfer_callback]
handling I/O completion with errcode 0, size 22
[ 0.094753] [0000123cUsing libusb v1.0.21.11157
Opening device 1366:0101...
Reading device descriptor:
length: 18
device class: 0
S/N: 3
VID:PID: 1366:0101
bcdDevice: 0001
iMan:iProd:iSer: 1:2:3
nb confs: 1
Reading BOS descriptor: no descriptor
Reading first configuration descriptor:
nb interfaces: 1
interface[0]: id = 0
interface[0].altsetting[0]: num endpoints = 2
Class.SubClass.Protocol: FF.FF.FF
endpoint[0].address: 81
max packet size: 0040
polling interval: 00
endpoint[1].address: 02
max packet size: 0040
polling interval: 00
Claiming interface 0...
Reading string descriptors:
String (0x01): "SEGGER"
String (0x02): "J-Link"
String (0x03): "0077000044"
Releasing interface 0...
Closing device...
] libusb: debug [usbi_handle_transfer_completion] transfer 007DEF6C
has callback 6B807730
[ 0.094753] [0000123c] libusb: debug [sync_transfer_cb] actual_length=22
[ 0.094753] [0000123c] libusb: debug [libusb_free_transfer] transfer 007DEF6C
[ 0.094753] [0000123c] libusb: debug [libusb_alloc_transfer] transfer 007DEF6C
[ 0.094753] [0000123c] libusb: debug [libusb_submit_transfer] transfer 007DEF6C
[ 0.094753] [0000123c] libusb: debug [winusbx_submit_control_transfer]
will use interface 0
[ 0.094753] [0000123c] libusb: debug [usbi_add_pollfd] add fd 1 events 1
[ 0.094753] [0000123c] libusb: debug [libusb_get_next_timeout] next
timeout in 0.999512s
[ 0.094753] [0000123c] libusb: debug
[libusb_handle_events_timeout_completed] doing our own event handling
[ 0.094753] [0000123c] libusb: debug [handle_events] poll fds
modified, reallocating
[ 0.094753] [0000123c] libusb: debug [handle_events] poll() 2 fds with
timeout in 1000ms
[ 0.094753] [0000123c] libusb: debug [handle_events] poll() returned 1
[ 0.094753] [0000123c] libusb: debug [windows_handle_events] checking
fd 1 with revents = 0001
[ 0.094753] [0000123c] libusb: debug [usbi_remove_pollfd] remove fd 1
[ 0.094753] [0000123c] libusb: debug [windows_transfer_callback]
handling I/O completion with errcode 0, size 4
[ 0.094753] [0000123c] libusb: debug [usbi_handle_transfer_completion]
transfer 007DEF6C has callback 6B807730
[ 0.094753] [0000123c] libusb: debug [sync_transfer_cb] actual_length=4
[ 0.094753] [0000123c] libusb: debug [libusb_free_transfer] transfer 007DEF6C
[ 0.094753] [0000123c] libusb: debug [libusb_alloc_transfer] transfer 007DEF6C
[ 0.094753] [0000123c] libusb: debug [libusb_submit_transfer] transfer 007DEF6C
[ 0.094753] [0000123c] libusb: debug [winusbx_submit_control_transfer]
will use interface 0
[ 0.094753] [0000123c] libusb: debug [usbi_add_pollfd] add fd 1 events 1
[ 0.094753] [0000123c] libusb: debug [libusb_get_next_timeout] next
timeout in 1.000000s
[ 0.094753] [0000123c] libusb: debug
[libusb_handle_events_timeout_completed] doing our own event handling
[ 0.094753] [0000123c] libusb: debug [handle_events] poll fds
modified, reallocating
[ 0.094753] [0000123c] libusb: debug [handle_events] poll() 2 fds with
timeout in 1000ms
[ 0.110877] [0000123c] libusb: debug [handle_events] poll() returned 1
[ 0.110877] [0000123c] libusb: debug [windows_handle_events] checking
fd 1 with revents = 0001
[ 0.110877] [0000123c] libusb: debug [usbi_remove_pollfd] remove fd 1
[ 0.110877] [0000123c] libusb: debug [windows_transfer_callback]
handling I/O completion with errcode 31, size 0
[ 0.110877] [0000123c] libusb: debug [windows_transfer_callback]
detected endpoint stall
[ 0.110877] [0000123c] libusb: debug [usbi_handle_transfer_completion]
transfer 007DEF6C has callback 6B807730
[ 0.110877] [0000123c] libusb: debug [sync_transfer_cb] actual_length=0
[ 0.110877] [0000123c] libusb: debug [libusb_free_transfer] transfer 007DEF6C
[ 0.110877] [0000123c] libusb: debug [libusb_release_interface] interface 0
[ 0.110877] [0000123c] libusb: debug [libusb_close]
[ 0.110877] [0000123c] libusb: debug [libusb_unref_device] destroy device 2.2
[ 0.110877] [0000123c] libusb: debug [libusb_unref_device] destroy device 2.1
[ 0.110877] [0000123c] libusb: debug [libusb_unref_device] destroy device 2.0
[ 0.110877] [0000123c] libusb: debug [libusb_exit]
[ 0.110877] [0000123c] libusb: debug [libusb_exit] destroying default context
[ 0.110877] [0000123c] libusb: debug [usbi_remove_pollfd] remove fd 0
[ 0.110877] [00001124] libusb: debug [windows_clock_gettime_threaded]
timer thread quitting
--
Xiaofan
|
|
From: Xiaofan C. <xia...@gm...> - 2017-01-20 10:15:24
|
On Wed, Jan 18, 2017 at 3:19 AM, Ben Hutchinson <be...@gm...> wrote: > I'm talking about VB6. I don't use vb.net. > I see. In any case, libusb.h mentioned that under Windows is using stdcall. * Under Windows, the selection of available compilers and configurations * means that, unlike other platforms, there is not <em>one true calling * convention</em> (calling convention: the manner in which parameters are * passed to functions in the generated assembly code). * * Matching the Windows API itself, libusb uses the WINAPI convention (which * translates to the <tt>stdcall</tt> convention) and guarantees that the * library is compiled in this way. The public header file also includes * appropriate annotations so that your own software will use the right * convention, even if another convention is being used by default within * your codebase. -- Xiaofan |
|
From: Sameeh J. <sa...@da...> - 2017-01-19 13:35:14
|
Can you see these errors in Winusb (using the same device)? [ 0.406097] [00001a50] libusb: debug [windows_transfer_callback] handling I/O completion with errcode 31, size 0 [ 0.406596] [00001a50] libusb: debug [windows_transfer_callback] detected endpoint stall If so, I think that these are the same errors, but due to different error code handling in Winusb and Usbdk it results in a different log in libusb, in the function windows_transfer_callback. On Thu, Jan 19, 2017 at 2:56 PM, Xiaofan Chen <xia...@gm...> wrote: > On Wed, Jan 18, 2017 at 10:01 PM, <sa...@da...> wrote: >> Hi Xiaofan, >> >> I am currently trying to investigate the errors that appear in xusb with >> usbdk backend, however I have tried to run xusb with winusb backend too and >> I got similar results as the two outputs differ in the error codes only >> but both of them (usbdk and winusb) have errors in the same places. Can you >> confirm this? is there any specific device/configuration of which they don't >> have the same output? > > I do not see I/O errors like the following when using WinUSB backend. > > libusb: error [windows_transfer_callback] detected I/O error 1627: > [1627] Function failed during execution. > > 1366:0101 is Segger J-Link JTAG/SWD debugger > > > > -- > Xiaofan -- Respectfully, Sameeh Jubran Linkedin Software Engineer @ Daynix. |
|
From: Xiaofan C. <xia...@gm...> - 2017-01-19 12:56:47
|
On Wed, Jan 18, 2017 at 10:01 PM, <sa...@da...> wrote: > Hi Xiaofan, > > I am currently trying to investigate the errors that appear in xusb with > usbdk backend, however I have tried to run xusb with winusb backend too and > I got similar results as the two outputs differ in the error codes only > but both of them (usbdk and winusb) have errors in the same places. Can you > confirm this? is there any specific device/configuration of which they don't > have the same output? I do not see I/O errors like the following when using WinUSB backend. libusb: error [windows_transfer_callback] detected I/O error 1627: [1627] Function failed during execution. 1366:0101 is Segger J-Link JTAG/SWD debugger -- Xiaofan |
|
From: <sa...@da...> - 2017-01-18 14:02:29
|
Hi Xiaofan, I am currently trying to investigate the errors that appear in xusb with usbdk backend, however I have tried to run xusb with winusb backend too and I got similar results as the two outputs differ in the error codes only but both of them (usbdk and winusb) have errors in the same places. Can you confirm this? is there any specific device/configuration of which they don't have the same output? -----Original Message----- From: Xiaofan Chen Sent: Monday, January 2, 2017 9:01 AM To: libusb-devel ; Dmitry Fleytman Subject: usbdk backend test Today I carried out some tests using usbdk backend. One of the main tests is to test openocd and it seems to work (using Segger J-Link to flash an STM32 target). https://sourceforge.net/p/openocd/mailman/message/35579706/ I do notice a few things along the way. 1) build libusb with --enable-usbdk using MSYS2 mingw32 cd /h/work/libusb/libusb mkdir build_mingw32 cd build_mingw32 ../configure --enable-examples-build --enable-tests-build --enable-usbdk make 2) run listdev without usbdk enabled. mcuee@Win7HomeX64_PC MINGW32 /h/work/libusb/libusb/build_mingw32 $ ./examples/listdevs.exe Driver file operation error. Failed to open device symlink \\.\UsbDk (The system cannot find the file specified. Error code = 2) So this means that --enable-usbdk does change the behavior significantly. Previously listdev will work even without WinUSB installed for any device. 3) Now enable usbdk, run cmd.exe as admin and then enable usbdk. c:\Program Files\UsbDk Runtime Library>UsbDkController.exe -i Installing UsbDk driver UsbDk driver installation succeeded c:\Program Files\UsbDk Runtime Library>UsbDkController.exe -n Enumerate USB devices Found 5 USB devices: 0. FilterID: 3, Port: 1, ID: 045e:0773, Configs: 1, Speed: 2 USB\VID_045E&PID_0773 1 Descriptor for configuration #0: size 84 1. FilterID: 3, Port: 3, ID: 1366:0101, Configs: 1, Speed: 2 USB\VID_1366&PID_0101 0077000044 Descriptor for configuration #0: size 32 2. FilterID: 5, Port: 5, ID: 058f:6366, Configs: 1, Speed: 3 USB\VID_058F&PID_6366 058F63666433 Descriptor for configuration #0: size 32 3. FilterID: 5, Port: 7, ID: 13d3:5130, Configs: 1, Speed: 3 USB\VID_13D3&PID_5130 7 Descriptor for configuration #0: size 569 4. FilterID: 7, Port: 1, ID: 0b05:1788, Configs: 1, Speed: 2 USB\VID_0B05&PID_1788 1C4BD6065A96 Descriptor for configuration #0: size 216 4) now run listdev again and it will work. The difference seems that it will not list usb root hubs now. mcuee@Win7HomeX64_PC MINGW32 /h/work/libusb/libusb/build_mingw32 $ ./examples/listdevs.exe 045e:0773 (bus 3, device 2) path: 1 1366:0101 (bus 3, device 4) path: 3 058f:6366 (bus 5, device 6) path: 5 13d3:5130 (bus 5, device 8) path: 7 0b05:1788 (bus 7, device 2) path: 1 5) xusb seems to have some error messages. mcuee@Win7HomeX64_PC MINGW32 /h/work/libusb/libusb/build_mingw32 $ ./examples/xusb.exe 1366:0101 Using libusb v1.0.21.11157 Opening device 1366:0101... Reading device descriptor: length: 18 device class: 0 S/N: 3 VID:PID: 1366:0101 bcdDevice: 0001 iMan:iProd:iSer: 1:2:3 nb confs: 1 Reading BOS descriptor: no descriptor Reading first configuration descriptor: nb interfaces: 1 interface[0]: id = 0 interface[0].altsetting[0]: num endpoints = 2 Class.SubClass.Protocol: FF.FF.FF endpoint[0].address: 81 max packet size: 0040 polling interval: 00 endpoint[1].address: 02 max packet size: 0040 polling interval: 00 Claiming interface 0... Reading string descriptors: String (0x01): "SEGGER" String (0x02): "J-Link" String (0x03): "0077000044" Releasing interface 0... Closing device... libusb: error [windows_transfer_callback] detected I/O error 1627: [1627] Function failed during execution. libusb: error [libusb_get_bos_descriptor] failed to read BOS (-1) libusb: error [windows_transfer_callback] detected I/O error 1627: [1627] Function failed during execution. mcuee@Win7HomeX64_PC MINGW32 /h/work/libusb/libusb/build_mingw32 $ ./examples/xusb.exe -d 1366:0101 [timestamp] [threadID] facility level [function call] <message> -------------------------------------------------------------------------------- [ 0.000000] [00000778] libusb: debug [libusb_init] created default context [ 0.000000] [00000778] libusb: debug [libusb_init] libusb v1.0.21.11157 [ 0.015621] [00000778] libusb: debug [setup_cancel_io] Will use CancelIoEx for I/O cancellation [ 0.015621] [00000778] libusb: debug [windows_init_clock] hires timer available (Frequency: 2050779 Hz) [ 0.015621] [00000778] libusb: debug [windows_init_clock] timer thread will run on core #0 [ 0.015621] [00000778] libusb: debug [htab_create] using 1021 entries hash table [ 0.015621] [00000778] libusb: debug [usbi_add_pollfd] add fd 0 events 1 [ 0.015621] [00000778] libusb: debug [libusb_get_device_list] [ 0.015621] [00000778] libusb: debug [libusb_get_device_descriptor] [ 0.015621] [00000778] libusb: debug [libusb_get_device_descriptor] [ 0.015621] [00000778] libusb: debug [libusb_open] open 3.4 [ 0.222117] [00000778] libusb: debug [libusb_unref_device] destroy device 3.2 [ 0.222117] [00000778] libusb: debug [libusb_unref_device] destroy device 5.6 [ 0.222117] [00000778] libusb: debug [libusb_unref_device] destroy device 5.8 [ 0.222117] [00000778] libusb: debug [libusb_unref_device] destroy device 7.2 [ 0.222117] [00000778] libusb: debug [libusb_get_device_descriptor] [ 0.222617] [00000778] libusb: debug [libusb_alloc_transfer] transfer 001F9504 [ 0.222617] [00000778] libusb: debug [libusb_submit_transfer] transfer 001F9504 [ 0.222617] [00000778] libusb: debug [usbi_add_pollfd] add fd 1 events 1 [ 0.222617] [00000778] libusb: debug [libusb_get_next_timeout] next timeout in 1.000000s [ 0.222617] [00000778] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling [ 0.222617] [00000778] libusb: debug [handle_events] poll fds modified, reallocating [ 0.222617] [00000778] libusb: debug [handle_events] poll() 2 fds with timeout in 1000ms [ 0.222617] [00000778] libusb: debug [handle_events] poll() returned 1 [ 0.222617] [00000778] libusb: debug [windows_handle_events] checking fd 1 with revents = 0001 [ 0.222617] [00000778] libusb: debug [usbi_remove_pollfd] remove fd 1 [ 0.222617] [00000778] libusb: debug [windows_transfer_callback] handling I/O completion with errcode 1627, size 0 [ 0.223118] [00000778] libusb: error [windows_transfer_callback] detected I/O error 1627: [1627] Function failed during execution. [ 0.223118] [00000778] libusb: debug [usbi_handle_transfer_completion] transfer 001F9504 has callback 6B807730 [ 0.223118] [00000778] libusb: debug [sync_transfer_cb] actual_length=0 [ 0.223118] [00000778] libusb: debug [libusb_free_transfer] transfer 001F9504 [ 0.223118] [00000778] libusb: error [libusb_get_bos_descriptor] failed to read BOS (-1) [ 0.223118] [00000778] libusb: debug [libusb_get_config_descriptor] index 0 [ 0.223118] [00000778] libusb: debug [libusb_claim_interface] interface 0 [ 0.223118] [00000778] libusb: debug [libusb_alloc_transfer] transfer 001F9504 [ 0.223118] [00000778] libusb: debug [libusb_submit_transfer] transfer 001F9504 [ 0.223118] [00000778] libusb: debug [usbi_add_pollfd] add fd 1 events 1 [ 0.223618] [00000778] libusb: debug [libusb_get_next_timeout] next timeout in 1.000000s [ 0.223618] [00000778] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling [ 0.223618] [00000778] libusb: debug [handle_events] poll fds modified, reallocating [ 0.223618] [00000778] libusb: debug [handle_events] poll() 2 fds with timeout in 1000ms [ 0.223618] [00000778] libusb: debug [handle_events] poll() returned 1 [ 0.223618] [00000778] libusb: debug [windows_handle_events] checking fd 1 with revents = 0001 [ 0.223618] [00000778] libusb: debug [usbi_remove_pollfd] remove fd 1 [ 0.223618] [00000778] libusb: debug [windows_transfer_callback] handling I/O completion with errcode 0, size 4 [ 0.223618] [00000778] libusb: debug [usbi_handle_transfer_completion] transfer 001F9504 has callback 6B807730 [ 0.223618] [00000778] libusb: debug [sync_transfer_cb] actual_length=4 [ 0.223618] [00000778] libusb: debug [libusb_free_transfer] transfer 001F9504 [ 0.224118] [00000778] libusb: debug [libusb_alloc_transfer] transfer 001F9504 [ 0.224118] [00000778] libusb: debug [libusb_submit_transfer] transfer 001F9504 [ 0.224118] [00000778] libusb: debug [usbi_add_pollfd] add fd 1 events 1 [ 0.224118] [00000778] libusb: debug [libusb_get_next_timeout] next timeout in 1.000000s [ 0.224118] [00000778] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling [ 0.224118] [00000778] libusb: debug [handle_events] poll fds modified, reallocating [ 0.224118] [00000778] libusb: debug [handle_events] poll() 2 fds with timeout in 1000ms [ 0.224620] [00000778] libusb: debug [handle_events] poll() returned 1 [ 0.224620] [00000778] libusb: debug [windows_handle_events] checking fd 1 with revents = 0001 [ 0.224620] [00000778] libusb: debug [usbi_remove_pollfd] remove fd 1 [ 0.224620] [00000778] libusb: debug [windows_transfer_callback] handling I/O completion with errcode 0, size 14 [ 0.224620] [00000778] libusb: debug [usbi_handle_transfer_completion] transfer 001F9504 has callback 6B807730 [ 0.224620] [00000778] libusb: debug [sync_transfer_cb] actual_length=14 [ 0.224620] [00000778] libusb: debug [libusb_free_transfer] transfer 001F9504 [ 0.224620] [00000778] libusb: debug [libusb_alloc_transfer] transfer 001F9504 [ 0.224620] [00000778] libusb: debug [libusb_submit_transfer] transfer 001F9504 [ 0.225118] [00000778] libusb: debug [usbi_add_pollfd] add fd 1 events 1 [ 0.225618] [00000778] libusb: debug [libusb_get_next_timeout] next timeout in 0.999512s [ 0.225618] [00000778] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling [ 0.225618] [00000778] libusb: debug [handle_events] poll fds modified, reallocating [ 0.225618] [00000778] libusb: debug [handle_events] poll() 2 fds with timeout in 1000ms [ 0.225618] [00000778] libusb: debug [handle_events] poll() returned 1 [ 0.225618] [00000778] libusb: debug [windows_handle_events] checking fd 1 with revents = 0001 [ 0.225618] [00000778] libusb: debug [usbi_remove_pollfd] remove fd 1 [ 0.225618] [00000778] libusb: debug [windows_transfer_callback] handling I/O completion with errcode 0, size 4 [ 0.225618] [00000778] libusb: debug [usbi_handle_transfer_completion] transfer 001F9504 has callback 6B807730 [ 0.225618] [00000778] libusb: debug [sync_transfer_cb] actual_length=4 [ 0.225618] [00000778] libusb: debug [libusb_free_transfer] transfer 001F9504 [ 0.225618] [00000778] libusb: debug [libusb_alloc_transfer] transfer 001F9504 [ 0.225618] [00000778] libusb: debug [libusb_submit_transfer] transfer 001F9504 [ 0.226117] [00000778] libusb: debug [usbi_add_pollfd] add fd 1 events 1 [ 0.226117] [00000778] libusb: debug [libusb_get_next_timeout] next timeout in 0.999513s [ 0.226117] [00000778] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling [ 0.226117] [00000778] libusb: debug [handle_events] poll fds modified, reallocating [ 0.226117] [00000778] libusb: debug [handle_events] poll() 2 fds with timeout in 1000ms [ 0.226619] [00000778] libusb: debug [handle_events] poll() returned 1 [ 0.226619] [00000778] libusb: debug [windows_handle_events] checking fd 1 with revents = 0001 [ 0.226619] [00000778] libusb: debug [usbi_remove_pollfd] remove fd 1 [ 0.226619] [00000778] libusb: debug [windows_transfer_callback] handling I/O completion with errcode 0, size 14 [ 0.226619] [00000778] libusb: debug [usbi_handle_transfer_completion] transfer 001F9504 has callback 6B807730 [ 0.226619] [00000778] libusb: debug [sync_transfer_cb] actual_length=14 [ 0.226619] [00000778] libusb: debug [libusb_free_transfer] transfer 001F9504 [ 0.226619] [00000778] libusb: debug [libusb_alloc_transfer] transfer 001F9504 [ 0.227117] [00000778] libusb: debug [libusb_submit_transfer] transfer 001F9504 [ 0.227117] [00000778] libusb: debug [usbi_add_pollfd] add fd 1 events 1 [ 0.227117] [00000778] libusb: debug [libusb_get_next_timeout] next timeout in 1.000000s [ 0.227117] [00000778] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling [ 0.227117] [00000778] libusb: debug [handle_events] poll fds modified, reallocating [ 0.227117] [00000778] libusb: debug [handle_events] poll() 2 fds with timeout in 1000ms [ 0.227618] [00000778] libusb: debug [handle_events] poll() returned 1 [ 0.227618] [00000778] libusb: debug [windows_handle_events] checking fd 1 with revents = 0001 [ 0.227618] [00000778] libusb: debug [usbi_remove_pollfd] remove fd 1 [ 0.227618] [00000778] libusb: debug [windows_transfer_callback] handling I/O completion with errcode 0, size 4 [ 0.227618] [00000778] libusb: debug [usbi_handle_transfer_completion] transfer 001F9504 has callback 6B807730 [ 0.227618] [00000778] libusb: debug [sync_transfer_cb] actual_length=4 [ 0.227618] [00000778] libusb: debug [libusb_free_transfer] transfer 001F9504 [ 0.227618] [00000778] libusb: debug [libusb_alloc_transfer] transfer 001F9504 [ 0.227618] [00000778] libusb: debug [libusb_submit_transfer] transfer 001F9504 [ 0.229619] [00000778] libusb: debug [usbi_add_pollfd] add fd 1 events 1 [ 0.230119] [00000778] libusb: debug [libusb_get_next_timeout] next timeout in 0.999512s [ 0.230119] [00000778] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling [ 0.230119] [00000778] libusb: debug [handle_events] poll fds modified, reallocating [ 0.230119] [00000778] libusb: debug [handle_events] poll() 2 fds with timeout in 1000ms [ 0.230619] [00000778] libusb: debug [handle_events] poll() returned 1 [ 0.230619] [00000778] libusb: debug [windows_handle_events] checking fd 1 with revents = 0001 [ 0.230619] [00000778] libusb: debug [usbi_remove_pollfd] remove fd 1 [ 0.230619] [00000778] libusb: debug [windows_transfer_callback] handling I/O completion with errcode 0, size 22 [ 0.230619] [00000778] libusb: debug [usbi_handle_transfer_completion] transfer 001F9504 has callback 6B807730 [ 0.230619] [00000778] libusb: debug [sync_transfer_cb] actual_length=22 [ 0.230619] [00000778] libusb: debug [libusb_free_transfer] transfer 001F9504 [ 0.231118] [00000778] libusb: debug [libusb_alloc_transfer] transfer 001F9504 [ 0.231118] [00000778] libusb: debug [libusb_submit_transfer] transfer 001F9504 [ 0.231118] [00000778] libusb: debug [usbi_add_pollfd] add fd 1 events 1 [ 0.231118] [00000778] libusb: debug [libusb_get_next_timeout] next timeout in 1.000000s [ 0.231118] [00000778] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling [ 0.231118] [00000778] libusb: debug [handle_events] poll fds modified, reallocating [ 0.231118] [00000778] libusb: debug [handle_events] poll() 2 fds with timeout in 1000ms [ 0.231617] [00000778] libusb: debug [handle_events] poll() returned 1 [ 0.231617] [00000778] libusb: debug [windows_handle_events] checking fd 1 with revents = 0001 [ 0.231617] [00000778] libusb: debug [usbi_remove_pollfd] remove fd 1 [ 0.231617] [00000778] libusb: debug [windows_transfer_callback] handling I/O completion with errcode 0, size 4 [ 0.231617] [00000778] libusb: debug [usbi_handle_transfer_completion] transfer 001F9504 has callback 6B807730 [ 0.231617] [00000778] libusb: debug [sync_transfer_cb] actual_length=4 [ 0.231617] [00000778] libusb: debug [libusb_free_transfer] transfer 001F9504 [ 0.231617] [00000778] libusb: debug [libusb_alloc_transfer] transfer 001F9504 [ 0.231617] [00000778] libusb: debug [libusb_submit_transfer] transfer 001F9504 [ 0.232116] [00000778] libusb: debug [usbi_add_pollfd] add fd 1 events 1 [ 0.232116] [00000778] libusb: debug [libusb_get_next_timeout] next timeout in 1.000000s [ 0.232116] [00000778] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling [ 0.232116] [00000778] libusb: debug [handle_events] poll fds modified, reallocating [ 0.232116] [00000778] libusb: debug [handle_events] poll() 2 fds with timeout in 1000ms [ 0.232634] [00000778] libusb: debug [handle_events] poll() returned 1 [ 0.232634] [00000778] libusb: debug [windows_handle_events] checking fd 1 with revents = 0001 [ 0.232634] [00000778] libusb: debug [usbi_remove_pollfd] remove fd 1 [ 0.Using libusb v1.0.21.11157 Opening device 1366:0101... Reading device descriptor: length: 18 device class: 0 S/N: 3 VID:PID: 1366:0101 bcdDevice: 0001 iMan:iProd:iSer: 1:2:3 nb confs: 1 Reading BOS descriptor: no descriptor Reading first configuration descriptor: nb interfaces: 1 interface[0]: id = 0 interface[0].altsetting[0]: num endpoints = 2 Class.SubClass.Protocol: FF.FF.FF endpoint[0].address: 81 max packet size: 0040 polling interval: 00 endpoint[1].address: 02 max packet size: 0040 polling interval: 00 Claiming interface 0... Reading string descriptors: String (0x01): "SEGGER" String (0x02): "J-Link" String (0x03): "0077000044" Releasing interface 0... Closing device... 232634] [00000778] libusb: debug [windows_transfer_callback] handling I/O completion with errcode 1627, size 0 [ 0.233117] [00000778] libusb: error [windows_transfer_callback] detected I/O error 1627: [1627] Function failed during execution. [ 0.233117] [00000778] libusb: debug [usbi_handle_transfer_completion] transfer 001F9504 has callback 6B807730 [ 0.233117] [00000778] libusb: debug [sync_transfer_cb] actual_length=0 [ 0.233117] [00000778] libusb: debug [libusb_free_transfer] transfer 001F9504 [ 0.233117] [00000778] libusb: debug [libusb_release_interface] interface 0 [ 0.233117] [00000778] libusb: debug [libusb_close] [ 0.432617] [00000778] libusb: debug [libusb_unref_device] destroy device 3.4 [ 0.433118] [00000778] libusb: debug [libusb_exit] [ 0.433118] [00000778] libusb: debug [libusb_exit] destroying default context [ 0.433118] [00000778] libusb: debug [usbi_remove_pollfd] remove fd 0 [ 0.436119] [00001df0] libusb: debug [windows_clock_gettime_threaded] timer thread quitting -- Xiaofan |
|
From: Xiaofan C. <xia...@gm...> - 2017-01-17 14:20:01
|
On Tue, Jan 17, 2017 at 12:54 PM, Ben Hutchinson <be...@gm...> wrote: > In the Windows version of LIBUSB, does it use STDCALL or CDECL functions. I > plan on using it in a Visual Basic project I'm working on, but Visual Basic > doesn't support CDECL calling convention. VB only supports STDCALL calling > convention. Which VB? Are you talking about VB in VB6 or VB in later version of VB.net? As for the calling convention under Windows, please read the libusb.h file and you should get the answer. https://github.com/libusb/libusb/blob/master/libusb/libusb.h -- Xiaofan |
|
From: Orin E. <ori...@gm...> - 2017-01-17 09:14:43
|
On Tue, Jan 17, 2017 at 12:16 AM, Tim Roberts <ti...@pr...> wrote: > > You need that, because there's a lot more to working with libusb from .NET > than just the calling convention. Libusb works through callbacks, and > that'a non-trivial when crossing the managed/unmanaged boundary. > Personally, if I wanted to do that, I'd wrap libusb with a COM object. Callbacks are then trivial - define a COM interface for the callbacks and let a C# class implement the interface. It can be a little tricky persuading such a COM object to unload when you are done with it, but it's possible. |
|
From: Tim R. <ti...@pr...> - 2017-01-17 08:29:05
|
On Jan 16, 2017, at 8:54 PM, Ben Hutchinson <be...@gm...<mailto:be...@gm...>> wrote:
In the Windows version of LIBUSB, does it use STDCALL or CDECL functions. I plan on using it in a Visual Basic project I'm working on, but Visual Basic doesn't support CDECL calling convention. VB only supports STDCALL calling convention.
That' simply not true. You can declare your delegate with
<UnmanagedFunctionPointer(CallingConvention.Cdecl)>
However, if you had done even a minimum amount of web searching, you would have found LibUsbDotNet, which is a .NET compatible wrapper around libusb.
You need that, because there's a lot more to working with libusb from .NET than just the calling convention. Libusb works through callbacks, and that'a non-trivial when crossing the managed/unmanaged boundary.
—
Tim Roberts, ti...@pr...<mailto:ti...@pr...>
Providenza & Boekelheide, Inc.
|
|
From: Dmitry F. <dm...@da...> - 2017-01-17 07:52:14
|
> On 16 Jan 2017, at 14:23 PM, diabolo <dia...@ya...> wrote: > > To me this patch set and way of activating the back end is not a very good option. > > it can create conflict and regression issue when multiple libsub dll instance > run on same pc and have specific winusb or libusbk backend requirement and expectation. > > I have such use case with multiple device with different libusbk , Winusb as requirement (usbdk is installed). I need specific feature /behavior of the respective back-end > As is, I will end up using usbdk what will create trouble to my existing applications. > > Ideally for legacy and compatibility reason usbdk run time activation > should be a fall back when none of the legacy back-end is available only. > But that may not be any easy to detect and do. > > A s/w interface for usbdk run-time back-end selection could be a solution and is fine to me. > With that new app can force usbdk back end activation and do not need any specific back end driver install or any device specific descriptor for winusb usage. Ability to force use of specific backend may be useful indeed. What if we make probing for UsbDk default behavior and add an API or parameter for specific backend selection? Chris, what do you think about this? ~Dmitry > > regards > michel > > On Sun, Jan 15, 2017 at 1:40 AM, Sameeh Jubran <sameeh@...> wrote: > > > Differences from v1: > > * Fixed a bug in libusb_init where we used usbi_info to print while > > context is null. > > > > Sameeh Jubran (2): > > windows: Use UsbDk when available > > windows: Ditch UsbDK build configuration > > > > configure.ac | 9 -- > > libusb/Makefile.am | 9 +- > > libusb/core.c | 41 ++++++-- > > libusb/libusbi.h | 4 + > > libusb/os/windows_nt_common.c | 17 ++- > > libusb/os/windows_nt_common.h | 18 +++- > > libusb/os/windows_usbdk.c | 25 +++-- > > libusb/os/windows_winusb.c | 23 +++-- > > msvc/ddk_build.cmd | 8 -- > > msvc/libusb_2013.sln | 20 ---- > > msvc/libusb_2015.sln | 20 ---- > > msvc/libusb_2017.sln | 20 ---- > > msvc/libusb_dll_2010.vcxproj | 2 + > > msvc/libusb_dll_2010.vcxproj.filters | 18 ++++ > > msvc/libusb_dll_2012.vcxproj | 2 + > > msvc/libusb_dll_2012.vcxproj.filters | 15 +++ > > msvc/libusb_dll_2013.vcxproj | 2 + > > msvc/libusb_dll_2015.vcxproj | 2 + > > msvc/libusb_dll_2017.vcxproj | 2 + > > msvc/libusb_sources | 8 +- > > msvc/libusb_static_2010.vcxproj | 2 + > > msvc/libusb_static_2010.vcxproj.filters | 12 +++ > > msvc/libusb_static_2012.vcxproj | 2 + > > msvc/libusb_static_2012.vcxproj.filters | 12 +++ > > msvc/libusb_static_2013.vcxproj | 2 + > > msvc/libusb_static_2015.vcxproj | 2 + > > msvc/libusb_static_2017.vcxproj | 2 + > > msvc/libusb_usbdk_dll_2013.vcxproj | 178 > > -------------------------------- > > msvc/libusb_usbdk_dll_2015.vcxproj | 178 > > -------------------------------- > > msvc/libusb_usbdk_dll_2017.vcxproj | 178 > > -------------------------------- > > msvc/libusb_usbdk_static_2013.vcxproj | 162 > > ----------------------------- > > msvc/libusb_usbdk_static_2015.vcxproj | 162 > > ----------------------------- > > msvc/libusb_usbdk_static_2017.vcxproj | 162 > > ----------------------------- > > 33 files changed, 179 insertions(+), 1140 deletions(-) > > delete mode 100644 msvc/libusb_usbdk_dll_2013.vcxproj > > delete mode 100644 msvc/libusb_usbdk_dll_2015.vcxproj > > delete mode 100644 msvc/libusb_usbdk_dll_2017.vcxproj > > delete mode 100644 msvc/libusb_usbdk_static_2013.vcxproj > > delete mode 100644 msvc/libusb_usbdk_static_2015.vcxproj > > delete mode 100644 msvc/libusb_usbdk_static_2017.vcxproj > > > > -- > > 2.7.4 > > > > > > ------------------------------------------------------------ > > ------------------ > > Developer Access Program for Intel Xeon Phi Processors > > Access to Intel Xeon Phi processor-based developer platforms. > > With one year of Intel Parallel Studio XE. > > Training and support from Colfax. > > Order your platform today. http://sdm.link/xeonphi <http://sdm.link/xeonphi> > > _______________________________________________ > > libusb-devel mailing list > > libusb-devel@... > > https://lists.sourceforge.net/lists/listinfo/libusb-devel <https://lists.sourceforge.net/lists/listinfo/libusb-devel> > > > ------------------------------------------------------------------------------ > Developer Access Program for Intel Xeon Phi Processors > Access to Intel Xeon Phi processor-based developer platforms. > With one year of Intel Parallel Studio XE. > Training and support from Colfax. > Order your platform today. http://sdm.link/xeonphi_______________________________________________ > libusb-devel mailing list > lib...@li... > https://lists.sourceforge.net/lists/listinfo/libusb-devel |
|
From: Ben H. <be...@gm...> - 2017-01-17 04:54:44
|
In the Windows version of LIBUSB, does it use STDCALL or CDECL functions. I plan on using it in a Visual Basic project I'm working on, but Visual Basic doesn't support CDECL calling convention. VB only supports STDCALL calling convention. If LIBUSB doesn't by default use STDCALL for its exported functions, then I will need one of 2 things: 1) Somebody to point me to an alternative to LIBUSB, that does export STDCALL functions. or 2) One of the LIBUSB developers to compile for me a customized version of LIBUSB, which does export STDCALL functions. |
|
From: diabolo <dia...@ya...> - 2017-01-16 12:24:31
|
| To me this patch set and way of activating the back end is not a very good option. it can create conflict and regression issue when multiple libsub dll instance run on same pc and have specific winusb or libusbk backend requirement and expectation. I have such use case with multiple device with different libusbk , Winusb as requirement (usbdk is installed). I need specific feature /behavior of the respective back-end As is, I will end up using usbdk what will create trouble to my existing applications. Ideally for legacy and compatibility reason usbdk run time activation should be a fall back when none of the legacy back-end is available only. But that may not be any easy to detect and do. A s/w interface for usbdk run-time back-end selection could be a solution and is fine to me. With that new app can force usbdk back end activation and do not need any specific back end driver install or any device specific descriptor for winusb usage. regards michel On Sun, Jan 15, 2017 at 1:40 AM, Sameeh Jubran <sameeh@...> wrote: > Differences from v1: > * Fixed a bug in libusb_init where we used usbi_info to print while > context is null. > > Sameeh Jubran (2): > windows: Use UsbDk when available > windows: Ditch UsbDK build configuration > > configure.ac | 9 -- > libusb/Makefile.am | 9 +- > libusb/core.c | 41 ++++++-- > libusb/libusbi.h | 4 + > libusb/os/windows_nt_common.c | 17 ++- > libusb/os/windows_nt_common.h | 18 +++- > libusb/os/windows_usbdk.c | 25 +++-- > libusb/os/windows_winusb.c | 23 +++-- > msvc/ddk_build.cmd | 8 -- > msvc/libusb_2013.sln | 20 ---- > msvc/libusb_2015.sln | 20 ---- > msvc/libusb_2017.sln | 20 ---- > msvc/libusb_dll_2010.vcxproj | 2 + > msvc/libusb_dll_2010.vcxproj.filters | 18 ++++ > msvc/libusb_dll_2012.vcxproj | 2 + > msvc/libusb_dll_2012.vcxproj.filters | 15 +++ > msvc/libusb_dll_2013.vcxproj | 2 + > msvc/libusb_dll_2015.vcxproj | 2 + > msvc/libusb_dll_2017.vcxproj | 2 + > msvc/libusb_sources | 8 +- > msvc/libusb_static_2010.vcxproj | 2 + > msvc/libusb_static_2010.vcxproj.filters | 12 +++ > msvc/libusb_static_2012.vcxproj | 2 + > msvc/libusb_static_2012.vcxproj.filters | 12 +++ > msvc/libusb_static_2013.vcxproj | 2 + > msvc/libusb_static_2015.vcxproj | 2 + > msvc/libusb_static_2017.vcxproj | 2 + > msvc/libusb_usbdk_dll_2013.vcxproj | 178 > -------------------------------- > msvc/libusb_usbdk_dll_2015.vcxproj | 178 > -------------------------------- > msvc/libusb_usbdk_dll_2017.vcxproj | 178 > -------------------------------- > msvc/libusb_usbdk_static_2013.vcxproj | 162 > ----------------------------- > msvc/libusb_usbdk_static_2015.vcxproj | 162 > ----------------------------- > msvc/libusb_usbdk_static_2017.vcxproj | 162 > ----------------------------- > 33 files changed, 179 insertions(+), 1140 deletions(-) > delete mode 100644 msvc/libusb_usbdk_dll_2013.vcxproj > delete mode 100644 msvc/libusb_usbdk_dll_2015.vcxproj > delete mode 100644 msvc/libusb_usbdk_dll_2017.vcxproj > delete mode 100644 msvc/libusb_usbdk_static_2013.vcxproj > delete mode 100644 msvc/libusb_usbdk_static_2015.vcxproj > delete mode 100644 msvc/libusb_usbdk_static_2017.vcxproj > > -- > 2.7.4 > > > ------------------------------------------------------------ > ------------------ > Developer Access Program for Intel Xeon Phi Processors > Access to Intel Xeon Phi processor-based developer platforms. > With one year of Intel Parallel Studio XE. > Training and support from Colfax. > Order your platform today. http://sdm.link/xeonphi > _______________________________________________ > libusb-devel mailing list > libusb-devel@... > https://lists.sourceforge.net/lists/listinfo/libusb-devel > | |
|
From: David G. <dav...@gm...> - 2017-01-15 16:09:40
|
Hello. I just wanted to say that this patch will make libusb a less attractive option in the future because it will be harder to test all the code paths that the user might be using. If the user has UsbDk while the developer does not, (or vice versa), then it seems pretty likely that the user could have unexpected bugs or performance issues. I think it is unlikely that UsbDk behaves exactly like the WinUSB backend. In general, I don't like libusb because of the complexity of its code and the concurrency bugs I hear about on this list. Just my two cents. --David On Sun, Jan 15, 2017 at 1:40 AM, Sameeh Jubran <sa...@da...> wrote: > Differences from v1: > * Fixed a bug in libusb_init where we used usbi_info to print while > context is null. > > Sameeh Jubran (2): > windows: Use UsbDk when available > windows: Ditch UsbDK build configuration > > configure.ac | 9 -- > libusb/Makefile.am | 9 +- > libusb/core.c | 41 ++++++-- > libusb/libusbi.h | 4 + > libusb/os/windows_nt_common.c | 17 ++- > libusb/os/windows_nt_common.h | 18 +++- > libusb/os/windows_usbdk.c | 25 +++-- > libusb/os/windows_winusb.c | 23 +++-- > msvc/ddk_build.cmd | 8 -- > msvc/libusb_2013.sln | 20 ---- > msvc/libusb_2015.sln | 20 ---- > msvc/libusb_2017.sln | 20 ---- > msvc/libusb_dll_2010.vcxproj | 2 + > msvc/libusb_dll_2010.vcxproj.filters | 18 ++++ > msvc/libusb_dll_2012.vcxproj | 2 + > msvc/libusb_dll_2012.vcxproj.filters | 15 +++ > msvc/libusb_dll_2013.vcxproj | 2 + > msvc/libusb_dll_2015.vcxproj | 2 + > msvc/libusb_dll_2017.vcxproj | 2 + > msvc/libusb_sources | 8 +- > msvc/libusb_static_2010.vcxproj | 2 + > msvc/libusb_static_2010.vcxproj.filters | 12 +++ > msvc/libusb_static_2012.vcxproj | 2 + > msvc/libusb_static_2012.vcxproj.filters | 12 +++ > msvc/libusb_static_2013.vcxproj | 2 + > msvc/libusb_static_2015.vcxproj | 2 + > msvc/libusb_static_2017.vcxproj | 2 + > msvc/libusb_usbdk_dll_2013.vcxproj | 178 > -------------------------------- > msvc/libusb_usbdk_dll_2015.vcxproj | 178 > -------------------------------- > msvc/libusb_usbdk_dll_2017.vcxproj | 178 > -------------------------------- > msvc/libusb_usbdk_static_2013.vcxproj | 162 > ----------------------------- > msvc/libusb_usbdk_static_2015.vcxproj | 162 > ----------------------------- > msvc/libusb_usbdk_static_2017.vcxproj | 162 > ----------------------------- > 33 files changed, 179 insertions(+), 1140 deletions(-) > delete mode 100644 msvc/libusb_usbdk_dll_2013.vcxproj > delete mode 100644 msvc/libusb_usbdk_dll_2015.vcxproj > delete mode 100644 msvc/libusb_usbdk_dll_2017.vcxproj > delete mode 100644 msvc/libusb_usbdk_static_2013.vcxproj > delete mode 100644 msvc/libusb_usbdk_static_2015.vcxproj > delete mode 100644 msvc/libusb_usbdk_static_2017.vcxproj > > -- > 2.7.4 > > > ------------------------------------------------------------ > ------------------ > Developer Access Program for Intel Xeon Phi Processors > Access to Intel Xeon Phi processor-based developer platforms. > With one year of Intel Parallel Studio XE. > Training and support from Colfax. > Order your platform today. http://sdm.link/xeonphi > _______________________________________________ > libusb-devel mailing list > lib...@li... > https://lists.sourceforge.net/lists/listinfo/libusb-devel > |
|
From: Sameeh J. <sa...@da...> - 2017-01-15 09:41:20
|
Previos patch introduced run-time UsbDk backend activation,
therefore separate build configuration is not needed anymore.
Signed-off-by: Sameeh Jubran <sa...@da...>
---
configure.ac | 9 --
msvc/ddk_build.cmd | 8 --
msvc/libusb_2013.sln | 20 ----
msvc/libusb_2015.sln | 20 ----
msvc/libusb_2017.sln | 20 ----
msvc/libusb_sources | 7 +-
msvc/libusb_usbdk_dll_2013.vcxproj | 178 ----------------------------------
msvc/libusb_usbdk_dll_2015.vcxproj | 178 ----------------------------------
msvc/libusb_usbdk_dll_2017.vcxproj | 178 ----------------------------------
msvc/libusb_usbdk_static_2013.vcxproj | 162 -------------------------------
msvc/libusb_usbdk_static_2015.vcxproj | 162 -------------------------------
msvc/libusb_usbdk_static_2017.vcxproj | 162 -------------------------------
12 files changed, 1 insertion(+), 1103 deletions(-)
delete mode 100644 msvc/libusb_usbdk_dll_2013.vcxproj
delete mode 100644 msvc/libusb_usbdk_dll_2015.vcxproj
delete mode 100644 msvc/libusb_usbdk_dll_2017.vcxproj
delete mode 100644 msvc/libusb_usbdk_static_2013.vcxproj
delete mode 100644 msvc/libusb_usbdk_static_2015.vcxproj
delete mode 100644 msvc/libusb_usbdk_static_2017.vcxproj
diff --git a/configure.ac b/configure.ac
index c00af33..76a66d5 100644
--- a/configure.ac
+++ b/configure.ac
@@ -182,14 +182,6 @@ windows)
LTLDFLAGS="${LTLDFLAGS} -avoid-version -Wl,--add-stdcall-alias"
AC_DEFINE([POLL_NFDS_TYPE],[unsigned int],[type of second poll() argument])
AC_DEFINE([WINVER], 0x0501, [Oldest Windows version supported])
-
- AC_ARG_ENABLE([usbdk],
- [AC_HELP_STRING([--enable-usbdk], [use UsbDk Windows backend [default=no]])],
- [], [enable_usbdk="no"])
- if test "x$enable_usbdk" = "xyes" ; then
- AC_DEFINE(USE_USBDK, 1, [Use UsbDk Windows backend])
- fi
- AC_SUBST(USE_USBDK)
;;
haiku)
AC_DEFINE(OS_HAIKU, 1, [Haiku backend])
@@ -212,7 +204,6 @@ AM_CONDITIONAL(OS_HAIKU, test "x$backend" = xhaiku)
AM_CONDITIONAL(THREADS_POSIX, test "x$threads" = xposix)
AM_CONDITIONAL(CREATE_IMPORT_LIB, test "x$create_import_lib" = "xyes")
AM_CONDITIONAL(USE_UDEV, test "x$enable_udev" = xyes)
-AM_CONDITIONAL(USE_USBDK, test "x$enable_usbdk" = xyes)
if test "$threads" = posix; then
AC_DEFINE(THREADS_POSIX, 1, [Use POSIX Threads])
fi
diff --git a/msvc/ddk_build.cmd b/msvc/ddk_build.cmd
index c0b905a..912ff9a 100644
--- a/msvc/ddk_build.cmd
+++ b/msvc/ddk_build.cmd
@@ -3,28 +3,20 @@
::# you can pass the following arguments (case insensitive):
::# - "DLL" to build a DLL instead of a static library
::# - "/MT" to build a static library compatible with MSVC's /MT option (LIBCMT vs MSVCRT)
-::# - "USBDK" to build with UsbDk backend
if Test%BUILD_ALT_DIR%==Test goto usage
::# process commandline parameters
set TARGET=LIBRARY
set STATIC_LIBC=
-set WITH_USBDK=
set version=1.0
set PWD=%~dp0
set BUILD_CMD=build -bcwgZ -M2
-:more_args
-
if "%1" == "" goto no_more_args
::# /I for case insensitive
if /I Test%1==TestDLL set TARGET=DYNLINK
if /I Test%1==Test/MT set STATIC_LIBC=1
-if /I Test%1==TestUSBDK set WITH_USBDK=1
-
-shift
-goto more_args
:no_more_args
diff --git a/msvc/libusb_2013.sln b/msvc/libusb_2013.sln
index fb05ded..9d04d2c 100644
--- a/msvc/libusb_2013.sln
+++ b/msvc/libusb_2013.sln
@@ -21,10 +21,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "stress", "stress_2013.vcxpr
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "hotplugtest", "hotplugtest_2013.vcxproj", "{99D2AC64-DC66-4422-91CE-6715C403C9E5}"
EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libusb-usbdk-1.0 (dll)", "libusb_usbdk_dll_2013.vcxproj", "{F53A5974-2319-48EB-A67B-27933AEDF14A}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libusb-usbdk-1.0 (static)", "libusb_usbdk_static_2013.vcxproj", "{0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}"
-EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
@@ -97,22 +93,6 @@ Global
{99D2AC64-DC66-4422-91CE-6715C403C9E5}.Release|Win32.Build.0 = Release|Win32
{99D2AC64-DC66-4422-91CE-6715C403C9E5}.Release|x64.ActiveCfg = Release|x64
{99D2AC64-DC66-4422-91CE-6715C403C9E5}.Release|x64.Build.0 = Release|x64
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Debug|Win32.ActiveCfg = Debug|Win32
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Debug|Win32.Build.0 = Debug|Win32
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Debug|x64.ActiveCfg = Debug|x64
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Debug|x64.Build.0 = Debug|x64
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Release|Win32.ActiveCfg = Release|Win32
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Release|Win32.Build.0 = Release|Win32
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Release|x64.ActiveCfg = Release|x64
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Release|x64.Build.0 = Release|x64
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Debug|Win32.ActiveCfg = Debug|Win32
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Debug|Win32.Build.0 = Debug|Win32
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Debug|x64.ActiveCfg = Debug|x64
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Debug|x64.Build.0 = Debug|x64
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Release|Win32.ActiveCfg = Release|Win32
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Release|Win32.Build.0 = Release|Win32
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Release|x64.ActiveCfg = Release|x64
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Release|x64.Build.0 = Release|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/msvc/libusb_2015.sln b/msvc/libusb_2015.sln
index f93ebc1..9e71f0b 100644
--- a/msvc/libusb_2015.sln
+++ b/msvc/libusb_2015.sln
@@ -21,10 +21,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "stress", "stress_2015.vcxpr
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "hotplugtest", "hotplugtest_2015.vcxproj", "{99D2AC64-DC66-4422-91CE-6715C403C9E5}"
EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libusb-usbdk-1.0 (dll)", "libusb_usbdk_dll_2015.vcxproj", "{F53A5974-2319-48EB-A67B-27933AEDF14A}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libusb-usbdk-1.0 (static)", "libusb_usbdk_static_2015.vcxproj", "{0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}"
-EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
@@ -97,22 +93,6 @@ Global
{99D2AC64-DC66-4422-91CE-6715C403C9E5}.Release|Win32.Build.0 = Release|Win32
{99D2AC64-DC66-4422-91CE-6715C403C9E5}.Release|x64.ActiveCfg = Release|x64
{99D2AC64-DC66-4422-91CE-6715C403C9E5}.Release|x64.Build.0 = Release|x64
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Debug|Win32.ActiveCfg = Debug|Win32
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Debug|Win32.Build.0 = Debug|Win32
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Debug|x64.ActiveCfg = Debug|x64
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Debug|x64.Build.0 = Debug|x64
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Release|Win32.ActiveCfg = Release|Win32
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Release|Win32.Build.0 = Release|Win32
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Release|x64.ActiveCfg = Release|x64
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Release|x64.Build.0 = Release|x64
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Debug|Win32.ActiveCfg = Debug|Win32
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Debug|Win32.Build.0 = Debug|Win32
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Debug|x64.ActiveCfg = Debug|x64
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Debug|x64.Build.0 = Debug|x64
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Release|Win32.ActiveCfg = Release|Win32
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Release|Win32.Build.0 = Release|Win32
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Release|x64.ActiveCfg = Release|x64
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Release|x64.Build.0 = Release|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/msvc/libusb_2017.sln b/msvc/libusb_2017.sln
index fd52d5b..5700804 100644
--- a/msvc/libusb_2017.sln
+++ b/msvc/libusb_2017.sln
@@ -21,10 +21,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "stress", "stress_2017.vcxpr
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "hotplugtest", "hotplugtest_2017.vcxproj", "{99D2AC64-DC66-4422-91CE-6715C403C9E5}"
EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libusb-usbdk-1.0 (dll)", "libusb_usbdk_dll_2017.vcxproj", "{F53A5974-2319-48EB-A67B-27933AEDF14A}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libusb-usbdk-1.0 (static)", "libusb_usbdk_static_2017.vcxproj", "{0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}"
-EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
@@ -97,22 +93,6 @@ Global
{99D2AC64-DC66-4422-91CE-6715C403C9E5}.Release|Win32.Build.0 = Release|Win32
{99D2AC64-DC66-4422-91CE-6715C403C9E5}.Release|x64.ActiveCfg = Release|x64
{99D2AC64-DC66-4422-91CE-6715C403C9E5}.Release|x64.Build.0 = Release|x64
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Debug|Win32.ActiveCfg = Debug|Win32
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Debug|Win32.Build.0 = Debug|Win32
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Debug|x64.ActiveCfg = Debug|x64
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Debug|x64.Build.0 = Debug|x64
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Release|Win32.ActiveCfg = Release|Win32
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Release|Win32.Build.0 = Release|Win32
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Release|x64.ActiveCfg = Release|x64
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Release|x64.Build.0 = Release|x64
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Debug|Win32.ActiveCfg = Debug|Win32
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Debug|Win32.Build.0 = Debug|Win32
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Debug|x64.ActiveCfg = Debug|x64
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Debug|x64.Build.0 = Debug|x64
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Release|Win32.ActiveCfg = Release|Win32
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Release|Win32.Build.0 = Release|Win32
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Release|x64.ActiveCfg = Release|x64
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Release|x64.Build.0 = Release|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/msvc/libusb_sources b/msvc/libusb_sources
index c527ac7..f0a4b8e 100644
--- a/msvc/libusb_sources
+++ b/msvc/libusb_sources
@@ -12,12 +12,8 @@ USE_LIBCMT=1
USE_MSVCRT=1
!ENDIF
-!IFDEF WITH_USBDK
-BACKEND_DEFINES="/DUSE_USBDK"
-!ENDIF
-
INCLUDES=..;..\..\msvc;$(DDK_INC_PATH)
-C_DEFINES= $(C_DEFINES) $(LIBUSB_DEFINES) $(BACKEND_DEFINES) /DDDKBUILD
+C_DEFINES= $(C_DEFINES) $(LIBUSB_DEFINES) /DDDKBUILD
# http://jpassing.com/2009/10/21/ltcg-issues-with-the-win7amd64-environment-of-wdk-7600/
# prevents the following error when using the 64 bit static lib with Visual Studio 2010:
@@ -40,6 +36,5 @@ SOURCES=..\core.c \
poll_windows.c \
windows_usbdk.c \
windows_winusb.c \
- windows_usbdk.c \
windows_nt_common.c \
..\libusb-1.0.rc
diff --git a/msvc/libusb_usbdk_dll_2013.vcxproj b/msvc/libusb_usbdk_dll_2013.vcxproj
deleted file mode 100644
index 6d9018f..0000000
--- a/msvc/libusb_usbdk_dll_2013.vcxproj
+++ /dev/null
@@ -1,178 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <ItemGroup Label="ProjectConfigurations">
- <ProjectConfiguration Include="Debug|Win32">
- <Configuration>Debug</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Debug|x64">
- <Configuration>Debug</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release|Win32">
- <Configuration>Release</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release|x64">
- <Configuration>Release</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- </ItemGroup>
- <PropertyGroup Label="Globals">
- <ProjectName>libusb-usbdk-1.0 (dll)</ProjectName>
- <ProjectGuid>{F53A5974-2319-48EB-A67B-27933AEDF14A}</ProjectGuid>
- <RootNamespace>libusbdll</RootNamespace>
- </PropertyGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <WholeProgramOptimization>true</WholeProgramOptimization>
- <PlatformToolset>v120</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <PlatformToolset>v120</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <WholeProgramOptimization>true</WholeProgramOptimization>
- <PlatformToolset>v120</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <PlatformToolset>v120</PlatformToolset>
- </PropertyGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
- <ImportGroup Label="ExtensionSettings">
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <PropertyGroup Label="UserMacros" />
- <PropertyGroup>
- <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\libusb-usbdk-1.0\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\libusb-usbdk-1.0\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\libusb-usbdk-1.0\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\libusb-usbdk-1.0\</IntDir>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">libusb-usbdk-1.0</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">libusb-usbdk-1.0</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">libusb-usbdk-1.0</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">libusb-usbdk-1.0</TargetName>
- </PropertyGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>.;..\libusb;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;USE_USBDK;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level4</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <Link>
- <OutputFile>$(OutDir)libusb-usbdk-1.0.dll</OutputFile>
- <ModuleDefinitionFile>..\libusb\libusb-1.0.def</ModuleDefinitionFile>
- <EmbedManagedResourceFile>libusb-1.0.rc;%(EmbedManagedResourceFile)</EmbedManagedResourceFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>.;..\libusb;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_WIN32;_WIN64;_DEBUG;_CRT_SECURE_NO_WARNINGS;USE_USBDK;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level4</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <Link>
- <OutputFile>$(OutDir)libusb-usbdk-1.0.dll</OutputFile>
- <ModuleDefinitionFile>..\libusb\libusb-1.0.def</ModuleDefinitionFile>
- <EmbedManagedResourceFile>libusb-1.0.rc;%(EmbedManagedResourceFile)</EmbedManagedResourceFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
- <ClCompile>
- <AdditionalIncludeDirectories>.;..\libusb;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_WIN32;_LIB;_CRT_SECURE_NO_WARNINGS;USE_USBDK;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <WarningLevel>Level4</WarningLevel>
- </ClCompile>
- <Link>
- <OutputFile>$(OutDir)libusb-usbdk-1.0.dll</OutputFile>
- <ModuleDefinitionFile>..\libusb\libusb-1.0.def</ModuleDefinitionFile>
- <EmbedManagedResourceFile>libusb-1.0.rc;%(EmbedManagedResourceFile)</EmbedManagedResourceFile>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- </Midl>
- <ClCompile>
- <AdditionalIncludeDirectories>.;..\libusb;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_WIN32;_WIN64;_LIB;_CRT_SECURE_NO_WARNINGS;USE_USBDK;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <WarningLevel>Level4</WarningLevel>
- </ClCompile>
- <Link>
- <OutputFile>$(OutDir)libusb-usbdk-1.0.dll</OutputFile>
- <ModuleDefinitionFile>..\libusb\libusb-1.0.def</ModuleDefinitionFile>
- <EmbedManagedResourceFile>libusb-1.0.rc;%(EmbedManagedResourceFile)</EmbedManagedResourceFile>
- </Link>
- </ItemDefinitionGroup>
- <ItemGroup>
- <ClCompile Include="..\libusb\core.c" />
- <ClCompile Include="..\libusb\descriptor.c" />
- <ClCompile Include="..\libusb\hotplug.c" />
- <ClCompile Include="..\libusb\io.c" />
- <ClCompile Include="..\libusb\os\poll_windows.c" />
- <ClCompile Include="..\libusb\strerror.c" />
- <ClCompile Include="..\libusb\sync.c" />
- <ClCompile Include="..\libusb\os\threads_windows.c" />
- <ClCompile Include="..\libusb\os\windows_nt_common.c" />
- <ClCompile Include="..\libusb\os\windows_usbdk.c" />
- </ItemGroup>
- <ItemGroup>
- <ClInclude Include=".\config.h" />
- <ClInclude Include="..\libusb\hotplug.h" />
- <ClInclude Include="..\libusb\libusb.h" />
- <ClInclude Include="..\libusb\libusbi.h" />
- <ClInclude Include="..\libusb\os\poll_windows.h" />
- <ClInclude Include="..\libusb\os\threads_windows.h" />
- <ClInclude Include="..\libusb\version.h" />
- <ClInclude Include="..\libusb\version_nano.h" />
- <ClInclude Include="..\libusb\os\windows_common.h" />
- <ClInclude Include="..\libusb\os\windows_nt_common.h" />
- <ClInclude Include="..\libusb\os\windows_usbdk.h" />
- </ItemGroup>
- <ItemGroup>
- <None Include="..\libusb\libusb-1.0.def" />
- </ItemGroup>
- <ItemGroup>
- <ResourceCompile Include="..\libusb\libusb-1.0.rc" />
- </ItemGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
- <ImportGroup Label="ExtensionTargets">
- </ImportGroup>
-</Project>
\ No newline at end of file
diff --git a/msvc/libusb_usbdk_dll_2015.vcxproj b/msvc/libusb_usbdk_dll_2015.vcxproj
deleted file mode 100644
index a19c17e..0000000
--- a/msvc/libusb_usbdk_dll_2015.vcxproj
+++ /dev/null
@@ -1,178 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <ItemGroup Label="ProjectConfigurations">
- <ProjectConfiguration Include="Debug|Win32">
- <Configuration>Debug</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Debug|x64">
- <Configuration>Debug</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release|Win32">
- <Configuration>Release</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release|x64">
- <Configuration>Release</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- </ItemGroup>
- <PropertyGroup Label="Globals">
- <ProjectName>libusb-usbdk-1.0 (dll)</ProjectName>
- <ProjectGuid>{F53A5974-2319-48EB-A67B-27933AEDF14A}</ProjectGuid>
- <RootNamespace>libusbdll</RootNamespace>
- </PropertyGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <WholeProgramOptimization>true</WholeProgramOptimization>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <WholeProgramOptimization>true</WholeProgramOptimization>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
- <ImportGroup Label="ExtensionSettings">
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <PropertyGroup Label="UserMacros" />
- <PropertyGroup>
- <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\libusb-usbdk-1.0\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\libusb-usbdk-1.0\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\libusb-usbdk-1.0\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\libusb-usbdk-1.0\</IntDir>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">libusb-usbdk-1.0</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">libusb-usbdk-1.0</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">libusb-usbdk-1.0</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">libusb-usbdk-1.0</TargetName>
- </PropertyGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>.;..\libusb;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;USE_USBDK;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level4</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <Link>
- <OutputFile>$(OutDir)libusb-usbdk-1.0.dll</OutputFile>
- <ModuleDefinitionFile>..\libusb\libusb-1.0.def</ModuleDefinitionFile>
- <EmbedManagedResourceFile>libusb-1.0.rc;%(EmbedManagedResourceFile)</EmbedManagedResourceFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>.;..\libusb;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_WIN32;_WIN64;_DEBUG;_CRT_SECURE_NO_WARNINGS;USE_USBDK;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level4</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <Link>
- <OutputFile>$(OutDir)libusb-usbdk-1.0.dll</OutputFile>
- <ModuleDefinitionFile>..\libusb\libusb-1.0.def</ModuleDefinitionFile>
- <EmbedManagedResourceFile>libusb-1.0.rc;%(EmbedManagedResourceFile)</EmbedManagedResourceFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
- <ClCompile>
- <AdditionalIncludeDirectories>.;..\libusb;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_WIN32;_LIB;_CRT_SECURE_NO_WARNINGS;USE_USBDK;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <WarningLevel>Level4</WarningLevel>
- </ClCompile>
- <Link>
- <OutputFile>$(OutDir)libusb-usbdk-1.0.dll</OutputFile>
- <ModuleDefinitionFile>..\libusb\libusb-1.0.def</ModuleDefinitionFile>
- <EmbedManagedResourceFile>libusb-1.0.rc;%(EmbedManagedResourceFile)</EmbedManagedResourceFile>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- </Midl>
- <ClCompile>
- <AdditionalIncludeDirectories>.;..\libusb;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_WIN32;_WIN64;_LIB;_CRT_SECURE_NO_WARNINGS;USE_USBDK;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <WarningLevel>Level4</WarningLevel>
- </ClCompile>
- <Link>
- <OutputFile>$(OutDir)libusb-usbdk-1.0.dll</OutputFile>
- <ModuleDefinitionFile>..\libusb\libusb-1.0.def</ModuleDefinitionFile>
- <EmbedManagedResourceFile>libusb-1.0.rc;%(EmbedManagedResourceFile)</EmbedManagedResourceFile>
- </Link>
- </ItemDefinitionGroup>
- <ItemGroup>
- <ClCompile Include="..\libusb\core.c" />
- <ClCompile Include="..\libusb\descriptor.c" />
- <ClCompile Include="..\libusb\hotplug.c" />
- <ClCompile Include="..\libusb\io.c" />
- <ClCompile Include="..\libusb\os\poll_windows.c" />
- <ClCompile Include="..\libusb\strerror.c" />
- <ClCompile Include="..\libusb\sync.c" />
- <ClCompile Include="..\libusb\os\threads_windows.c" />
- <ClCompile Include="..\libusb\os\windows_nt_common.c" />
- <ClCompile Include="..\libusb\os\windows_usbdk.c" />
- </ItemGroup>
- <ItemGroup>
- <ClInclude Include=".\config.h" />
- <ClInclude Include="..\libusb\hotplug.h" />
- <ClInclude Include="..\libusb\libusb.h" />
- <ClInclude Include="..\libusb\libusbi.h" />
- <ClInclude Include="..\libusb\os\poll_windows.h" />
- <ClInclude Include="..\libusb\os\threads_windows.h" />
- <ClInclude Include="..\libusb\version.h" />
- <ClInclude Include="..\libusb\version_nano.h" />
- <ClInclude Include="..\libusb\os\windows_common.h" />
- <ClInclude Include="..\libusb\os\windows_nt_common.h" />
- <ClInclude Include="..\libusb\os\windows_usbdk.h" />
- </ItemGroup>
- <ItemGroup>
- <None Include="..\libusb\libusb-1.0.def" />
- </ItemGroup>
- <ItemGroup>
- <ResourceCompile Include="..\libusb\libusb-1.0.rc" />
- </ItemGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
- <ImportGroup Label="ExtensionTargets">
- </ImportGroup>
-</Project>
\ No newline at end of file
diff --git a/msvc/libusb_usbdk_dll_2017.vcxproj b/msvc/libusb_usbdk_dll_2017.vcxproj
deleted file mode 100644
index 73274fe..0000000
--- a/msvc/libusb_usbdk_dll_2017.vcxproj
+++ /dev/null
@@ -1,178 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <ItemGroup Label="ProjectConfigurations">
- <ProjectConfiguration Include="Debug|Win32">
- <Configuration>Debug</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Debug|x64">
- <Configuration>Debug</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release|Win32">
- <Configuration>Release</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release|x64">
- <Configuration>Release</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- </ItemGroup>
- <PropertyGroup Label="Globals">
- <ProjectName>libusb-usbdk-1.0 (dll)</ProjectName>
- <ProjectGuid>{F53A5974-2319-48EB-A67B-27933AEDF14A}</ProjectGuid>
- <RootNamespace>libusbdll</RootNamespace>
- </PropertyGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <WholeProgramOptimization>true</WholeProgramOptimization>
- <PlatformToolset>v141</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <PlatformToolset>v141</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <WholeProgramOptimization>true</WholeProgramOptimization>
- <PlatformToolset>v141</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <PlatformToolset>v141</PlatformToolset>
- </PropertyGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
- <ImportGroup Label="ExtensionSettings">
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <PropertyGroup Label="UserMacros" />
- <PropertyGroup>
- <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\libusb-usbdk-1.0\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\libusb-usbdk-1.0\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\libusb-usbdk-1.0\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\libusb-usbdk-1.0\</IntDir>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">libusb-usbdk-1.0</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">libusb-usbdk-1.0</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">libusb-usbdk-1.0</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">libusb-usbdk-1.0</TargetName>
- </PropertyGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>.;..\libusb;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;USE_USBDK;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level4</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <Link>
- <OutputFile>$(OutDir)libusb-usbdk-1.0.dll</OutputFile>
- <ModuleDefinitionFile>..\libusb\libusb-1.0.def</ModuleDefinitionFile>
- <EmbedManagedResourceFile>libusb-1.0.rc;%(EmbedManagedResourceFile)</EmbedManagedResourceFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>.;..\libusb;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_WIN32;_WIN64;_DEBUG;_CRT_SECURE_NO_WARNINGS;USE_USBDK;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level4</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <Link>
- <OutputFile>$(OutDir)libusb-usbdk-1.0.dll</OutputFile>
- <ModuleDefinitionFile>..\libusb\libusb-1.0.def</ModuleDefinitionFile>
- <EmbedManagedResourceFile>libusb-1.0.rc;%(EmbedManagedResourceFile)</EmbedManagedResourceFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
- <ClCompile>
- <AdditionalIncludeDirectories>.;..\libusb;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_WIN32;_LIB;_CRT_SECURE_NO_WARNINGS;USE_USBDK;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <WarningLevel>Level4</WarningLevel>
- </ClCompile>
- <Link>
- <OutputFile>$(OutDir)libusb-usbdk-1.0.dll</OutputFile>
- <ModuleDefinitionFile>..\libusb\libusb-1.0.def</ModuleDefinitionFile>
- <EmbedManagedResourceFile>libusb-1.0.rc;%(EmbedManagedResourceFile)</EmbedManagedResourceFile>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- </Midl>
- <ClCompile>
- <AdditionalIncludeDirectories>.;..\libusb;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_WIN32;_WIN64;_LIB;_CRT_SECURE_NO_WARNINGS;USE_USBDK;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <WarningLevel>Level4</WarningLevel>
- </ClCompile>
- <Link>
- <OutputFile>$(OutDir)libusb-usbdk-1.0.dll</OutputFile>
- <ModuleDefinitionFile>..\libusb\libusb-1.0.def</ModuleDefinitionFile>
- <EmbedManagedResourceFile>libusb-1.0.rc;%(EmbedManagedResourceFile)</EmbedManagedResourceFile>
- </Link>
- </ItemDefinitionGroup>
- <ItemGroup>
- <ClCompile Include="..\libusb\core.c" />
- <ClCompile Include="..\libusb\descriptor.c" />
- <ClCompile Include="..\libusb\hotplug.c" />
- <ClCompile Include="..\libusb\io.c" />
- <ClCompile Include="..\libusb\os\poll_windows.c" />
- <ClCompile Include="..\libusb\strerror.c" />
- <ClCompile Include="..\libusb\sync.c" />
- <ClCompile Include="..\libusb\os\threads_windows.c" />
- <ClCompile Include="..\libusb\os\windows_nt_common.c" />
- <ClCompile Include="..\libusb\os\windows_usbdk.c" />
- </ItemGroup>
- <ItemGroup>
- <ClInclude Include=".\config.h" />
- <ClInclude Include="..\libusb\hotplug.h" />
- <ClInclude Include="..\libusb\libusb.h" />
- <ClInclude Include="..\libusb\libusbi.h" />
- <ClInclude Include="..\libusb\os\poll_windows.h" />
- <ClInclude Include="..\libusb\os\threads_windows.h" />
- <ClInclude Include="..\libusb\version.h" />
- <ClInclude Include="..\libusb\version_nano.h" />
- <ClInclude Include="..\libusb\os\windows_common.h" />
- <ClInclude Include="..\libusb\os\windows_nt_common.h" />
- <ClInclude Include="..\libusb\os\windows_usbdk.h" />
- </ItemGroup>
- <ItemGroup>
- <None Include="..\libusb\libusb-1.0.def" />
- </ItemGroup>
- <ItemGroup>
- <ResourceCompile Include="..\libusb\libusb-1.0.rc" />
- </ItemGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
- <ImportGroup Label="ExtensionTargets">
- </ImportGroup>
-</Project>
\ No newline at end of file
diff --git a/msvc/libusb_usbdk_static_2013.vcxproj b/msvc/libusb_usbdk_static_2013.vcxproj
deleted file mode 100644
index 5cc42d4..0000000
--- a/msvc/libusb_usbdk_static_2013.vcxproj
+++ /dev/null
@@ -1,162 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <ItemGroup Label="ProjectConfigurations">
- <ProjectConfiguration Include="Debug|Win32">
- <Configuration>Debug</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Debug|x64">
- <Configuration>Debug</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release|Win32">
- <Configuration>Release</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release|x64">
- <Configuration>Release</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- </ItemGroup>
- <PropertyGroup Label="Globals">
- <ProjectName>libusb-usbdk-1.0 (static)</ProjectName>
- <ProjectGuid>{0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}</ProjectGuid>
- <RootNamespace>libusb</RootNamespace>
- </PropertyGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <WholeProgramOptimization>true</WholeProgramOptimization>
- <PlatformToolset>v120</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <PlatformToolset>v120</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <WholeProgramOptimization>true</WholeProgramOptimization>
- <PlatformToolset>v120</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <PlatformToolset>v120</PlatformToolset>
- </PropertyGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
- <ImportGroup Label="ExtensionSettings">
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <PropertyGroup Label="UserMacros" />
- <PropertyGroup>
- <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)..\$(Platform)\$(Configuration)\lib\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)..\$(Platform)\$(Configuration)\lib\libusb-usbdk-1.0\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)..\$(Platform)\$(Configuration)\lib\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)..\$(Platform)\$(Configuration)\lib\libusb-usbdk-1.0\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)..\$(Platform)\$(Configuration)\lib\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)..\$(Platform)\$(Configuration)\lib\libusb-usbdk-1.0\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)..\$(Platform)\$(Configuration)\lib\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)..\$(Platform)\$(Configuration)\lib\libusb-usbdk-1.0\</IntDir>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">libusb-usbdk-1.0</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">libusb-usbdk-1.0</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">libusb-usbdk-1.0</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">libusb-usbdk-1.0</TargetName>
- </PropertyGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>.;..\libusb;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;USE_USBDK;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
- <WarningLevel>Level4</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <Lib>
- <OutputFile>$(OutDir)libusb-usbdk-1.0.lib</OutputFile>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>.;..\libusb;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_WIN32;_WIN64;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;USE_USBDK;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
- <WarningLevel>Level4</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <Lib>
- <OutputFile>$(OutDir)libusb-usbdk-1.0.lib</OutputFile>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
- <ClCompile>
- <AdditionalIncludeDirectories>.;..\libusb;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_WIN32;_LIB;_CRT_SECURE_NO_WARNINGS;USE_USBDK;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
- <WarningLevel>Level4</WarningLevel>
- </ClCompile>
- <Lib>
- <OutputFile>$(OutDir)libusb-usbdk-1.0.lib</OutputFile>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- </Midl>
- <ClCompile>
- <AdditionalIncludeDirectories>.;..\libusb;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_WIN32;_WIN64;_LIB;_CRT_SECURE_NO_WARNINGS;USE_USBDK;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
- <WarningLevel>Level4</WarningLevel>
- </ClCompile>
- <Lib>
- <OutputFile>$(OutDir)libusb-usbdk-1.0.lib</OutputFile>
- </Lib>
- </ItemDefinitionGroup>
- <ItemGroup>
- <ClCompile Include="..\libusb\core.c" />
- <ClCompile Include="..\libusb\descriptor.c" />
- <ClCompile Include="..\libusb\hotplug.c" />
- <ClCompile Include="..\libusb\io.c" />
- <ClCompile Include="..\libusb\os\poll_windows.c" />
- <ClCompile Include="..\libusb\strerror.c" />
- <ClCompile Include="..\libusb\sync.c" />
- <ClCompile Include="..\libusb\os\threads_windows.c" />
- <ClCompile Include="..\libusb\os\windows_nt_common.c" />
- <ClCompile Include="..\libusb\os\windows_usbdk.c" />
- </ItemGroup>
- <ItemGroup>
- <ClInclude Include=".\config.h" />
- <ClInclude Include="..\libusb\hotplug.h" />
- <ClInclude Include="..\libusb\libusb.h" />
- <ClInclude Include="..\libusb\libusbi.h" />
- <ClInclude Include="..\libusb\os\poll_windows.h" />
- <ClInclude Include="..\libusb\os\threads_windows.h" />
- <ClInclude Include="..\libusb\version.h" />
- <ClInclude Include="..\libusb\version_nano.h" />
- <ClInclude Include="..\libusb\os\windows_common.h" />
- <ClInclude Include="..\libusb\os\windows_nt_common.h" />
- <ClInclude Include="..\libusb\os\windows_usbdk.h" />
- </ItemGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
- <ImportGroup Label="ExtensionTargets">
- </ImportGroup>
-</Project>
\ No newline at end of file
diff --git a/msvc/libusb_usbdk_static_2015.vcxproj b/msvc/libusb_usbdk_static_2015.vcxproj
deleted file mode 100644
index eec20ee..0000000
--- a/msvc/libusb_usbdk_static_2015.vcxproj
+++ /dev/null
@@ -1,162 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <ItemGroup Label="ProjectConfigurations">
- <ProjectConfiguration Include="Debug|Win32">
- <Configuration>Debug</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Debug|x64">
- <Configuration>Debug</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release|Win32">
- <Configuration>Release</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release|x64">
- <Configuration>Release</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- </ItemGroup>
- <PropertyGroup Label="Globals">
- <ProjectName>libusb-usbdk-1.0 (static)</ProjectName>
- <ProjectGuid>{0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}</ProjectGuid>
- <RootNamespace>libusb</RootNamespace>
- </PropertyGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <WholeProgramOptimization>true</WholeProgramOptimization>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <WholeProgramOptimization>true</WholeProgramOptimization>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
- <ImportGroup Label="ExtensionSettings">
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <PropertyGroup Label="UserMacros" />
- <PropertyGroup>
- <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)..\$(Platform)\$(Configuration)\lib\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)..\$(Platform)\$(Configuration)\lib\libusb-usbdk-1.0\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)..\$(Platform)\$(Configuration)\lib\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)..\$(Platform)\$(Configuration)\lib\libusb-usbdk-1.0\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)..\$(Platform)\$(Configuration)\lib\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)..\$(Platform)\$(Configuration)\lib\libusb-usbdk-1.0\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)..\$(Platform)\$(Configuration)\lib\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)..\$(Platform)\$(Configuration)\lib\libusb-usbdk-1.0\</IntDir>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">libusb-usbdk-1.0</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">libusb-usbdk-1.0</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">libusb-usbdk-1.0</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">libusb-usbdk-1.0</TargetName>
- </PropertyGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>.;..\libusb;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;USE_USBDK;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
- <WarningLevel>Level4</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <Lib>
- <OutputFile>$(OutDir)libusb-usbdk-1.0.lib</OutputFile>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>.;..\libusb;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_WIN32;_WIN64;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;USE_USBDK;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
- <WarningLevel>Level4</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <Lib>
- <OutputFile>$(OutDir)libusb-usbdk-1.0.lib</OutputFile>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
- <ClCompile>
- <AdditionalIncludeDirectories>.;..\libusb;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_WIN32;_LIB;_CRT_SECURE_NO_WARNINGS;USE_USBDK;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
- <WarningLevel>Level4</WarningLevel>
- </ClCompile>
- <Lib>
- <OutputFile>$(OutDir)libusb-usbdk-1.0.lib</OutputFile>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- </Midl>
- <ClCompile>
- <AdditionalIncludeDirectories>.;..\libusb;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_WIN32;_WIN64;_LIB;_CRT_SECURE_NO_WARNINGS;USE_USBDK;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
- <WarningLevel>Level4</WarningLevel>
- </ClCompile>
- <Lib>...
[truncated message content] |
|
From: Sameeh J. <sa...@da...> - 2017-01-15 09:41:16
|
Check UsbDK availability at run time and activate UsbDk backend when
possible.
Fall back to current behavior when UsbDK not installed.
Signed-off-by: Dmitry Fleytman <dfl...@re...>
Signed-off-by: Sameeh Jubran <sa...@da...>
---
libusb/Makefile.am | 9 ++------
libusb/core.c | 41 +++++++++++++++++++++++++++------
libusb/libusbi.h | 4 ++++
libusb/os/windows_nt_common.c | 17 ++++++++++----
libusb/os/windows_nt_common.h | 18 +++++++++++----
libusb/os/windows_usbdk.c | 25 ++++++++++++++------
libusb/os/windows_winusb.c | 23 ++++++++++++------
msvc/libusb_dll_2010.vcxproj | 2 ++
msvc/libusb_dll_2010.vcxproj.filters | 18 +++++++++++++++
msvc/libusb_dll_2012.vcxproj | 2 ++
msvc/libusb_dll_2012.vcxproj.filters | 15 ++++++++++++
msvc/libusb_dll_2013.vcxproj | 2 ++
msvc/libusb_dll_2015.vcxproj | 2 ++
msvc/libusb_dll_2017.vcxproj | 2 ++
msvc/libusb_sources | 1 +
msvc/libusb_static_2010.vcxproj | 2 ++
msvc/libusb_static_2010.vcxproj.filters | 12 ++++++++++
msvc/libusb_static_2012.vcxproj | 2 ++
msvc/libusb_static_2012.vcxproj.filters | 12 ++++++++++
msvc/libusb_static_2013.vcxproj | 2 ++
msvc/libusb_static_2015.vcxproj | 2 ++
msvc/libusb_static_2017.vcxproj | 2 ++
22 files changed, 178 insertions(+), 37 deletions(-)
diff --git a/libusb/Makefile.am b/libusb/Makefile.am
index b1b892d..0eca02e 100644
--- a/libusb/Makefile.am
+++ b/libusb/Makefile.am
@@ -15,8 +15,8 @@ NETBSD_USB_SRC = os/netbsd_usb.c
SUNOS_USB_SRC = os/sunos_usb.c os/sunos_usb.h
WINDOWS_COMMON_SRC = os/windows_nt_common.h os/windows_nt_common.c \
os/windows_common.h libusb-1.0.rc libusb-1.0.def
-WINDOWS_USB_SRC = os/windows_winusb.h os/windows_winusb.c
-WINDOWS_USBDK_SRC = os/windows_usbdk.h os/windows_usbdk.c
+WINDOWS_USB_SRC = os/windows_winusb.h os/windows_winusb.c os/windows_usbdk.h \
+ os/windows_usbdk.c $(COMMON_WINDOWS_SRC)
WINCE_USB_SRC = os/wince_usb.h os/wince_usb.c
HAIKU_USB_SRC = os/haiku_usb.h os/haiku_usb_backend.cpp \
os/haiku_usb_raw.h os/haiku_usb_raw.cpp os/haiku_pollfs.cpp
@@ -63,12 +63,7 @@ libusb_1_0_la_LIBADD = libusb_haiku.la
endif
if OS_WINDOWS
-
-if USE_USBDK
-OS_SRC = $(WINDOWS_USBDK_SRC) $(WINDOWS_COMMON_SRC)
-else
OS_SRC = $(WINDOWS_USB_SRC) $(WINDOWS_COMMON_SRC)
-endif
.rc.lo:
$(AM_V_GEN)$(LIBTOOL) $(AM_V_lt) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --tag=RC --mode=compile $(RC) $(RCFLAGS) -i $< -o $@
diff --git a/libusb/core.c b/libusb/core.c
index 99aab7b..5d59210 100644
--- a/libusb/core.c
+++ b/libusb/core.c
@@ -53,13 +53,7 @@ const struct usbi_os_backend * const usbi_backend = &openbsd_backend;
#elif defined(OS_NETBSD)
const struct usbi_os_backend * const usbi_backend = &netbsd_backend;
#elif defined(OS_WINDOWS)
-
-#if defined(USE_USBDK)
-const struct usbi_os_backend * const usbi_backend = &usbdk_backend;
-#else
-const struct usbi_os_backend * const usbi_backend = &windows_backend;
-#endif
-
+const struct usbi_os_backend * usbi_backend;
#elif defined(OS_WINCE)
const struct usbi_os_backend * const usbi_backend = &wince_backend;
#elif defined(OS_HAIKU)
@@ -629,6 +623,26 @@ static struct discovered_devs *discovered_devs_alloc(void)
return ret;
}
+#ifdef OS_WINDOWS
+static int is_usbdk_driver_installed(void)
+{
+ int usbdk_installed = 0;
+
+ SC_HANDLE managerHandle = OpenSCManager(NULL, NULL, SC_MANAGER_CONNECT);
+ if (managerHandle)
+ {
+ SC_HANDLE serviceHandle = OpenService(managerHandle, TEXT("UsbDk"), GENERIC_READ);
+ if (serviceHandle)
+ {
+ usbdk_installed = 1;
+ CloseServiceHandle(serviceHandle);
+ }
+ CloseServiceHandle(managerHandle);
+ }
+ return usbdk_installed;
+}
+#endif
+
static void discovered_devs_free(struct discovered_devs *discdevs)
{
size_t i;
@@ -2067,6 +2081,19 @@ int API_EXPORTED libusb_init(libusb_context **context)
static int first_init = 1;
int r = 0;
+#ifdef OS_WINDOWS
+ if (is_usbdk_driver_installed())
+ {
+ usbi_backend = &usbdk_backend;
+ usbi_dbg("libusb will work with UsbDk backend");
+ }
+ else
+ {
+ usbi_backend = &windows_backend;
+ usbi_dbg("libusb will work with windows_backend");
+ }
+#endif
+
usbi_mutex_static_lock(&default_context_lock);
if (!timestamp_origin.tv_sec) {
diff --git a/libusb/libusbi.h b/libusb/libusbi.h
index cc0906c..dcc996e 100644
--- a/libusb/libusbi.h
+++ b/libusb/libusbi.h
@@ -1132,7 +1132,11 @@ struct usbi_os_backend {
size_t transfer_priv_size;
};
+#if defined(OS_WINDOWS)
+extern const struct usbi_os_backend * usbi_backend;
+#else
extern const struct usbi_os_backend * const usbi_backend;
+#endif
extern const struct usbi_os_backend linux_usbfs_backend;
extern const struct usbi_os_backend darwin_backend;
diff --git a/libusb/os/windows_nt_common.c b/libusb/os/windows_nt_common.c
index 68eb4a7..1565a4a 100644
--- a/libusb/os/windows_nt_common.c
+++ b/libusb/os/windows_nt_common.c
@@ -59,6 +59,8 @@ DLL_DECLARE_FUNC_PREFIXED(WINAPI, BOOL, p, GetMessageA, (LPMSG, HWND, UINT, UINT
DLL_DECLARE_FUNC_PREFIXED(WINAPI, BOOL, p, PeekMessageA, (LPMSG, HWND, UINT, UINT, UINT));
DLL_DECLARE_FUNC_PREFIXED(WINAPI, BOOL, p, PostThreadMessageA, (DWORD, UINT, WPARAM, LPARAM));
+win_backend backend_func;
+
static unsigned __stdcall windows_clock_gettime_threaded(void *param);
/*
@@ -487,7 +489,7 @@ static void windows_transfer_callback(struct usbi_transfer *itransfer, uint32_t
switch (io_result) {
case NO_ERROR:
- status = windows_copy_transfer_data(itransfer, io_size);
+ status = backend_func.copy_transfer_data(itransfer, io_size);
break;
case ERROR_GEN_FAILURE:
usbi_dbg("detected endpoint stall");
@@ -498,7 +500,7 @@ static void windows_transfer_callback(struct usbi_transfer *itransfer, uint32_t
status = LIBUSB_TRANSFER_TIMED_OUT;
break;
case ERROR_OPERATION_ABORTED:
- istatus = windows_copy_transfer_data(itransfer, io_size);
+ istatus = backend_func.copy_transfer_data(itransfer, io_size);
if (istatus != LIBUSB_TRANSFER_COMPLETED)
usbi_dbg("Failed to copy partial data in aborted operation: %d", istatus);
@@ -510,7 +512,7 @@ static void windows_transfer_callback(struct usbi_transfer *itransfer, uint32_t
status = LIBUSB_TRANSFER_ERROR;
break;
}
- windows_clear_transfer_priv(itransfer); // Cancel polling
+ backend_func.clear_transfer_priv(itransfer); // Cancel polling
if (status == LIBUSB_TRANSFER_CANCELLED)
usbi_handle_transfer_cancellation(itransfer);
else
@@ -560,7 +562,7 @@ int windows_handle_events(struct libusb_context *ctx, struct pollfd *fds, POLL_N
usbi_mutex_lock(&ctx->flying_transfers_lock);
found = false;
list_for_each_entry(transfer, &ctx->flying_transfers, list, struct usbi_transfer) {
- pollable_fd = windows_get_fd(transfer);
+ pollable_fd = backend_func.get_fd(transfer);
if (pollable_fd->fd == fds[i].fd) {
found = true;
break;
@@ -569,7 +571,7 @@ int windows_handle_events(struct libusb_context *ctx, struct pollfd *fds, POLL_N
usbi_mutex_unlock(&ctx->flying_transfers_lock);
if (found) {
- windows_get_overlapped_result(transfer, pollable_fd, &io_result, &io_size);
+ backend_func.get_overlapped_result(transfer, pollable_fd, &io_result, &io_size);
usbi_remove_pollfd(ctx, pollable_fd->fd);
// let handle_callback free the event using the transfer wfd
@@ -608,3 +610,8 @@ void windows_common_exit(void)
windows_destroy_clock();
windows_exit_dlls();
}
+
+void win_nt_init(win_backend *backend)
+{
+ backend_func = *backend;
+}
diff --git a/libusb/os/windows_nt_common.h b/libusb/os/windows_nt_common.h
index 9749e00..22d5256 100644
--- a/libusb/os/windows_nt_common.h
+++ b/libusb/os/windows_nt_common.h
@@ -50,10 +50,20 @@ void windows_common_exit(void);
unsigned long htab_hash(const char *str);
int windows_clock_gettime(int clk_id, struct timespec *tp);
-void windows_clear_transfer_priv(struct usbi_transfer *itransfer);
-int windows_copy_transfer_data(struct usbi_transfer *itransfer, uint32_t io_size);
-struct winfd *windows_get_fd(struct usbi_transfer *transfer);
-void windows_get_overlapped_result(struct usbi_transfer *transfer, struct winfd *pollable_fd, DWORD *io_result, DWORD *io_size);
+typedef void(*CLEAR_TRANSFER_PRIV)(struct usbi_transfer *itransfer);
+typedef int(*COPY_TRANSFER_DATA)(struct usbi_transfer *itransfer, uint32_t io_size);
+typedef struct winfd *(*GET_FD)(struct usbi_transfer *transfer);
+typedef void(*GET_OVERLAPPED_RESULT)(struct usbi_transfer *transfer, struct winfd *pollable_fd, DWORD *io_result, DWORD *io_size);
+
+typedef struct win_backend
+{
+ CLEAR_TRANSFER_PRIV clear_transfer_priv;
+ COPY_TRANSFER_DATA copy_transfer_data;
+ GET_FD get_fd;
+ GET_OVERLAPPED_RESULT get_overlapped_result;
+} win_backend;
+
+void win_nt_init(win_backend *backend);
void windows_handle_callback(struct usbi_transfer *itransfer, uint32_t io_result, uint32_t io_size);
int windows_handle_events(struct libusb_context *ctx, struct pollfd *fds, POLL_NFDS_TYPE nfds, int num_ready);
diff --git a/libusb/os/windows_usbdk.c b/libusb/os/windows_usbdk.c
index 7cc5793..a588e51 100644
--- a/libusb/os/windows_usbdk.c
+++ b/libusb/os/windows_usbdk.c
@@ -23,8 +23,6 @@
#include <config.h>
-#if defined(USE_USBDK)
-
#include <windows.h>
#include <cfgmgr32.h>
#include <stdio.h>
@@ -66,6 +64,8 @@ typedef int32_t USBD_STATUS;
#define USBD_STATUS_CANCELED ((USBD_STATUS) 0xc0010000)
#endif
+static void backend_init(void);
+
static int concurrent_usage = -1;
struct usbdk_device_priv {
@@ -201,6 +201,9 @@ static int usbdk_init(struct libusb_context *ctx)
int r;
if (++concurrent_usage == 0) { // First init?
+
+ backend_init();
+
r = load_usbdk_helper_dll(ctx);
if (r)
goto init_exit;
@@ -533,7 +536,7 @@ static void usbdk_destroy_device(struct libusb_device *dev)
usbdk_release_config_descriptors(p, p->info.DeviceDescriptor.bNumConfigurations);
}
-void windows_clear_transfer_priv(struct usbi_transfer *itransfer)
+static void windows_clear_transfer_priv(struct usbi_transfer *itransfer)
{
struct usbdk_transfer_priv *transfer_priv = _usbdk_transfer_priv(itransfer);
struct libusb_transfer *transfer = USBI_TRANSFER_TO_LIBUSB_TRANSFER(itransfer);
@@ -778,13 +781,13 @@ static int usbdk_cancel_transfer(struct usbi_transfer *itransfer)
}
}
-int windows_copy_transfer_data(struct usbi_transfer *itransfer, uint32_t io_size)
+static int windows_copy_transfer_data(struct usbi_transfer *itransfer, uint32_t io_size)
{
itransfer->transferred += io_size;
return LIBUSB_TRANSFER_COMPLETED;
}
-struct winfd *windows_get_fd(struct usbi_transfer *transfer)
+static struct winfd *windows_get_fd(struct usbi_transfer *transfer)
{
struct usbdk_transfer_priv *transfer_priv = _usbdk_transfer_priv(transfer);
return &transfer_priv->pollable_fd;
@@ -809,7 +812,7 @@ static DWORD usbdk_translate_usbd_status(USBD_STATUS UsbdStatus)
}
}
-void windows_get_overlapped_result(struct usbi_transfer *transfer, struct winfd *pollable_fd, DWORD *io_result, DWORD *io_size)
+static void windows_get_overlapped_result(struct usbi_transfer *transfer, struct winfd *pollable_fd, DWORD *io_result, DWORD *io_size)
{
if (HasOverlappedIoCompletedSync(pollable_fd->overlapped) // Handle async requests that completed synchronously first
|| GetOverlappedResult(pollable_fd->handle, pollable_fd->overlapped, io_size, false)) { // Regular async overlapped
@@ -902,4 +905,12 @@ const struct usbi_os_backend usbdk_backend = {
sizeof(struct usbdk_transfer_priv),
};
-#endif /* USE_USBDK */
+static void backend_init(void)
+{
+ win_backend backend;
+ backend.clear_transfer_priv = windows_clear_transfer_priv;
+ backend.copy_transfer_data = windows_copy_transfer_data;
+ backend.get_fd = windows_get_fd;
+ backend.get_overlapped_result = windows_get_overlapped_result;
+ win_nt_init(&backend);
+}
diff --git a/libusb/os/windows_winusb.c b/libusb/os/windows_winusb.c
index d1d2749..99e866e 100644
--- a/libusb/os/windows_winusb.c
+++ b/libusb/os/windows_winusb.c
@@ -24,8 +24,6 @@
#include <config.h>
-#if !defined(USE_USBDK)
-
#include <windows.h>
#include <setupapi.h>
#include <ctype.h>
@@ -103,6 +101,7 @@ static int composite_abort_control(int sub_api, struct usbi_transfer *itransfer)
static int composite_reset_device(int sub_api, struct libusb_device_handle *dev_handle);
static int composite_copy_transfer_data(int sub_api, struct usbi_transfer *itransfer, uint32_t io_size);
+static void backend_init(void);
// Global variables
int windows_version = WINDOWS_UNDEFINED;
@@ -805,6 +804,8 @@ static int windows_init(struct libusb_context *ctx)
goto init_exit;
}
+ backend_init();
+
// We need a lock for proper auto-release
usbi_mutex_init(&autoclaim_lock);
@@ -1897,7 +1898,7 @@ static void windows_destroy_device(struct libusb_device *dev)
windows_device_priv_release(dev);
}
-void windows_clear_transfer_priv(struct usbi_transfer *itransfer)
+static void windows_clear_transfer_priv(struct usbi_transfer *itransfer)
{
struct windows_transfer_priv *transfer_priv = usbi_transfer_get_os_priv(itransfer);
@@ -2017,20 +2018,20 @@ static int windows_cancel_transfer(struct usbi_transfer *itransfer)
}
}
-int windows_copy_transfer_data(struct usbi_transfer *itransfer, uint32_t io_size)
+static int windows_copy_transfer_data(struct usbi_transfer *itransfer, uint32_t io_size)
{
struct libusb_transfer *transfer = USBI_TRANSFER_TO_LIBUSB_TRANSFER(itransfer);
struct windows_device_priv *priv = _device_priv(transfer->dev_handle->dev);
return priv->apib->copy_transfer_data(SUB_API_NOTSET, itransfer, io_size);
}
-struct winfd *windows_get_fd(struct usbi_transfer *transfer)
+static struct winfd *windows_get_fd(struct usbi_transfer *transfer)
{
struct windows_transfer_priv *transfer_priv = usbi_transfer_get_os_priv(transfer);
return &transfer_priv->pollable_fd;
}
-void windows_get_overlapped_result(struct usbi_transfer *transfer, struct winfd *pollable_fd, DWORD *io_result, DWORD *io_size)
+static void windows_get_overlapped_result(struct usbi_transfer *transfer, struct winfd *pollable_fd, DWORD *io_result, DWORD *io_size)
{
if (HasOverlappedIoCompletedSync(pollable_fd->overlapped)) {
*io_result = NO_ERROR;
@@ -4285,4 +4286,12 @@ static int composite_copy_transfer_data(int sub_api, struct usbi_transfer *itran
copy_transfer_data(priv->usb_interface[transfer_priv->interface_number].sub_api, itransfer, io_size);
}
-#endif /* !USE_USBDK */
+static void backend_init(void)
+{
+ win_backend backend;
+ backend.clear_transfer_priv = windows_clear_transfer_priv;
+ backend.copy_transfer_data = windows_copy_transfer_data;
+ backend.get_fd = windows_get_fd;
+ backend.get_overlapped_result = windows_get_overlapped_result;
+ win_nt_init(&backend);
+}
diff --git a/msvc/libusb_dll_2010.vcxproj b/msvc/libusb_dll_2010.vcxproj
index 3a37811..2fb2fb9 100644
--- a/msvc/libusb_dll_2010.vcxproj
+++ b/msvc/libusb_dll_2010.vcxproj
@@ -143,6 +143,7 @@
<ClCompile Include="..\libusb\hotplug.c" />
<ClCompile Include="..\libusb\io.c" />
<ClCompile Include="..\libusb\os\poll_windows.c" />
+ <ClCompile Include="..\libusb\os\windows_usbdk.c" />
<ClCompile Include="..\libusb\strerror.c" />
<ClCompile Include="..\libusb\sync.c" />
<ClCompile Include="..\libusb\os\threads_windows.c" />
@@ -150,6 +151,7 @@
<ClCompile Include="..\libusb\os\windows_winusb.c" />
</ItemGroup>
<ItemGroup>
+ <ClInclude Include="..\libusb\os\windows_usbdk.h" />
<ClInclude Include=".\config.h" />
<ClInclude Include="..\libusb\hotplug.h" />
<ClInclude Include="..\libusb\libusb.h" />
diff --git a/msvc/libusb_dll_2010.vcxproj.filters b/msvc/libusb_dll_2010.vcxproj.filters
index c77654b..00da394 100644
--- a/msvc/libusb_dll_2010.vcxproj.filters
+++ b/msvc/libusb_dll_2010.vcxproj.filters
@@ -41,6 +41,12 @@
<ClCompile Include="..\libusb\os\windows_winusb.c">
<Filter>Source Files</Filter>
</ClCompile>
+ <ClCompile Include="..\libusb\os\windows_nt_common.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\libusb\os\windows_usbdk.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include=".\config.h">
@@ -67,6 +73,18 @@
<ClInclude Include="..\libusb\os\windows_common.h">
<Filter>Header Files</Filter>
</ClInclude>
+ <ClInclude Include="..\libusb\version.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\libusb\version_nano.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\libusb\os\windows_nt_common.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\libusb\os\windows_usbdk.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
</ItemGroup>
<ItemGroup>
<None Include="..\libusb\libusb-1.0.def">
diff --git a/msvc/libusb_dll_2012.vcxproj b/msvc/libusb_dll_2012.vcxproj
index 92a8baf..2d51e5a 100644
--- a/msvc/libusb_dll_2012.vcxproj
+++ b/msvc/libusb_dll_2012.vcxproj
@@ -147,6 +147,7 @@
<ClCompile Include="..\libusb\hotplug.c" />
<ClCompile Include="..\libusb\io.c" />
<ClCompile Include="..\libusb\os\poll_windows.c" />
+ <ClCompile Include="..\libusb\os\windows_usbdk.c" />
<ClCompile Include="..\libusb\strerror.c" />
<ClCompile Include="..\libusb\sync.c" />
<ClCompile Include="..\libusb\os\threads_windows.c" />
@@ -154,6 +155,7 @@
<ClCompile Include="..\libusb\os\windows_winusb.c" />
</ItemGroup>
<ItemGroup>
+ <ClInclude Include="..\libusb\os\windows_usbdk.h" />
<ClInclude Include=".\config.h" />
<ClInclude Include="..\libusb\hotplug.h" />
<ClInclude Include="..\libusb\libusb.h" />
diff --git a/msvc/libusb_dll_2012.vcxproj.filters b/msvc/libusb_dll_2012.vcxproj.filters
index 6120953..1e462c7 100644
--- a/msvc/libusb_dll_2012.vcxproj.filters
+++ b/msvc/libusb_dll_2012.vcxproj.filters
@@ -41,6 +41,12 @@
<ClCompile Include="..\libusb\hotplug.c">
<Filter>Source Files</Filter>
</ClCompile>
+ <ClCompile Include="..\libusb\os\windows_nt_common.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\libusb\os\windows_usbdk.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include=".\config.h">
@@ -70,6 +76,15 @@
<ClInclude Include="..\libusb\hotplug.h">
<Filter>Header Files</Filter>
</ClInclude>
+ <ClInclude Include="..\libusb\os\windows_common.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\libusb\os\windows_nt_common.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\libusb\os\windows_usbdk.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
</ItemGroup>
<ItemGroup>
<None Include="..\libusb\libusb-1.0.def">
diff --git a/msvc/libusb_dll_2013.vcxproj b/msvc/libusb_dll_2013.vcxproj
index 6a4ce16..402bb99 100644
--- a/msvc/libusb_dll_2013.vcxproj
+++ b/msvc/libusb_dll_2013.vcxproj
@@ -147,6 +147,7 @@
<ClCompile Include="..\libusb\hotplug.c" />
<ClCompile Include="..\libusb\io.c" />
<ClCompile Include="..\libusb\os\poll_windows.c" />
+ <ClCompile Include="..\libusb\os\windows_usbdk.c" />
<ClCompile Include="..\libusb\strerror.c" />
<ClCompile Include="..\libusb\sync.c" />
<ClCompile Include="..\libusb\os\threads_windows.c" />
@@ -154,6 +155,7 @@
<ClCompile Include="..\libusb\os\windows_winusb.c" />
</ItemGroup>
<ItemGroup>
+ <ClInclude Include="..\libusb\os\windows_usbdk.h" />
<ClInclude Include=".\config.h" />
<ClInclude Include="..\libusb\hotplug.h" />
<ClInclude Include="..\libusb\libusb.h" />
diff --git a/msvc/libusb_dll_2015.vcxproj b/msvc/libusb_dll_2015.vcxproj
index 0c1730a..eb551e2 100644
--- a/msvc/libusb_dll_2015.vcxproj
+++ b/msvc/libusb_dll_2015.vcxproj
@@ -147,6 +147,7 @@
<ClCompile Include="..\libusb\hotplug.c" />
<ClCompile Include="..\libusb\io.c" />
<ClCompile Include="..\libusb\os\poll_windows.c" />
+ <ClCompile Include="..\libusb\os\windows_usbdk.c" />
<ClCompile Include="..\libusb\strerror.c" />
<ClCompile Include="..\libusb\sync.c" />
<ClCompile Include="..\libusb\os\threads_windows.c" />
@@ -154,6 +155,7 @@
<ClCompile Include="..\libusb\os\windows_winusb.c" />
</ItemGroup>
<ItemGroup>
+ <ClInclude Include="..\libusb\os\windows_usbdk.h" />
<ClInclude Include=".\config.h" />
<ClInclude Include="..\libusb\hotplug.h" />
<ClInclude Include="..\libusb\libusb.h" />
diff --git a/msvc/libusb_dll_2017.vcxproj b/msvc/libusb_dll_2017.vcxproj
index 0d46d48..541eeb7 100644
--- a/msvc/libusb_dll_2017.vcxproj
+++ b/msvc/libusb_dll_2017.vcxproj
@@ -147,6 +147,7 @@
<ClCompile Include="..\libusb\hotplug.c" />
<ClCompile Include="..\libusb\io.c" />
<ClCompile Include="..\libusb\os\poll_windows.c" />
+ <ClCompile Include="..\libusb\os\windows_usbdk.c" />
<ClCompile Include="..\libusb\strerror.c" />
<ClCompile Include="..\libusb\sync.c" />
<ClCompile Include="..\libusb\os\threads_windows.c" />
@@ -154,6 +155,7 @@
<ClCompile Include="..\libusb\os\windows_winusb.c" />
</ItemGroup>
<ItemGroup>
+ <ClInclude Include="..\libusb\os\windows_usbdk.h" />
<ClInclude Include=".\config.h" />
<ClInclude Include="..\libusb\hotplug.h" />
<ClInclude Include="..\libusb\libusb.h" />
diff --git a/msvc/libusb_sources b/msvc/libusb_sources
index 591d7f6..c527ac7 100644
--- a/msvc/libusb_sources
+++ b/msvc/libusb_sources
@@ -38,6 +38,7 @@ SOURCES=..\core.c \
..\hotplug.c \
threads_windows.c \
poll_windows.c \
+ windows_usbdk.c \
windows_winusb.c \
windows_usbdk.c \
windows_nt_common.c \
diff --git a/msvc/libusb_static_2010.vcxproj b/msvc/libusb_static_2010.vcxproj
index 78233c3..ba96f31 100644
--- a/msvc/libusb_static_2010.vcxproj
+++ b/msvc/libusb_static_2010.vcxproj
@@ -133,6 +133,7 @@
<ClCompile Include="..\libusb\hotplug.c" />
<ClCompile Include="..\libusb\io.c" />
<ClCompile Include="..\libusb\os\poll_windows.c" />
+ <ClCompile Include="..\libusb\os\windows_usbdk.c" />
<ClCompile Include="..\libusb\strerror.c" />
<ClCompile Include="..\libusb\sync.c" />
<ClCompile Include="..\libusb\os\threads_windows.c" />
@@ -140,6 +141,7 @@
<ClCompile Include="..\libusb\os\windows_winusb.c" />
</ItemGroup>
<ItemGroup>
+ <ClInclude Include="..\libusb\os\windows_usbdk.h" />
<ClInclude Include=".\config.h" />
<ClInclude Include="..\libusb\hotplug.h" />
<ClInclude Include="..\libusb\libusb.h" />
diff --git a/msvc/libusb_static_2010.vcxproj.filters b/msvc/libusb_static_2010.vcxproj.filters
index cce8001..2471ee8 100644
--- a/msvc/libusb_static_2010.vcxproj.filters
+++ b/msvc/libusb_static_2010.vcxproj.filters
@@ -38,6 +38,12 @@
<ClCompile Include="..\libusb\hotplug.c">
<Filter>Source Files</Filter>
</ClCompile>
+ <ClCompile Include="..\libusb\os\windows_nt_common.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\libusb\os\windows_usbdk.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include=".\config.h">
@@ -70,5 +76,11 @@
<ClInclude Include="..\libusb\hotplug.h">
<Filter>Header Files</Filter>
</ClInclude>
+ <ClInclude Include="..\libusb\os\windows_nt_common.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\libusb\os\windows_usbdk.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
</ItemGroup>
</Project>
\ No newline at end of file
diff --git a/msvc/libusb_static_2012.vcxproj b/msvc/libusb_static_2012.vcxproj
index 7df832d..fc3e7ff 100644
--- a/msvc/libusb_static_2012.vcxproj
+++ b/msvc/libusb_static_2012.vcxproj
@@ -137,6 +137,7 @@
<ClCompile Include="..\libusb\hotplug.c" />
<ClCompile Include="..\libusb\io.c" />
<ClCompile Include="..\libusb\os\poll_windows.c" />
+ <ClCompile Include="..\libusb\os\windows_usbdk.c" />
<ClCompile Include="..\libusb\strerror.c" />
<ClCompile Include="..\libusb\sync.c" />
<ClCompile Include="..\libusb\os\threads_windows.c" />
@@ -144,6 +145,7 @@
<ClCompile Include="..\libusb\os\windows_winusb.c" />
</ItemGroup>
<ItemGroup>
+ <ClInclude Include="..\libusb\os\windows_usbdk.h" />
<ClInclude Include=".\config.h" />
<ClInclude Include="..\libusb\hotplug.h" />
<ClInclude Include="..\libusb\libusb.h" />
diff --git a/msvc/libusb_static_2012.vcxproj.filters b/msvc/libusb_static_2012.vcxproj.filters
index cce8001..2471ee8 100644
--- a/msvc/libusb_static_2012.vcxproj.filters
+++ b/msvc/libusb_static_2012.vcxproj.filters
@@ -38,6 +38,12 @@
<ClCompile Include="..\libusb\hotplug.c">
<Filter>Source Files</Filter>
</ClCompile>
+ <ClCompile Include="..\libusb\os\windows_nt_common.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\libusb\os\windows_usbdk.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include=".\config.h">
@@ -70,5 +76,11 @@
<ClInclude Include="..\libusb\hotplug.h">
<Filter>Header Files</Filter>
</ClInclude>
+ <ClInclude Include="..\libusb\os\windows_nt_common.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\libusb\os\windows_usbdk.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
</ItemGroup>
</Project>
\ No newline at end of file
diff --git a/msvc/libusb_static_2013.vcxproj b/msvc/libusb_static_2013.vcxproj
index fa3caac..2ecd4a9 100644
--- a/msvc/libusb_static_2013.vcxproj
+++ b/msvc/libusb_static_2013.vcxproj
@@ -137,6 +137,7 @@
<ClCompile Include="..\libusb\hotplug.c" />
<ClCompile Include="..\libusb\io.c" />
<ClCompile Include="..\libusb\os\poll_windows.c" />
+ <ClCompile Include="..\libusb\os\windows_usbdk.c" />
<ClCompile Include="..\libusb\strerror.c" />
<ClCompile Include="..\libusb\sync.c" />
<ClCompile Include="..\libusb\os\threads_windows.c" />
@@ -144,6 +145,7 @@
<ClCompile Include="..\libusb\os\windows_winusb.c" />
</ItemGroup>
<ItemGroup>
+ <ClInclude Include="..\libusb\os\windows_usbdk.h" />
<ClInclude Include=".\config.h" />
<ClInclude Include="..\libusb\hotplug.h" />
<ClInclude Include="..\libusb\libusb.h" />
diff --git a/msvc/libusb_static_2015.vcxproj b/msvc/libusb_static_2015.vcxproj
index b9c5850..a572f66 100644
--- a/msvc/libusb_static_2015.vcxproj
+++ b/msvc/libusb_static_2015.vcxproj
@@ -141,6 +141,7 @@
<ClCompile Include="..\libusb\hotplug.c" />
<ClCompile Include="..\libusb\io.c" />
<ClCompile Include="..\libusb\os\poll_windows.c" />
+ <ClCompile Include="..\libusb\os\windows_usbdk.c" />
<ClCompile Include="..\libusb\strerror.c" />
<ClCompile Include="..\libusb\sync.c" />
<ClCompile Include="..\libusb\os\threads_windows.c" />
@@ -148,6 +149,7 @@
<ClCompile Include="..\libusb\os\windows_winusb.c" />
</ItemGroup>
<ItemGroup>
+ <ClInclude Include="..\libusb\os\windows_usbdk.h" />
<ClInclude Include=".\config.h" />
<ClInclude Include="..\libusb\hotplug.h" />
<ClInclude Include="..\libusb\libusb.h" />
diff --git a/msvc/libusb_static_2017.vcxproj b/msvc/libusb_static_2017.vcxproj
index 3a6fa13..4a5094f 100644
--- a/msvc/libusb_static_2017.vcxproj
+++ b/msvc/libusb_static_2017.vcxproj
@@ -141,6 +141,7 @@
<ClCompile Include="..\libusb\hotplug.c" />
<ClCompile Include="..\libusb\io.c" />
<ClCompile Include="..\libusb\os\poll_windows.c" />
+ <ClCompile Include="..\libusb\os\windows_usbdk.c" />
<ClCompile Include="..\libusb\strerror.c" />
<ClCompile Include="..\libusb\sync.c" />
<ClCompile Include="..\libusb\os\threads_windows.c" />
@@ -148,6 +149,7 @@
<ClCompile Include="..\libusb\os\windows_winusb.c" />
</ItemGroup>
<ItemGroup>
+ <ClInclude Include="..\libusb\os\windows_usbdk.h" />
<ClInclude Include=".\config.h" />
<ClInclude Include="..\libusb\hotplug.h" />
<ClInclude Include="..\libusb\libusb.h" />
--
2.7.4
|
|
From: Sameeh J. <sa...@da...> - 2017-01-15 09:41:15
|
Differences from v1: * Fixed a bug in libusb_init where we used usbi_info to print while context is null. Sameeh Jubran (2): windows: Use UsbDk when available windows: Ditch UsbDK build configuration configure.ac | 9 -- libusb/Makefile.am | 9 +- libusb/core.c | 41 ++++++-- libusb/libusbi.h | 4 + libusb/os/windows_nt_common.c | 17 ++- libusb/os/windows_nt_common.h | 18 +++- libusb/os/windows_usbdk.c | 25 +++-- libusb/os/windows_winusb.c | 23 +++-- msvc/ddk_build.cmd | 8 -- msvc/libusb_2013.sln | 20 ---- msvc/libusb_2015.sln | 20 ---- msvc/libusb_2017.sln | 20 ---- msvc/libusb_dll_2010.vcxproj | 2 + msvc/libusb_dll_2010.vcxproj.filters | 18 ++++ msvc/libusb_dll_2012.vcxproj | 2 + msvc/libusb_dll_2012.vcxproj.filters | 15 +++ msvc/libusb_dll_2013.vcxproj | 2 + msvc/libusb_dll_2015.vcxproj | 2 + msvc/libusb_dll_2017.vcxproj | 2 + msvc/libusb_sources | 8 +- msvc/libusb_static_2010.vcxproj | 2 + msvc/libusb_static_2010.vcxproj.filters | 12 +++ msvc/libusb_static_2012.vcxproj | 2 + msvc/libusb_static_2012.vcxproj.filters | 12 +++ msvc/libusb_static_2013.vcxproj | 2 + msvc/libusb_static_2015.vcxproj | 2 + msvc/libusb_static_2017.vcxproj | 2 + msvc/libusb_usbdk_dll_2013.vcxproj | 178 -------------------------------- msvc/libusb_usbdk_dll_2015.vcxproj | 178 -------------------------------- msvc/libusb_usbdk_dll_2017.vcxproj | 178 -------------------------------- msvc/libusb_usbdk_static_2013.vcxproj | 162 ----------------------------- msvc/libusb_usbdk_static_2015.vcxproj | 162 ----------------------------- msvc/libusb_usbdk_static_2017.vcxproj | 162 ----------------------------- 33 files changed, 179 insertions(+), 1140 deletions(-) delete mode 100644 msvc/libusb_usbdk_dll_2013.vcxproj delete mode 100644 msvc/libusb_usbdk_dll_2015.vcxproj delete mode 100644 msvc/libusb_usbdk_dll_2017.vcxproj delete mode 100644 msvc/libusb_usbdk_static_2013.vcxproj delete mode 100644 msvc/libusb_usbdk_static_2015.vcxproj delete mode 100644 msvc/libusb_usbdk_static_2017.vcxproj -- 2.7.4 |
|
From: Xiaofan C. <xia...@gm...> - 2017-01-14 02:00:34
|
On Mon, Nov 28, 2016 at 1:18 PM, Xiaofan Chen <xia...@gm...> wrote: > On Sat, Nov 5, 2016 at 10:28 AM, Xiaofan Chen <xia...@gm...> wrote: >> I closed ticket #224 since it is not really part of libusb project. >> On the other hand, maybe there are people who are interested >> in .Net Core wrapper for libusb. >> >> Ticket: >> https://github.com/libusb/libusb/issues/224 >> >> .Net Core >> https://www.microsoft.com/net/core > > There is a pre-release version here. > https://www.nuget.org/packages/CoreCompat.LibUsbDotNet/2.2.8-r101 > > I have not tried it though. > As per the discussions in Ticket 253, the pre-release port does not work under Linux. Ref: https://github.com/libusb/libusb/issues/253 -- Xiaofan |
|
From: Sameeh J. <sa...@da...> - 2017-01-12 12:10:15
|
Previos patch introduced run-time UsbDk backend activation,
therefore separate build configuration is not needed anymore.
Signed-off-by: Sameeh Jubran <sa...@da...>
---
configure.ac | 9 --
msvc/ddk_build.cmd | 8 --
msvc/libusb_2013.sln | 20 ----
msvc/libusb_2015.sln | 20 ----
msvc/libusb_2017.sln | 20 ----
msvc/libusb_sources | 7 +-
msvc/libusb_usbdk_dll_2013.vcxproj | 178 ----------------------------------
msvc/libusb_usbdk_dll_2015.vcxproj | 178 ----------------------------------
msvc/libusb_usbdk_dll_2017.vcxproj | 178 ----------------------------------
msvc/libusb_usbdk_static_2013.vcxproj | 162 -------------------------------
msvc/libusb_usbdk_static_2015.vcxproj | 162 -------------------------------
msvc/libusb_usbdk_static_2017.vcxproj | 162 -------------------------------
12 files changed, 1 insertion(+), 1103 deletions(-)
delete mode 100644 msvc/libusb_usbdk_dll_2013.vcxproj
delete mode 100644 msvc/libusb_usbdk_dll_2015.vcxproj
delete mode 100644 msvc/libusb_usbdk_dll_2017.vcxproj
delete mode 100644 msvc/libusb_usbdk_static_2013.vcxproj
delete mode 100644 msvc/libusb_usbdk_static_2015.vcxproj
delete mode 100644 msvc/libusb_usbdk_static_2017.vcxproj
diff --git a/configure.ac b/configure.ac
index c00af33..76a66d5 100644
--- a/configure.ac
+++ b/configure.ac
@@ -182,14 +182,6 @@ windows)
LTLDFLAGS="${LTLDFLAGS} -avoid-version -Wl,--add-stdcall-alias"
AC_DEFINE([POLL_NFDS_TYPE],[unsigned int],[type of second poll() argument])
AC_DEFINE([WINVER], 0x0501, [Oldest Windows version supported])
-
- AC_ARG_ENABLE([usbdk],
- [AC_HELP_STRING([--enable-usbdk], [use UsbDk Windows backend [default=no]])],
- [], [enable_usbdk="no"])
- if test "x$enable_usbdk" = "xyes" ; then
- AC_DEFINE(USE_USBDK, 1, [Use UsbDk Windows backend])
- fi
- AC_SUBST(USE_USBDK)
;;
haiku)
AC_DEFINE(OS_HAIKU, 1, [Haiku backend])
@@ -212,7 +204,6 @@ AM_CONDITIONAL(OS_HAIKU, test "x$backend" = xhaiku)
AM_CONDITIONAL(THREADS_POSIX, test "x$threads" = xposix)
AM_CONDITIONAL(CREATE_IMPORT_LIB, test "x$create_import_lib" = "xyes")
AM_CONDITIONAL(USE_UDEV, test "x$enable_udev" = xyes)
-AM_CONDITIONAL(USE_USBDK, test "x$enable_usbdk" = xyes)
if test "$threads" = posix; then
AC_DEFINE(THREADS_POSIX, 1, [Use POSIX Threads])
fi
diff --git a/msvc/ddk_build.cmd b/msvc/ddk_build.cmd
index c0b905a..912ff9a 100644
--- a/msvc/ddk_build.cmd
+++ b/msvc/ddk_build.cmd
@@ -3,28 +3,20 @@
::# you can pass the following arguments (case insensitive):
::# - "DLL" to build a DLL instead of a static library
::# - "/MT" to build a static library compatible with MSVC's /MT option (LIBCMT vs MSVCRT)
-::# - "USBDK" to build with UsbDk backend
if Test%BUILD_ALT_DIR%==Test goto usage
::# process commandline parameters
set TARGET=LIBRARY
set STATIC_LIBC=
-set WITH_USBDK=
set version=1.0
set PWD=%~dp0
set BUILD_CMD=build -bcwgZ -M2
-:more_args
-
if "%1" == "" goto no_more_args
::# /I for case insensitive
if /I Test%1==TestDLL set TARGET=DYNLINK
if /I Test%1==Test/MT set STATIC_LIBC=1
-if /I Test%1==TestUSBDK set WITH_USBDK=1
-
-shift
-goto more_args
:no_more_args
diff --git a/msvc/libusb_2013.sln b/msvc/libusb_2013.sln
index fb05ded..9d04d2c 100644
--- a/msvc/libusb_2013.sln
+++ b/msvc/libusb_2013.sln
@@ -21,10 +21,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "stress", "stress_2013.vcxpr
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "hotplugtest", "hotplugtest_2013.vcxproj", "{99D2AC64-DC66-4422-91CE-6715C403C9E5}"
EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libusb-usbdk-1.0 (dll)", "libusb_usbdk_dll_2013.vcxproj", "{F53A5974-2319-48EB-A67B-27933AEDF14A}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libusb-usbdk-1.0 (static)", "libusb_usbdk_static_2013.vcxproj", "{0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}"
-EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
@@ -97,22 +93,6 @@ Global
{99D2AC64-DC66-4422-91CE-6715C403C9E5}.Release|Win32.Build.0 = Release|Win32
{99D2AC64-DC66-4422-91CE-6715C403C9E5}.Release|x64.ActiveCfg = Release|x64
{99D2AC64-DC66-4422-91CE-6715C403C9E5}.Release|x64.Build.0 = Release|x64
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Debug|Win32.ActiveCfg = Debug|Win32
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Debug|Win32.Build.0 = Debug|Win32
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Debug|x64.ActiveCfg = Debug|x64
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Debug|x64.Build.0 = Debug|x64
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Release|Win32.ActiveCfg = Release|Win32
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Release|Win32.Build.0 = Release|Win32
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Release|x64.ActiveCfg = Release|x64
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Release|x64.Build.0 = Release|x64
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Debug|Win32.ActiveCfg = Debug|Win32
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Debug|Win32.Build.0 = Debug|Win32
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Debug|x64.ActiveCfg = Debug|x64
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Debug|x64.Build.0 = Debug|x64
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Release|Win32.ActiveCfg = Release|Win32
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Release|Win32.Build.0 = Release|Win32
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Release|x64.ActiveCfg = Release|x64
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Release|x64.Build.0 = Release|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/msvc/libusb_2015.sln b/msvc/libusb_2015.sln
index f93ebc1..9e71f0b 100644
--- a/msvc/libusb_2015.sln
+++ b/msvc/libusb_2015.sln
@@ -21,10 +21,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "stress", "stress_2015.vcxpr
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "hotplugtest", "hotplugtest_2015.vcxproj", "{99D2AC64-DC66-4422-91CE-6715C403C9E5}"
EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libusb-usbdk-1.0 (dll)", "libusb_usbdk_dll_2015.vcxproj", "{F53A5974-2319-48EB-A67B-27933AEDF14A}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libusb-usbdk-1.0 (static)", "libusb_usbdk_static_2015.vcxproj", "{0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}"
-EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
@@ -97,22 +93,6 @@ Global
{99D2AC64-DC66-4422-91CE-6715C403C9E5}.Release|Win32.Build.0 = Release|Win32
{99D2AC64-DC66-4422-91CE-6715C403C9E5}.Release|x64.ActiveCfg = Release|x64
{99D2AC64-DC66-4422-91CE-6715C403C9E5}.Release|x64.Build.0 = Release|x64
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Debug|Win32.ActiveCfg = Debug|Win32
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Debug|Win32.Build.0 = Debug|Win32
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Debug|x64.ActiveCfg = Debug|x64
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Debug|x64.Build.0 = Debug|x64
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Release|Win32.ActiveCfg = Release|Win32
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Release|Win32.Build.0 = Release|Win32
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Release|x64.ActiveCfg = Release|x64
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Release|x64.Build.0 = Release|x64
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Debug|Win32.ActiveCfg = Debug|Win32
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Debug|Win32.Build.0 = Debug|Win32
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Debug|x64.ActiveCfg = Debug|x64
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Debug|x64.Build.0 = Debug|x64
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Release|Win32.ActiveCfg = Release|Win32
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Release|Win32.Build.0 = Release|Win32
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Release|x64.ActiveCfg = Release|x64
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Release|x64.Build.0 = Release|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/msvc/libusb_2017.sln b/msvc/libusb_2017.sln
index fd52d5b..5700804 100644
--- a/msvc/libusb_2017.sln
+++ b/msvc/libusb_2017.sln
@@ -21,10 +21,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "stress", "stress_2017.vcxpr
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "hotplugtest", "hotplugtest_2017.vcxproj", "{99D2AC64-DC66-4422-91CE-6715C403C9E5}"
EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libusb-usbdk-1.0 (dll)", "libusb_usbdk_dll_2017.vcxproj", "{F53A5974-2319-48EB-A67B-27933AEDF14A}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libusb-usbdk-1.0 (static)", "libusb_usbdk_static_2017.vcxproj", "{0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}"
-EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
@@ -97,22 +93,6 @@ Global
{99D2AC64-DC66-4422-91CE-6715C403C9E5}.Release|Win32.Build.0 = Release|Win32
{99D2AC64-DC66-4422-91CE-6715C403C9E5}.Release|x64.ActiveCfg = Release|x64
{99D2AC64-DC66-4422-91CE-6715C403C9E5}.Release|x64.Build.0 = Release|x64
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Debug|Win32.ActiveCfg = Debug|Win32
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Debug|Win32.Build.0 = Debug|Win32
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Debug|x64.ActiveCfg = Debug|x64
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Debug|x64.Build.0 = Debug|x64
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Release|Win32.ActiveCfg = Release|Win32
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Release|Win32.Build.0 = Release|Win32
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Release|x64.ActiveCfg = Release|x64
- {F53A5974-2319-48EB-A67B-27933AEDF14A}.Release|x64.Build.0 = Release|x64
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Debug|Win32.ActiveCfg = Debug|Win32
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Debug|Win32.Build.0 = Debug|Win32
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Debug|x64.ActiveCfg = Debug|x64
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Debug|x64.Build.0 = Debug|x64
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Release|Win32.ActiveCfg = Release|Win32
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Release|Win32.Build.0 = Release|Win32
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Release|x64.ActiveCfg = Release|x64
- {0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}.Release|x64.Build.0 = Release|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/msvc/libusb_sources b/msvc/libusb_sources
index c527ac7..f0a4b8e 100644
--- a/msvc/libusb_sources
+++ b/msvc/libusb_sources
@@ -12,12 +12,8 @@ USE_LIBCMT=1
USE_MSVCRT=1
!ENDIF
-!IFDEF WITH_USBDK
-BACKEND_DEFINES="/DUSE_USBDK"
-!ENDIF
-
INCLUDES=..;..\..\msvc;$(DDK_INC_PATH)
-C_DEFINES= $(C_DEFINES) $(LIBUSB_DEFINES) $(BACKEND_DEFINES) /DDDKBUILD
+C_DEFINES= $(C_DEFINES) $(LIBUSB_DEFINES) /DDDKBUILD
# http://jpassing.com/2009/10/21/ltcg-issues-with-the-win7amd64-environment-of-wdk-7600/
# prevents the following error when using the 64 bit static lib with Visual Studio 2010:
@@ -40,6 +36,5 @@ SOURCES=..\core.c \
poll_windows.c \
windows_usbdk.c \
windows_winusb.c \
- windows_usbdk.c \
windows_nt_common.c \
..\libusb-1.0.rc
diff --git a/msvc/libusb_usbdk_dll_2013.vcxproj b/msvc/libusb_usbdk_dll_2013.vcxproj
deleted file mode 100644
index 6d9018f..0000000
--- a/msvc/libusb_usbdk_dll_2013.vcxproj
+++ /dev/null
@@ -1,178 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <ItemGroup Label="ProjectConfigurations">
- <ProjectConfiguration Include="Debug|Win32">
- <Configuration>Debug</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Debug|x64">
- <Configuration>Debug</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release|Win32">
- <Configuration>Release</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release|x64">
- <Configuration>Release</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- </ItemGroup>
- <PropertyGroup Label="Globals">
- <ProjectName>libusb-usbdk-1.0 (dll)</ProjectName>
- <ProjectGuid>{F53A5974-2319-48EB-A67B-27933AEDF14A}</ProjectGuid>
- <RootNamespace>libusbdll</RootNamespace>
- </PropertyGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <WholeProgramOptimization>true</WholeProgramOptimization>
- <PlatformToolset>v120</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <PlatformToolset>v120</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <WholeProgramOptimization>true</WholeProgramOptimization>
- <PlatformToolset>v120</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <PlatformToolset>v120</PlatformToolset>
- </PropertyGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
- <ImportGroup Label="ExtensionSettings">
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <PropertyGroup Label="UserMacros" />
- <PropertyGroup>
- <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\libusb-usbdk-1.0\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\libusb-usbdk-1.0\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\libusb-usbdk-1.0\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\libusb-usbdk-1.0\</IntDir>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">libusb-usbdk-1.0</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">libusb-usbdk-1.0</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">libusb-usbdk-1.0</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">libusb-usbdk-1.0</TargetName>
- </PropertyGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>.;..\libusb;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;USE_USBDK;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level4</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <Link>
- <OutputFile>$(OutDir)libusb-usbdk-1.0.dll</OutputFile>
- <ModuleDefinitionFile>..\libusb\libusb-1.0.def</ModuleDefinitionFile>
- <EmbedManagedResourceFile>libusb-1.0.rc;%(EmbedManagedResourceFile)</EmbedManagedResourceFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>.;..\libusb;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_WIN32;_WIN64;_DEBUG;_CRT_SECURE_NO_WARNINGS;USE_USBDK;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level4</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <Link>
- <OutputFile>$(OutDir)libusb-usbdk-1.0.dll</OutputFile>
- <ModuleDefinitionFile>..\libusb\libusb-1.0.def</ModuleDefinitionFile>
- <EmbedManagedResourceFile>libusb-1.0.rc;%(EmbedManagedResourceFile)</EmbedManagedResourceFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
- <ClCompile>
- <AdditionalIncludeDirectories>.;..\libusb;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_WIN32;_LIB;_CRT_SECURE_NO_WARNINGS;USE_USBDK;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <WarningLevel>Level4</WarningLevel>
- </ClCompile>
- <Link>
- <OutputFile>$(OutDir)libusb-usbdk-1.0.dll</OutputFile>
- <ModuleDefinitionFile>..\libusb\libusb-1.0.def</ModuleDefinitionFile>
- <EmbedManagedResourceFile>libusb-1.0.rc;%(EmbedManagedResourceFile)</EmbedManagedResourceFile>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- </Midl>
- <ClCompile>
- <AdditionalIncludeDirectories>.;..\libusb;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_WIN32;_WIN64;_LIB;_CRT_SECURE_NO_WARNINGS;USE_USBDK;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <WarningLevel>Level4</WarningLevel>
- </ClCompile>
- <Link>
- <OutputFile>$(OutDir)libusb-usbdk-1.0.dll</OutputFile>
- <ModuleDefinitionFile>..\libusb\libusb-1.0.def</ModuleDefinitionFile>
- <EmbedManagedResourceFile>libusb-1.0.rc;%(EmbedManagedResourceFile)</EmbedManagedResourceFile>
- </Link>
- </ItemDefinitionGroup>
- <ItemGroup>
- <ClCompile Include="..\libusb\core.c" />
- <ClCompile Include="..\libusb\descriptor.c" />
- <ClCompile Include="..\libusb\hotplug.c" />
- <ClCompile Include="..\libusb\io.c" />
- <ClCompile Include="..\libusb\os\poll_windows.c" />
- <ClCompile Include="..\libusb\strerror.c" />
- <ClCompile Include="..\libusb\sync.c" />
- <ClCompile Include="..\libusb\os\threads_windows.c" />
- <ClCompile Include="..\libusb\os\windows_nt_common.c" />
- <ClCompile Include="..\libusb\os\windows_usbdk.c" />
- </ItemGroup>
- <ItemGroup>
- <ClInclude Include=".\config.h" />
- <ClInclude Include="..\libusb\hotplug.h" />
- <ClInclude Include="..\libusb\libusb.h" />
- <ClInclude Include="..\libusb\libusbi.h" />
- <ClInclude Include="..\libusb\os\poll_windows.h" />
- <ClInclude Include="..\libusb\os\threads_windows.h" />
- <ClInclude Include="..\libusb\version.h" />
- <ClInclude Include="..\libusb\version_nano.h" />
- <ClInclude Include="..\libusb\os\windows_common.h" />
- <ClInclude Include="..\libusb\os\windows_nt_common.h" />
- <ClInclude Include="..\libusb\os\windows_usbdk.h" />
- </ItemGroup>
- <ItemGroup>
- <None Include="..\libusb\libusb-1.0.def" />
- </ItemGroup>
- <ItemGroup>
- <ResourceCompile Include="..\libusb\libusb-1.0.rc" />
- </ItemGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
- <ImportGroup Label="ExtensionTargets">
- </ImportGroup>
-</Project>
\ No newline at end of file
diff --git a/msvc/libusb_usbdk_dll_2015.vcxproj b/msvc/libusb_usbdk_dll_2015.vcxproj
deleted file mode 100644
index a19c17e..0000000
--- a/msvc/libusb_usbdk_dll_2015.vcxproj
+++ /dev/null
@@ -1,178 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <ItemGroup Label="ProjectConfigurations">
- <ProjectConfiguration Include="Debug|Win32">
- <Configuration>Debug</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Debug|x64">
- <Configuration>Debug</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release|Win32">
- <Configuration>Release</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release|x64">
- <Configuration>Release</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- </ItemGroup>
- <PropertyGroup Label="Globals">
- <ProjectName>libusb-usbdk-1.0 (dll)</ProjectName>
- <ProjectGuid>{F53A5974-2319-48EB-A67B-27933AEDF14A}</ProjectGuid>
- <RootNamespace>libusbdll</RootNamespace>
- </PropertyGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <WholeProgramOptimization>true</WholeProgramOptimization>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <WholeProgramOptimization>true</WholeProgramOptimization>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
- <ImportGroup Label="ExtensionSettings">
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <PropertyGroup Label="UserMacros" />
- <PropertyGroup>
- <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\libusb-usbdk-1.0\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\libusb-usbdk-1.0\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\libusb-usbdk-1.0\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\libusb-usbdk-1.0\</IntDir>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">libusb-usbdk-1.0</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">libusb-usbdk-1.0</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">libusb-usbdk-1.0</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">libusb-usbdk-1.0</TargetName>
- </PropertyGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>.;..\libusb;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;USE_USBDK;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level4</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <Link>
- <OutputFile>$(OutDir)libusb-usbdk-1.0.dll</OutputFile>
- <ModuleDefinitionFile>..\libusb\libusb-1.0.def</ModuleDefinitionFile>
- <EmbedManagedResourceFile>libusb-1.0.rc;%(EmbedManagedResourceFile)</EmbedManagedResourceFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>.;..\libusb;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_WIN32;_WIN64;_DEBUG;_CRT_SECURE_NO_WARNINGS;USE_USBDK;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level4</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <Link>
- <OutputFile>$(OutDir)libusb-usbdk-1.0.dll</OutputFile>
- <ModuleDefinitionFile>..\libusb\libusb-1.0.def</ModuleDefinitionFile>
- <EmbedManagedResourceFile>libusb-1.0.rc;%(EmbedManagedResourceFile)</EmbedManagedResourceFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
- <ClCompile>
- <AdditionalIncludeDirectories>.;..\libusb;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_WIN32;_LIB;_CRT_SECURE_NO_WARNINGS;USE_USBDK;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <WarningLevel>Level4</WarningLevel>
- </ClCompile>
- <Link>
- <OutputFile>$(OutDir)libusb-usbdk-1.0.dll</OutputFile>
- <ModuleDefinitionFile>..\libusb\libusb-1.0.def</ModuleDefinitionFile>
- <EmbedManagedResourceFile>libusb-1.0.rc;%(EmbedManagedResourceFile)</EmbedManagedResourceFile>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- </Midl>
- <ClCompile>
- <AdditionalIncludeDirectories>.;..\libusb;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_WIN32;_WIN64;_LIB;_CRT_SECURE_NO_WARNINGS;USE_USBDK;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <WarningLevel>Level4</WarningLevel>
- </ClCompile>
- <Link>
- <OutputFile>$(OutDir)libusb-usbdk-1.0.dll</OutputFile>
- <ModuleDefinitionFile>..\libusb\libusb-1.0.def</ModuleDefinitionFile>
- <EmbedManagedResourceFile>libusb-1.0.rc;%(EmbedManagedResourceFile)</EmbedManagedResourceFile>
- </Link>
- </ItemDefinitionGroup>
- <ItemGroup>
- <ClCompile Include="..\libusb\core.c" />
- <ClCompile Include="..\libusb\descriptor.c" />
- <ClCompile Include="..\libusb\hotplug.c" />
- <ClCompile Include="..\libusb\io.c" />
- <ClCompile Include="..\libusb\os\poll_windows.c" />
- <ClCompile Include="..\libusb\strerror.c" />
- <ClCompile Include="..\libusb\sync.c" />
- <ClCompile Include="..\libusb\os\threads_windows.c" />
- <ClCompile Include="..\libusb\os\windows_nt_common.c" />
- <ClCompile Include="..\libusb\os\windows_usbdk.c" />
- </ItemGroup>
- <ItemGroup>
- <ClInclude Include=".\config.h" />
- <ClInclude Include="..\libusb\hotplug.h" />
- <ClInclude Include="..\libusb\libusb.h" />
- <ClInclude Include="..\libusb\libusbi.h" />
- <ClInclude Include="..\libusb\os\poll_windows.h" />
- <ClInclude Include="..\libusb\os\threads_windows.h" />
- <ClInclude Include="..\libusb\version.h" />
- <ClInclude Include="..\libusb\version_nano.h" />
- <ClInclude Include="..\libusb\os\windows_common.h" />
- <ClInclude Include="..\libusb\os\windows_nt_common.h" />
- <ClInclude Include="..\libusb\os\windows_usbdk.h" />
- </ItemGroup>
- <ItemGroup>
- <None Include="..\libusb\libusb-1.0.def" />
- </ItemGroup>
- <ItemGroup>
- <ResourceCompile Include="..\libusb\libusb-1.0.rc" />
- </ItemGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
- <ImportGroup Label="ExtensionTargets">
- </ImportGroup>
-</Project>
\ No newline at end of file
diff --git a/msvc/libusb_usbdk_dll_2017.vcxproj b/msvc/libusb_usbdk_dll_2017.vcxproj
deleted file mode 100644
index 73274fe..0000000
--- a/msvc/libusb_usbdk_dll_2017.vcxproj
+++ /dev/null
@@ -1,178 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <ItemGroup Label="ProjectConfigurations">
- <ProjectConfiguration Include="Debug|Win32">
- <Configuration>Debug</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Debug|x64">
- <Configuration>Debug</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release|Win32">
- <Configuration>Release</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release|x64">
- <Configuration>Release</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- </ItemGroup>
- <PropertyGroup Label="Globals">
- <ProjectName>libusb-usbdk-1.0 (dll)</ProjectName>
- <ProjectGuid>{F53A5974-2319-48EB-A67B-27933AEDF14A}</ProjectGuid>
- <RootNamespace>libusbdll</RootNamespace>
- </PropertyGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <WholeProgramOptimization>true</WholeProgramOptimization>
- <PlatformToolset>v141</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <PlatformToolset>v141</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <WholeProgramOptimization>true</WholeProgramOptimization>
- <PlatformToolset>v141</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <PlatformToolset>v141</PlatformToolset>
- </PropertyGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
- <ImportGroup Label="ExtensionSettings">
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <PropertyGroup Label="UserMacros" />
- <PropertyGroup>
- <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\libusb-usbdk-1.0\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\libusb-usbdk-1.0\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\libusb-usbdk-1.0\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)..\$(Platform)\$(Configuration)\dll\libusb-usbdk-1.0\</IntDir>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">libusb-usbdk-1.0</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">libusb-usbdk-1.0</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">libusb-usbdk-1.0</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">libusb-usbdk-1.0</TargetName>
- </PropertyGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>.;..\libusb;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;USE_USBDK;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level4</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <Link>
- <OutputFile>$(OutDir)libusb-usbdk-1.0.dll</OutputFile>
- <ModuleDefinitionFile>..\libusb\libusb-1.0.def</ModuleDefinitionFile>
- <EmbedManagedResourceFile>libusb-1.0.rc;%(EmbedManagedResourceFile)</EmbedManagedResourceFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>.;..\libusb;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_WIN32;_WIN64;_DEBUG;_CRT_SECURE_NO_WARNINGS;USE_USBDK;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level4</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <Link>
- <OutputFile>$(OutDir)libusb-usbdk-1.0.dll</OutputFile>
- <ModuleDefinitionFile>..\libusb\libusb-1.0.def</ModuleDefinitionFile>
- <EmbedManagedResourceFile>libusb-1.0.rc;%(EmbedManagedResourceFile)</EmbedManagedResourceFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
- <ClCompile>
- <AdditionalIncludeDirectories>.;..\libusb;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_WIN32;_LIB;_CRT_SECURE_NO_WARNINGS;USE_USBDK;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <WarningLevel>Level4</WarningLevel>
- </ClCompile>
- <Link>
- <OutputFile>$(OutDir)libusb-usbdk-1.0.dll</OutputFile>
- <ModuleDefinitionFile>..\libusb\libusb-1.0.def</ModuleDefinitionFile>
- <EmbedManagedResourceFile>libusb-1.0.rc;%(EmbedManagedResourceFile)</EmbedManagedResourceFile>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- </Midl>
- <ClCompile>
- <AdditionalIncludeDirectories>.;..\libusb;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_WIN32;_WIN64;_LIB;_CRT_SECURE_NO_WARNINGS;USE_USBDK;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <WarningLevel>Level4</WarningLevel>
- </ClCompile>
- <Link>
- <OutputFile>$(OutDir)libusb-usbdk-1.0.dll</OutputFile>
- <ModuleDefinitionFile>..\libusb\libusb-1.0.def</ModuleDefinitionFile>
- <EmbedManagedResourceFile>libusb-1.0.rc;%(EmbedManagedResourceFile)</EmbedManagedResourceFile>
- </Link>
- </ItemDefinitionGroup>
- <ItemGroup>
- <ClCompile Include="..\libusb\core.c" />
- <ClCompile Include="..\libusb\descriptor.c" />
- <ClCompile Include="..\libusb\hotplug.c" />
- <ClCompile Include="..\libusb\io.c" />
- <ClCompile Include="..\libusb\os\poll_windows.c" />
- <ClCompile Include="..\libusb\strerror.c" />
- <ClCompile Include="..\libusb\sync.c" />
- <ClCompile Include="..\libusb\os\threads_windows.c" />
- <ClCompile Include="..\libusb\os\windows_nt_common.c" />
- <ClCompile Include="..\libusb\os\windows_usbdk.c" />
- </ItemGroup>
- <ItemGroup>
- <ClInclude Include=".\config.h" />
- <ClInclude Include="..\libusb\hotplug.h" />
- <ClInclude Include="..\libusb\libusb.h" />
- <ClInclude Include="..\libusb\libusbi.h" />
- <ClInclude Include="..\libusb\os\poll_windows.h" />
- <ClInclude Include="..\libusb\os\threads_windows.h" />
- <ClInclude Include="..\libusb\version.h" />
- <ClInclude Include="..\libusb\version_nano.h" />
- <ClInclude Include="..\libusb\os\windows_common.h" />
- <ClInclude Include="..\libusb\os\windows_nt_common.h" />
- <ClInclude Include="..\libusb\os\windows_usbdk.h" />
- </ItemGroup>
- <ItemGroup>
- <None Include="..\libusb\libusb-1.0.def" />
- </ItemGroup>
- <ItemGroup>
- <ResourceCompile Include="..\libusb\libusb-1.0.rc" />
- </ItemGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
- <ImportGroup Label="ExtensionTargets">
- </ImportGroup>
-</Project>
\ No newline at end of file
diff --git a/msvc/libusb_usbdk_static_2013.vcxproj b/msvc/libusb_usbdk_static_2013.vcxproj
deleted file mode 100644
index 5cc42d4..0000000
--- a/msvc/libusb_usbdk_static_2013.vcxproj
+++ /dev/null
@@ -1,162 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <ItemGroup Label="ProjectConfigurations">
- <ProjectConfiguration Include="Debug|Win32">
- <Configuration>Debug</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Debug|x64">
- <Configuration>Debug</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release|Win32">
- <Configuration>Release</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release|x64">
- <Configuration>Release</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- </ItemGroup>
- <PropertyGroup Label="Globals">
- <ProjectName>libusb-usbdk-1.0 (static)</ProjectName>
- <ProjectGuid>{0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}</ProjectGuid>
- <RootNamespace>libusb</RootNamespace>
- </PropertyGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <WholeProgramOptimization>true</WholeProgramOptimization>
- <PlatformToolset>v120</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <PlatformToolset>v120</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <WholeProgramOptimization>true</WholeProgramOptimization>
- <PlatformToolset>v120</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <PlatformToolset>v120</PlatformToolset>
- </PropertyGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
- <ImportGroup Label="ExtensionSettings">
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <PropertyGroup Label="UserMacros" />
- <PropertyGroup>
- <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)..\$(Platform)\$(Configuration)\lib\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)..\$(Platform)\$(Configuration)\lib\libusb-usbdk-1.0\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)..\$(Platform)\$(Configuration)\lib\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)..\$(Platform)\$(Configuration)\lib\libusb-usbdk-1.0\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)..\$(Platform)\$(Configuration)\lib\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)..\$(Platform)\$(Configuration)\lib\libusb-usbdk-1.0\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)..\$(Platform)\$(Configuration)\lib\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)..\$(Platform)\$(Configuration)\lib\libusb-usbdk-1.0\</IntDir>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">libusb-usbdk-1.0</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">libusb-usbdk-1.0</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">libusb-usbdk-1.0</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">libusb-usbdk-1.0</TargetName>
- </PropertyGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>.;..\libusb;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;USE_USBDK;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
- <WarningLevel>Level4</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <Lib>
- <OutputFile>$(OutDir)libusb-usbdk-1.0.lib</OutputFile>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>.;..\libusb;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_WIN32;_WIN64;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;USE_USBDK;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
- <WarningLevel>Level4</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <Lib>
- <OutputFile>$(OutDir)libusb-usbdk-1.0.lib</OutputFile>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
- <ClCompile>
- <AdditionalIncludeDirectories>.;..\libusb;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_WIN32;_LIB;_CRT_SECURE_NO_WARNINGS;USE_USBDK;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
- <WarningLevel>Level4</WarningLevel>
- </ClCompile>
- <Lib>
- <OutputFile>$(OutDir)libusb-usbdk-1.0.lib</OutputFile>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- </Midl>
- <ClCompile>
- <AdditionalIncludeDirectories>.;..\libusb;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_WIN32;_WIN64;_LIB;_CRT_SECURE_NO_WARNINGS;USE_USBDK;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
- <WarningLevel>Level4</WarningLevel>
- </ClCompile>
- <Lib>
- <OutputFile>$(OutDir)libusb-usbdk-1.0.lib</OutputFile>
- </Lib>
- </ItemDefinitionGroup>
- <ItemGroup>
- <ClCompile Include="..\libusb\core.c" />
- <ClCompile Include="..\libusb\descriptor.c" />
- <ClCompile Include="..\libusb\hotplug.c" />
- <ClCompile Include="..\libusb\io.c" />
- <ClCompile Include="..\libusb\os\poll_windows.c" />
- <ClCompile Include="..\libusb\strerror.c" />
- <ClCompile Include="..\libusb\sync.c" />
- <ClCompile Include="..\libusb\os\threads_windows.c" />
- <ClCompile Include="..\libusb\os\windows_nt_common.c" />
- <ClCompile Include="..\libusb\os\windows_usbdk.c" />
- </ItemGroup>
- <ItemGroup>
- <ClInclude Include=".\config.h" />
- <ClInclude Include="..\libusb\hotplug.h" />
- <ClInclude Include="..\libusb\libusb.h" />
- <ClInclude Include="..\libusb\libusbi.h" />
- <ClInclude Include="..\libusb\os\poll_windows.h" />
- <ClInclude Include="..\libusb\os\threads_windows.h" />
- <ClInclude Include="..\libusb\version.h" />
- <ClInclude Include="..\libusb\version_nano.h" />
- <ClInclude Include="..\libusb\os\windows_common.h" />
- <ClInclude Include="..\libusb\os\windows_nt_common.h" />
- <ClInclude Include="..\libusb\os\windows_usbdk.h" />
- </ItemGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
- <ImportGroup Label="ExtensionTargets">
- </ImportGroup>
-</Project>
\ No newline at end of file
diff --git a/msvc/libusb_usbdk_static_2015.vcxproj b/msvc/libusb_usbdk_static_2015.vcxproj
deleted file mode 100644
index eec20ee..0000000
--- a/msvc/libusb_usbdk_static_2015.vcxproj
+++ /dev/null
@@ -1,162 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <ItemGroup Label="ProjectConfigurations">
- <ProjectConfiguration Include="Debug|Win32">
- <Configuration>Debug</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Debug|x64">
- <Configuration>Debug</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release|Win32">
- <Configuration>Release</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release|x64">
- <Configuration>Release</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- </ItemGroup>
- <PropertyGroup Label="Globals">
- <ProjectName>libusb-usbdk-1.0 (static)</ProjectName>
- <ProjectGuid>{0B3D86CF-5D70-41A9-B391-A2E7C5C969ED}</ProjectGuid>
- <RootNamespace>libusb</RootNamespace>
- </PropertyGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <WholeProgramOptimization>true</WholeProgramOptimization>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <WholeProgramOptimization>true</WholeProgramOptimization>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
- <ImportGroup Label="ExtensionSettings">
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <PropertyGroup Label="UserMacros" />
- <PropertyGroup>
- <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)..\$(Platform)\$(Configuration)\lib\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)..\$(Platform)\$(Configuration)\lib\libusb-usbdk-1.0\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)..\$(Platform)\$(Configuration)\lib\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)..\$(Platform)\$(Configuration)\lib\libusb-usbdk-1.0\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)..\$(Platform)\$(Configuration)\lib\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)..\$(Platform)\$(Configuration)\lib\libusb-usbdk-1.0\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)..\$(Platform)\$(Configuration)\lib\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)..\$(Platform)\$(Configuration)\lib\libusb-usbdk-1.0\</IntDir>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">libusb-usbdk-1.0</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">libusb-usbdk-1.0</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">libusb-usbdk-1.0</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">libusb-usbdk-1.0</TargetName>
- </PropertyGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>.;..\libusb;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;USE_USBDK;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
- <WarningLevel>Level4</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <Lib>
- <OutputFile>$(OutDir)libusb-usbdk-1.0.lib</OutputFile>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>.;..\libusb;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_WIN32;_WIN64;_DEBUG;_LIB;_CRT_SECURE_NO_WARNINGS;USE_USBDK;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
- <WarningLevel>Level4</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <Lib>
- <OutputFile>$(OutDir)libusb-usbdk-1.0.lib</OutputFile>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
- <ClCompile>
- <AdditionalIncludeDirectories>.;..\libusb;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_WIN32;_LIB;_CRT_SECURE_NO_WARNINGS;USE_USBDK;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
- <WarningLevel>Level4</WarningLevel>
- </ClCompile>
- <Lib>
- <OutputFile>$(OutDir)libusb-usbdk-1.0.lib</OutputFile>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- </Midl>
- <ClCompile>
- <AdditionalIncludeDirectories>.;..\libusb;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_WIN32;_WIN64;_LIB;_CRT_SECURE_NO_WARNINGS;USE_USBDK;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
- <WarningLevel>Level4</WarningLevel>
- </ClCompile>
...
[truncated message content] |
|
From: Sameeh J. <sa...@da...> - 2017-01-12 12:10:11
|
Check UsbDK availability at run time and activate UsbDk backend when
possible.
Fall back to current behavior when UsbDK not installed.
Signed-off-by: Dmitry Fleytman <dfl...@re...>
Signed-off-by: Sameeh Jubran <sa...@da...>
---
libusb/Makefile.am | 9 ++------
libusb/core.c | 41 +++++++++++++++++++++++++++------
libusb/libusbi.h | 4 ++++
libusb/os/windows_nt_common.c | 17 ++++++++++----
libusb/os/windows_nt_common.h | 18 +++++++++++----
libusb/os/windows_usbdk.c | 25 ++++++++++++++------
libusb/os/windows_winusb.c | 23 ++++++++++++------
msvc/libusb_dll_2010.vcxproj | 2 ++
msvc/libusb_dll_2010.vcxproj.filters | 18 +++++++++++++++
msvc/libusb_dll_2012.vcxproj | 2 ++
msvc/libusb_dll_2012.vcxproj.filters | 15 ++++++++++++
msvc/libusb_dll_2013.vcxproj | 2 ++
msvc/libusb_dll_2015.vcxproj | 2 ++
msvc/libusb_dll_2017.vcxproj | 2 ++
msvc/libusb_sources | 1 +
msvc/libusb_static_2010.vcxproj | 2 ++
msvc/libusb_static_2010.vcxproj.filters | 12 ++++++++++
msvc/libusb_static_2012.vcxproj | 2 ++
msvc/libusb_static_2012.vcxproj.filters | 12 ++++++++++
msvc/libusb_static_2013.vcxproj | 2 ++
msvc/libusb_static_2015.vcxproj | 2 ++
msvc/libusb_static_2017.vcxproj | 2 ++
22 files changed, 178 insertions(+), 37 deletions(-)
diff --git a/libusb/Makefile.am b/libusb/Makefile.am
index b1b892d..0eca02e 100644
--- a/libusb/Makefile.am
+++ b/libusb/Makefile.am
@@ -15,8 +15,8 @@ NETBSD_USB_SRC = os/netbsd_usb.c
SUNOS_USB_SRC = os/sunos_usb.c os/sunos_usb.h
WINDOWS_COMMON_SRC = os/windows_nt_common.h os/windows_nt_common.c \
os/windows_common.h libusb-1.0.rc libusb-1.0.def
-WINDOWS_USB_SRC = os/windows_winusb.h os/windows_winusb.c
-WINDOWS_USBDK_SRC = os/windows_usbdk.h os/windows_usbdk.c
+WINDOWS_USB_SRC = os/windows_winusb.h os/windows_winusb.c os/windows_usbdk.h \
+ os/windows_usbdk.c $(COMMON_WINDOWS_SRC)
WINCE_USB_SRC = os/wince_usb.h os/wince_usb.c
HAIKU_USB_SRC = os/haiku_usb.h os/haiku_usb_backend.cpp \
os/haiku_usb_raw.h os/haiku_usb_raw.cpp os/haiku_pollfs.cpp
@@ -63,12 +63,7 @@ libusb_1_0_la_LIBADD = libusb_haiku.la
endif
if OS_WINDOWS
-
-if USE_USBDK
-OS_SRC = $(WINDOWS_USBDK_SRC) $(WINDOWS_COMMON_SRC)
-else
OS_SRC = $(WINDOWS_USB_SRC) $(WINDOWS_COMMON_SRC)
-endif
.rc.lo:
$(AM_V_GEN)$(LIBTOOL) $(AM_V_lt) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --tag=RC --mode=compile $(RC) $(RCFLAGS) -i $< -o $@
diff --git a/libusb/core.c b/libusb/core.c
index 99aab7b..8397cfd 100644
--- a/libusb/core.c
+++ b/libusb/core.c
@@ -53,13 +53,7 @@ const struct usbi_os_backend * const usbi_backend = &openbsd_backend;
#elif defined(OS_NETBSD)
const struct usbi_os_backend * const usbi_backend = &netbsd_backend;
#elif defined(OS_WINDOWS)
-
-#if defined(USE_USBDK)
-const struct usbi_os_backend * const usbi_backend = &usbdk_backend;
-#else
-const struct usbi_os_backend * const usbi_backend = &windows_backend;
-#endif
-
+const struct usbi_os_backend * usbi_backend;
#elif defined(OS_WINCE)
const struct usbi_os_backend * const usbi_backend = &wince_backend;
#elif defined(OS_HAIKU)
@@ -629,6 +623,26 @@ static struct discovered_devs *discovered_devs_alloc(void)
return ret;
}
+#ifdef OS_WINDOWS
+static int is_usbdk_driver_installed(void)
+{
+ int usbdk_installed = 0;
+
+ SC_HANDLE managerHandle = OpenSCManager(NULL, NULL, SC_MANAGER_CONNECT);
+ if (managerHandle)
+ {
+ SC_HANDLE serviceHandle = OpenService(managerHandle, TEXT("UsbDk"), GENERIC_READ);
+ if (serviceHandle)
+ {
+ usbdk_installed = 1;
+ CloseServiceHandle(serviceHandle);
+ }
+ CloseServiceHandle(managerHandle);
+ }
+ return usbdk_installed;
+}
+#endif
+
static void discovered_devs_free(struct discovered_devs *discdevs)
{
size_t i;
@@ -2067,6 +2081,19 @@ int API_EXPORTED libusb_init(libusb_context **context)
static int first_init = 1;
int r = 0;
+#ifdef OS_WINDOWS
+ if (is_usbdk_driver_installed())
+ {
+ usbi_backend = &usbdk_backend;
+ usbi_info(*context, "libusb will work with UsbDk backend");
+ }
+ else
+ {
+ usbi_backend = &windows_backend;
+ usbi_info(*context, "libusb will work with windows_backend");
+ }
+#endif
+
usbi_mutex_static_lock(&default_context_lock);
if (!timestamp_origin.tv_sec) {
diff --git a/libusb/libusbi.h b/libusb/libusbi.h
index cc0906c..dcc996e 100644
--- a/libusb/libusbi.h
+++ b/libusb/libusbi.h
@@ -1132,7 +1132,11 @@ struct usbi_os_backend {
size_t transfer_priv_size;
};
+#if defined(OS_WINDOWS)
+extern const struct usbi_os_backend * usbi_backend;
+#else
extern const struct usbi_os_backend * const usbi_backend;
+#endif
extern const struct usbi_os_backend linux_usbfs_backend;
extern const struct usbi_os_backend darwin_backend;
diff --git a/libusb/os/windows_nt_common.c b/libusb/os/windows_nt_common.c
index 68eb4a7..1565a4a 100644
--- a/libusb/os/windows_nt_common.c
+++ b/libusb/os/windows_nt_common.c
@@ -59,6 +59,8 @@ DLL_DECLARE_FUNC_PREFIXED(WINAPI, BOOL, p, GetMessageA, (LPMSG, HWND, UINT, UINT
DLL_DECLARE_FUNC_PREFIXED(WINAPI, BOOL, p, PeekMessageA, (LPMSG, HWND, UINT, UINT, UINT));
DLL_DECLARE_FUNC_PREFIXED(WINAPI, BOOL, p, PostThreadMessageA, (DWORD, UINT, WPARAM, LPARAM));
+win_backend backend_func;
+
static unsigned __stdcall windows_clock_gettime_threaded(void *param);
/*
@@ -487,7 +489,7 @@ static void windows_transfer_callback(struct usbi_transfer *itransfer, uint32_t
switch (io_result) {
case NO_ERROR:
- status = windows_copy_transfer_data(itransfer, io_size);
+ status = backend_func.copy_transfer_data(itransfer, io_size);
break;
case ERROR_GEN_FAILURE:
usbi_dbg("detected endpoint stall");
@@ -498,7 +500,7 @@ static void windows_transfer_callback(struct usbi_transfer *itransfer, uint32_t
status = LIBUSB_TRANSFER_TIMED_OUT;
break;
case ERROR_OPERATION_ABORTED:
- istatus = windows_copy_transfer_data(itransfer, io_size);
+ istatus = backend_func.copy_transfer_data(itransfer, io_size);
if (istatus != LIBUSB_TRANSFER_COMPLETED)
usbi_dbg("Failed to copy partial data in aborted operation: %d", istatus);
@@ -510,7 +512,7 @@ static void windows_transfer_callback(struct usbi_transfer *itransfer, uint32_t
status = LIBUSB_TRANSFER_ERROR;
break;
}
- windows_clear_transfer_priv(itransfer); // Cancel polling
+ backend_func.clear_transfer_priv(itransfer); // Cancel polling
if (status == LIBUSB_TRANSFER_CANCELLED)
usbi_handle_transfer_cancellation(itransfer);
else
@@ -560,7 +562,7 @@ int windows_handle_events(struct libusb_context *ctx, struct pollfd *fds, POLL_N
usbi_mutex_lock(&ctx->flying_transfers_lock);
found = false;
list_for_each_entry(transfer, &ctx->flying_transfers, list, struct usbi_transfer) {
- pollable_fd = windows_get_fd(transfer);
+ pollable_fd = backend_func.get_fd(transfer);
if (pollable_fd->fd == fds[i].fd) {
found = true;
break;
@@ -569,7 +571,7 @@ int windows_handle_events(struct libusb_context *ctx, struct pollfd *fds, POLL_N
usbi_mutex_unlock(&ctx->flying_transfers_lock);
if (found) {
- windows_get_overlapped_result(transfer, pollable_fd, &io_result, &io_size);
+ backend_func.get_overlapped_result(transfer, pollable_fd, &io_result, &io_size);
usbi_remove_pollfd(ctx, pollable_fd->fd);
// let handle_callback free the event using the transfer wfd
@@ -608,3 +610,8 @@ void windows_common_exit(void)
windows_destroy_clock();
windows_exit_dlls();
}
+
+void win_nt_init(win_backend *backend)
+{
+ backend_func = *backend;
+}
diff --git a/libusb/os/windows_nt_common.h b/libusb/os/windows_nt_common.h
index 9749e00..22d5256 100644
--- a/libusb/os/windows_nt_common.h
+++ b/libusb/os/windows_nt_common.h
@@ -50,10 +50,20 @@ void windows_common_exit(void);
unsigned long htab_hash(const char *str);
int windows_clock_gettime(int clk_id, struct timespec *tp);
-void windows_clear_transfer_priv(struct usbi_transfer *itransfer);
-int windows_copy_transfer_data(struct usbi_transfer *itransfer, uint32_t io_size);
-struct winfd *windows_get_fd(struct usbi_transfer *transfer);
-void windows_get_overlapped_result(struct usbi_transfer *transfer, struct winfd *pollable_fd, DWORD *io_result, DWORD *io_size);
+typedef void(*CLEAR_TRANSFER_PRIV)(struct usbi_transfer *itransfer);
+typedef int(*COPY_TRANSFER_DATA)(struct usbi_transfer *itransfer, uint32_t io_size);
+typedef struct winfd *(*GET_FD)(struct usbi_transfer *transfer);
+typedef void(*GET_OVERLAPPED_RESULT)(struct usbi_transfer *transfer, struct winfd *pollable_fd, DWORD *io_result, DWORD *io_size);
+
+typedef struct win_backend
+{
+ CLEAR_TRANSFER_PRIV clear_transfer_priv;
+ COPY_TRANSFER_DATA copy_transfer_data;
+ GET_FD get_fd;
+ GET_OVERLAPPED_RESULT get_overlapped_result;
+} win_backend;
+
+void win_nt_init(win_backend *backend);
void windows_handle_callback(struct usbi_transfer *itransfer, uint32_t io_result, uint32_t io_size);
int windows_handle_events(struct libusb_context *ctx, struct pollfd *fds, POLL_NFDS_TYPE nfds, int num_ready);
diff --git a/libusb/os/windows_usbdk.c b/libusb/os/windows_usbdk.c
index 7cc5793..a588e51 100644
--- a/libusb/os/windows_usbdk.c
+++ b/libusb/os/windows_usbdk.c
@@ -23,8 +23,6 @@
#include <config.h>
-#if defined(USE_USBDK)
-
#include <windows.h>
#include <cfgmgr32.h>
#include <stdio.h>
@@ -66,6 +64,8 @@ typedef int32_t USBD_STATUS;
#define USBD_STATUS_CANCELED ((USBD_STATUS) 0xc0010000)
#endif
+static void backend_init(void);
+
static int concurrent_usage = -1;
struct usbdk_device_priv {
@@ -201,6 +201,9 @@ static int usbdk_init(struct libusb_context *ctx)
int r;
if (++concurrent_usage == 0) { // First init?
+
+ backend_init();
+
r = load_usbdk_helper_dll(ctx);
if (r)
goto init_exit;
@@ -533,7 +536,7 @@ static void usbdk_destroy_device(struct libusb_device *dev)
usbdk_release_config_descriptors(p, p->info.DeviceDescriptor.bNumConfigurations);
}
-void windows_clear_transfer_priv(struct usbi_transfer *itransfer)
+static void windows_clear_transfer_priv(struct usbi_transfer *itransfer)
{
struct usbdk_transfer_priv *transfer_priv = _usbdk_transfer_priv(itransfer);
struct libusb_transfer *transfer = USBI_TRANSFER_TO_LIBUSB_TRANSFER(itransfer);
@@ -778,13 +781,13 @@ static int usbdk_cancel_transfer(struct usbi_transfer *itransfer)
}
}
-int windows_copy_transfer_data(struct usbi_transfer *itransfer, uint32_t io_size)
+static int windows_copy_transfer_data(struct usbi_transfer *itransfer, uint32_t io_size)
{
itransfer->transferred += io_size;
return LIBUSB_TRANSFER_COMPLETED;
}
-struct winfd *windows_get_fd(struct usbi_transfer *transfer)
+static struct winfd *windows_get_fd(struct usbi_transfer *transfer)
{
struct usbdk_transfer_priv *transfer_priv = _usbdk_transfer_priv(transfer);
return &transfer_priv->pollable_fd;
@@ -809,7 +812,7 @@ static DWORD usbdk_translate_usbd_status(USBD_STATUS UsbdStatus)
}
}
-void windows_get_overlapped_result(struct usbi_transfer *transfer, struct winfd *pollable_fd, DWORD *io_result, DWORD *io_size)
+static void windows_get_overlapped_result(struct usbi_transfer *transfer, struct winfd *pollable_fd, DWORD *io_result, DWORD *io_size)
{
if (HasOverlappedIoCompletedSync(pollable_fd->overlapped) // Handle async requests that completed synchronously first
|| GetOverlappedResult(pollable_fd->handle, pollable_fd->overlapped, io_size, false)) { // Regular async overlapped
@@ -902,4 +905,12 @@ const struct usbi_os_backend usbdk_backend = {
sizeof(struct usbdk_transfer_priv),
};
-#endif /* USE_USBDK */
+static void backend_init(void)
+{
+ win_backend backend;
+ backend.clear_transfer_priv = windows_clear_transfer_priv;
+ backend.copy_transfer_data = windows_copy_transfer_data;
+ backend.get_fd = windows_get_fd;
+ backend.get_overlapped_result = windows_get_overlapped_result;
+ win_nt_init(&backend);
+}
diff --git a/libusb/os/windows_winusb.c b/libusb/os/windows_winusb.c
index d1d2749..99e866e 100644
--- a/libusb/os/windows_winusb.c
+++ b/libusb/os/windows_winusb.c
@@ -24,8 +24,6 @@
#include <config.h>
-#if !defined(USE_USBDK)
-
#include <windows.h>
#include <setupapi.h>
#include <ctype.h>
@@ -103,6 +101,7 @@ static int composite_abort_control(int sub_api, struct usbi_transfer *itransfer)
static int composite_reset_device(int sub_api, struct libusb_device_handle *dev_handle);
static int composite_copy_transfer_data(int sub_api, struct usbi_transfer *itransfer, uint32_t io_size);
+static void backend_init(void);
// Global variables
int windows_version = WINDOWS_UNDEFINED;
@@ -805,6 +804,8 @@ static int windows_init(struct libusb_context *ctx)
goto init_exit;
}
+ backend_init();
+
// We need a lock for proper auto-release
usbi_mutex_init(&autoclaim_lock);
@@ -1897,7 +1898,7 @@ static void windows_destroy_device(struct libusb_device *dev)
windows_device_priv_release(dev);
}
-void windows_clear_transfer_priv(struct usbi_transfer *itransfer)
+static void windows_clear_transfer_priv(struct usbi_transfer *itransfer)
{
struct windows_transfer_priv *transfer_priv = usbi_transfer_get_os_priv(itransfer);
@@ -2017,20 +2018,20 @@ static int windows_cancel_transfer(struct usbi_transfer *itransfer)
}
}
-int windows_copy_transfer_data(struct usbi_transfer *itransfer, uint32_t io_size)
+static int windows_copy_transfer_data(struct usbi_transfer *itransfer, uint32_t io_size)
{
struct libusb_transfer *transfer = USBI_TRANSFER_TO_LIBUSB_TRANSFER(itransfer);
struct windows_device_priv *priv = _device_priv(transfer->dev_handle->dev);
return priv->apib->copy_transfer_data(SUB_API_NOTSET, itransfer, io_size);
}
-struct winfd *windows_get_fd(struct usbi_transfer *transfer)
+static struct winfd *windows_get_fd(struct usbi_transfer *transfer)
{
struct windows_transfer_priv *transfer_priv = usbi_transfer_get_os_priv(transfer);
return &transfer_priv->pollable_fd;
}
-void windows_get_overlapped_result(struct usbi_transfer *transfer, struct winfd *pollable_fd, DWORD *io_result, DWORD *io_size)
+static void windows_get_overlapped_result(struct usbi_transfer *transfer, struct winfd *pollable_fd, DWORD *io_result, DWORD *io_size)
{
if (HasOverlappedIoCompletedSync(pollable_fd->overlapped)) {
*io_result = NO_ERROR;
@@ -4285,4 +4286,12 @@ static int composite_copy_transfer_data(int sub_api, struct usbi_transfer *itran
copy_transfer_data(priv->usb_interface[transfer_priv->interface_number].sub_api, itransfer, io_size);
}
-#endif /* !USE_USBDK */
+static void backend_init(void)
+{
+ win_backend backend;
+ backend.clear_transfer_priv = windows_clear_transfer_priv;
+ backend.copy_transfer_data = windows_copy_transfer_data;
+ backend.get_fd = windows_get_fd;
+ backend.get_overlapped_result = windows_get_overlapped_result;
+ win_nt_init(&backend);
+}
diff --git a/msvc/libusb_dll_2010.vcxproj b/msvc/libusb_dll_2010.vcxproj
index 3a37811..2fb2fb9 100644
--- a/msvc/libusb_dll_2010.vcxproj
+++ b/msvc/libusb_dll_2010.vcxproj
@@ -143,6 +143,7 @@
<ClCompile Include="..\libusb\hotplug.c" />
<ClCompile Include="..\libusb\io.c" />
<ClCompile Include="..\libusb\os\poll_windows.c" />
+ <ClCompile Include="..\libusb\os\windows_usbdk.c" />
<ClCompile Include="..\libusb\strerror.c" />
<ClCompile Include="..\libusb\sync.c" />
<ClCompile Include="..\libusb\os\threads_windows.c" />
@@ -150,6 +151,7 @@
<ClCompile Include="..\libusb\os\windows_winusb.c" />
</ItemGroup>
<ItemGroup>
+ <ClInclude Include="..\libusb\os\windows_usbdk.h" />
<ClInclude Include=".\config.h" />
<ClInclude Include="..\libusb\hotplug.h" />
<ClInclude Include="..\libusb\libusb.h" />
diff --git a/msvc/libusb_dll_2010.vcxproj.filters b/msvc/libusb_dll_2010.vcxproj.filters
index c77654b..00da394 100644
--- a/msvc/libusb_dll_2010.vcxproj.filters
+++ b/msvc/libusb_dll_2010.vcxproj.filters
@@ -41,6 +41,12 @@
<ClCompile Include="..\libusb\os\windows_winusb.c">
<Filter>Source Files</Filter>
</ClCompile>
+ <ClCompile Include="..\libusb\os\windows_nt_common.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\libusb\os\windows_usbdk.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include=".\config.h">
@@ -67,6 +73,18 @@
<ClInclude Include="..\libusb\os\windows_common.h">
<Filter>Header Files</Filter>
</ClInclude>
+ <ClInclude Include="..\libusb\version.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\libusb\version_nano.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\libusb\os\windows_nt_common.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\libusb\os\windows_usbdk.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
</ItemGroup>
<ItemGroup>
<None Include="..\libusb\libusb-1.0.def">
diff --git a/msvc/libusb_dll_2012.vcxproj b/msvc/libusb_dll_2012.vcxproj
index 92a8baf..2d51e5a 100644
--- a/msvc/libusb_dll_2012.vcxproj
+++ b/msvc/libusb_dll_2012.vcxproj
@@ -147,6 +147,7 @@
<ClCompile Include="..\libusb\hotplug.c" />
<ClCompile Include="..\libusb\io.c" />
<ClCompile Include="..\libusb\os\poll_windows.c" />
+ <ClCompile Include="..\libusb\os\windows_usbdk.c" />
<ClCompile Include="..\libusb\strerror.c" />
<ClCompile Include="..\libusb\sync.c" />
<ClCompile Include="..\libusb\os\threads_windows.c" />
@@ -154,6 +155,7 @@
<ClCompile Include="..\libusb\os\windows_winusb.c" />
</ItemGroup>
<ItemGroup>
+ <ClInclude Include="..\libusb\os\windows_usbdk.h" />
<ClInclude Include=".\config.h" />
<ClInclude Include="..\libusb\hotplug.h" />
<ClInclude Include="..\libusb\libusb.h" />
diff --git a/msvc/libusb_dll_2012.vcxproj.filters b/msvc/libusb_dll_2012.vcxproj.filters
index 6120953..1e462c7 100644
--- a/msvc/libusb_dll_2012.vcxproj.filters
+++ b/msvc/libusb_dll_2012.vcxproj.filters
@@ -41,6 +41,12 @@
<ClCompile Include="..\libusb\hotplug.c">
<Filter>Source Files</Filter>
</ClCompile>
+ <ClCompile Include="..\libusb\os\windows_nt_common.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\libusb\os\windows_usbdk.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include=".\config.h">
@@ -70,6 +76,15 @@
<ClInclude Include="..\libusb\hotplug.h">
<Filter>Header Files</Filter>
</ClInclude>
+ <ClInclude Include="..\libusb\os\windows_common.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\libusb\os\windows_nt_common.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\libusb\os\windows_usbdk.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
</ItemGroup>
<ItemGroup>
<None Include="..\libusb\libusb-1.0.def">
diff --git a/msvc/libusb_dll_2013.vcxproj b/msvc/libusb_dll_2013.vcxproj
index 6a4ce16..402bb99 100644
--- a/msvc/libusb_dll_2013.vcxproj
+++ b/msvc/libusb_dll_2013.vcxproj
@@ -147,6 +147,7 @@
<ClCompile Include="..\libusb\hotplug.c" />
<ClCompile Include="..\libusb\io.c" />
<ClCompile Include="..\libusb\os\poll_windows.c" />
+ <ClCompile Include="..\libusb\os\windows_usbdk.c" />
<ClCompile Include="..\libusb\strerror.c" />
<ClCompile Include="..\libusb\sync.c" />
<ClCompile Include="..\libusb\os\threads_windows.c" />
@@ -154,6 +155,7 @@
<ClCompile Include="..\libusb\os\windows_winusb.c" />
</ItemGroup>
<ItemGroup>
+ <ClInclude Include="..\libusb\os\windows_usbdk.h" />
<ClInclude Include=".\config.h" />
<ClInclude Include="..\libusb\hotplug.h" />
<ClInclude Include="..\libusb\libusb.h" />
diff --git a/msvc/libusb_dll_2015.vcxproj b/msvc/libusb_dll_2015.vcxproj
index 0c1730a..eb551e2 100644
--- a/msvc/libusb_dll_2015.vcxproj
+++ b/msvc/libusb_dll_2015.vcxproj
@@ -147,6 +147,7 @@
<ClCompile Include="..\libusb\hotplug.c" />
<ClCompile Include="..\libusb\io.c" />
<ClCompile Include="..\libusb\os\poll_windows.c" />
+ <ClCompile Include="..\libusb\os\windows_usbdk.c" />
<ClCompile Include="..\libusb\strerror.c" />
<ClCompile Include="..\libusb\sync.c" />
<ClCompile Include="..\libusb\os\threads_windows.c" />
@@ -154,6 +155,7 @@
<ClCompile Include="..\libusb\os\windows_winusb.c" />
</ItemGroup>
<ItemGroup>
+ <ClInclude Include="..\libusb\os\windows_usbdk.h" />
<ClInclude Include=".\config.h" />
<ClInclude Include="..\libusb\hotplug.h" />
<ClInclude Include="..\libusb\libusb.h" />
diff --git a/msvc/libusb_dll_2017.vcxproj b/msvc/libusb_dll_2017.vcxproj
index 0d46d48..541eeb7 100644
--- a/msvc/libusb_dll_2017.vcxproj
+++ b/msvc/libusb_dll_2017.vcxproj
@@ -147,6 +147,7 @@
<ClCompile Include="..\libusb\hotplug.c" />
<ClCompile Include="..\libusb\io.c" />
<ClCompile Include="..\libusb\os\poll_windows.c" />
+ <ClCompile Include="..\libusb\os\windows_usbdk.c" />
<ClCompile Include="..\libusb\strerror.c" />
<ClCompile Include="..\libusb\sync.c" />
<ClCompile Include="..\libusb\os\threads_windows.c" />
@@ -154,6 +155,7 @@
<ClCompile Include="..\libusb\os\windows_winusb.c" />
</ItemGroup>
<ItemGroup>
+ <ClInclude Include="..\libusb\os\windows_usbdk.h" />
<ClInclude Include=".\config.h" />
<ClInclude Include="..\libusb\hotplug.h" />
<ClInclude Include="..\libusb\libusb.h" />
diff --git a/msvc/libusb_sources b/msvc/libusb_sources
index 591d7f6..c527ac7 100644
--- a/msvc/libusb_sources
+++ b/msvc/libusb_sources
@@ -38,6 +38,7 @@ SOURCES=..\core.c \
..\hotplug.c \
threads_windows.c \
poll_windows.c \
+ windows_usbdk.c \
windows_winusb.c \
windows_usbdk.c \
windows_nt_common.c \
diff --git a/msvc/libusb_static_2010.vcxproj b/msvc/libusb_static_2010.vcxproj
index 78233c3..ba96f31 100644
--- a/msvc/libusb_static_2010.vcxproj
+++ b/msvc/libusb_static_2010.vcxproj
@@ -133,6 +133,7 @@
<ClCompile Include="..\libusb\hotplug.c" />
<ClCompile Include="..\libusb\io.c" />
<ClCompile Include="..\libusb\os\poll_windows.c" />
+ <ClCompile Include="..\libusb\os\windows_usbdk.c" />
<ClCompile Include="..\libusb\strerror.c" />
<ClCompile Include="..\libusb\sync.c" />
<ClCompile Include="..\libusb\os\threads_windows.c" />
@@ -140,6 +141,7 @@
<ClCompile Include="..\libusb\os\windows_winusb.c" />
</ItemGroup>
<ItemGroup>
+ <ClInclude Include="..\libusb\os\windows_usbdk.h" />
<ClInclude Include=".\config.h" />
<ClInclude Include="..\libusb\hotplug.h" />
<ClInclude Include="..\libusb\libusb.h" />
diff --git a/msvc/libusb_static_2010.vcxproj.filters b/msvc/libusb_static_2010.vcxproj.filters
index cce8001..2471ee8 100644
--- a/msvc/libusb_static_2010.vcxproj.filters
+++ b/msvc/libusb_static_2010.vcxproj.filters
@@ -38,6 +38,12 @@
<ClCompile Include="..\libusb\hotplug.c">
<Filter>Source Files</Filter>
</ClCompile>
+ <ClCompile Include="..\libusb\os\windows_nt_common.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\libusb\os\windows_usbdk.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include=".\config.h">
@@ -70,5 +76,11 @@
<ClInclude Include="..\libusb\hotplug.h">
<Filter>Header Files</Filter>
</ClInclude>
+ <ClInclude Include="..\libusb\os\windows_nt_common.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\libusb\os\windows_usbdk.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
</ItemGroup>
</Project>
\ No newline at end of file
diff --git a/msvc/libusb_static_2012.vcxproj b/msvc/libusb_static_2012.vcxproj
index 7df832d..fc3e7ff 100644
--- a/msvc/libusb_static_2012.vcxproj
+++ b/msvc/libusb_static_2012.vcxproj
@@ -137,6 +137,7 @@
<ClCompile Include="..\libusb\hotplug.c" />
<ClCompile Include="..\libusb\io.c" />
<ClCompile Include="..\libusb\os\poll_windows.c" />
+ <ClCompile Include="..\libusb\os\windows_usbdk.c" />
<ClCompile Include="..\libusb\strerror.c" />
<ClCompile Include="..\libusb\sync.c" />
<ClCompile Include="..\libusb\os\threads_windows.c" />
@@ -144,6 +145,7 @@
<ClCompile Include="..\libusb\os\windows_winusb.c" />
</ItemGroup>
<ItemGroup>
+ <ClInclude Include="..\libusb\os\windows_usbdk.h" />
<ClInclude Include=".\config.h" />
<ClInclude Include="..\libusb\hotplug.h" />
<ClInclude Include="..\libusb\libusb.h" />
diff --git a/msvc/libusb_static_2012.vcxproj.filters b/msvc/libusb_static_2012.vcxproj.filters
index cce8001..2471ee8 100644
--- a/msvc/libusb_static_2012.vcxproj.filters
+++ b/msvc/libusb_static_2012.vcxproj.filters
@@ -38,6 +38,12 @@
<ClCompile Include="..\libusb\hotplug.c">
<Filter>Source Files</Filter>
</ClCompile>
+ <ClCompile Include="..\libusb\os\windows_nt_common.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\libusb\os\windows_usbdk.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include=".\config.h">
@@ -70,5 +76,11 @@
<ClInclude Include="..\libusb\hotplug.h">
<Filter>Header Files</Filter>
</ClInclude>
+ <ClInclude Include="..\libusb\os\windows_nt_common.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\libusb\os\windows_usbdk.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
</ItemGroup>
</Project>
\ No newline at end of file
diff --git a/msvc/libusb_static_2013.vcxproj b/msvc/libusb_static_2013.vcxproj
index fa3caac..2ecd4a9 100644
--- a/msvc/libusb_static_2013.vcxproj
+++ b/msvc/libusb_static_2013.vcxproj
@@ -137,6 +137,7 @@
<ClCompile Include="..\libusb\hotplug.c" />
<ClCompile Include="..\libusb\io.c" />
<ClCompile Include="..\libusb\os\poll_windows.c" />
+ <ClCompile Include="..\libusb\os\windows_usbdk.c" />
<ClCompile Include="..\libusb\strerror.c" />
<ClCompile Include="..\libusb\sync.c" />
<ClCompile Include="..\libusb\os\threads_windows.c" />
@@ -144,6 +145,7 @@
<ClCompile Include="..\libusb\os\windows_winusb.c" />
</ItemGroup>
<ItemGroup>
+ <ClInclude Include="..\libusb\os\windows_usbdk.h" />
<ClInclude Include=".\config.h" />
<ClInclude Include="..\libusb\hotplug.h" />
<ClInclude Include="..\libusb\libusb.h" />
diff --git a/msvc/libusb_static_2015.vcxproj b/msvc/libusb_static_2015.vcxproj
index b9c5850..a572f66 100644
--- a/msvc/libusb_static_2015.vcxproj
+++ b/msvc/libusb_static_2015.vcxproj
@@ -141,6 +141,7 @@
<ClCompile Include="..\libusb\hotplug.c" />
<ClCompile Include="..\libusb\io.c" />
<ClCompile Include="..\libusb\os\poll_windows.c" />
+ <ClCompile Include="..\libusb\os\windows_usbdk.c" />
<ClCompile Include="..\libusb\strerror.c" />
<ClCompile Include="..\libusb\sync.c" />
<ClCompile Include="..\libusb\os\threads_windows.c" />
@@ -148,6 +149,7 @@
<ClCompile Include="..\libusb\os\windows_winusb.c" />
</ItemGroup>
<ItemGroup>
+ <ClInclude Include="..\libusb\os\windows_usbdk.h" />
<ClInclude Include=".\config.h" />
<ClInclude Include="..\libusb\hotplug.h" />
<ClInclude Include="..\libusb\libusb.h" />
diff --git a/msvc/libusb_static_2017.vcxproj b/msvc/libusb_static_2017.vcxproj
index 3a6fa13..4a5094f 100644
--- a/msvc/libusb_static_2017.vcxproj
+++ b/msvc/libusb_static_2017.vcxproj
@@ -141,6 +141,7 @@
<ClCompile Include="..\libusb\hotplug.c" />
<ClCompile Include="..\libusb\io.c" />
<ClCompile Include="..\libusb\os\poll_windows.c" />
+ <ClCompile Include="..\libusb\os\windows_usbdk.c" />
<ClCompile Include="..\libusb\strerror.c" />
<ClCompile Include="..\libusb\sync.c" />
<ClCompile Include="..\libusb\os\threads_windows.c" />
@@ -148,6 +149,7 @@
<ClCompile Include="..\libusb\os\windows_winusb.c" />
</ItemGroup>
<ItemGroup>
+ <ClInclude Include="..\libusb\os\windows_usbdk.h" />
<ClInclude Include=".\config.h" />
<ClInclude Include="..\libusb\hotplug.h" />
<ClInclude Include="..\libusb\libusb.h" />
--
2.7.4
|
|
From: Sameeh J. <sa...@da...> - 2017-01-12 12:10:11
|
As discussed in here: https://sourceforge.net/p/libusb/mailman/message/35580070/ This series makes libusb use UsbDK when it is available and drops usbdk build configuration. Sameeh Jubran (2): windows: Use UsbDk when available windows: Ditch UsbDK build configuration configure.ac | 9 -- libusb/Makefile.am | 9 +- libusb/core.c | 41 ++++++-- libusb/libusbi.h | 4 + libusb/os/windows_nt_common.c | 17 ++- libusb/os/windows_nt_common.h | 18 +++- libusb/os/windows_usbdk.c | 25 +++-- libusb/os/windows_winusb.c | 23 +++-- msvc/ddk_build.cmd | 8 -- msvc/libusb_2013.sln | 20 ---- msvc/libusb_2015.sln | 20 ---- msvc/libusb_2017.sln | 20 ---- msvc/libusb_dll_2010.vcxproj | 2 + msvc/libusb_dll_2010.vcxproj.filters | 18 ++++ msvc/libusb_dll_2012.vcxproj | 2 + msvc/libusb_dll_2012.vcxproj.filters | 15 +++ msvc/libusb_dll_2013.vcxproj | 2 + msvc/libusb_dll_2015.vcxproj | 2 + msvc/libusb_dll_2017.vcxproj | 2 + msvc/libusb_sources | 8 +- msvc/libusb_static_2010.vcxproj | 2 + msvc/libusb_static_2010.vcxproj.filters | 12 +++ msvc/libusb_static_2012.vcxproj | 2 + msvc/libusb_static_2012.vcxproj.filters | 12 +++ msvc/libusb_static_2013.vcxproj | 2 + msvc/libusb_static_2015.vcxproj | 2 + msvc/libusb_static_2017.vcxproj | 2 + msvc/libusb_usbdk_dll_2013.vcxproj | 178 -------------------------------- msvc/libusb_usbdk_dll_2015.vcxproj | 178 -------------------------------- msvc/libusb_usbdk_dll_2017.vcxproj | 178 -------------------------------- msvc/libusb_usbdk_static_2013.vcxproj | 162 ----------------------------- msvc/libusb_usbdk_static_2015.vcxproj | 162 ----------------------------- msvc/libusb_usbdk_static_2017.vcxproj | 162 ----------------------------- 33 files changed, 179 insertions(+), 1140 deletions(-) delete mode 100644 msvc/libusb_usbdk_dll_2013.vcxproj delete mode 100644 msvc/libusb_usbdk_dll_2015.vcxproj delete mode 100644 msvc/libusb_usbdk_dll_2017.vcxproj delete mode 100644 msvc/libusb_usbdk_static_2013.vcxproj delete mode 100644 msvc/libusb_usbdk_static_2015.vcxproj delete mode 100644 msvc/libusb_usbdk_static_2017.vcxproj -- 2.7.4 |