Just came across this one. The author appears to be an active user of libusb/libusbx judging from a few tickers he created. https://bitbucket.org/liamstask/libusbus/overview
The motivation is kind of interesting. It seems to be a viable alternative for people looking for a cut-down version of libusb/libusbx and want a permissive license. It is not as ambitious as the libusby project (which aims to be a replacement of libusb/libusx). 1) More permissive license (MIT license) 2) Focus on device centric behavior and not interested in device tree, kind of similar to libusb-win32 3) Only support WinUSB under Windows 4) Hotplug support 5) No locking or other thread management - leave this to the application 6) As few heap allocations as possible 7) No isochronous transfer support since WinUSB does not support isochronous transfer 8) Currently only Windows and Mac OS X support. I actually have problems to build it under Mac OS X 10.7.5. mymacmini:libusbus xiaofanc$ premake4 gmake Building configurations... Running action 'gmake'... Generating Makefile... Generating usbus.make... Generating example/enumerator/Makefile... Generating example/echo/Makefile... Done. mymacmini:libusbus xiaofanc$ make -i ==== Building usbus (debug) ==== iokit.c src/platform/iokit.c:91:10: error: use of undeclared identifier 'kUSBDeviceSpeedSuper'; did you mean 'kUSBDeviceSpeedFull'? case kUSBDeviceSpeedSuper: device->speed = UsbusSuperSpeed; break; ^~~~~~~~~~~~~~~~~~~~ kUSBDeviceSpeedFull /System/Library/Frameworks/IOKit.framework/Headers/usb/USB.h:899:9: note: 'kUSBDeviceSpeedFull' declared here kUSBDeviceSpeedFull = 1, ^ src/platform/iokit.c:91:10: error: duplicate case value 'kUSBDeviceSpeedFull' case kUSBDeviceSpeedSuper: device->speed = UsbusSuperSpeed; break; ^ src/platform/iokit.c:89:10: note: previous case defined here case kUSBDeviceSpeedFull: device->speed = UsbusFullSpeed; break; ^ 2 errors generated. make[1]: [obj/Debug/iokit.o] Error 1 (ignored) Linking usbus ar: obj/Debug/iokit.o: No such file or directory make[1]: [libusbus.a] Error 1 (ignored) ==== Building enumerator (debug) ==== Creating obj/Debug main.c Linking enumerator ld: archive has no table of contents for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation) make[1]: [../../enumerator] Error 1 (ignored) ==== Building echo (debug) ==== Creating obj/Debug main.c Linking echo ld: archive has no table of contents for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation) make[1]: [../../echo] Error 1 (ignored) -- Xiaofan ------------------------------------------------------------------------------ Free Next-Gen Firewall Hardware Offer Buy your Sophos next-gen firewall before the end March 2013 and get the hardware for free! Learn more. http://p.sf.net/sfu/sophos-d2d-feb _______________________________________________ libusbx-devel mailing list libusbx-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/libusbx-devel