Browse Source

import libusb package

Mike Frysinger 20 years ago
parent
commit
a604fbc18a
3 changed files with 67 additions and 0 deletions
  1. 1 0
      package/Config.in
  2. 7 0
      package/libusb/Config.in
  3. 59 0
      package/libusb/libusb.mk

+ 1 - 0
package/Config.in

@@ -60,6 +60,7 @@ source "package/libpcap/Config.in"
 source "package/libpng/Config.in"
 source "package/libsysfs/Config.in"
 source "package/libtool/Config.in"
+source "package/libusb/Config.in"
 source "package/links/Config.in"
 source "package/lrzsz/Config.in"
 source "package/ltp-testsuite/Config.in"

+ 7 - 0
package/libusb/Config.in

@@ -0,0 +1,7 @@
+config BR2_PACKAGE_LIBUSB
+	bool "libusb"
+	default n
+	help
+	  Userspace library for accessing USB devices
+
+	  http://libusb.sourceforge.net/

+ 59 - 0
package/libusb/libusb.mk

@@ -0,0 +1,59 @@
+#############################################################
+#
+# libusb
+#
+#############################################################
+LIBUSB_VER:=0.1.10a
+LIBUSB_SOURCE:=libusb-$(LIBUSB_VER).tar.gz
+LIBUSB_SITE:=http://$(BR2_SOURCEFORGE_MIRROR).dl.sourceforge.net/sourceforge/libusb/
+LIBUSB_DIR:=$(BUILD_DIR)/libusb-$(LIBUSB_VER)
+LIBUSB_CAT:=zcat
+LIBUSB_BINARY:=libusb.la
+LIBUSB_TARGET_BINARY:=usr/lib/libusb.so
+
+$(DL_DIR)/$(LIBUSB_SOURCE):
+	$(WGET) -P $(DL_DIR) $(LIBUSB_SITE)/$(LIBUSB_SOURCE)
+
+libusb-unpacked: $(LIBUSB_DIR)/.unpacked
+$(LIBUSB_DIR)/.unpacked: $(DL_DIR)/$(LIBUSB_SOURCE)
+	$(LIBUSB_CAT) $(DL_DIR)/$(LIBUSB_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
+	touch $(LIBUSB_DIR)/.unpacked
+
+$(LIBUSB_DIR)/.configured: $(LIBUSB_DIR)/.unpacked
+	(cd $(LIBUSB_DIR); rm -rf config.cache; \
+		$(TARGET_CONFIGURE_OPTS) CC_FOR_BUILD=$(HOSTCC) \
+		CFLAGS="$(TARGET_CFLAGS)" \
+		ac_cv_header_regex_h=no \
+		./configure \
+		--target=$(GNU_TARGET_NAME) \
+		--host=$(GNU_TARGET_NAME) \
+		--build=$(GNU_HOST_NAME) \
+		--prefix=/usr \
+		--disable-debug \
+		--disable-build-docs \
+	);
+	touch $(LIBUSB_DIR)/.configured
+
+$(LIBUSB_DIR)/$(LIBUSB_BINARY): $(LIBUSB_DIR)/.configured
+	$(TARGET_CONFIGURE_OPTS) $(MAKE) CC=$(TARGET_CC) -C $(LIBUSB_DIR)
+
+$(TARGET_DIR)/$(LIBUSB_TARGET_BINARY): $(LIBUSB_DIR)/$(LIBUSB_BINARY)
+	make -C $(LIBUSB_DIR) DESTDIR=$(TARGET_DIR) install
+	rm -f $(TARGET_DIR)/usr/lib/libusb*.a $(TARGET_DIR)/usr/lib/libusb*.la
+
+libusb: uclibc $(TARGET_DIR)/$(LIBUSB_TARGET_BINARY)
+
+libusb-clean:
+	rm -f $(TARGET_DIR)/$(LIBUSB_TARGET_BINARY)
+	-$(MAKE) -C $(LIBUSB_DIR) clean
+
+libusb-dirclean:
+	rm -rf $(LIBUSB_DIR)
+#############################################################
+#
+# Toplevel Makefile options
+#
+#############################################################
+ifeq ($(strip $(BR2_PACKAGE_LIBUSB)),y)
+TARGETS+=libusb
+endif