libusb-compat: import from base
Signed-off-by: Rosen Penev <rosenp@gmail.com>
This commit is contained in:
parent
1d3c84d4e6
commit
7488ca92eb
2 changed files with 239 additions and 0 deletions
54
libs/libusb-compat/Makefile
Normal file
54
libs/libusb-compat/Makefile
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
#
|
||||||
|
# Copyright (C) 2010-2015 OpenWrt.org
|
||||||
|
#
|
||||||
|
# This is free software, licensed under the GNU General Public License v2.
|
||||||
|
# See /LICENSE for more information.
|
||||||
|
#
|
||||||
|
|
||||||
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
|
PKG_NAME:=libusb-compat
|
||||||
|
PKG_VERSION:=0.1.5
|
||||||
|
PKG_RELEASE:=2
|
||||||
|
|
||||||
|
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
|
||||||
|
PKG_SOURCE_URL:=@SF/libusb
|
||||||
|
PKG_HASH:=404ef4b6b324be79ac1bfb3d839eac860fbc929e6acb1ef88793a6ea328bc55a
|
||||||
|
|
||||||
|
PKG_INSTALL:=1
|
||||||
|
PKG_BUILD_PARALLEL:=1
|
||||||
|
PKG_LICENSE:=LGPL-2.1
|
||||||
|
|
||||||
|
PKG_MAINTAINER := Felix Fietkau <nbd@nbd.name>
|
||||||
|
|
||||||
|
include $(INCLUDE_DIR)/package.mk
|
||||||
|
|
||||||
|
define Package/libusb-compat
|
||||||
|
SECTION:=libs
|
||||||
|
CATEGORY:=Libraries
|
||||||
|
TITLE:=libusb-0.1 compatibility library
|
||||||
|
DEPENDS:=+libusb-1.0
|
||||||
|
URL:=http://libusb.wiki.sourceforge.net/
|
||||||
|
ABI_VERSION:=4
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Package/libusb-compat/description
|
||||||
|
libusb is a C library that gives applications easy access to USB devices on
|
||||||
|
many different operating systems.
|
||||||
|
endef
|
||||||
|
|
||||||
|
TARGET_CFLAGS += $(FPIC)
|
||||||
|
|
||||||
|
define Build/InstallDev
|
||||||
|
$(INSTALL_DIR) $(1)
|
||||||
|
$(CP) $(PKG_INSTALL_DIR)/* $(1)/
|
||||||
|
$(INSTALL_DIR) $(2)/bin
|
||||||
|
$(CP) $(PKG_INSTALL_DIR)/usr/bin/libusb-config $(2)/bin/
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Package/libusb-compat/install
|
||||||
|
$(INSTALL_DIR) $(1)/usr/lib
|
||||||
|
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libusb-0.1.so* $(1)/usr/lib/
|
||||||
|
endef
|
||||||
|
|
||||||
|
$(eval $(call BuildPackage,libusb-compat))
|
185
libs/libusb-compat/patches/001-fix-musl-stdint.patch
Normal file
185
libs/libusb-compat/patches/001-fix-musl-stdint.patch
Normal file
|
@ -0,0 +1,185 @@
|
||||||
|
--- a/libusb/usb.h
|
||||||
|
+++ b/libusb/usb.h
|
||||||
|
@@ -27,6 +27,7 @@
|
||||||
|
|
||||||
|
#include <unistd.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
+#include <stdint.h>
|
||||||
|
#include <limits.h>
|
||||||
|
|
||||||
|
#include <dirent.h>
|
||||||
|
@@ -78,40 +79,40 @@
|
||||||
|
|
||||||
|
/* All standard descriptors have these 2 fields in common */
|
||||||
|
struct usb_descriptor_header {
|
||||||
|
- u_int8_t bLength;
|
||||||
|
- u_int8_t bDescriptorType;
|
||||||
|
+ uint8_t bLength;
|
||||||
|
+ uint8_t bDescriptorType;
|
||||||
|
};
|
||||||
|
|
||||||
|
/* String descriptor */
|
||||||
|
struct usb_string_descriptor {
|
||||||
|
- u_int8_t bLength;
|
||||||
|
- u_int8_t bDescriptorType;
|
||||||
|
- u_int16_t wData[1];
|
||||||
|
+ uint8_t bLength;
|
||||||
|
+ uint8_t bDescriptorType;
|
||||||
|
+ uint16_t wData[1];
|
||||||
|
};
|
||||||
|
|
||||||
|
/* HID descriptor */
|
||||||
|
struct usb_hid_descriptor {
|
||||||
|
- u_int8_t bLength;
|
||||||
|
- u_int8_t bDescriptorType;
|
||||||
|
- u_int16_t bcdHID;
|
||||||
|
- u_int8_t bCountryCode;
|
||||||
|
- u_int8_t bNumDescriptors;
|
||||||
|
- /* u_int8_t bReportDescriptorType; */
|
||||||
|
- /* u_int16_t wDescriptorLength; */
|
||||||
|
+ uint8_t bLength;
|
||||||
|
+ uint8_t bDescriptorType;
|
||||||
|
+ uint16_t bcdHID;
|
||||||
|
+ uint8_t bCountryCode;
|
||||||
|
+ uint8_t bNumDescriptors;
|
||||||
|
+ /* uint8_t bReportDescriptorType; */
|
||||||
|
+ /* uint16_t wDescriptorLength; */
|
||||||
|
/* ... */
|
||||||
|
};
|
||||||
|
|
||||||
|
/* Endpoint descriptor */
|
||||||
|
#define USB_MAXENDPOINTS 32
|
||||||
|
struct usb_endpoint_descriptor {
|
||||||
|
- u_int8_t bLength;
|
||||||
|
- u_int8_t bDescriptorType;
|
||||||
|
- u_int8_t bEndpointAddress;
|
||||||
|
- u_int8_t bmAttributes;
|
||||||
|
- u_int16_t wMaxPacketSize;
|
||||||
|
- u_int8_t bInterval;
|
||||||
|
- u_int8_t bRefresh;
|
||||||
|
- u_int8_t bSynchAddress;
|
||||||
|
+ uint8_t bLength;
|
||||||
|
+ uint8_t bDescriptorType;
|
||||||
|
+ uint8_t bEndpointAddress;
|
||||||
|
+ uint8_t bmAttributes;
|
||||||
|
+ uint16_t wMaxPacketSize;
|
||||||
|
+ uint8_t bInterval;
|
||||||
|
+ uint8_t bRefresh;
|
||||||
|
+ uint8_t bSynchAddress;
|
||||||
|
|
||||||
|
unsigned char *extra; /* Extra descriptors */
|
||||||
|
int extralen;
|
||||||
|
@@ -129,15 +130,15 @@ struct usb_endpoint_descriptor {
|
||||||
|
/* Interface descriptor */
|
||||||
|
#define USB_MAXINTERFACES 32
|
||||||
|
struct usb_interface_descriptor {
|
||||||
|
- u_int8_t bLength;
|
||||||
|
- u_int8_t bDescriptorType;
|
||||||
|
- u_int8_t bInterfaceNumber;
|
||||||
|
- u_int8_t bAlternateSetting;
|
||||||
|
- u_int8_t bNumEndpoints;
|
||||||
|
- u_int8_t bInterfaceClass;
|
||||||
|
- u_int8_t bInterfaceSubClass;
|
||||||
|
- u_int8_t bInterfaceProtocol;
|
||||||
|
- u_int8_t iInterface;
|
||||||
|
+ uint8_t bLength;
|
||||||
|
+ uint8_t bDescriptorType;
|
||||||
|
+ uint8_t bInterfaceNumber;
|
||||||
|
+ uint8_t bAlternateSetting;
|
||||||
|
+ uint8_t bNumEndpoints;
|
||||||
|
+ uint8_t bInterfaceClass;
|
||||||
|
+ uint8_t bInterfaceSubClass;
|
||||||
|
+ uint8_t bInterfaceProtocol;
|
||||||
|
+ uint8_t iInterface;
|
||||||
|
|
||||||
|
struct usb_endpoint_descriptor *endpoint;
|
||||||
|
|
||||||
|
@@ -155,14 +156,14 @@ struct usb_interface {
|
||||||
|
/* Configuration descriptor information.. */
|
||||||
|
#define USB_MAXCONFIG 8
|
||||||
|
struct usb_config_descriptor {
|
||||||
|
- u_int8_t bLength;
|
||||||
|
- u_int8_t bDescriptorType;
|
||||||
|
- u_int16_t wTotalLength;
|
||||||
|
- u_int8_t bNumInterfaces;
|
||||||
|
- u_int8_t bConfigurationValue;
|
||||||
|
- u_int8_t iConfiguration;
|
||||||
|
- u_int8_t bmAttributes;
|
||||||
|
- u_int8_t MaxPower;
|
||||||
|
+ uint8_t bLength;
|
||||||
|
+ uint8_t bDescriptorType;
|
||||||
|
+ uint16_t wTotalLength;
|
||||||
|
+ uint8_t bNumInterfaces;
|
||||||
|
+ uint8_t bConfigurationValue;
|
||||||
|
+ uint8_t iConfiguration;
|
||||||
|
+ uint8_t bmAttributes;
|
||||||
|
+ uint8_t MaxPower;
|
||||||
|
|
||||||
|
struct usb_interface *interface;
|
||||||
|
|
||||||
|
@@ -172,28 +173,28 @@ struct usb_config_descriptor {
|
||||||
|
|
||||||
|
/* Device descriptor */
|
||||||
|
struct usb_device_descriptor {
|
||||||
|
- u_int8_t bLength;
|
||||||
|
- u_int8_t bDescriptorType;
|
||||||
|
- u_int16_t bcdUSB;
|
||||||
|
- u_int8_t bDeviceClass;
|
||||||
|
- u_int8_t bDeviceSubClass;
|
||||||
|
- u_int8_t bDeviceProtocol;
|
||||||
|
- u_int8_t bMaxPacketSize0;
|
||||||
|
- u_int16_t idVendor;
|
||||||
|
- u_int16_t idProduct;
|
||||||
|
- u_int16_t bcdDevice;
|
||||||
|
- u_int8_t iManufacturer;
|
||||||
|
- u_int8_t iProduct;
|
||||||
|
- u_int8_t iSerialNumber;
|
||||||
|
- u_int8_t bNumConfigurations;
|
||||||
|
+ uint8_t bLength;
|
||||||
|
+ uint8_t bDescriptorType;
|
||||||
|
+ uint16_t bcdUSB;
|
||||||
|
+ uint8_t bDeviceClass;
|
||||||
|
+ uint8_t bDeviceSubClass;
|
||||||
|
+ uint8_t bDeviceProtocol;
|
||||||
|
+ uint8_t bMaxPacketSize0;
|
||||||
|
+ uint16_t idVendor;
|
||||||
|
+ uint16_t idProduct;
|
||||||
|
+ uint16_t bcdDevice;
|
||||||
|
+ uint8_t iManufacturer;
|
||||||
|
+ uint8_t iProduct;
|
||||||
|
+ uint8_t iSerialNumber;
|
||||||
|
+ uint8_t bNumConfigurations;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct usb_ctrl_setup {
|
||||||
|
- u_int8_t bRequestType;
|
||||||
|
- u_int8_t bRequest;
|
||||||
|
- u_int16_t wValue;
|
||||||
|
- u_int16_t wIndex;
|
||||||
|
- u_int16_t wLength;
|
||||||
|
+ uint8_t bRequestType;
|
||||||
|
+ uint8_t bRequest;
|
||||||
|
+ uint16_t wValue;
|
||||||
|
+ uint16_t wIndex;
|
||||||
|
+ uint16_t wLength;
|
||||||
|
};
|
||||||
|
|
||||||
|
/*
|
||||||
|
@@ -254,7 +255,7 @@ struct usb_device {
|
||||||
|
|
||||||
|
void *dev; /* Darwin support */
|
||||||
|
|
||||||
|
- u_int8_t devnum;
|
||||||
|
+ uint8_t devnum;
|
||||||
|
|
||||||
|
unsigned char num_children;
|
||||||
|
struct usb_device **children;
|
||||||
|
@@ -266,7 +267,7 @@ struct usb_bus {
|
||||||
|
char dirname[PATH_MAX + 1];
|
||||||
|
|
||||||
|
struct usb_device *devices;
|
||||||
|
- u_int32_t location;
|
||||||
|
+ uint32_t location;
|
||||||
|
|
||||||
|
struct usb_device *root_dev;
|
||||||
|
};
|
Loading…
Reference in a new issue