mirror of
https://github.com/izzy2lost/dolphin.git
synced 2026-06-19 01:16:48 -07:00
Merge pull request #2032 from mathieui/update-libusb-externals
Update the libusb in externals to 1.0.19 (latest)
This commit is contained in:
+23
-5
@@ -1,23 +1,26 @@
|
||||
Copyright © 2001 Johannes Erdfelt <johannes@erdfelt.com>
|
||||
Copyright © 2007-2009 Daniel Drake <dsd@gentoo.org>
|
||||
Copyright © 2010-2012 Peter Stuge <peter@stuge.se>
|
||||
Copyright © 2008-2011 Nathan Hjelm <hjelmn@users.sourceforge.net>
|
||||
Copyright © 2009-2012 Pete Batard <pete@akeo.ie>
|
||||
Copyright © 2009-2012 Ludovic Rousseau <ludovic.rousseau@gmail.com>
|
||||
Copyright © 2008-2013 Nathan Hjelm <hjelmn@users.sourceforge.net>
|
||||
Copyright © 2009-2013 Pete Batard <pete@akeo.ie>
|
||||
Copyright © 2009-2013 Ludovic Rousseau <ludovic.rousseau@gmail.com>
|
||||
Copyright © 2010-2012 Michael Plante <michael.plante@gmail.com>
|
||||
Copyright © 2011-2012 Hans de Goede <hdegoede@redhat.com>
|
||||
Copyright © 2012 Martin Pieuchot <mpi@openbsd.org>
|
||||
Copyright © 2011-2013 Hans de Goede <hdegoede@redhat.com>
|
||||
Copyright © 2012-2013 Martin Pieuchot <mpi@openbsd.org>
|
||||
Copyright © 2012-2013 Toby Gray <toby.gray@realvnc.com>
|
||||
|
||||
Other contributors:
|
||||
Alan Ott
|
||||
Alan Stern
|
||||
Alex Vatchenko
|
||||
Andrew Fernandes
|
||||
Anthony Clay
|
||||
Artem Egorkine
|
||||
Aurelien Jarno
|
||||
Bastien Nocera
|
||||
Bei Zhang
|
||||
Benjamin Dobell
|
||||
Carl Karsten
|
||||
Chris Dickens
|
||||
Colin Walters
|
||||
Dave Camarillo
|
||||
@@ -26,22 +29,36 @@ David Moore
|
||||
Davidlohr Bueso
|
||||
Federico Manzan
|
||||
Felipe Balbi
|
||||
Florian Albrechtskirchinger
|
||||
Francesco Montorsi
|
||||
Francisco Facioni
|
||||
Graeme Gill
|
||||
Gustavo Zacarias
|
||||
Hans Ulrich Niedermann
|
||||
Hector Martin
|
||||
Hoi-Ho Chan
|
||||
Ilya Konstantinov
|
||||
James Hanko
|
||||
John Sheu
|
||||
Joshua Blake
|
||||
Justin Bischoff
|
||||
Karsten Koenig
|
||||
Konrad Rzepecki
|
||||
Kuangye Guo
|
||||
Lars Kanis
|
||||
Lars Wirzenius
|
||||
Luca Longinotti
|
||||
Markus Heidelberg
|
||||
Martin Koegler
|
||||
Matthias Bolte
|
||||
Mike Frysinger
|
||||
Mikhail Gusarov
|
||||
Moritz Fischer
|
||||
Ларионов Даниил
|
||||
Nicholas Corgan
|
||||
Omri Iluz
|
||||
Orin Eman
|
||||
Paul Fertser
|
||||
Pekka Nikander
|
||||
Rob Walker
|
||||
Sean McBride
|
||||
@@ -58,3 +75,4 @@ Vitali Lovich
|
||||
Xiaofan Chen
|
||||
Zoltán Kovács
|
||||
Роман Донченко
|
||||
xantares
|
||||
+44
-7
@@ -1,5 +1,42 @@
|
||||
For detailed information about the changes below, please see the git log or
|
||||
visit: http://log.libusbx.org
|
||||
visit: http://log.libusb.info
|
||||
|
||||
2014-05-30: v1.0.19
|
||||
* Add support for USB bulk streams on Linux and Mac OS X (#11)
|
||||
* Windows: Add AMD and Intel USB-3.0 root hub support
|
||||
* Windows: Fix USB 3.0 speed detection on Windows 8 or later (#10)
|
||||
* Added Russian translation for libusb_strerror strings
|
||||
* All: Various small fixes and cleanups
|
||||
The (#xx) numbers are libusb issue numbers, see ie:
|
||||
https://github.com/libusb/libusb/issues/11
|
||||
|
||||
2014-01-25: v1.0.18
|
||||
* Fix multiple memory leaks
|
||||
* Fix a crash when HID transfers return no data on Windows
|
||||
* Ensure all pending events are consumed
|
||||
* Improve Android and ucLinux support
|
||||
* Multiple Windows improvements (error logging, VS2013, VIA xHCI support)
|
||||
* Multiple OS X improvements (broken compilation, SIGFPE, 64bit support)
|
||||
|
||||
2013-09-06: v1.0.17
|
||||
* Hotplug callbacks now always get passed a libusb_context, even if it is
|
||||
the default context. Previously NULL would be passed for the default context,
|
||||
but since the first context created is the default context, and most apps
|
||||
use only 1 context, this meant that apps explicitly creating a context would
|
||||
still get passed NULL
|
||||
* Android: Add .mk files to build with the Android NDK
|
||||
* Darwin: Add Xcode project
|
||||
* Darwin: Fix crash on unplug (#121)
|
||||
* Linux: Fix hang (deadlock) on libusb_exit
|
||||
* Linux: Fix libusb build failure with --disable-udev (#124)
|
||||
* Linux: Fix libusb_get_device_list() hang with --disable-udev (#130)
|
||||
* OpenBSD: Update OpenBSD backend with support for control transfers to
|
||||
non-ugen(4) devices and make get_configuration() no longer generate I/O.
|
||||
Note that using this libusb version on OpenBSD requires using
|
||||
OpenBSD 5.3-current or later. Users of older OpenBSD versions are advised
|
||||
to stay with the libusb shipped with OpenBSD (mpi)
|
||||
* Windows: fix libusb_dll_2010.vcxproj link errors (#129)
|
||||
* Various other bug fixes and improvements
|
||||
|
||||
2013-07-11: v1.0.16
|
||||
* Add hotplug support for Darwin and Linux (#9)
|
||||
@@ -40,7 +77,7 @@ https://github.com/libusbx/libusbx/issues/9
|
||||
* Reverts the previous API change with regards to bMaxPower.
|
||||
If this doesn't matter to you, you are encouraged to keep using v1.0.13,
|
||||
as it will use the same attribute as v2.0, to be released soon.
|
||||
* Note that LIBUSBX_API_VERSION is *decreased* to 0x010000FF and the previous
|
||||
* Note that LIBUSB_API_VERSION is *decreased* to 0x010000FF and the previous
|
||||
guidelines with regards to concurrent use of MaxPower/bMaxPower still apply.
|
||||
|
||||
2012-09-20: v1.0.13
|
||||
@@ -51,11 +88,11 @@ https://github.com/libusbx/libusbx/issues/9
|
||||
* Fix broken support for the 0.1 -> 1.0 libusb-compat layer
|
||||
* Fix unwanted cancellation of pending timeouts as well as major timeout related bugs
|
||||
* Fix handling of HID and composite devices on Windows
|
||||
* Introduce LIBUSBX_API_VERSION macro
|
||||
* Introduce LIBUSB_API_VERSION macro
|
||||
* Add Cypress FX/FX2 firmware upload sample, based on fxload from
|
||||
http://linux-hotplug.sourceforge.net
|
||||
* Add libusb0 (libusb-win32) and libusbK driver support on Windows. Note that while
|
||||
the drivers allow it, isochronous transfers are not supported yet in libusbx. Also
|
||||
the drivers allow it, isochronous transfers are not supported yet in libusb. Also
|
||||
not supported yet is the use of libusb-win32 filter drivers on composite interfaces
|
||||
* Add support for the new get_capabilities ioctl on Linux and avoid unnecessary
|
||||
splitting of bulk transfers
|
||||
@@ -156,18 +193,18 @@ https://github.com/libusbx/libusbx/issues/9
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
APPENDIX A - How to maintain code compatibility with versions of libusb and
|
||||
libusbx that use MaxPower:
|
||||
libusb that use MaxPower:
|
||||
|
||||
If you must to maintain compatibility with versions of the library that aren't
|
||||
using the bMaxPower attribute in struct libusb_config_descriptor, the
|
||||
recommended way is to use the new LIBUSBX_API_VERSION macro with an #ifdef.
|
||||
recommended way is to use the new LIBUSB_API_VERSION macro with an #ifdef.
|
||||
For instance, if your code was written as follows:
|
||||
|
||||
if (dev->config[0].MaxPower < 250)
|
||||
|
||||
Then you should modify it to have:
|
||||
|
||||
#if defined(LIBUSBX_API_VERSION) && (LIBUSBX_API_VERSION >= 0x01000100)
|
||||
#if defined(LIBUSB_API_VERSION) && (LIBUSB_API_VERSION >= 0x01000100)
|
||||
if (dev->config[0].bMaxPower < 250)
|
||||
#else
|
||||
if (dev->config[0].MaxPower < 250)
|
||||
Vendored
+7
@@ -0,0 +1,7 @@
|
||||
Dolphin-specific changes (as of 2015-02-12)
|
||||
-------------------------------------------
|
||||
|
||||
- removed all toplevel directories save msvc/ & libusb/
|
||||
- removed all files save AUTHORS, Changelog, COPYING, INSTALL, NEWS,
|
||||
PORTING, README and TODO
|
||||
- patched the VS project file to insert dolphin-specific props
|
||||
Vendored
+2
@@ -0,0 +1,2 @@
|
||||
For the latest libusb news, please refer to the ChangeLog file, or visit:
|
||||
http://libusb.info
|
||||
+13
-13
@@ -1,15 +1,15 @@
|
||||
PORTING LIBUSBX TO OTHER PLATFORMS
|
||||
PORTING LIBUSB TO OTHER PLATFORMS
|
||||
|
||||
Introduction
|
||||
============
|
||||
|
||||
This document is aimed at developers wishing to port libusbx to unsupported
|
||||
platforms. I believe the libusbx API is OS-independent, so by supporting
|
||||
This document is aimed at developers wishing to port libusb to unsupported
|
||||
platforms. I believe the libusb API is OS-independent, so by supporting
|
||||
multiple operating systems we pave the way for cross-platform USB device
|
||||
drivers.
|
||||
|
||||
Implementation-wise, the basic idea is that you provide an interface to
|
||||
libusbx's internal "backend" API, which performs the appropriate operations on
|
||||
libusb's internal "backend" API, which performs the appropriate operations on
|
||||
your target platform.
|
||||
|
||||
In terms of USB I/O, your backend provides functionality to submit
|
||||
@@ -27,16 +27,16 @@ e.g. setting configuration, obtaining descriptors, etc.
|
||||
File descriptors for I/O polling
|
||||
================================
|
||||
|
||||
For libusbx to work, your event handling function obviously needs to be called
|
||||
For libusb to work, your event handling function obviously needs to be called
|
||||
at various points in time. Your backend must provide a set of file descriptors
|
||||
which libusbx and its users can pass to poll() or select() to determine when
|
||||
which libusb and its users can pass to poll() or select() to determine when
|
||||
it is time to call the event handling function.
|
||||
|
||||
On Linux, this is easy: the usbfs kernel interface exposes a file descriptor
|
||||
which can be passed to poll(). If something similar is not true for your
|
||||
platform, you can emulate this using an internal library thread to reap I/O as
|
||||
necessary, and a pipe() with the main library to raise events. The file
|
||||
descriptor of the pipe can then be provided to libusbx as an event source.
|
||||
descriptor of the pipe can then be provided to libusb as an event source.
|
||||
|
||||
|
||||
Interface semantics and documentation
|
||||
@@ -46,7 +46,7 @@ Documentation of the backend interface can be found in libusbi.h inside the
|
||||
usbi_os_backend structure definition.
|
||||
|
||||
Your implementations of these functions will need to call various internal
|
||||
libusbx functions, prefixed with "usbi_". Documentation for these functions
|
||||
libusb functions, prefixed with "usbi_". Documentation for these functions
|
||||
can be found in the .c files where they are implemented.
|
||||
|
||||
You probably want to skim over *all* the documentation before starting your
|
||||
@@ -72,18 +72,18 @@ right usbi_backend for your platform.
|
||||
|
||||
4. Produce and test your implementation.
|
||||
|
||||
5. Send your implementation to libusbx-devel mailing list.
|
||||
5. Send your implementation to libusb-devel mailing list.
|
||||
|
||||
|
||||
Implementation difficulties? Questions?
|
||||
=======================================
|
||||
|
||||
If you encounter difficulties porting libusbx to your platform, please raise
|
||||
these issues on the libusbx-devel mailing list. Where possible and sensible, I
|
||||
am interested in solving problems preventing libusbx from operating on other
|
||||
If you encounter difficulties porting libusb to your platform, please raise
|
||||
these issues on the libusb-devel mailing list. Where possible and sensible, I
|
||||
am interested in solving problems preventing libusb from operating on other
|
||||
platforms.
|
||||
|
||||
The libusbx-devel mailing list is also a good place to ask questions and
|
||||
The libusb-devel mailing list is also a good place to ask questions and
|
||||
make suggestions about the internal API. Hopefully we can produce some
|
||||
better documentation based on your questions and other input.
|
||||
|
||||
Vendored
+27
@@ -0,0 +1,27 @@
|
||||
libusb
|
||||
======
|
||||
|
||||
libusb is a library for USB device access from Linux, Mac OS X,
|
||||
Windows and OpenBSD/NetBSD userspace.
|
||||
It is written in C and licensed under the GNU Lesser General Public
|
||||
License version 2.1 or, at your option, any later version (see COPYING).
|
||||
|
||||
libusb is abstracted internally in such a way that it can hopefully
|
||||
be ported to other operating systems. Please see the PORTING file
|
||||
for more information.
|
||||
|
||||
libusb homepage:
|
||||
http://libusb.info/
|
||||
|
||||
Developers will wish to consult the API documentation:
|
||||
http://api.libusb.info
|
||||
|
||||
Use the mailing list for questions, comments, etc:
|
||||
http://mailing-list.libusb.info
|
||||
|
||||
- Pete Batard <pete@akeo.ie>
|
||||
- Hans de Goede <hdegoede@redhat.com>
|
||||
- Xiaofan Chen <xiaofanc@gmail.com>
|
||||
- Ludovic Rousseau <ludovic.rousseau@gmail.com>
|
||||
- Nathan Hjelm <hjelmn@users.sourceforge.net>
|
||||
(Please use the mailing list rather than mailing developers directly)
|
||||
Vendored
+2
@@ -0,0 +1,2 @@
|
||||
Please see the libusb roadmap by visiting:
|
||||
https://github.com/libusb/libusb/issues/milestones?direction=asc&sort=due_date
|
||||
@@ -1,16 +1,19 @@
|
||||
all: libusb-1.0.la libusb-1.0.dll
|
||||
|
||||
AUTOMAKE_OPTIONS = subdir-objects
|
||||
|
||||
lib_LTLIBRARIES = libusb-1.0.la
|
||||
|
||||
POSIX_POLL_SRC = os/poll_posix.c
|
||||
LINUX_USBFS_SRC = os/linux_usbfs.c
|
||||
DARWIN_USB_SRC = os/darwin_usb.c
|
||||
OPENBSD_USB_SRC = os/openbsd_usb.c
|
||||
NETBSD_USB_SRC = os/netbsd_usb.c
|
||||
WINDOWS_USB_SRC = os/poll_windows.c os/windows_usb.c libusb-1.0.rc libusb-1.0.def
|
||||
WINCE_USB_SRC = os/wince_usb.c os/wince_usb.h
|
||||
|
||||
EXTRA_DIST = $(LINUX_USBFS_SRC) $(DARWIN_USB_SRC) $(OPENBSD_USB_SRC) \
|
||||
$(WINDOWS_USB_SRC) $(WINCE_USB_SRC) \
|
||||
$(NETBSD_USB_SRC) $(WINDOWS_USB_SRC) $(WINCE_USB_SRC) \
|
||||
$(POSIX_POLL_SRC) \
|
||||
os/threads_posix.c os/threads_windows.c \
|
||||
os/linux_udev.c os/linux_netlink.c
|
||||
@@ -36,6 +39,10 @@ if OS_OPENBSD
|
||||
OS_SRC = $(OPENBSD_USB_SRC) $(POSIX_POLL_SRC)
|
||||
endif
|
||||
|
||||
if OS_NETBSD
|
||||
OS_SRC = $(NETBSD_USB_SRC) $(POSIX_POLL_SRC)
|
||||
endif
|
||||
|
||||
if OS_WINDOWS
|
||||
OS_SRC = $(WINDOWS_USB_SRC)
|
||||
|
||||
@@ -45,7 +52,7 @@ OS_SRC = $(WINDOWS_USB_SRC)
|
||||
libusb-1.0.rc: version.h version_nano.h
|
||||
endif
|
||||
|
||||
libusb-1.0.dll: libusb-1.0.def
|
||||
libusb-1.0.dll: libusb-1.0.def libusb-1.0.la
|
||||
if CREATE_IMPORT_LIB
|
||||
# Rebuild the import lib from the .def so that MS and MinGW DLLs can be interchanged
|
||||
$(AM_V_GEN)$(DLLTOOL) $(DLLTOOLFLAGS) --kill-at --input-def $(srcdir)/libusb-1.0.def --dllname $@ --output-lib .libs/$@.a
|
||||
+146
-92
@@ -1,4 +1,4 @@
|
||||
# Makefile.in generated by automake 1.13.4 from Makefile.am.
|
||||
# Makefile.in generated by automake 1.14.1 from Makefile.am.
|
||||
# @configure_input@
|
||||
|
||||
# Copyright (C) 1994-2013 Free Software Foundation, Inc.
|
||||
@@ -129,30 +129,36 @@ am__libusb_1_0_la_SOURCES_DIST = libusbi.h core.c descriptor.c io.c \
|
||||
os/threads_windows.h os/threads_windows.c os/threads_posix.h \
|
||||
os/threads_posix.c os/darwin_usb.c os/poll_posix.c \
|
||||
os/linux_usbfs.c os/linux_netlink.c os/linux_udev.c \
|
||||
os/openbsd_usb.c os/poll_windows.c os/windows_usb.c \
|
||||
libusb-1.0.rc libusb-1.0.def os/poll_posix.h os/poll_windows.h
|
||||
@THREADS_POSIX_FALSE@am__objects_1 = libusb_1_0_la-threads_windows.lo
|
||||
@THREADS_POSIX_TRUE@am__objects_1 = libusb_1_0_la-threads_posix.lo
|
||||
am__objects_2 = libusb_1_0_la-darwin_usb.lo
|
||||
am__objects_3 = libusb_1_0_la-poll_posix.lo
|
||||
am__objects_4 = libusb_1_0_la-linux_usbfs.lo
|
||||
am__objects_5 = libusb_1_0_la-openbsd_usb.lo
|
||||
am__objects_6 = libusb_1_0_la-poll_windows.lo \
|
||||
libusb_1_0_la-windows_usb.lo libusb-1.0.lo
|
||||
@OS_DARWIN_FALSE@@OS_LINUX_FALSE@@OS_OPENBSD_FALSE@@OS_WINDOWS_TRUE@am__objects_7 = $(am__objects_6)
|
||||
@OS_DARWIN_FALSE@@OS_LINUX_FALSE@@OS_OPENBSD_TRUE@am__objects_7 = $(am__objects_5) \
|
||||
@OS_DARWIN_FALSE@@OS_LINUX_FALSE@@OS_OPENBSD_TRUE@ $(am__objects_3)
|
||||
@OS_DARWIN_FALSE@@OS_LINUX_TRUE@@USE_UDEV_FALSE@am__objects_7 = $(am__objects_4) \
|
||||
os/netbsd_usb.c os/openbsd_usb.c os/poll_windows.c \
|
||||
os/windows_usb.c libusb-1.0.rc libusb-1.0.def os/poll_posix.h \
|
||||
os/poll_windows.h
|
||||
am__dirstamp = $(am__leading_dot)dirstamp
|
||||
@THREADS_POSIX_FALSE@am__objects_1 = \
|
||||
@THREADS_POSIX_FALSE@ os/libusb_1_0_la-threads_windows.lo
|
||||
@THREADS_POSIX_TRUE@am__objects_1 = os/libusb_1_0_la-threads_posix.lo
|
||||
am__objects_2 = os/libusb_1_0_la-darwin_usb.lo
|
||||
am__objects_3 = os/libusb_1_0_la-poll_posix.lo
|
||||
am__objects_4 = os/libusb_1_0_la-linux_usbfs.lo
|
||||
am__objects_5 = os/libusb_1_0_la-netbsd_usb.lo
|
||||
am__objects_6 = os/libusb_1_0_la-openbsd_usb.lo
|
||||
am__objects_7 = os/libusb_1_0_la-poll_windows.lo \
|
||||
os/libusb_1_0_la-windows_usb.lo libusb-1.0.lo
|
||||
@OS_DARWIN_FALSE@@OS_LINUX_FALSE@@OS_NETBSD_FALSE@@OS_OPENBSD_FALSE@@OS_WINDOWS_TRUE@am__objects_8 = $(am__objects_7)
|
||||
@OS_DARWIN_FALSE@@OS_LINUX_FALSE@@OS_NETBSD_FALSE@@OS_OPENBSD_TRUE@am__objects_8 = $(am__objects_6) \
|
||||
@OS_DARWIN_FALSE@@OS_LINUX_FALSE@@OS_NETBSD_FALSE@@OS_OPENBSD_TRUE@ $(am__objects_3)
|
||||
@OS_DARWIN_FALSE@@OS_LINUX_FALSE@@OS_NETBSD_TRUE@am__objects_8 = $(am__objects_5) \
|
||||
@OS_DARWIN_FALSE@@OS_LINUX_FALSE@@OS_NETBSD_TRUE@ $(am__objects_3)
|
||||
@OS_DARWIN_FALSE@@OS_LINUX_TRUE@@USE_UDEV_FALSE@am__objects_8 = $(am__objects_4) \
|
||||
@OS_DARWIN_FALSE@@OS_LINUX_TRUE@@USE_UDEV_FALSE@ $(am__objects_3) \
|
||||
@OS_DARWIN_FALSE@@OS_LINUX_TRUE@@USE_UDEV_FALSE@ libusb_1_0_la-linux_netlink.lo
|
||||
@OS_DARWIN_FALSE@@OS_LINUX_TRUE@@USE_UDEV_TRUE@am__objects_7 = $(am__objects_4) \
|
||||
@OS_DARWIN_FALSE@@OS_LINUX_TRUE@@USE_UDEV_FALSE@ os/libusb_1_0_la-linux_netlink.lo
|
||||
@OS_DARWIN_FALSE@@OS_LINUX_TRUE@@USE_UDEV_TRUE@am__objects_8 = $(am__objects_4) \
|
||||
@OS_DARWIN_FALSE@@OS_LINUX_TRUE@@USE_UDEV_TRUE@ $(am__objects_3) \
|
||||
@OS_DARWIN_FALSE@@OS_LINUX_TRUE@@USE_UDEV_TRUE@ libusb_1_0_la-linux_udev.lo
|
||||
@OS_DARWIN_TRUE@am__objects_7 = $(am__objects_2) $(am__objects_3)
|
||||
@OS_DARWIN_FALSE@@OS_LINUX_TRUE@@USE_UDEV_TRUE@ os/libusb_1_0_la-linux_udev.lo
|
||||
@OS_DARWIN_TRUE@am__objects_8 = $(am__objects_2) $(am__objects_3)
|
||||
am_libusb_1_0_la_OBJECTS = libusb_1_0_la-core.lo \
|
||||
libusb_1_0_la-descriptor.lo libusb_1_0_la-io.lo \
|
||||
libusb_1_0_la-strerror.lo libusb_1_0_la-sync.lo \
|
||||
libusb_1_0_la-hotplug.lo $(am__objects_1) $(am__objects_7)
|
||||
libusb_1_0_la-hotplug.lo $(am__objects_1) $(am__objects_8)
|
||||
libusb_1_0_la_OBJECTS = $(am_libusb_1_0_la_OBJECTS)
|
||||
AM_V_lt = $(am__v_lt_@AM_V@)
|
||||
am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
|
||||
@@ -274,6 +280,7 @@ OBJDUMP = @OBJDUMP@
|
||||
OBJEXT = @OBJEXT@
|
||||
OS_DARWIN = @OS_DARWIN@
|
||||
OS_LINUX = @OS_LINUX@
|
||||
OS_NETBSD = @OS_NETBSD@
|
||||
OS_OPENBSD = @OS_OPENBSD@
|
||||
OS_WINDOWS = @OS_WINDOWS@
|
||||
OTOOL = @OTOOL@
|
||||
@@ -346,15 +353,17 @@ target_alias = @target_alias@
|
||||
top_build_prefix = @top_build_prefix@
|
||||
top_builddir = @top_builddir@
|
||||
top_srcdir = @top_srcdir@
|
||||
AUTOMAKE_OPTIONS = subdir-objects
|
||||
lib_LTLIBRARIES = libusb-1.0.la
|
||||
POSIX_POLL_SRC = os/poll_posix.c
|
||||
LINUX_USBFS_SRC = os/linux_usbfs.c
|
||||
DARWIN_USB_SRC = os/darwin_usb.c
|
||||
OPENBSD_USB_SRC = os/openbsd_usb.c
|
||||
NETBSD_USB_SRC = os/netbsd_usb.c
|
||||
WINDOWS_USB_SRC = os/poll_windows.c os/windows_usb.c libusb-1.0.rc libusb-1.0.def
|
||||
WINCE_USB_SRC = os/wince_usb.c os/wince_usb.h
|
||||
EXTRA_DIST = $(LINUX_USBFS_SRC) $(DARWIN_USB_SRC) $(OPENBSD_USB_SRC) \
|
||||
$(WINDOWS_USB_SRC) $(WINCE_USB_SRC) \
|
||||
$(NETBSD_USB_SRC) $(WINDOWS_USB_SRC) $(WINCE_USB_SRC) \
|
||||
$(POSIX_POLL_SRC) \
|
||||
os/threads_posix.c os/threads_windows.c \
|
||||
os/linux_udev.c os/linux_netlink.c
|
||||
@@ -366,6 +375,7 @@ EXTRA_DIST = $(LINUX_USBFS_SRC) $(DARWIN_USB_SRC) $(OPENBSD_USB_SRC) \
|
||||
@OS_LINUX_TRUE@@USE_UDEV_TRUE@OS_SRC = $(LINUX_USBFS_SRC) $(POSIX_POLL_SRC) \
|
||||
@OS_LINUX_TRUE@@USE_UDEV_TRUE@ os/linux_udev.c
|
||||
|
||||
@OS_NETBSD_TRUE@OS_SRC = $(NETBSD_USB_SRC) $(POSIX_POLL_SRC)
|
||||
@OS_OPENBSD_TRUE@OS_SRC = $(OPENBSD_USB_SRC) $(POSIX_POLL_SRC)
|
||||
@OS_WINDOWS_TRUE@OS_SRC = $(WINDOWS_USB_SRC)
|
||||
@OS_DARWIN_TRUE@AM_CFLAGS_EXT = -no-cpp-precomp
|
||||
@@ -449,50 +459,84 @@ clean-libLTLIBRARIES:
|
||||
echo rm -f $${locs}; \
|
||||
rm -f $${locs}; \
|
||||
}
|
||||
os/$(am__dirstamp):
|
||||
@$(MKDIR_P) os
|
||||
@: > os/$(am__dirstamp)
|
||||
os/$(DEPDIR)/$(am__dirstamp):
|
||||
@$(MKDIR_P) os/$(DEPDIR)
|
||||
@: > os/$(DEPDIR)/$(am__dirstamp)
|
||||
os/libusb_1_0_la-threads_windows.lo: os/$(am__dirstamp) \
|
||||
os/$(DEPDIR)/$(am__dirstamp)
|
||||
os/libusb_1_0_la-threads_posix.lo: os/$(am__dirstamp) \
|
||||
os/$(DEPDIR)/$(am__dirstamp)
|
||||
os/libusb_1_0_la-darwin_usb.lo: os/$(am__dirstamp) \
|
||||
os/$(DEPDIR)/$(am__dirstamp)
|
||||
os/libusb_1_0_la-poll_posix.lo: os/$(am__dirstamp) \
|
||||
os/$(DEPDIR)/$(am__dirstamp)
|
||||
os/libusb_1_0_la-linux_usbfs.lo: os/$(am__dirstamp) \
|
||||
os/$(DEPDIR)/$(am__dirstamp)
|
||||
os/libusb_1_0_la-linux_netlink.lo: os/$(am__dirstamp) \
|
||||
os/$(DEPDIR)/$(am__dirstamp)
|
||||
os/libusb_1_0_la-linux_udev.lo: os/$(am__dirstamp) \
|
||||
os/$(DEPDIR)/$(am__dirstamp)
|
||||
os/libusb_1_0_la-netbsd_usb.lo: os/$(am__dirstamp) \
|
||||
os/$(DEPDIR)/$(am__dirstamp)
|
||||
os/libusb_1_0_la-openbsd_usb.lo: os/$(am__dirstamp) \
|
||||
os/$(DEPDIR)/$(am__dirstamp)
|
||||
os/libusb_1_0_la-poll_windows.lo: os/$(am__dirstamp) \
|
||||
os/$(DEPDIR)/$(am__dirstamp)
|
||||
os/libusb_1_0_la-windows_usb.lo: os/$(am__dirstamp) \
|
||||
os/$(DEPDIR)/$(am__dirstamp)
|
||||
|
||||
libusb-1.0.la: $(libusb_1_0_la_OBJECTS) $(libusb_1_0_la_DEPENDENCIES) $(EXTRA_libusb_1_0_la_DEPENDENCIES)
|
||||
$(AM_V_CCLD)$(libusb_1_0_la_LINK) -rpath $(libdir) $(libusb_1_0_la_OBJECTS) $(libusb_1_0_la_LIBADD) $(LIBS)
|
||||
|
||||
mostlyclean-compile:
|
||||
-rm -f *.$(OBJEXT)
|
||||
-rm -f os/*.$(OBJEXT)
|
||||
-rm -f os/*.lo
|
||||
|
||||
distclean-compile:
|
||||
-rm -f *.tab.c
|
||||
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libusb_1_0_la-core.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libusb_1_0_la-darwin_usb.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libusb_1_0_la-descriptor.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libusb_1_0_la-hotplug.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libusb_1_0_la-io.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libusb_1_0_la-linux_netlink.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libusb_1_0_la-linux_udev.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libusb_1_0_la-linux_usbfs.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libusb_1_0_la-openbsd_usb.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libusb_1_0_la-poll_posix.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libusb_1_0_la-poll_windows.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libusb_1_0_la-strerror.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libusb_1_0_la-sync.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libusb_1_0_la-threads_posix.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libusb_1_0_la-threads_windows.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libusb_1_0_la-windows_usb.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@os/$(DEPDIR)/libusb_1_0_la-darwin_usb.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@os/$(DEPDIR)/libusb_1_0_la-linux_netlink.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@os/$(DEPDIR)/libusb_1_0_la-linux_udev.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@os/$(DEPDIR)/libusb_1_0_la-linux_usbfs.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@os/$(DEPDIR)/libusb_1_0_la-netbsd_usb.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@os/$(DEPDIR)/libusb_1_0_la-openbsd_usb.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@os/$(DEPDIR)/libusb_1_0_la-poll_posix.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@os/$(DEPDIR)/libusb_1_0_la-poll_windows.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@os/$(DEPDIR)/libusb_1_0_la-threads_posix.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@os/$(DEPDIR)/libusb_1_0_la-threads_windows.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@os/$(DEPDIR)/libusb_1_0_la-windows_usb.Plo@am__quote@
|
||||
|
||||
.c.o:
|
||||
@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
|
||||
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
|
||||
@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
|
||||
@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
|
||||
@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c $<
|
||||
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
|
||||
|
||||
.c.obj:
|
||||
@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
|
||||
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
|
||||
@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\
|
||||
@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\
|
||||
@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'`
|
||||
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
|
||||
|
||||
.c.lo:
|
||||
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
|
||||
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
|
||||
@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\
|
||||
@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
|
||||
@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Plo
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $<
|
||||
@@ -539,81 +583,89 @@ libusb_1_0_la-hotplug.lo: hotplug.c
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libusb_1_0_la_CFLAGS) $(CFLAGS) -c -o libusb_1_0_la-hotplug.lo `test -f 'hotplug.c' || echo '$(srcdir)/'`hotplug.c
|
||||
|
||||
libusb_1_0_la-threads_windows.lo: os/threads_windows.c
|
||||
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libusb_1_0_la_CFLAGS) $(CFLAGS) -MT libusb_1_0_la-threads_windows.lo -MD -MP -MF $(DEPDIR)/libusb_1_0_la-threads_windows.Tpo -c -o libusb_1_0_la-threads_windows.lo `test -f 'os/threads_windows.c' || echo '$(srcdir)/'`os/threads_windows.c
|
||||
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libusb_1_0_la-threads_windows.Tpo $(DEPDIR)/libusb_1_0_la-threads_windows.Plo
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='os/threads_windows.c' object='libusb_1_0_la-threads_windows.lo' libtool=yes @AMDEPBACKSLASH@
|
||||
os/libusb_1_0_la-threads_windows.lo: os/threads_windows.c
|
||||
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libusb_1_0_la_CFLAGS) $(CFLAGS) -MT os/libusb_1_0_la-threads_windows.lo -MD -MP -MF os/$(DEPDIR)/libusb_1_0_la-threads_windows.Tpo -c -o os/libusb_1_0_la-threads_windows.lo `test -f 'os/threads_windows.c' || echo '$(srcdir)/'`os/threads_windows.c
|
||||
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) os/$(DEPDIR)/libusb_1_0_la-threads_windows.Tpo os/$(DEPDIR)/libusb_1_0_la-threads_windows.Plo
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='os/threads_windows.c' object='os/libusb_1_0_la-threads_windows.lo' libtool=yes @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libusb_1_0_la_CFLAGS) $(CFLAGS) -c -o libusb_1_0_la-threads_windows.lo `test -f 'os/threads_windows.c' || echo '$(srcdir)/'`os/threads_windows.c
|
||||
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libusb_1_0_la_CFLAGS) $(CFLAGS) -c -o os/libusb_1_0_la-threads_windows.lo `test -f 'os/threads_windows.c' || echo '$(srcdir)/'`os/threads_windows.c
|
||||
|
||||
libusb_1_0_la-threads_posix.lo: os/threads_posix.c
|
||||
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libusb_1_0_la_CFLAGS) $(CFLAGS) -MT libusb_1_0_la-threads_posix.lo -MD -MP -MF $(DEPDIR)/libusb_1_0_la-threads_posix.Tpo -c -o libusb_1_0_la-threads_posix.lo `test -f 'os/threads_posix.c' || echo '$(srcdir)/'`os/threads_posix.c
|
||||
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libusb_1_0_la-threads_posix.Tpo $(DEPDIR)/libusb_1_0_la-threads_posix.Plo
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='os/threads_posix.c' object='libusb_1_0_la-threads_posix.lo' libtool=yes @AMDEPBACKSLASH@
|
||||
os/libusb_1_0_la-threads_posix.lo: os/threads_posix.c
|
||||
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libusb_1_0_la_CFLAGS) $(CFLAGS) -MT os/libusb_1_0_la-threads_posix.lo -MD -MP -MF os/$(DEPDIR)/libusb_1_0_la-threads_posix.Tpo -c -o os/libusb_1_0_la-threads_posix.lo `test -f 'os/threads_posix.c' || echo '$(srcdir)/'`os/threads_posix.c
|
||||
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) os/$(DEPDIR)/libusb_1_0_la-threads_posix.Tpo os/$(DEPDIR)/libusb_1_0_la-threads_posix.Plo
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='os/threads_posix.c' object='os/libusb_1_0_la-threads_posix.lo' libtool=yes @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libusb_1_0_la_CFLAGS) $(CFLAGS) -c -o libusb_1_0_la-threads_posix.lo `test -f 'os/threads_posix.c' || echo '$(srcdir)/'`os/threads_posix.c
|
||||
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libusb_1_0_la_CFLAGS) $(CFLAGS) -c -o os/libusb_1_0_la-threads_posix.lo `test -f 'os/threads_posix.c' || echo '$(srcdir)/'`os/threads_posix.c
|
||||
|
||||
libusb_1_0_la-darwin_usb.lo: os/darwin_usb.c
|
||||
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libusb_1_0_la_CFLAGS) $(CFLAGS) -MT libusb_1_0_la-darwin_usb.lo -MD -MP -MF $(DEPDIR)/libusb_1_0_la-darwin_usb.Tpo -c -o libusb_1_0_la-darwin_usb.lo `test -f 'os/darwin_usb.c' || echo '$(srcdir)/'`os/darwin_usb.c
|
||||
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libusb_1_0_la-darwin_usb.Tpo $(DEPDIR)/libusb_1_0_la-darwin_usb.Plo
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='os/darwin_usb.c' object='libusb_1_0_la-darwin_usb.lo' libtool=yes @AMDEPBACKSLASH@
|
||||
os/libusb_1_0_la-darwin_usb.lo: os/darwin_usb.c
|
||||
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libusb_1_0_la_CFLAGS) $(CFLAGS) -MT os/libusb_1_0_la-darwin_usb.lo -MD -MP -MF os/$(DEPDIR)/libusb_1_0_la-darwin_usb.Tpo -c -o os/libusb_1_0_la-darwin_usb.lo `test -f 'os/darwin_usb.c' || echo '$(srcdir)/'`os/darwin_usb.c
|
||||
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) os/$(DEPDIR)/libusb_1_0_la-darwin_usb.Tpo os/$(DEPDIR)/libusb_1_0_la-darwin_usb.Plo
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='os/darwin_usb.c' object='os/libusb_1_0_la-darwin_usb.lo' libtool=yes @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libusb_1_0_la_CFLAGS) $(CFLAGS) -c -o libusb_1_0_la-darwin_usb.lo `test -f 'os/darwin_usb.c' || echo '$(srcdir)/'`os/darwin_usb.c
|
||||
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libusb_1_0_la_CFLAGS) $(CFLAGS) -c -o os/libusb_1_0_la-darwin_usb.lo `test -f 'os/darwin_usb.c' || echo '$(srcdir)/'`os/darwin_usb.c
|
||||
|
||||
libusb_1_0_la-poll_posix.lo: os/poll_posix.c
|
||||
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libusb_1_0_la_CFLAGS) $(CFLAGS) -MT libusb_1_0_la-poll_posix.lo -MD -MP -MF $(DEPDIR)/libusb_1_0_la-poll_posix.Tpo -c -o libusb_1_0_la-poll_posix.lo `test -f 'os/poll_posix.c' || echo '$(srcdir)/'`os/poll_posix.c
|
||||
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libusb_1_0_la-poll_posix.Tpo $(DEPDIR)/libusb_1_0_la-poll_posix.Plo
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='os/poll_posix.c' object='libusb_1_0_la-poll_posix.lo' libtool=yes @AMDEPBACKSLASH@
|
||||
os/libusb_1_0_la-poll_posix.lo: os/poll_posix.c
|
||||
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libusb_1_0_la_CFLAGS) $(CFLAGS) -MT os/libusb_1_0_la-poll_posix.lo -MD -MP -MF os/$(DEPDIR)/libusb_1_0_la-poll_posix.Tpo -c -o os/libusb_1_0_la-poll_posix.lo `test -f 'os/poll_posix.c' || echo '$(srcdir)/'`os/poll_posix.c
|
||||
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) os/$(DEPDIR)/libusb_1_0_la-poll_posix.Tpo os/$(DEPDIR)/libusb_1_0_la-poll_posix.Plo
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='os/poll_posix.c' object='os/libusb_1_0_la-poll_posix.lo' libtool=yes @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libusb_1_0_la_CFLAGS) $(CFLAGS) -c -o libusb_1_0_la-poll_posix.lo `test -f 'os/poll_posix.c' || echo '$(srcdir)/'`os/poll_posix.c
|
||||
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libusb_1_0_la_CFLAGS) $(CFLAGS) -c -o os/libusb_1_0_la-poll_posix.lo `test -f 'os/poll_posix.c' || echo '$(srcdir)/'`os/poll_posix.c
|
||||
|
||||
libusb_1_0_la-linux_usbfs.lo: os/linux_usbfs.c
|
||||
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libusb_1_0_la_CFLAGS) $(CFLAGS) -MT libusb_1_0_la-linux_usbfs.lo -MD -MP -MF $(DEPDIR)/libusb_1_0_la-linux_usbfs.Tpo -c -o libusb_1_0_la-linux_usbfs.lo `test -f 'os/linux_usbfs.c' || echo '$(srcdir)/'`os/linux_usbfs.c
|
||||
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libusb_1_0_la-linux_usbfs.Tpo $(DEPDIR)/libusb_1_0_la-linux_usbfs.Plo
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='os/linux_usbfs.c' object='libusb_1_0_la-linux_usbfs.lo' libtool=yes @AMDEPBACKSLASH@
|
||||
os/libusb_1_0_la-linux_usbfs.lo: os/linux_usbfs.c
|
||||
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libusb_1_0_la_CFLAGS) $(CFLAGS) -MT os/libusb_1_0_la-linux_usbfs.lo -MD -MP -MF os/$(DEPDIR)/libusb_1_0_la-linux_usbfs.Tpo -c -o os/libusb_1_0_la-linux_usbfs.lo `test -f 'os/linux_usbfs.c' || echo '$(srcdir)/'`os/linux_usbfs.c
|
||||
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) os/$(DEPDIR)/libusb_1_0_la-linux_usbfs.Tpo os/$(DEPDIR)/libusb_1_0_la-linux_usbfs.Plo
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='os/linux_usbfs.c' object='os/libusb_1_0_la-linux_usbfs.lo' libtool=yes @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libusb_1_0_la_CFLAGS) $(CFLAGS) -c -o libusb_1_0_la-linux_usbfs.lo `test -f 'os/linux_usbfs.c' || echo '$(srcdir)/'`os/linux_usbfs.c
|
||||
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libusb_1_0_la_CFLAGS) $(CFLAGS) -c -o os/libusb_1_0_la-linux_usbfs.lo `test -f 'os/linux_usbfs.c' || echo '$(srcdir)/'`os/linux_usbfs.c
|
||||
|
||||
libusb_1_0_la-linux_netlink.lo: os/linux_netlink.c
|
||||
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libusb_1_0_la_CFLAGS) $(CFLAGS) -MT libusb_1_0_la-linux_netlink.lo -MD -MP -MF $(DEPDIR)/libusb_1_0_la-linux_netlink.Tpo -c -o libusb_1_0_la-linux_netlink.lo `test -f 'os/linux_netlink.c' || echo '$(srcdir)/'`os/linux_netlink.c
|
||||
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libusb_1_0_la-linux_netlink.Tpo $(DEPDIR)/libusb_1_0_la-linux_netlink.Plo
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='os/linux_netlink.c' object='libusb_1_0_la-linux_netlink.lo' libtool=yes @AMDEPBACKSLASH@
|
||||
os/libusb_1_0_la-linux_netlink.lo: os/linux_netlink.c
|
||||
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libusb_1_0_la_CFLAGS) $(CFLAGS) -MT os/libusb_1_0_la-linux_netlink.lo -MD -MP -MF os/$(DEPDIR)/libusb_1_0_la-linux_netlink.Tpo -c -o os/libusb_1_0_la-linux_netlink.lo `test -f 'os/linux_netlink.c' || echo '$(srcdir)/'`os/linux_netlink.c
|
||||
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) os/$(DEPDIR)/libusb_1_0_la-linux_netlink.Tpo os/$(DEPDIR)/libusb_1_0_la-linux_netlink.Plo
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='os/linux_netlink.c' object='os/libusb_1_0_la-linux_netlink.lo' libtool=yes @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libusb_1_0_la_CFLAGS) $(CFLAGS) -c -o libusb_1_0_la-linux_netlink.lo `test -f 'os/linux_netlink.c' || echo '$(srcdir)/'`os/linux_netlink.c
|
||||
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libusb_1_0_la_CFLAGS) $(CFLAGS) -c -o os/libusb_1_0_la-linux_netlink.lo `test -f 'os/linux_netlink.c' || echo '$(srcdir)/'`os/linux_netlink.c
|
||||
|
||||
libusb_1_0_la-linux_udev.lo: os/linux_udev.c
|
||||
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libusb_1_0_la_CFLAGS) $(CFLAGS) -MT libusb_1_0_la-linux_udev.lo -MD -MP -MF $(DEPDIR)/libusb_1_0_la-linux_udev.Tpo -c -o libusb_1_0_la-linux_udev.lo `test -f 'os/linux_udev.c' || echo '$(srcdir)/'`os/linux_udev.c
|
||||
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libusb_1_0_la-linux_udev.Tpo $(DEPDIR)/libusb_1_0_la-linux_udev.Plo
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='os/linux_udev.c' object='libusb_1_0_la-linux_udev.lo' libtool=yes @AMDEPBACKSLASH@
|
||||
os/libusb_1_0_la-linux_udev.lo: os/linux_udev.c
|
||||
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libusb_1_0_la_CFLAGS) $(CFLAGS) -MT os/libusb_1_0_la-linux_udev.lo -MD -MP -MF os/$(DEPDIR)/libusb_1_0_la-linux_udev.Tpo -c -o os/libusb_1_0_la-linux_udev.lo `test -f 'os/linux_udev.c' || echo '$(srcdir)/'`os/linux_udev.c
|
||||
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) os/$(DEPDIR)/libusb_1_0_la-linux_udev.Tpo os/$(DEPDIR)/libusb_1_0_la-linux_udev.Plo
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='os/linux_udev.c' object='os/libusb_1_0_la-linux_udev.lo' libtool=yes @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libusb_1_0_la_CFLAGS) $(CFLAGS) -c -o libusb_1_0_la-linux_udev.lo `test -f 'os/linux_udev.c' || echo '$(srcdir)/'`os/linux_udev.c
|
||||
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libusb_1_0_la_CFLAGS) $(CFLAGS) -c -o os/libusb_1_0_la-linux_udev.lo `test -f 'os/linux_udev.c' || echo '$(srcdir)/'`os/linux_udev.c
|
||||
|
||||
libusb_1_0_la-openbsd_usb.lo: os/openbsd_usb.c
|
||||
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libusb_1_0_la_CFLAGS) $(CFLAGS) -MT libusb_1_0_la-openbsd_usb.lo -MD -MP -MF $(DEPDIR)/libusb_1_0_la-openbsd_usb.Tpo -c -o libusb_1_0_la-openbsd_usb.lo `test -f 'os/openbsd_usb.c' || echo '$(srcdir)/'`os/openbsd_usb.c
|
||||
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libusb_1_0_la-openbsd_usb.Tpo $(DEPDIR)/libusb_1_0_la-openbsd_usb.Plo
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='os/openbsd_usb.c' object='libusb_1_0_la-openbsd_usb.lo' libtool=yes @AMDEPBACKSLASH@
|
||||
os/libusb_1_0_la-netbsd_usb.lo: os/netbsd_usb.c
|
||||
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libusb_1_0_la_CFLAGS) $(CFLAGS) -MT os/libusb_1_0_la-netbsd_usb.lo -MD -MP -MF os/$(DEPDIR)/libusb_1_0_la-netbsd_usb.Tpo -c -o os/libusb_1_0_la-netbsd_usb.lo `test -f 'os/netbsd_usb.c' || echo '$(srcdir)/'`os/netbsd_usb.c
|
||||
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) os/$(DEPDIR)/libusb_1_0_la-netbsd_usb.Tpo os/$(DEPDIR)/libusb_1_0_la-netbsd_usb.Plo
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='os/netbsd_usb.c' object='os/libusb_1_0_la-netbsd_usb.lo' libtool=yes @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libusb_1_0_la_CFLAGS) $(CFLAGS) -c -o libusb_1_0_la-openbsd_usb.lo `test -f 'os/openbsd_usb.c' || echo '$(srcdir)/'`os/openbsd_usb.c
|
||||
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libusb_1_0_la_CFLAGS) $(CFLAGS) -c -o os/libusb_1_0_la-netbsd_usb.lo `test -f 'os/netbsd_usb.c' || echo '$(srcdir)/'`os/netbsd_usb.c
|
||||
|
||||
libusb_1_0_la-poll_windows.lo: os/poll_windows.c
|
||||
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libusb_1_0_la_CFLAGS) $(CFLAGS) -MT libusb_1_0_la-poll_windows.lo -MD -MP -MF $(DEPDIR)/libusb_1_0_la-poll_windows.Tpo -c -o libusb_1_0_la-poll_windows.lo `test -f 'os/poll_windows.c' || echo '$(srcdir)/'`os/poll_windows.c
|
||||
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libusb_1_0_la-poll_windows.Tpo $(DEPDIR)/libusb_1_0_la-poll_windows.Plo
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='os/poll_windows.c' object='libusb_1_0_la-poll_windows.lo' libtool=yes @AMDEPBACKSLASH@
|
||||
os/libusb_1_0_la-openbsd_usb.lo: os/openbsd_usb.c
|
||||
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libusb_1_0_la_CFLAGS) $(CFLAGS) -MT os/libusb_1_0_la-openbsd_usb.lo -MD -MP -MF os/$(DEPDIR)/libusb_1_0_la-openbsd_usb.Tpo -c -o os/libusb_1_0_la-openbsd_usb.lo `test -f 'os/openbsd_usb.c' || echo '$(srcdir)/'`os/openbsd_usb.c
|
||||
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) os/$(DEPDIR)/libusb_1_0_la-openbsd_usb.Tpo os/$(DEPDIR)/libusb_1_0_la-openbsd_usb.Plo
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='os/openbsd_usb.c' object='os/libusb_1_0_la-openbsd_usb.lo' libtool=yes @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libusb_1_0_la_CFLAGS) $(CFLAGS) -c -o libusb_1_0_la-poll_windows.lo `test -f 'os/poll_windows.c' || echo '$(srcdir)/'`os/poll_windows.c
|
||||
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libusb_1_0_la_CFLAGS) $(CFLAGS) -c -o os/libusb_1_0_la-openbsd_usb.lo `test -f 'os/openbsd_usb.c' || echo '$(srcdir)/'`os/openbsd_usb.c
|
||||
|
||||
libusb_1_0_la-windows_usb.lo: os/windows_usb.c
|
||||
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libusb_1_0_la_CFLAGS) $(CFLAGS) -MT libusb_1_0_la-windows_usb.lo -MD -MP -MF $(DEPDIR)/libusb_1_0_la-windows_usb.Tpo -c -o libusb_1_0_la-windows_usb.lo `test -f 'os/windows_usb.c' || echo '$(srcdir)/'`os/windows_usb.c
|
||||
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libusb_1_0_la-windows_usb.Tpo $(DEPDIR)/libusb_1_0_la-windows_usb.Plo
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='os/windows_usb.c' object='libusb_1_0_la-windows_usb.lo' libtool=yes @AMDEPBACKSLASH@
|
||||
os/libusb_1_0_la-poll_windows.lo: os/poll_windows.c
|
||||
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libusb_1_0_la_CFLAGS) $(CFLAGS) -MT os/libusb_1_0_la-poll_windows.lo -MD -MP -MF os/$(DEPDIR)/libusb_1_0_la-poll_windows.Tpo -c -o os/libusb_1_0_la-poll_windows.lo `test -f 'os/poll_windows.c' || echo '$(srcdir)/'`os/poll_windows.c
|
||||
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) os/$(DEPDIR)/libusb_1_0_la-poll_windows.Tpo os/$(DEPDIR)/libusb_1_0_la-poll_windows.Plo
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='os/poll_windows.c' object='os/libusb_1_0_la-poll_windows.lo' libtool=yes @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libusb_1_0_la_CFLAGS) $(CFLAGS) -c -o libusb_1_0_la-windows_usb.lo `test -f 'os/windows_usb.c' || echo '$(srcdir)/'`os/windows_usb.c
|
||||
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libusb_1_0_la_CFLAGS) $(CFLAGS) -c -o os/libusb_1_0_la-poll_windows.lo `test -f 'os/poll_windows.c' || echo '$(srcdir)/'`os/poll_windows.c
|
||||
|
||||
os/libusb_1_0_la-windows_usb.lo: os/windows_usb.c
|
||||
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libusb_1_0_la_CFLAGS) $(CFLAGS) -MT os/libusb_1_0_la-windows_usb.lo -MD -MP -MF os/$(DEPDIR)/libusb_1_0_la-windows_usb.Tpo -c -o os/libusb_1_0_la-windows_usb.lo `test -f 'os/windows_usb.c' || echo '$(srcdir)/'`os/windows_usb.c
|
||||
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) os/$(DEPDIR)/libusb_1_0_la-windows_usb.Tpo os/$(DEPDIR)/libusb_1_0_la-windows_usb.Plo
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='os/windows_usb.c' object='os/libusb_1_0_la-windows_usb.lo' libtool=yes @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libusb_1_0_la_CFLAGS) $(CFLAGS) -c -o os/libusb_1_0_la-windows_usb.lo `test -f 'os/windows_usb.c' || echo '$(srcdir)/'`os/windows_usb.c
|
||||
|
||||
mostlyclean-libtool:
|
||||
-rm -f *.lo
|
||||
|
||||
clean-libtool:
|
||||
-rm -rf .libs _libs
|
||||
-rm -rf os/.libs os/_libs
|
||||
install-hdrHEADERS: $(hdr_HEADERS)
|
||||
@$(NORMAL_INSTALL)
|
||||
@list='$(hdr_HEADERS)'; test -n "$(hdrdir)" || list=; \
|
||||
@@ -751,6 +803,8 @@ clean-generic:
|
||||
distclean-generic:
|
||||
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
||||
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
|
||||
-rm -f os/$(DEPDIR)/$(am__dirstamp)
|
||||
-rm -f os/$(am__dirstamp)
|
||||
|
||||
maintainer-clean-generic:
|
||||
@echo "This command is intended for maintainers to use"
|
||||
@@ -761,7 +815,7 @@ clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \
|
||||
mostlyclean-am
|
||||
|
||||
distclean: distclean-am
|
||||
-rm -rf ./$(DEPDIR)
|
||||
-rm -rf ./$(DEPDIR) os/$(DEPDIR)
|
||||
-rm -f Makefile
|
||||
distclean-am: clean-am distclean-compile distclean-generic \
|
||||
distclean-tags
|
||||
@@ -807,7 +861,7 @@ install-ps-am:
|
||||
installcheck-am:
|
||||
|
||||
maintainer-clean: maintainer-clean-am
|
||||
-rm -rf ./$(DEPDIR)
|
||||
-rm -rf ./$(DEPDIR) os/$(DEPDIR)
|
||||
-rm -f Makefile
|
||||
maintainer-clean-am: distclean-am maintainer-clean-generic
|
||||
|
||||
@@ -851,7 +905,7 @@ all: libusb-1.0.la libusb-1.0.dll
|
||||
|
||||
@OS_WINDOWS_TRUE@libusb-1.0.rc: version.h version_nano.h
|
||||
|
||||
libusb-1.0.dll: libusb-1.0.def
|
||||
libusb-1.0.dll: libusb-1.0.def libusb-1.0.la
|
||||
# Rebuild the import lib from the .def so that MS and MinGW DLLs can be interchanged
|
||||
@CREATE_IMPORT_LIB_TRUE@ $(AM_V_GEN)$(DLLTOOL) $(DLLTOOLFLAGS) --kill-at --input-def $(srcdir)/libusb-1.0.def --dllname $@ --output-lib .libs/$@.a
|
||||
|
||||
+233
-127
File diff suppressed because it is too large
Load Diff
+6
-4
@@ -1,6 +1,6 @@
|
||||
/* -*- Mode: C; indent-tabs-mode:t ; c-basic-offset:8 -*- */
|
||||
/*
|
||||
* USB descriptor handling functions for libusbx
|
||||
* USB descriptor handling functions for libusb
|
||||
* Copyright © 2007 Daniel Drake <dsd@gentoo.org>
|
||||
* Copyright © 2001 Johannes Erdfelt <johannes@erdfelt.com>
|
||||
*
|
||||
@@ -541,7 +541,7 @@ int usbi_device_cache_descriptor(libusb_device *dev)
|
||||
*
|
||||
* This is a non-blocking function; the device descriptor is cached in memory.
|
||||
*
|
||||
* Note since libusbx-1.0.16, \ref LIBUSBX_API_VERSION >= 0x01000102, this
|
||||
* Note since libusb-1.0.16, \ref LIBUSB_API_VERSION >= 0x01000102, this
|
||||
* function always succeeds.
|
||||
*
|
||||
* \param dev the device
|
||||
@@ -660,7 +660,7 @@ int API_EXPORTED libusb_get_config_descriptor(libusb_device *dev,
|
||||
/* iterate through all configurations, returning the index of the configuration
|
||||
* matching a specific bConfigurationValue in the idx output parameter, or -1
|
||||
* if the config was not found.
|
||||
* returns 0 or a LIBUSB_ERROR code
|
||||
* returns 0 on success or a LIBUSB_ERROR code
|
||||
*/
|
||||
int usbi_get_config_index_by_value(struct libusb_device *dev,
|
||||
uint8_t bConfigurationValue, int *idx)
|
||||
@@ -673,8 +673,10 @@ int usbi_get_config_index_by_value(struct libusb_device *dev,
|
||||
int host_endian;
|
||||
int r = usbi_backend->get_config_descriptor(dev, i, tmp, sizeof(tmp),
|
||||
&host_endian);
|
||||
if (r < 0)
|
||||
if (r < 0) {
|
||||
*idx = -1;
|
||||
return r;
|
||||
}
|
||||
if (tmp[5] == bConfigurationValue) {
|
||||
*idx = i;
|
||||
return 0;
|
||||
@@ -1,6 +1,6 @@
|
||||
/* -*- Mode: C; indent-tabs-mode:t ; c-basic-offset:8 -*- */
|
||||
/*
|
||||
* Hotplug functions for libusbx
|
||||
* Hotplug functions for libusb
|
||||
* Copyright © 2012-2013 Nathan Hjelm <hjelmn@mac.com>
|
||||
* Copyright © 2012-2013 Peter Stuge <peter@stuge.se>
|
||||
*
|
||||
@@ -45,7 +45,7 @@
|
||||
*
|
||||
* \section intro Introduction
|
||||
*
|
||||
* Version 1.0.16, \ref LIBUSBX_API_VERSION >= 0x01000102, has added support
|
||||
* Version 1.0.16, \ref LIBUSB_API_VERSION >= 0x01000102, has added support
|
||||
* for hotplug events on <b>some</b> platforms (you should test if your platform
|
||||
* supports hotplug notification by calling \ref libusb_has_capability() with
|
||||
* parameter \ref LIBUSB_CAP_HAS_HOTPLUG).
|
||||
@@ -59,7 +59,11 @@
|
||||
*
|
||||
* A callback function must return an int (0 or 1) indicating whether the callback is
|
||||
* expecting additional events. Returning 0 will rearm the callback and 1 will cause
|
||||
* the callback to be deregistered.
|
||||
* the callback to be deregistered. Note that when callbacks are called from
|
||||
* libusb_hotplug_register_callback() because of the \ref LIBUSB_HOTPLUG_ENUMERATE
|
||||
* flag, the callback return value is ignored, iow you cannot cause a callback
|
||||
* to be deregistered by returning 1 when it is called from
|
||||
* libusb_hotplug_register_callback().
|
||||
*
|
||||
* Callbacks for a particular context are automatically deregistered by libusb_exit().
|
||||
*
|
||||
@@ -76,12 +80,16 @@
|
||||
* are invalid and will remain so even if the device comes back.
|
||||
*
|
||||
* When handling a LIBUSB_HOTPLUG_EVENT_DEVICE_ARRIVED event it is considered
|
||||
* safe to call any libusbx function that takes a libusb_device. On the other hand,
|
||||
* safe to call any libusb function that takes a libusb_device. On the other hand,
|
||||
* when handling a LIBUSB_HOTPLUG_EVENT_DEVICE_LEFT event the only safe function
|
||||
* is libusb_get_device_descriptor().
|
||||
*
|
||||
* The following code provides an example of the usage of the hotplug interface:
|
||||
\code
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <libusb.h>
|
||||
|
||||
static int count = 0;
|
||||
|
||||
int hotplug_callback(struct libusb_context *ctx, struct libusb_device *dev,
|
||||
@@ -127,10 +135,11 @@ int main (void) {
|
||||
}
|
||||
|
||||
while (count < 2) {
|
||||
libusb_handle_events_completed(NULL, NULL);
|
||||
usleep(10000);
|
||||
}
|
||||
|
||||
libusb_hotplug_deregister_callback(handle);
|
||||
libusb_hotplug_deregister_callback(NULL, handle);
|
||||
libusb_exit(NULL);
|
||||
|
||||
return 0;
|
||||
@@ -167,8 +176,7 @@ static int usbi_hotplug_match_cb (struct libusb_context *ctx,
|
||||
return 0;
|
||||
}
|
||||
|
||||
return hotplug_cb->cb (ctx == usbi_default_context ? NULL : ctx,
|
||||
dev, event, hotplug_cb->user_data);
|
||||
return hotplug_cb->cb (ctx, dev, event, hotplug_cb->user_data);
|
||||
}
|
||||
|
||||
void usbi_hotplug_match(struct libusb_context *ctx, struct libusb_device *dev,
|
||||
@@ -192,18 +200,7 @@ void usbi_hotplug_match(struct libusb_context *ctx, struct libusb_device *dev,
|
||||
|
||||
usbi_mutex_unlock(&ctx->hotplug_cbs_lock);
|
||||
|
||||
/* loop through and disconnect all open handles for this device */
|
||||
if (LIBUSB_HOTPLUG_EVENT_DEVICE_LEFT == event) {
|
||||
struct libusb_device_handle *handle;
|
||||
|
||||
usbi_mutex_lock(&ctx->open_devs_lock);
|
||||
list_for_each_entry(handle, &ctx->open_devs, list, struct libusb_device_handle) {
|
||||
if (dev == handle->dev) {
|
||||
usbi_handle_disconnect (handle);
|
||||
}
|
||||
}
|
||||
usbi_mutex_unlock(&ctx->open_devs_lock);
|
||||
}
|
||||
/* the backend is expected to call the callback for each active transfer */
|
||||
}
|
||||
|
||||
int API_EXPORTED libusb_hotplug_register_callback(libusb_context *ctx,
|
||||
@@ -253,19 +250,29 @@ int API_EXPORTED libusb_hotplug_register_callback(libusb_context *ctx,
|
||||
|
||||
list_add(&new_callback->list, &ctx->hotplug_cbs);
|
||||
|
||||
usbi_mutex_unlock(&ctx->hotplug_cbs_lock);
|
||||
|
||||
|
||||
if (flags & LIBUSB_HOTPLUG_ENUMERATE) {
|
||||
struct libusb_device *dev;
|
||||
int i, len;
|
||||
struct libusb_device **devs;
|
||||
|
||||
usbi_mutex_lock(&ctx->usb_devs_lock);
|
||||
|
||||
list_for_each_entry(dev, &ctx->usb_devs, list, struct libusb_device) {
|
||||
(void) usbi_hotplug_match_cb (ctx, dev, LIBUSB_HOTPLUG_EVENT_DEVICE_ARRIVED, new_callback);
|
||||
len = (int) libusb_get_device_list(ctx, &devs);
|
||||
if (len < 0) {
|
||||
libusb_hotplug_deregister_callback(ctx,
|
||||
new_callback->handle);
|
||||
return len;
|
||||
}
|
||||
|
||||
usbi_mutex_unlock(&ctx->usb_devs_lock);
|
||||
for (i = 0; i < len; i++) {
|
||||
usbi_hotplug_match_cb(ctx, devs[i],
|
||||
LIBUSB_HOTPLUG_EVENT_DEVICE_ARRIVED,
|
||||
new_callback);
|
||||
}
|
||||
|
||||
libusb_free_device_list(devs, 1);
|
||||
}
|
||||
|
||||
usbi_mutex_unlock(&ctx->hotplug_cbs_lock);
|
||||
|
||||
if (handle) {
|
||||
*handle = new_callback->handle;
|
||||
@@ -1,6 +1,6 @@
|
||||
/* -*- Mode: C; indent-tabs-mode:t ; c-basic-offset:8 -*- */
|
||||
/*
|
||||
* Hotplug support for libusbx
|
||||
* Hotplug support for libusb
|
||||
* Copyright © 2012-2013 Nathan Hjelm <hjelmn@mac.com>
|
||||
* Copyright © 2012-2013 Peter Stuge <peter@stuge.se>
|
||||
*
|
||||
+185
-133
File diff suppressed because it is too large
Load Diff
+8
@@ -1,5 +1,7 @@
|
||||
LIBRARY "libusb-1.0.dll"
|
||||
EXPORTS
|
||||
libusb_alloc_streams
|
||||
libusb_alloc_streams@16 = libusb_alloc_streams
|
||||
libusb_alloc_transfer
|
||||
libusb_alloc_transfer@4 = libusb_alloc_transfer
|
||||
libusb_attach_kernel_driver
|
||||
@@ -38,6 +40,8 @@ EXPORTS
|
||||
libusb_free_ss_endpoint_companion_descriptor@4 = libusb_free_ss_endpoint_companion_descriptor
|
||||
libusb_free_ss_usb_device_capability_descriptor
|
||||
libusb_free_ss_usb_device_capability_descriptor@4 = libusb_free_ss_usb_device_capability_descriptor
|
||||
libusb_free_streams
|
||||
libusb_free_streams@12 = libusb_free_streams
|
||||
libusb_free_transfer
|
||||
libusb_free_transfer@4 = libusb_free_transfer
|
||||
libusb_free_usb_2_0_extension_descriptor
|
||||
@@ -146,6 +150,10 @@ EXPORTS
|
||||
libusb_strerror@4 = libusb_strerror
|
||||
libusb_submit_transfer
|
||||
libusb_submit_transfer@4 = libusb_submit_transfer
|
||||
libusb_transfer_get_stream_id
|
||||
libusb_transfer_get_stream_id@4 = libusb_transfer_get_stream_id
|
||||
libusb_transfer_set_stream_id
|
||||
libusb_transfer_set_stream_id@8 = libusb_transfer_set_stream_id
|
||||
libusb_try_lock_events
|
||||
libusb_try_lock_events@4 = libusb_try_lock_events
|
||||
libusb_unlock_event_waiters
|
||||
+1
-1
@@ -41,7 +41,7 @@ BEGIN
|
||||
BEGIN
|
||||
BLOCK "040904b0"
|
||||
BEGIN
|
||||
VALUE "CompanyName", "libusbx.org\0"
|
||||
VALUE "CompanyName", "libusb.info\0"
|
||||
VALUE "FileDescription", "C library for writing portable USB drivers in userspace\0"
|
||||
VALUE "FileVersion", LIBUSB_VERSIONSTRING
|
||||
VALUE "InternalName", "libusb\0"
|
||||
@@ -1,10 +1,10 @@
|
||||
/*
|
||||
* Public libusbx header file
|
||||
* Public libusb header file
|
||||
* Copyright © 2001 Johannes Erdfelt <johannes@erdfelt.com>
|
||||
* Copyright © 2007-2008 Daniel Drake <dsd@gentoo.org>
|
||||
* Copyright © 2012 Pete Batard <pete@akeo.ie>
|
||||
* Copyright © 2012 Nathan Hjelm <hjelmn@cs.unm.edu>
|
||||
* For more information, please visit: http://libusbx.org
|
||||
* For more information, please visit: http://libusb.info
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
@@ -62,7 +62,7 @@ typedef unsigned __int32 uint32_t;
|
||||
#include <limits.h>
|
||||
|
||||
/* 'interface' might be defined as a macro on Windows, so we need to
|
||||
* undefine it so as not to break the current libusbx API, because
|
||||
* undefine it so as not to break the current libusb API, because
|
||||
* libusb_config_descriptor has an 'interface' member
|
||||
* As this can be problematic if you include windows.h after libusb.h
|
||||
* in your sources, we force windows.h to be included first. */
|
||||
@@ -85,14 +85,14 @@ typedef unsigned __int32 uint32_t;
|
||||
|
||||
/** \def LIBUSB_CALL
|
||||
* \ingroup misc
|
||||
* libusbx's Windows calling convention.
|
||||
* libusb's Windows calling convention.
|
||||
*
|
||||
* 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 funcions in the generated assembly code).
|
||||
*
|
||||
* Matching the Windows API itself, libusbx uses the WINAPI convention (which
|
||||
* 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
|
||||
@@ -100,7 +100,7 @@ typedef unsigned __int32 uint32_t;
|
||||
* your codebase.
|
||||
*
|
||||
* The one consideration that you must apply in your software is to mark
|
||||
* all functions which you use as libusbx callbacks with this LIBUSB_CALL
|
||||
* all functions which you use as libusb callbacks with this LIBUSB_CALL
|
||||
* annotation, so that they too get compiled for the correct calling
|
||||
* convention.
|
||||
*
|
||||
@@ -108,7 +108,7 @@ typedef unsigned __int32 uint32_t;
|
||||
* means that you can apply it to your code without worrying about
|
||||
* cross-platform compatibility.
|
||||
*/
|
||||
/* LIBUSB_CALL must be defined on both definition and declaration of libusbx
|
||||
/* LIBUSB_CALL must be defined on both definition and declaration of libusb
|
||||
* functions. You'd think that declaration would be enough, but cygwin will
|
||||
* complain about conflicting types unless both are marked this way.
|
||||
* The placement of this macro is important too; it must appear after the
|
||||
@@ -121,36 +121,39 @@ typedef unsigned __int32 uint32_t;
|
||||
#define LIBUSB_CALL
|
||||
#endif
|
||||
|
||||
/** \def LIBUSBX_API_VERSION
|
||||
/** \def LIBUSB_API_VERSION
|
||||
* \ingroup misc
|
||||
* libusbx's API version.
|
||||
* libusb's API version.
|
||||
*
|
||||
* Since version 1.0.13, to help with feature detection, libusbx defines
|
||||
* a LIBUSBX_API_VERSION macro that gets increased every time there is a
|
||||
* Since version 1.0.13, to help with feature detection, libusb defines
|
||||
* a LIBUSB_API_VERSION macro that gets increased every time there is a
|
||||
* significant change to the API, such as the introduction of a new call,
|
||||
* the definition of a new macro/enum member, or any other element that
|
||||
* libusbx applications may want to detect at compilation time.
|
||||
* libusb applications may want to detect at compilation time.
|
||||
*
|
||||
* The macro is typically used in an application as follows:
|
||||
* \code
|
||||
* #if defined(LIBUSBX_API_VERSION) && (LIBUSBX_API_VERSION >= 0x01001234)
|
||||
* // Use one of the newer features from the libusbx API
|
||||
* #if defined(LIBUSB_API_VERSION) && (LIBUSB_API_VERSION >= 0x01001234)
|
||||
* // Use one of the newer features from the libusb API
|
||||
* #endif
|
||||
* \endcode
|
||||
*
|
||||
* Another feature of LIBUSBX_API_VERSION is that it can be used to detect
|
||||
* whether you are compiling against the libusb or the libusbx library.
|
||||
* Another feature of LIBUSB_API_VERSION is that it can be used to detect
|
||||
* whether you are compiling against the libusb or the libusb library.
|
||||
*
|
||||
* Internally, LIBUSBX_API_VERSION is defined as follows:
|
||||
* (libusbx major << 24) | (libusbx minor << 16) | (16 bit incremental)
|
||||
* Internally, LIBUSB_API_VERSION is defined as follows:
|
||||
* (libusb major << 24) | (libusb minor << 16) | (16 bit incremental)
|
||||
*/
|
||||
#define LIBUSBX_API_VERSION 0x01000102
|
||||
#define LIBUSB_API_VERSION 0x01000103
|
||||
|
||||
/* The following is kept for compatibility, but will be deprecated in the future */
|
||||
#define LIBUSBX_API_VERSION LIBUSB_API_VERSION
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/** \def libusb_cpu_to_le16
|
||||
/**
|
||||
* \ingroup misc
|
||||
* Convert a 16-bit value from host-endian to little-endian format. On
|
||||
* little endian systems, this function does nothing. On big endian systems,
|
||||
@@ -340,7 +343,10 @@ enum libusb_transfer_type {
|
||||
LIBUSB_TRANSFER_TYPE_BULK = 2,
|
||||
|
||||
/** Interrupt endpoint */
|
||||
LIBUSB_TRANSFER_TYPE_INTERRUPT = 3
|
||||
LIBUSB_TRANSFER_TYPE_INTERRUPT = 3,
|
||||
|
||||
/** Stream endpoint */
|
||||
LIBUSB_TRANSFER_TYPE_BULK_STREAM = 4,
|
||||
};
|
||||
|
||||
/** \ingroup misc
|
||||
@@ -562,7 +568,7 @@ struct libusb_endpoint_descriptor {
|
||||
/** For audio devices only: the address if the synch endpoint */
|
||||
uint8_t bSynchAddress;
|
||||
|
||||
/** Extra descriptors. If libusbx encounters unknown endpoint descriptors,
|
||||
/** Extra descriptors. If libusb encounters unknown endpoint descriptors,
|
||||
* it will store them here, should you wish to parse them. */
|
||||
const unsigned char *extra;
|
||||
|
||||
@@ -612,7 +618,7 @@ struct libusb_interface_descriptor {
|
||||
* by the bNumEndpoints field. */
|
||||
const struct libusb_endpoint_descriptor *endpoint;
|
||||
|
||||
/** Extra descriptors. If libusbx encounters unknown interface descriptors,
|
||||
/** Extra descriptors. If libusb encounters unknown interface descriptors,
|
||||
* it will store them here, should you wish to parse them. */
|
||||
const unsigned char *extra;
|
||||
|
||||
@@ -670,7 +676,7 @@ struct libusb_config_descriptor {
|
||||
* this array is determined by the bNumInterfaces field. */
|
||||
const struct libusb_interface *interface;
|
||||
|
||||
/** Extra descriptors. If libusbx encounters unknown configuration
|
||||
/** Extra descriptors. If libusb encounters unknown configuration
|
||||
* descriptors, it will store them here, should you wish to parse them. */
|
||||
const unsigned char *extra;
|
||||
|
||||
@@ -889,7 +895,7 @@ struct libusb_control_setup {
|
||||
|
||||
#define LIBUSB_CONTROL_SETUP_SIZE (sizeof(struct libusb_control_setup))
|
||||
|
||||
/* libusbx */
|
||||
/* libusb */
|
||||
|
||||
struct libusb_context;
|
||||
struct libusb_device;
|
||||
@@ -897,7 +903,7 @@ struct libusb_device_handle;
|
||||
struct libusb_hotplug_callback;
|
||||
|
||||
/** \ingroup lib
|
||||
* Structure providing the version of the libusbx runtime
|
||||
* Structure providing the version of the libusb runtime
|
||||
*/
|
||||
struct libusb_version {
|
||||
/** Library major version. */
|
||||
@@ -920,16 +926,16 @@ struct libusb_version {
|
||||
};
|
||||
|
||||
/** \ingroup lib
|
||||
* Structure representing a libusbx session. The concept of individual libusbx
|
||||
* Structure representing a libusb session. The concept of individual libusb
|
||||
* sessions allows for your program to use two libraries (or dynamically
|
||||
* load two modules) which both independently use libusb. This will prevent
|
||||
* interference between the individual libusbx users - for example
|
||||
* interference between the individual libusb users - for example
|
||||
* libusb_set_debug() will not affect the other user of the library, and
|
||||
* libusb_exit() will not destroy resources that the other user is still
|
||||
* using.
|
||||
*
|
||||
* Sessions are created by libusb_init() and destroyed through libusb_exit().
|
||||
* If your application is guaranteed to only ever include a single libusbx
|
||||
* If your application is guaranteed to only ever include a single libusb
|
||||
* user (i.e. you), you do not have to worry about contexts: pass NULL in
|
||||
* every function call where a context is required. The default context
|
||||
* will be used.
|
||||
@@ -1042,7 +1048,7 @@ enum libusb_bos_type {
|
||||
};
|
||||
|
||||
/** \ingroup misc
|
||||
* Error codes. Most libusbx functions return 0 on success or one of these
|
||||
* Error codes. Most libusb functions return 0 on success or one of these
|
||||
* codes on failure.
|
||||
* You can call libusb_error_name() to retrieve a string representation of an
|
||||
* error code or libusb_strerror() to get an end-user suitable description of
|
||||
@@ -1188,7 +1194,7 @@ struct libusb_transfer;
|
||||
* Asynchronous transfer callback function type. When submitting asynchronous
|
||||
* transfers, you pass a pointer to a callback function of this type via the
|
||||
* \ref libusb_transfer::callback "callback" member of the libusb_transfer
|
||||
* structure. libusbx will call this function later, when the transfer has
|
||||
* structure. libusb will call this function later, when the transfer has
|
||||
* completed or failed. See \ref asyncio for more information.
|
||||
* \param transfer The libusb_transfer struct the callback function is being
|
||||
* notified about.
|
||||
@@ -1271,7 +1277,7 @@ enum libusb_capability {
|
||||
LIBUSB_CAP_HAS_HOTPLUG = 0x0001,
|
||||
/** The library can access HID devices without requiring user intervention.
|
||||
* Note that before being able to actually access an HID device, you may
|
||||
* still have to call additional libusbx functions such as
|
||||
* still have to call additional libusb functions such as
|
||||
* \ref libusb_detach_kernel_driver(). */
|
||||
LIBUSB_CAP_HAS_HID_ACCESS = 0x0100,
|
||||
/** The library supports detaching of the default USB driver, using
|
||||
@@ -1384,6 +1390,11 @@ int LIBUSB_CALL libusb_clear_halt(libusb_device_handle *dev,
|
||||
unsigned char endpoint);
|
||||
int LIBUSB_CALL libusb_reset_device(libusb_device_handle *dev);
|
||||
|
||||
int LIBUSB_CALL libusb_alloc_streams(libusb_device_handle *dev,
|
||||
uint32_t num_streams, unsigned char *endpoints, int num_endpoints);
|
||||
int LIBUSB_CALL libusb_free_streams(libusb_device_handle *dev,
|
||||
unsigned char *endpoints, int num_endpoints);
|
||||
|
||||
int LIBUSB_CALL libusb_kernel_driver_active(libusb_device_handle *dev,
|
||||
int interface_number);
|
||||
int LIBUSB_CALL libusb_detach_kernel_driver(libusb_device_handle *dev,
|
||||
@@ -1428,7 +1439,7 @@ static inline unsigned char *libusb_control_transfer_get_data(
|
||||
static inline struct libusb_control_setup *libusb_control_transfer_get_setup(
|
||||
struct libusb_transfer *transfer)
|
||||
{
|
||||
return (struct libusb_control_setup *) transfer->buffer;
|
||||
return (struct libusb_control_setup *)(void *) transfer->buffer;
|
||||
}
|
||||
|
||||
/** \ingroup asyncio
|
||||
@@ -1437,6 +1448,7 @@ static inline struct libusb_control_setup *libusb_control_transfer_get_setup(
|
||||
* be given in host-endian byte order.
|
||||
*
|
||||
* \param buffer buffer to output the setup packet into
|
||||
* This pointer must be aligned to at least 2 bytes boundary.
|
||||
* \param bmRequestType see the
|
||||
* \ref libusb_control_setup::bmRequestType "bmRequestType" field of
|
||||
* \ref libusb_control_setup
|
||||
@@ -1457,7 +1469,7 @@ static inline void libusb_fill_control_setup(unsigned char *buffer,
|
||||
uint8_t bmRequestType, uint8_t bRequest, uint16_t wValue, uint16_t wIndex,
|
||||
uint16_t wLength)
|
||||
{
|
||||
struct libusb_control_setup *setup = (struct libusb_control_setup *) buffer;
|
||||
struct libusb_control_setup *setup = (struct libusb_control_setup *)(void *) buffer;
|
||||
setup->bmRequestType = bmRequestType;
|
||||
setup->bRequest = bRequest;
|
||||
setup->wValue = libusb_cpu_to_le16(wValue);
|
||||
@@ -1469,6 +1481,10 @@ struct libusb_transfer * LIBUSB_CALL libusb_alloc_transfer(int iso_packets);
|
||||
int LIBUSB_CALL libusb_submit_transfer(struct libusb_transfer *transfer);
|
||||
int LIBUSB_CALL libusb_cancel_transfer(struct libusb_transfer *transfer);
|
||||
void LIBUSB_CALL libusb_free_transfer(struct libusb_transfer *transfer);
|
||||
void LIBUSB_CALL libusb_transfer_set_stream_id(
|
||||
struct libusb_transfer *transfer, uint32_t stream_id);
|
||||
uint32_t LIBUSB_CALL libusb_transfer_get_stream_id(
|
||||
struct libusb_transfer *transfer);
|
||||
|
||||
/** \ingroup asyncio
|
||||
* Helper function to populate the required \ref libusb_transfer fields
|
||||
@@ -1493,6 +1509,7 @@ void LIBUSB_CALL libusb_free_transfer(struct libusb_transfer *transfer);
|
||||
* \param dev_handle handle of the device that will handle the transfer
|
||||
* \param buffer data buffer. If provided, this function will interpret the
|
||||
* first 8 bytes as a setup packet and infer the transfer length from that.
|
||||
* This pointer must be aligned to at least 2 bytes boundary.
|
||||
* \param callback callback function to be invoked on transfer completion
|
||||
* \param user_data user data to pass to callback function
|
||||
* \param timeout timeout for the transfer in milliseconds
|
||||
@@ -1502,7 +1519,7 @@ static inline void libusb_fill_control_transfer(
|
||||
unsigned char *buffer, libusb_transfer_cb_fn callback, void *user_data,
|
||||
unsigned int timeout)
|
||||
{
|
||||
struct libusb_control_setup *setup = (struct libusb_control_setup *) buffer;
|
||||
struct libusb_control_setup *setup = (struct libusb_control_setup *)(void *) buffer;
|
||||
transfer->dev_handle = dev_handle;
|
||||
transfer->endpoint = 0;
|
||||
transfer->type = LIBUSB_TRANSFER_TYPE_CONTROL;
|
||||
@@ -1543,6 +1560,34 @@ static inline void libusb_fill_bulk_transfer(struct libusb_transfer *transfer,
|
||||
transfer->callback = callback;
|
||||
}
|
||||
|
||||
/** \ingroup asyncio
|
||||
* Helper function to populate the required \ref libusb_transfer fields
|
||||
* for a bulk transfer using bulk streams.
|
||||
*
|
||||
* Since version 1.0.19, \ref LIBUSB_API_VERSION >= 0x01000103
|
||||
*
|
||||
* \param transfer the transfer to populate
|
||||
* \param dev_handle handle of the device that will handle the transfer
|
||||
* \param endpoint address of the endpoint where this transfer will be sent
|
||||
* \param stream_id bulk stream id for this transfer
|
||||
* \param buffer data buffer
|
||||
* \param length length of data buffer
|
||||
* \param callback callback function to be invoked on transfer completion
|
||||
* \param user_data user data to pass to callback function
|
||||
* \param timeout timeout for the transfer in milliseconds
|
||||
*/
|
||||
static inline void libusb_fill_bulk_stream_transfer(
|
||||
struct libusb_transfer *transfer, libusb_device_handle *dev_handle,
|
||||
unsigned char endpoint, uint32_t stream_id,
|
||||
unsigned char *buffer, int length, libusb_transfer_cb_fn callback,
|
||||
void *user_data, unsigned int timeout)
|
||||
{
|
||||
libusb_fill_bulk_transfer(transfer, dev_handle, endpoint, buffer,
|
||||
length, callback, user_data, timeout);
|
||||
transfer->type = LIBUSB_TRANSFER_TYPE_BULK_STREAM;
|
||||
libusb_transfer_set_stream_id(transfer, stream_id);
|
||||
}
|
||||
|
||||
/** \ingroup asyncio
|
||||
* Helper function to populate the required \ref libusb_transfer fields
|
||||
* for an interrupt transfer.
|
||||
@@ -1827,7 +1872,7 @@ void LIBUSB_CALL libusb_set_pollfd_notifiers(libusb_context *ctx,
|
||||
* per libusb_context and it is safe to call libusb_hotplug_deregister_callback()
|
||||
* on an already deregisted callback.
|
||||
*
|
||||
* Since version 1.0.16, \ref LIBUSBX_API_VERSION >= 0x01000102
|
||||
* Since version 1.0.16, \ref LIBUSB_API_VERSION >= 0x01000102
|
||||
*
|
||||
* For more information, see \ref hotplug.
|
||||
*/
|
||||
@@ -1835,7 +1880,7 @@ typedef int libusb_hotplug_callback_handle;
|
||||
|
||||
/** \ingroup hotplug
|
||||
*
|
||||
* Since version 1.0.16, \ref LIBUSBX_API_VERSION >= 0x01000102
|
||||
* Since version 1.0.16, \ref LIBUSB_API_VERSION >= 0x01000102
|
||||
*
|
||||
* Flags for hotplug events */
|
||||
typedef enum {
|
||||
@@ -1845,7 +1890,7 @@ typedef enum {
|
||||
|
||||
/** \ingroup hotplug
|
||||
*
|
||||
* Since version 1.0.16, \ref LIBUSBX_API_VERSION >= 0x01000102
|
||||
* Since version 1.0.16, \ref LIBUSB_API_VERSION >= 0x01000102
|
||||
*
|
||||
* Hotplug events */
|
||||
typedef enum {
|
||||
@@ -1869,15 +1914,15 @@ typedef enum {
|
||||
* This callback may be called by an internal event thread and as such it is
|
||||
* recommended the callback do minimal processing before returning.
|
||||
*
|
||||
* libusbx will call this function later, when a matching event had happened on
|
||||
* libusb will call this function later, when a matching event had happened on
|
||||
* a matching device. See \ref hotplug for more information.
|
||||
*
|
||||
* It is safe to call either libusb_hotplug_register_callback() or
|
||||
* libusb_hotplug_deregister_callback() from within a callback function.
|
||||
*
|
||||
* Since version 1.0.16, \ref LIBUSBX_API_VERSION >= 0x01000102
|
||||
* Since version 1.0.16, \ref LIBUSB_API_VERSION >= 0x01000102
|
||||
*
|
||||
* \param libusb_context context of this notification
|
||||
* \param ctx context of this notification
|
||||
* \param device libusb_device this event occurred on
|
||||
* \param event event that occurred
|
||||
* \param user_data user data provided when this callback was registered
|
||||
@@ -1897,7 +1942,19 @@ typedef int (LIBUSB_CALL *libusb_hotplug_callback_fn)(libusb_context *ctx,
|
||||
* armed until either it is deregistered with libusb_hotplug_deregister_callback()
|
||||
* or the supplied callback returns 1 to indicate it is finished processing events.
|
||||
*
|
||||
* Since version 1.0.16, \ref LIBUSBX_API_VERSION >= 0x01000102
|
||||
* If the \ref LIBUSB_HOTPLUG_ENUMERATE is passed the callback will be
|
||||
* called with a \ref LIBUSB_HOTPLUG_EVENT_DEVICE_ARRIVED for all devices
|
||||
* already plugged into the machine. Note that libusb modifies its internal
|
||||
* device list from a separate thread, while calling hotplug callbacks from
|
||||
* libusb_handle_events(), so it is possible for a device to already be present
|
||||
* on, or removed from, its internal device list, while the hotplug callbacks
|
||||
* still need to be dispatched. This means that when using \ref
|
||||
* LIBUSB_HOTPLUG_ENUMERATE, your callback may be called twice for the arrival
|
||||
* of the same device, once from libusb_hotplug_register_callback() and once
|
||||
* from libusb_handle_events(); and/or your callback may be called for the
|
||||
* removal of a device for which an arrived call was never made.
|
||||
*
|
||||
* Since version 1.0.16, \ref LIBUSB_API_VERSION >= 0x01000102
|
||||
*
|
||||
* \param[in] ctx context to register this callback with
|
||||
* \param[in] events bitwise or of events that will trigger this callback. See \ref
|
||||
@@ -1926,7 +1983,7 @@ int LIBUSB_CALL libusb_hotplug_register_callback(libusb_context *ctx,
|
||||
* Deregister a callback from a libusb_context. This function is safe to call from within
|
||||
* a hotplug callback.
|
||||
*
|
||||
* Since version 1.0.16, \ref LIBUSBX_API_VERSION >= 0x01000102
|
||||
* Since version 1.0.16, \ref LIBUSB_API_VERSION >= 0x01000102
|
||||
*
|
||||
* \param[in] ctx context this callback is registered with
|
||||
* \param[in] handle the handle of the callback to deregister
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Internal header for libusbx
|
||||
* Internal header for libusb
|
||||
* Copyright © 2007-2009 Daniel Drake <dsd@gentoo.org>
|
||||
* Copyright © 2001 Johannes Erdfelt <johannes@erdfelt.com>
|
||||
*
|
||||
@@ -23,6 +23,8 @@
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <stdlib.h>
|
||||
|
||||
#include <stddef.h>
|
||||
#include <stdint.h>
|
||||
#include <time.h>
|
||||
@@ -37,11 +39,11 @@
|
||||
#include "libusb.h"
|
||||
#include "version.h"
|
||||
|
||||
/* Inside the libusbx code, mark all public functions as follows:
|
||||
/* Inside the libusb code, mark all public functions as follows:
|
||||
* return_type API_EXPORTED function_name(params) { ... }
|
||||
* But if the function returns a pointer, mark it as follows:
|
||||
* DEFAULT_VISIBILITY return_type * LIBUSB_CALL function_name(params) { ... }
|
||||
* In the libusbx public header, mark all declarations as:
|
||||
* In the libusb public header, mark all declarations as:
|
||||
* return_type LIBUSB_CALL function_name(params);
|
||||
*/
|
||||
#define API_EXPORTED LIBUSB_CALL DEFAULT_VISIBILITY
|
||||
@@ -147,6 +149,15 @@ static inline void *usbi_reallocf(void *ptr, size_t size)
|
||||
|
||||
#define TIMESPEC_IS_SET(ts) ((ts)->tv_sec != 0 || (ts)->tv_nsec != 0)
|
||||
|
||||
/* Some platforms don't have this define */
|
||||
#ifndef TIMESPEC_TO_TIMEVAL
|
||||
#define TIMESPEC_TO_TIMEVAL(tv, ts) \
|
||||
do { \
|
||||
(tv)->tv_sec = (ts)->tv_sec; \
|
||||
(tv)->tv_usec = (ts)->tv_nsec / 1000; \
|
||||
} while (0)
|
||||
#endif
|
||||
|
||||
void usbi_log(struct libusb_context *ctx, enum libusb_log_level level,
|
||||
const char *function, const char *format, ...);
|
||||
|
||||
@@ -355,6 +366,7 @@ struct usbi_transfer {
|
||||
struct list_head list;
|
||||
struct timeval timeout;
|
||||
int transferred;
|
||||
uint32_t stream_id;
|
||||
uint8_t flags;
|
||||
|
||||
/* this lock is held during libusb_submit_transfer() and
|
||||
@@ -433,7 +445,7 @@ void usbi_connect_device (struct libusb_device *dev);
|
||||
void usbi_disconnect_device (struct libusb_device *dev);
|
||||
|
||||
/* Internal abstraction for poll (needs struct usbi_transfer on Windows) */
|
||||
#if defined(OS_LINUX) || defined(OS_DARWIN) || defined(OS_OPENBSD)
|
||||
#if defined(OS_LINUX) || defined(OS_DARWIN) || defined(OS_OPENBSD) || defined(OS_NETBSD)
|
||||
#include <unistd.h>
|
||||
#include "os/poll_posix.h"
|
||||
#elif defined(OS_WINDOWS) || defined(OS_WINCE)
|
||||
@@ -501,7 +513,7 @@ struct usbi_os_backend {
|
||||
* to determine specific capabilities of the system, allocate required
|
||||
* data structures for later, etc.
|
||||
*
|
||||
* This function is called when a libusbx user initializes the library
|
||||
* This function is called when a libusb user initializes the library
|
||||
* prior to use.
|
||||
*
|
||||
* Return 0 on success, or a LIBUSB_ERROR code on failure.
|
||||
@@ -531,9 +543,9 @@ struct usbi_os_backend {
|
||||
* but that is an unlikely case.
|
||||
*
|
||||
* After computing a session ID for a device, call
|
||||
* usbi_get_device_by_session_id(). This function checks if libusbx already
|
||||
* knows about the device, and if so, it provides you with a libusb_device
|
||||
* structure for it.
|
||||
* usbi_get_device_by_session_id(). This function checks if libusb already
|
||||
* knows about the device, and if so, it provides you with a reference
|
||||
* to a libusb_device structure for it.
|
||||
*
|
||||
* If usbi_get_device_by_session_id() returns NULL, it is time to allocate
|
||||
* a new device structure for the device. Call usbi_alloc_device() to
|
||||
@@ -592,7 +604,7 @@ struct usbi_os_backend {
|
||||
*
|
||||
* Your backend should allocate any internal resources required for I/O
|
||||
* and other operations so that those operations can happen (hopefully)
|
||||
* without hiccup. This is also a good place to inform libusbx that it
|
||||
* without hiccup. This is also a good place to inform libusb that it
|
||||
* should monitor certain file descriptors related to this device -
|
||||
* see the usbi_add_pollfd() function.
|
||||
*
|
||||
@@ -616,7 +628,7 @@ struct usbi_os_backend {
|
||||
/* Close a device such that the handle cannot be used again. Your backend
|
||||
* should destroy any resources that were allocated in the open path.
|
||||
* This may also be a good place to call usbi_remove_pollfd() to inform
|
||||
* libusbx of any file descriptors associated with this device that should
|
||||
* libusb of any file descriptors associated with this device that should
|
||||
* no longer be monitored.
|
||||
*
|
||||
* This function is called when the user closes a device handle.
|
||||
@@ -689,7 +701,7 @@ struct usbi_os_backend {
|
||||
* (LE). If it returns the multi-byte values in host-endian format,
|
||||
* set the host_endian output parameter to "1".
|
||||
*
|
||||
* Return 0 on success or a LIBUSB_ERROR code on failure.
|
||||
* Return the length read on success or a LIBUSB_ERROR code on failure.
|
||||
*/
|
||||
int (*get_config_descriptor)(struct libusb_device *device,
|
||||
uint8_t config_index, unsigned char *buffer, size_t len,
|
||||
@@ -717,7 +729,7 @@ struct usbi_os_backend {
|
||||
*
|
||||
* If you cannot retrieve this from cache, either do not implement this
|
||||
* function, or return LIBUSB_ERROR_NOT_SUPPORTED. This will cause
|
||||
* libusbx to retrieve the information through a standard control transfer.
|
||||
* libusb to retrieve the information through a standard control transfer.
|
||||
*
|
||||
* This function must be non-blocking.
|
||||
* Return:
|
||||
@@ -832,6 +844,14 @@ struct usbi_os_backend {
|
||||
*/
|
||||
int (*reset_device)(struct libusb_device_handle *handle);
|
||||
|
||||
/* Alloc num_streams usb3 bulk streams on the passed in endpoints */
|
||||
int (*alloc_streams)(struct libusb_device_handle *handle,
|
||||
uint32_t num_streams, unsigned char *endpoints, int num_endpoints);
|
||||
|
||||
/* Free usb3 bulk streams allocated with alloc_streams */
|
||||
int (*free_streams)(struct libusb_device_handle *handle,
|
||||
unsigned char *endpoints, int num_endpoints);
|
||||
|
||||
/* Determine if a kernel driver is active on an interface. Optional.
|
||||
*
|
||||
* The presence of a kernel driver on an interface indicates that any
|
||||
@@ -916,7 +936,7 @@ struct usbi_os_backend {
|
||||
* all private data from the transfer as if you were just about to report
|
||||
* completion or cancellation.
|
||||
*
|
||||
* This function might seem a bit out of place. It is used when libusbx
|
||||
* This function might seem a bit out of place. It is used when libusb
|
||||
* detects a disconnected device - it calls this function for all pending
|
||||
* transfers before reporting completion (with the disconnect code) to
|
||||
* the user. Maybe we can improve upon this internal interface in future.
|
||||
@@ -995,6 +1015,7 @@ extern const struct usbi_os_backend * const usbi_backend;
|
||||
extern const struct usbi_os_backend linux_usbfs_backend;
|
||||
extern const struct usbi_os_backend darwin_backend;
|
||||
extern const struct usbi_os_backend openbsd_backend;
|
||||
extern const struct usbi_os_backend netbsd_backend;
|
||||
extern const struct usbi_os_backend windows_backend;
|
||||
extern const struct usbi_os_backend wince_backend;
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user