From 2cb5374e9876c2d2044f2fa8021a30342c766ab1 Mon Sep 17 00:00:00 2001 From: Klaus Reimer Date: Mon, 12 Nov 2012 20:39:16 +0100 Subject: [PATCH] New project structure and push version to 0.4.0 --- .gitignore | 8 +- TODO.txt | 5 - pom.xml | 123 ++++------ src/config/usb4java_checks.xml | 212 ------------------ .../resources/windows-x86/libusb4java.dll | Bin 28719 -> 0 bytes .../resources/windows-x86_64/libusb4java.dll | Bin 32395 -> 0 bytes src/site/apt/download.apt.vm | 51 ----- usb4java-natives/pom.xml | 15 ++ {src => usb4java-natives/src}/main/c/AUTHORS | 0 {src => usb4java-natives/src}/main/c/COPYING | 0 .../src}/main/c/ChangeLog | 0 .../src}/main/c/Makefile.am | 0 .../src}/main/c/Makefile.scm | 0 {src => usb4java-natives/src}/main/c/NEWS | 0 {src => usb4java-natives/src}/main/c/README | 0 .../src}/main/c/acinclude.m4 | 0 .../src}/main/c/build/linux-x86.sh | 12 +- .../src}/main/c/build/linux-x86_64.sh | 1 + .../src}/main/c/build/macosx-universal.sh | 2 + .../src}/main/c/build/mingw-windows-x86.sh | 3 +- .../src}/main/c/build/mingw-windows-x86_64.sh | 1 + .../src}/main/c/configure.ac | 2 +- .../src}/main/c/src/Makefile.am | 0 .../src}/main/c/src/USB.c | 0 .../src}/main/c/src/USB_Bus.c | 0 .../src}/main/c/src/USB_Bus.h | 0 .../src}/main/c/src/USB_Config_Descriptor.c | 0 .../src}/main/c/src/USB_Config_Descriptor.h | 0 .../src}/main/c/src/USB_Descriptor_Header.c | 0 .../src}/main/c/src/USB_Dev_Handle.c | 0 .../src}/main/c/src/USB_Dev_Handle.h | 0 .../src}/main/c/src/USB_Device.c | 0 .../src}/main/c/src/USB_Device.h | 0 .../src}/main/c/src/USB_Device_Descriptor.c | 0 .../src}/main/c/src/USB_Device_Descriptor.h | 0 .../src}/main/c/src/USB_Endpoint_Descriptor.c | 0 .../src}/main/c/src/USB_Endpoint_Descriptor.h | 0 .../src}/main/c/src/USB_Interface.c | 0 .../src}/main/c/src/USB_Interface.h | 0 .../main/c/src/USB_Interface_Descriptor.c | 0 .../main/c/src/USB_Interface_Descriptor.h | 0 .../src}/main/c/src/usb4java.h | 0 .../main/resources/linux-x86/libusb4java.so | Bin 30156 -> 30156 bytes .../resources/linux-x86_64/libusb4java.so | Bin 30968 -> 30968 bytes .../resources/macosx-universal/libusb.dylib | Bin .../macosx-universal/libusb4java.dylib | Bin .../main/resources/windows-x86/libusb0.dll | Bin .../resources/windows-x86/libusb4java.dll | Bin 0 -> 30474 bytes .../main/resources/windows-x86_64/libusb0.dll | Bin .../resources/windows-x86_64/libusb4java.dll | Bin 0 -> 34521 bytes usb4java/pom.xml | 73 ++++++ {src => usb4java/src}/changes/changes.xml | 28 ++- .../main/java/de/ailis/usb4java/Services.java | 0 .../LibUsbConfigurationDescriptor.java | 0 .../descriptors/LibUsbDescriptor.java | 0 .../descriptors/LibUsbDeviceDescriptor.java | 0 .../descriptors/LibUsbEndpointDescriptor.java | 0 .../LibUsbInterfaceDescriptor.java | 0 .../descriptors/LibUsbStringDescriptor.java | 0 .../SimpleUsbConfigurationDescriptor.java | 0 .../descriptors/SimpleUsbDescriptor.java | 0 .../SimpleUsbDeviceDescriptor.java | 0 .../SimpleUsbInterfaceDescriptor.java | 0 .../usb4java/descriptors/package-info.java | 0 .../usb4java/exceptions/LibUsbException.java | 0 .../usb4java/exceptions/NativesException.java | 0 .../usb4java/exceptions/package-info.java | 0 .../de/ailis/usb4java/jni/NativesLoader.java | 0 .../main/java/de/ailis/usb4java/jni/USB.java | 0 .../java/de/ailis/usb4java/jni/USB_Bus.java | 0 .../usb4java/jni/USB_Config_Descriptor.java | 0 .../usb4java/jni/USB_Descriptor_Header.java | 0 .../de/ailis/usb4java/jni/USB_Dev_Handle.java | 0 .../de/ailis/usb4java/jni/USB_Device.java | 0 .../usb4java/jni/USB_Device_Descriptor.java | 0 .../usb4java/jni/USB_Endpoint_Descriptor.java | 0 .../de/ailis/usb4java/jni/USB_Interface.java | 0 .../jni/USB_Interface_Descriptor.java | 0 .../usb4java/jni/USB_String_Descriptor.java | 0 .../de/ailis/usb4java/jni/package-info.java | 0 .../java/de/ailis/usb4java/package-info.java | 0 .../usb4java/support/AbstractIrpQueue.java | 0 .../de/ailis/usb4java/support/Config.java | 0 .../usb4java/support/ControlIrpQueue.java | 0 .../usb4java/support/EventListenerList.java | 0 .../de/ailis/usb4java/support/IOUtils.java | 0 .../de/ailis/usb4java/support/IrpQueue.java | 0 .../support/UsbDeviceListenerList.java | 0 .../de/ailis/usb4java/support/UsbLock.java | 0 .../usb4java/support/UsbPipeListenerList.java | 0 .../support/UsbServicesListenerList.java | 0 .../de/ailis/usb4java/support/UsbUtils.java | 0 .../ailis/usb4java/support/package-info.java | 0 .../java/de/ailis/usb4java/tools/Dump.java | 0 .../de/ailis/usb4java/tools/package-info.java | 0 .../topology/LibUsbConfiguration.java | 0 .../ailis/usb4java/topology/LibUsbDevice.java | 0 .../usb4java/topology/LibUsbEndpoint.java | 0 .../de/ailis/usb4java/topology/LibUsbHub.java | 0 .../usb4java/topology/LibUsbInterface.java | 0 .../ailis/usb4java/topology/LibUsbNonHub.java | 0 .../ailis/usb4java/topology/LibUsbPipe.java | 0 .../ailis/usb4java/topology/LibUsbPort.java | 0 .../ailis/usb4java/topology/LibUsbPorts.java | 0 .../usb4java/topology/UsbDeviceScanner.java | 0 .../de/ailis/usb4java/topology/UsbPorts.java | 0 .../usb4java/topology/VirtualRootHub.java | 0 .../topology/VirtualRootHubConfiguration.java | 0 .../topology/VirtualRootHubInterface.java | 0 .../ailis/usb4java/topology/package-info.java | 0 .../src}/site/apt/configuration.apt.vm | 2 +- usb4java/src/site/apt/download.apt.vm | 32 +++ {src => usb4java/src}/site/apt/faq.apt.vm | 0 {src => usb4java/src}/site/apt/index.apt.vm | 2 +- .../src}/site/apt/quickstart.apt.vm | 13 +- .../src}/site/resources/css/site.css | 0 .../src}/site/resources/favicon.ico | Bin .../src}/site/resources/images/add.gif | Bin .../site/resources/images/favicon-16-8.png | Bin .../src}/site/resources/images/favicon-16.png | Bin .../src}/site/resources/images/favicon-24.png | Bin .../src}/site/resources/images/favicon-32.png | Bin .../src}/site/resources/images/favicon-48.png | Bin .../src}/site/resources/images/favicon-64.png | Bin .../src}/site/resources/images/favicon.xcf | Bin .../src}/site/resources/images/fix.gif | Bin .../src}/site/resources/images/logo.png | Bin .../src}/site/resources/images/logo.xcf | Bin .../src}/site/resources/images/remove.gif | Bin .../src}/site/resources/images/update.gif | Bin {src => usb4java/src}/site/site.xml | 2 +- 131 files changed, 218 insertions(+), 369 deletions(-) delete mode 100644 TODO.txt delete mode 100644 src/config/usb4java_checks.xml delete mode 100755 src/main/resources/windows-x86/libusb4java.dll delete mode 100755 src/main/resources/windows-x86_64/libusb4java.dll delete mode 100644 src/site/apt/download.apt.vm create mode 100644 usb4java-natives/pom.xml rename {src => usb4java-natives/src}/main/c/AUTHORS (100%) rename {src => usb4java-natives/src}/main/c/COPYING (100%) rename {src => usb4java-natives/src}/main/c/ChangeLog (100%) rename {src => usb4java-natives/src}/main/c/Makefile.am (100%) rename {src => usb4java-natives/src}/main/c/Makefile.scm (100%) rename {src => usb4java-natives/src}/main/c/NEWS (100%) rename {src => usb4java-natives/src}/main/c/README (100%) rename {src => usb4java-natives/src}/main/c/acinclude.m4 (100%) rename {src => usb4java-natives/src}/main/c/build/linux-x86.sh (57%) rename {src => usb4java-natives/src}/main/c/build/linux-x86_64.sh (94%) rename {src => usb4java-natives/src}/main/c/build/macosx-universal.sh (94%) rename {src => usb4java-natives/src}/main/c/build/mingw-windows-x86.sh (92%) rename {src => usb4java-natives/src}/main/c/build/mingw-windows-x86_64.sh (97%) rename {src => usb4java-natives/src}/main/c/configure.ac (90%) rename {src => usb4java-natives/src}/main/c/src/Makefile.am (100%) rename {src => usb4java-natives/src}/main/c/src/USB.c (100%) rename {src => usb4java-natives/src}/main/c/src/USB_Bus.c (100%) rename {src => usb4java-natives/src}/main/c/src/USB_Bus.h (100%) rename {src => usb4java-natives/src}/main/c/src/USB_Config_Descriptor.c (100%) rename {src => usb4java-natives/src}/main/c/src/USB_Config_Descriptor.h (100%) rename {src => usb4java-natives/src}/main/c/src/USB_Descriptor_Header.c (100%) rename {src => usb4java-natives/src}/main/c/src/USB_Dev_Handle.c (100%) rename {src => usb4java-natives/src}/main/c/src/USB_Dev_Handle.h (100%) rename {src => usb4java-natives/src}/main/c/src/USB_Device.c (100%) rename {src => usb4java-natives/src}/main/c/src/USB_Device.h (100%) rename {src => usb4java-natives/src}/main/c/src/USB_Device_Descriptor.c (100%) rename {src => usb4java-natives/src}/main/c/src/USB_Device_Descriptor.h (100%) rename {src => usb4java-natives/src}/main/c/src/USB_Endpoint_Descriptor.c (100%) rename {src => usb4java-natives/src}/main/c/src/USB_Endpoint_Descriptor.h (100%) rename {src => usb4java-natives/src}/main/c/src/USB_Interface.c (100%) rename {src => usb4java-natives/src}/main/c/src/USB_Interface.h (100%) rename {src => usb4java-natives/src}/main/c/src/USB_Interface_Descriptor.c (100%) rename {src => usb4java-natives/src}/main/c/src/USB_Interface_Descriptor.h (100%) rename {src => usb4java-natives/src}/main/c/src/usb4java.h (100%) rename {src => usb4java-natives/src}/main/resources/linux-x86/libusb4java.so (99%) mode change 100755 => 100644 rename {src => usb4java-natives/src}/main/resources/linux-x86_64/libusb4java.so (99%) mode change 100755 => 100644 rename {src => usb4java-natives/src}/main/resources/macosx-universal/libusb.dylib (100%) mode change 100755 => 100644 rename {src => usb4java-natives/src}/main/resources/macosx-universal/libusb4java.dylib (100%) mode change 100755 => 100644 rename {src => usb4java-natives/src}/main/resources/windows-x86/libusb0.dll (100%) create mode 100644 usb4java-natives/src/main/resources/windows-x86/libusb4java.dll rename {src => usb4java-natives/src}/main/resources/windows-x86_64/libusb0.dll (100%) create mode 100644 usb4java-natives/src/main/resources/windows-x86_64/libusb4java.dll create mode 100644 usb4java/pom.xml rename {src => usb4java/src}/changes/changes.xml (66%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/Services.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/descriptors/LibUsbConfigurationDescriptor.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/descriptors/LibUsbDescriptor.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/descriptors/LibUsbDeviceDescriptor.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/descriptors/LibUsbEndpointDescriptor.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/descriptors/LibUsbInterfaceDescriptor.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/descriptors/LibUsbStringDescriptor.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/descriptors/SimpleUsbConfigurationDescriptor.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/descriptors/SimpleUsbDescriptor.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/descriptors/SimpleUsbDeviceDescriptor.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/descriptors/SimpleUsbInterfaceDescriptor.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/descriptors/package-info.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/exceptions/LibUsbException.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/exceptions/NativesException.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/exceptions/package-info.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/jni/NativesLoader.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/jni/USB.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/jni/USB_Bus.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/jni/USB_Config_Descriptor.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/jni/USB_Descriptor_Header.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/jni/USB_Dev_Handle.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/jni/USB_Device.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/jni/USB_Device_Descriptor.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/jni/USB_Endpoint_Descriptor.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/jni/USB_Interface.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/jni/USB_Interface_Descriptor.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/jni/USB_String_Descriptor.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/jni/package-info.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/package-info.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/support/AbstractIrpQueue.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/support/Config.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/support/ControlIrpQueue.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/support/EventListenerList.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/support/IOUtils.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/support/IrpQueue.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/support/UsbDeviceListenerList.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/support/UsbLock.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/support/UsbPipeListenerList.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/support/UsbServicesListenerList.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/support/UsbUtils.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/support/package-info.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/tools/Dump.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/tools/package-info.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/topology/LibUsbConfiguration.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/topology/LibUsbDevice.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/topology/LibUsbEndpoint.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/topology/LibUsbHub.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/topology/LibUsbInterface.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/topology/LibUsbNonHub.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/topology/LibUsbPipe.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/topology/LibUsbPort.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/topology/LibUsbPorts.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/topology/UsbDeviceScanner.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/topology/UsbPorts.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/topology/VirtualRootHub.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/topology/VirtualRootHubConfiguration.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/topology/VirtualRootHubInterface.java (100%) rename {src => usb4java/src}/main/java/de/ailis/usb4java/topology/package-info.java (100%) rename {src => usb4java/src}/site/apt/configuration.apt.vm (97%) create mode 100644 usb4java/src/site/apt/download.apt.vm rename {src => usb4java/src}/site/apt/faq.apt.vm (100%) rename {src => usb4java/src}/site/apt/index.apt.vm (96%) rename {src => usb4java/src}/site/apt/quickstart.apt.vm (92%) rename {src => usb4java/src}/site/resources/css/site.css (100%) rename {src => usb4java/src}/site/resources/favicon.ico (100%) rename {src => usb4java/src}/site/resources/images/add.gif (100%) rename {src => usb4java/src}/site/resources/images/favicon-16-8.png (100%) rename {src => usb4java/src}/site/resources/images/favicon-16.png (100%) rename {src => usb4java/src}/site/resources/images/favicon-24.png (100%) rename {src => usb4java/src}/site/resources/images/favicon-32.png (100%) rename {src => usb4java/src}/site/resources/images/favicon-48.png (100%) rename {src => usb4java/src}/site/resources/images/favicon-64.png (100%) rename {src => usb4java/src}/site/resources/images/favicon.xcf (100%) rename {src => usb4java/src}/site/resources/images/fix.gif (100%) rename {src => usb4java/src}/site/resources/images/logo.png (100%) rename {src => usb4java/src}/site/resources/images/logo.xcf (100%) rename {src => usb4java/src}/site/resources/images/remove.gif (100%) rename {src => usb4java/src}/site/resources/images/update.gif (100%) rename {src => usb4java/src}/site/site.xml (94%) diff --git a/.gitignore b/.gitignore index e09c89c..bfaa32d 100644 --- a/.gitignore +++ b/.gitignore @@ -1,7 +1,7 @@ -/target -/.settings -/.classpath -/.project +target +.settings +.classpath +.project libtool install-sh Makefile.in diff --git a/TODO.txt b/TODO.txt deleted file mode 100644 index 0ae00a0..0000000 --- a/TODO.txt +++ /dev/null @@ -1,5 +0,0 @@ -* Do extensive tests with USB pipes. interrupt data transfer seems to work - (MouseDriver demo is working) but never used bulk transfer and it's unclear - if the queue implementation is working correctly under stress. - -* Implement Control transfers in pipe. \ No newline at end of file diff --git a/pom.xml b/pom.xml index 2275c6c..3443dea 100644 --- a/pom.xml +++ b/pom.xml @@ -3,11 +3,11 @@ 4.0.0 de.ailis.usb4java - usb4java - jar + usb4java-parent + pom usb4java - 0.3.5-SNAPSHOT - http://kayahr.github.com/${project.artifactId}/ + 0.4.0-SNAPSHOT + http://kayahr.github.com/usb4java/ USB library for Java based on libusb-0.1.x and implementing javax.usb (JSR-80). @@ -41,79 +41,37 @@ UTF-8 - http://nexus.ailis.de/content/repositories/releases/de/ailis/${project.artifactId}/${project.artifactId}/${project.version} - http://nexus.ailis.de/content/repositories/snapshots/de/ailis/${project.artifactId}/${project.artifactId} + http://nexus.ailis.de/content/repositories/releases/de/ailis/usb4java/usb4java/${project.version} + http://nexus.ailis.de/content/repositories/snapshots/de/ailis/usb4java/usb4java - scm:git:git://github.com/kayahr/${project.artifactId}.git - scm:git:ssh://git@github.com/kayahr/${project.artifactId}.git - http://github.com/kayahr/${project.artifactId} + scm:git:git://github.com/kayahr/usb4java.git + scm:git:ssh://git@github.com/kayahr/usb4java.git + http://github.com/kayahr/usb4java GitHub - https://github.com/kayahr/${project.artifactId}/issues + https://github.com/kayahr/usb4java/issues - - - - org.apache.maven.plugins - maven-compiler-plugin - 2.3.2 - - 1.6 - 1.6 - ${project.build.sourceEncoding} - - + + - - org.apache.maven.plugins - maven-site-plugin - 3.0 - - false - en - ${project.build.sourceEncoding} - ${project.build.sourceEncoding} - - - org.apache.maven.plugins - maven-project-info-reports-plugin - 2.4 - - false - false - - - summary - dependencies - project-team - issue-tracking - license - scm - - - - org.apache.maven.plugins - maven-changes-plugin - 2.6 - - - - changes-report - - - - - - - - - + + org.apache.maven.plugins + maven-compiler-plugin + 2.3.2 + + 1.6 + 1.6 + ${project.build.sourceEncoding} + + + + @@ -136,7 +94,7 @@ project-website - file://${project.basedir}/../${project.artifactId}-site/ + file://${project.basedir}/../usb4java-site/ ailis-releases @@ -150,12 +108,29 @@ - - - javax.usb - usb - 1.0.2 - - + + + + de.ailis.usb4java + usb4java + ${project.version} + + + de.ailis.usb4java + usb4java-natives + ${project.version} + + + javax.usb + usb + 1.0.2 + + + + + usb4java + usb4java-natives + + diff --git a/src/config/usb4java_checks.xml b/src/config/usb4java_checks.xml deleted file mode 100644 index d54dbb7..0000000 --- a/src/config/usb4java_checks.xml +++ /dev/null @@ -1,212 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/main/resources/windows-x86/libusb4java.dll b/src/main/resources/windows-x86/libusb4java.dll deleted file mode 100755 index bd840d9eeab4b8aa174630aad497c05d4ad8b2ae..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 28719 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 diff --git a/src/main/resources/windows-x86_64/libusb4java.dll b/src/main/resources/windows-x86_64/libusb4java.dll deleted file mode 100755 index d4aa5c4a3c50321a9a257b6941ce555c0b579220..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32395 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 E3!zx_ng9R* diff --git a/src/site/apt/download.apt.vm b/src/site/apt/download.apt.vm deleted file mode 100644 index c427d71..0000000 --- a/src/site/apt/download.apt.vm +++ /dev/null @@ -1,51 +0,0 @@ - ----------------------------------------------------------------------------- - Download - ----------------------------------------------------------------------------- - -Download - -* Binaries - - First of all you need the platform independent Java library for usb4java: - - * {{{${releasesUrl}/usb4java-${project.version}.jar}usb4java-${project.version}.jar}} - - [] - - Additionally you need the JNI library for the platform on which you want - to use usb4java. The JARs for Windows and Mac OS X also contain the libusb - shared library. On Linux machines this library is provided by the linux - distribution (Usually a package called libusb, make sure it is version 0.x - and not the newer 1.x). - - * {{{${releasesUrl}/usb4java-${project.version}-linux-x86.jar}usb4java-${project.version}-linux-x86.jar}} - - * {{{${releasesUrl}/usb4java-${project.version}-linux-x86_64.jar}usb4java-${project.version}-linux-x86_64.jar}} - - * {{{${releasesUrl}/usb4java-${project.version}-windows-x86.jar}usb4java-${project.version}-windows-x86.jar}} - - * {{{${releasesUrl}/usb4java-${project.version}-windows-x86_64.jar}usb4java-${project.version}-windows-x86_64.jar}} - - * {{{${releasesUrl}/usb4java-${project.version}-macosx-universal.jar}usb4java-${project.version}-macosx-universal.jar}} - - [] - - If you prefer using bleeding edge snapshots then you can download - them from the {{{$snapshotsUrl/}snapshot repository}}. - - -* Sources - - You can also compile usb4java manually. Simply download one of the following - archives and run <>. The source archive contains the pre-compiled - shared libraries for Linux, Windows and Mac OS X but also the C source code - of the JNI library if you want to compile it yourself or want to use usb4java - on a different platform. - - * {{{http://www.ailis.de/nexus/content/repositories/releases/de/ailis/usb4java/usb4java/${project.version}/usb4java-${project.version}-src.tar.bz2}usb4java-${project.version}-src.tar.bz2}} - - * {{{http://www.ailis.de/nexus/content/repositories/releases/de/ailis/usb4java/usb4java/${project.version}/usb4java-${project.version}-src.zip}usb4java-${project.version}-src.zip}} - - [] - - Sources are also available in the {{{./source-repository.html}source repository}}. diff --git a/usb4java-natives/pom.xml b/usb4java-natives/pom.xml new file mode 100644 index 0000000..c26f680 --- /dev/null +++ b/usb4java-natives/pom.xml @@ -0,0 +1,15 @@ + + + 4.0.0 + + + de.ailis.usb4java + usb4java-parent + 0.4.0-SNAPSHOT + + + usb4java-natives + jar + usb4java native libraries + + diff --git a/src/main/c/AUTHORS b/usb4java-natives/src/main/c/AUTHORS similarity index 100% rename from src/main/c/AUTHORS rename to usb4java-natives/src/main/c/AUTHORS diff --git a/src/main/c/COPYING b/usb4java-natives/src/main/c/COPYING similarity index 100% rename from src/main/c/COPYING rename to usb4java-natives/src/main/c/COPYING diff --git a/src/main/c/ChangeLog b/usb4java-natives/src/main/c/ChangeLog similarity index 100% rename from src/main/c/ChangeLog rename to usb4java-natives/src/main/c/ChangeLog diff --git a/src/main/c/Makefile.am b/usb4java-natives/src/main/c/Makefile.am similarity index 100% rename from src/main/c/Makefile.am rename to usb4java-natives/src/main/c/Makefile.am diff --git a/src/main/c/Makefile.scm b/usb4java-natives/src/main/c/Makefile.scm similarity index 100% rename from src/main/c/Makefile.scm rename to usb4java-natives/src/main/c/Makefile.scm diff --git a/src/main/c/NEWS b/usb4java-natives/src/main/c/NEWS similarity index 100% rename from src/main/c/NEWS rename to usb4java-natives/src/main/c/NEWS diff --git a/src/main/c/README b/usb4java-natives/src/main/c/README similarity index 100% rename from src/main/c/README rename to usb4java-natives/src/main/c/README diff --git a/src/main/c/acinclude.m4 b/usb4java-natives/src/main/c/acinclude.m4 similarity index 100% rename from src/main/c/acinclude.m4 rename to usb4java-natives/src/main/c/acinclude.m4 diff --git a/src/main/c/build/linux-x86.sh b/usb4java-natives/src/main/c/build/linux-x86.sh similarity index 57% rename from src/main/c/build/linux-x86.sh rename to usb4java-natives/src/main/c/build/linux-x86.sh index e30ea6d..4628c30 100755 --- a/src/main/c/build/linux-x86.sh +++ b/usb4java-natives/src/main/c/build/linux-x86.sh @@ -1,8 +1,15 @@ #!/bin/sh # # Builds libusb4java for 32 bit linux. -# If running on 32 bit linux you need libusb-dev. -# If running on 64 bit linux you need ia32-libs-dev and libc6-dev-i386. +# +# If running on 32 bit linux you just need libusb-dev. +# +# If running on 64 bit linux you need ia32-libs-dev and libc6-dev-i386 +# or gcc-multilib and libusb-0.1-4:i386 or something like that an newer +# systems. Depending on your multilib installation it may be required to +# create a manual symlink libusb.so in /lib/i386-linux-gnu or otherwise +# compilation will fail because the compiler can't find the 32 bit +# library. set -e cd $(dirname $0)/.. @@ -27,4 +34,5 @@ fi make clean install-strip DESTDIR=$TMPDIR mkdir -p $DISTDIR cp -faL $TMPDIR/lib/libusb4java.so $DISTDIR/ +chmod -x $DISTDIR/libusb4java.so rm -rf $TMPDIR diff --git a/src/main/c/build/linux-x86_64.sh b/usb4java-natives/src/main/c/build/linux-x86_64.sh similarity index 94% rename from src/main/c/build/linux-x86_64.sh rename to usb4java-natives/src/main/c/build/linux-x86_64.sh index bf7774e..3e5ecf2 100755 --- a/src/main/c/build/linux-x86_64.sh +++ b/usb4java-natives/src/main/c/build/linux-x86_64.sh @@ -26,4 +26,5 @@ fi make clean install-strip DESTDIR=$TMPDIR mkdir -p $DISTDIR cp -faL $TMPDIR/lib/libusb4java.so $DISTDIR/ +chmod -x $DISTDIR/libusb4java.so rm -rf $TMPDIR diff --git a/src/main/c/build/macosx-universal.sh b/usb4java-natives/src/main/c/build/macosx-universal.sh similarity index 94% rename from src/main/c/build/macosx-universal.sh rename to usb4java-natives/src/main/c/build/macosx-universal.sh index 5117f5b..243b0d0 100755 --- a/src/main/c/build/macosx-universal.sh +++ b/usb4java-natives/src/main/c/build/macosx-universal.sh @@ -1,6 +1,8 @@ #!/bin/sh # # Builds universal libusb4java for Mac OS X (x86_64, x86, ppc) +# This is meant to be run on a Mac (With XCode command line stuff +# installed), it doesn't cross compile on linux! set -e cd $(dirname $0)/.. diff --git a/src/main/c/build/mingw-windows-x86.sh b/usb4java-natives/src/main/c/build/mingw-windows-x86.sh similarity index 92% rename from src/main/c/build/mingw-windows-x86.sh rename to usb4java-natives/src/main/c/build/mingw-windows-x86.sh index 22fb4cf..7d997f0 100755 --- a/src/main/c/build/mingw-windows-x86.sh +++ b/usb4java-natives/src/main/c/build/mingw-windows-x86.sh @@ -1,6 +1,6 @@ #!/bin/sh # -# Cross-compiles libusb4java for 64 bit windows using mingw. +# Cross-compiles libusb4java for 32 bit windows using mingw. # libusb-dev is needed. set -e @@ -42,4 +42,5 @@ make clean install-strip DESTDIR=$TMPDIR mkdir -p $DISTDIR cp -faL $TMPDIR/bin/libusb4java-0.dll $DISTDIR/libusb4java.dll cp -faL $BINS/libusb0_x86.dll $DISTDIR/libusb0.dll +chmod -x $DISTDIR/libusb4java.dll rm -rf $TMPDIR diff --git a/src/main/c/build/mingw-windows-x86_64.sh b/usb4java-natives/src/main/c/build/mingw-windows-x86_64.sh similarity index 97% rename from src/main/c/build/mingw-windows-x86_64.sh rename to usb4java-natives/src/main/c/build/mingw-windows-x86_64.sh index 53d7fd3..c7df3cc 100755 --- a/src/main/c/build/mingw-windows-x86_64.sh +++ b/usb4java-natives/src/main/c/build/mingw-windows-x86_64.sh @@ -42,4 +42,5 @@ make clean install-strip DESTDIR=$TMPDIR mkdir -p $DISTDIR cp -faL $TMPDIR/bin/libusb4java-0.dll $DISTDIR/libusb4java.dll cp -faL $BINS/libusb0.dll $DISTDIR/libusb0.dll +chmod -x $DISTDIR/libusb4java.dll rm -rf $TMPDIR diff --git a/src/main/c/configure.ac b/usb4java-natives/src/main/c/configure.ac similarity index 90% rename from src/main/c/configure.ac rename to usb4java-natives/src/main/c/configure.ac index 355c1c1..cc1f81f 100644 --- a/src/main/c/configure.ac +++ b/usb4java-natives/src/main/c/configure.ac @@ -1,5 +1,5 @@ AC_PREREQ([2.61]) -AC_INIT([libusb4java], [0.3.1], [k@ailis.de]) +AC_INIT([libusb4java], [0.4.0], [k@ailis.de]) AM_INIT_AUTOMAKE(foreign -Wall -Werror) AC_CONFIG_MACRO_DIR([m4]) AC_CONFIG_HEADERS([config.h]) diff --git a/src/main/c/src/Makefile.am b/usb4java-natives/src/main/c/src/Makefile.am similarity index 100% rename from src/main/c/src/Makefile.am rename to usb4java-natives/src/main/c/src/Makefile.am diff --git a/src/main/c/src/USB.c b/usb4java-natives/src/main/c/src/USB.c similarity index 100% rename from src/main/c/src/USB.c rename to usb4java-natives/src/main/c/src/USB.c diff --git a/src/main/c/src/USB_Bus.c b/usb4java-natives/src/main/c/src/USB_Bus.c similarity index 100% rename from src/main/c/src/USB_Bus.c rename to usb4java-natives/src/main/c/src/USB_Bus.c diff --git a/src/main/c/src/USB_Bus.h b/usb4java-natives/src/main/c/src/USB_Bus.h similarity index 100% rename from src/main/c/src/USB_Bus.h rename to usb4java-natives/src/main/c/src/USB_Bus.h diff --git a/src/main/c/src/USB_Config_Descriptor.c b/usb4java-natives/src/main/c/src/USB_Config_Descriptor.c similarity index 100% rename from src/main/c/src/USB_Config_Descriptor.c rename to usb4java-natives/src/main/c/src/USB_Config_Descriptor.c diff --git a/src/main/c/src/USB_Config_Descriptor.h b/usb4java-natives/src/main/c/src/USB_Config_Descriptor.h similarity index 100% rename from src/main/c/src/USB_Config_Descriptor.h rename to usb4java-natives/src/main/c/src/USB_Config_Descriptor.h diff --git a/src/main/c/src/USB_Descriptor_Header.c b/usb4java-natives/src/main/c/src/USB_Descriptor_Header.c similarity index 100% rename from src/main/c/src/USB_Descriptor_Header.c rename to usb4java-natives/src/main/c/src/USB_Descriptor_Header.c diff --git a/src/main/c/src/USB_Dev_Handle.c b/usb4java-natives/src/main/c/src/USB_Dev_Handle.c similarity index 100% rename from src/main/c/src/USB_Dev_Handle.c rename to usb4java-natives/src/main/c/src/USB_Dev_Handle.c diff --git a/src/main/c/src/USB_Dev_Handle.h b/usb4java-natives/src/main/c/src/USB_Dev_Handle.h similarity index 100% rename from src/main/c/src/USB_Dev_Handle.h rename to usb4java-natives/src/main/c/src/USB_Dev_Handle.h diff --git a/src/main/c/src/USB_Device.c b/usb4java-natives/src/main/c/src/USB_Device.c similarity index 100% rename from src/main/c/src/USB_Device.c rename to usb4java-natives/src/main/c/src/USB_Device.c diff --git a/src/main/c/src/USB_Device.h b/usb4java-natives/src/main/c/src/USB_Device.h similarity index 100% rename from src/main/c/src/USB_Device.h rename to usb4java-natives/src/main/c/src/USB_Device.h diff --git a/src/main/c/src/USB_Device_Descriptor.c b/usb4java-natives/src/main/c/src/USB_Device_Descriptor.c similarity index 100% rename from src/main/c/src/USB_Device_Descriptor.c rename to usb4java-natives/src/main/c/src/USB_Device_Descriptor.c diff --git a/src/main/c/src/USB_Device_Descriptor.h b/usb4java-natives/src/main/c/src/USB_Device_Descriptor.h similarity index 100% rename from src/main/c/src/USB_Device_Descriptor.h rename to usb4java-natives/src/main/c/src/USB_Device_Descriptor.h diff --git a/src/main/c/src/USB_Endpoint_Descriptor.c b/usb4java-natives/src/main/c/src/USB_Endpoint_Descriptor.c similarity index 100% rename from src/main/c/src/USB_Endpoint_Descriptor.c rename to usb4java-natives/src/main/c/src/USB_Endpoint_Descriptor.c diff --git a/src/main/c/src/USB_Endpoint_Descriptor.h b/usb4java-natives/src/main/c/src/USB_Endpoint_Descriptor.h similarity index 100% rename from src/main/c/src/USB_Endpoint_Descriptor.h rename to usb4java-natives/src/main/c/src/USB_Endpoint_Descriptor.h diff --git a/src/main/c/src/USB_Interface.c b/usb4java-natives/src/main/c/src/USB_Interface.c similarity index 100% rename from src/main/c/src/USB_Interface.c rename to usb4java-natives/src/main/c/src/USB_Interface.c diff --git a/src/main/c/src/USB_Interface.h b/usb4java-natives/src/main/c/src/USB_Interface.h similarity index 100% rename from src/main/c/src/USB_Interface.h rename to usb4java-natives/src/main/c/src/USB_Interface.h diff --git a/src/main/c/src/USB_Interface_Descriptor.c b/usb4java-natives/src/main/c/src/USB_Interface_Descriptor.c similarity index 100% rename from src/main/c/src/USB_Interface_Descriptor.c rename to usb4java-natives/src/main/c/src/USB_Interface_Descriptor.c diff --git a/src/main/c/src/USB_Interface_Descriptor.h b/usb4java-natives/src/main/c/src/USB_Interface_Descriptor.h similarity index 100% rename from src/main/c/src/USB_Interface_Descriptor.h rename to usb4java-natives/src/main/c/src/USB_Interface_Descriptor.h diff --git a/src/main/c/src/usb4java.h b/usb4java-natives/src/main/c/src/usb4java.h similarity index 100% rename from src/main/c/src/usb4java.h rename to usb4java-natives/src/main/c/src/usb4java.h diff --git a/src/main/resources/linux-x86/libusb4java.so b/usb4java-natives/src/main/resources/linux-x86/libusb4java.so old mode 100755 new mode 100644 similarity index 99% rename from src/main/resources/linux-x86/libusb4java.so rename to usb4java-natives/src/main/resources/linux-x86/libusb4java.so index 3d14ca4b51565d22c42e7350bef14dc9b2e5de89..bc4c14395215578fb8f609f28347b8192357007d GIT binary patch delta 58 zcmV-A0LA~z>jBK`0k9+i6bng|7mn|(0L6UxVXk#I^-@^!$g?;BoNo~`EirXsb#8QZ QH7Ou8E;cSRv*mE-1p0;;b^rhX delta 58 zcmV-A0LA~z>jBK`0k9+i6lkT{5~appxd^)73xWtSpLChIk+V1foNo~^Eje{!b#8QZ QGbtc6E;cSPv*mE-1n`y@+5i9m diff --git a/src/main/resources/linux-x86_64/libusb4java.so b/usb4java-natives/src/main/resources/linux-x86_64/libusb4java.so old mode 100755 new mode 100644 similarity index 99% rename from src/main/resources/linux-x86_64/libusb4java.so rename to usb4java-natives/src/main/resources/linux-x86_64/libusb4java.so index da94456c32f5a22797919ea38fc03693fd2c6591..ed969faddef17d74aecacb227dbfb7867d74c71b GIT binary patch delta 117 zcmezIk@3ez#tk>f8C#wey2Z=gaOA z6%LQ?7!`@m5S0L*?i3Y`&R0I&IVuJoKtjO>C~e`>U8CaA>7o*`xzI%1R?t}2ur#SO UucXveQ^7>fOwV}p%))qf06TFm`~Uy| delta 117 zcmezIk@3ez#tk(}4TnY^3dFa{Wzc9*Dd_;&tu?fl@< z`O>31Mn%G>J4HpKGejkz(?uns^Oa9`j*5W?kWlaes%TPa#3YS7~H(WecC^osxmi(9qQf(U4uHYttvYm+AhTvv-} zuf|xnSF6kGi|?hPySlpf7Ow)Xx<*>5sAw;K;l=b1BS&YU@OX6DR!Ch3)H+gUtgOa<`!8QX)DK1Tlc)PI^$JbA|NC$py~ z9Jp{#T*-k8%WG^7ZKJ(mgWX)GtuoiwH;CFwtJdzU*V^i}MOT+;>l!T9xsxVM)XA(% zmoZinH-S}_be6JO#+Czrge6{lR@}IASq?Ha00^f|L7EIG1+b19{ya{SI}R9<9NSNQ>sT5s6IYCX=d#DG-S3j)-xVyv`-&nU1%rj$IBS88U9(*$(Wi1i}IN( zS~rO(`%I5NBoOsA*a5s(iE z`+&|kx6~(*Wq>`)qwSYun(7S z>B@3K&89zH0P2T@GNBKr6KlDAT0(mPL{|+6`*1qDwYH&39-BTCQoqSo!akrICUIEd zkB?jfWv*jsy((QZGCm`0(cSG<>3qvCWvun^jwc-*H9H=|pFL#BqPmxi2FB*^W!63y`uG6(1bZ+*fvc`@Y!P|Q9R;%l8ah~a4b#~OaIdb4^i5_kFz{UTT>zJyy zNJrMfkgBKwly#vo-==KFT*s1Hz0UvWd>RPX&^S%YyAr_+B))$E0T;>Dld|rHy-Cb< zGLGk+pIAC+HhSh$%bqo=ffU0bP0M6(4>bI4Si|o1I#r<2_+X<4gu`;Paheu}syx@~ z)wGbEg^Erf*Lv7Fe(;XzBzEWPRUI|0UNIfo$e=Ef<+{stYUH)<6rH~heR3s`hTUTi7_qje%8IEt%coM<>I5Pe|!||s7ai{Bi4`rce z2}F&?@IWKIEr|3$*XCVDk3XALX7 zJtT~C78j%+dLQ26dYSbBl(mVMFc3N?`j%&4m@W#Fo7*Z>G+h?3xBot>(1h_Ld)D

LC=mj;Y;yTMvp8P=#vy5AN@VJm7bIcYEm5 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%0Ag1_O#PDjz1}xDV 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 DeurKm literal 0 HcmV?d00001 diff --git a/usb4java/pom.xml b/usb4java/pom.xml new file mode 100644 index 0000000..bd92524 --- /dev/null +++ b/usb4java/pom.xml @@ -0,0 +1,73 @@ + + + 4.0.0 + + + de.ailis.usb4java + usb4java-parent + 0.4.0-SNAPSHOT + + + usb4java + jar + usb4java java library + + + + + org.apache.maven.plugins + maven-site-plugin + 3.0 + + false + en + ${project.build.sourceEncoding} + ${project.build.sourceEncoding} + + + org.apache.maven.plugins + maven-project-info-reports-plugin + 2.4 + + false + false + + + summary + dependencies + project-team + issue-tracking + license + scm + + + + org.apache.maven.plugins + maven-changes-plugin + 2.6 + + + + changes-report + + + + + + + + + + + + + javax.usb + usb + + + de.ailis.usb4java + usb4java-natives + + + + diff --git a/src/changes/changes.xml b/usb4java/src/changes/changes.xml similarity index 66% rename from src/changes/changes.xml rename to usb4java/src/changes/changes.xml index 59298b8..185cc3f 100644 --- a/src/changes/changes.xml +++ b/usb4java/src/changes/changes.xml @@ -8,44 +8,56 @@ Klaus Reimer + + + Corrected endpoint index in JNI libraries. + + + Refactored loading of native libraries. The libraries are now a + standard Java dependency and are automatically extracted during + runtime. So no java.library.path or LD_LIBRARY_PATH tinkering + needed anymore. Just put the two JARs into your class path and + that's it. + + - + Improved error messages when loading the JNI library fails. - + Fixed library paths in dylibs so they can be placed in *.app/Contents/MacOS. - + Now trying to load the JNI library with the following library names: usb4java, usb4java32, libusb4java, libusb4java32. - + Fixed missing support for custom buffer offsets and lengths. - + Fixed problem with empty control requests on Mac OS X. - + Implemented configuration to control the communication timeout. - + Implemented configuration to control the scan mode and to improve scan performance by filtering for specific vendor and product ids. - + libusb reports broken bus root devices when detaching USB devices and when user has no root permissions on linux. Fixed it by only trusting root devices which are also in the device list of a bus. diff --git a/src/main/java/de/ailis/usb4java/Services.java b/usb4java/src/main/java/de/ailis/usb4java/Services.java similarity index 100% rename from src/main/java/de/ailis/usb4java/Services.java rename to usb4java/src/main/java/de/ailis/usb4java/Services.java diff --git a/src/main/java/de/ailis/usb4java/descriptors/LibUsbConfigurationDescriptor.java b/usb4java/src/main/java/de/ailis/usb4java/descriptors/LibUsbConfigurationDescriptor.java similarity index 100% rename from src/main/java/de/ailis/usb4java/descriptors/LibUsbConfigurationDescriptor.java rename to usb4java/src/main/java/de/ailis/usb4java/descriptors/LibUsbConfigurationDescriptor.java diff --git a/src/main/java/de/ailis/usb4java/descriptors/LibUsbDescriptor.java b/usb4java/src/main/java/de/ailis/usb4java/descriptors/LibUsbDescriptor.java similarity index 100% rename from src/main/java/de/ailis/usb4java/descriptors/LibUsbDescriptor.java rename to usb4java/src/main/java/de/ailis/usb4java/descriptors/LibUsbDescriptor.java diff --git a/src/main/java/de/ailis/usb4java/descriptors/LibUsbDeviceDescriptor.java b/usb4java/src/main/java/de/ailis/usb4java/descriptors/LibUsbDeviceDescriptor.java similarity index 100% rename from src/main/java/de/ailis/usb4java/descriptors/LibUsbDeviceDescriptor.java rename to usb4java/src/main/java/de/ailis/usb4java/descriptors/LibUsbDeviceDescriptor.java diff --git a/src/main/java/de/ailis/usb4java/descriptors/LibUsbEndpointDescriptor.java b/usb4java/src/main/java/de/ailis/usb4java/descriptors/LibUsbEndpointDescriptor.java similarity index 100% rename from src/main/java/de/ailis/usb4java/descriptors/LibUsbEndpointDescriptor.java rename to usb4java/src/main/java/de/ailis/usb4java/descriptors/LibUsbEndpointDescriptor.java diff --git a/src/main/java/de/ailis/usb4java/descriptors/LibUsbInterfaceDescriptor.java b/usb4java/src/main/java/de/ailis/usb4java/descriptors/LibUsbInterfaceDescriptor.java similarity index 100% rename from src/main/java/de/ailis/usb4java/descriptors/LibUsbInterfaceDescriptor.java rename to usb4java/src/main/java/de/ailis/usb4java/descriptors/LibUsbInterfaceDescriptor.java diff --git a/src/main/java/de/ailis/usb4java/descriptors/LibUsbStringDescriptor.java b/usb4java/src/main/java/de/ailis/usb4java/descriptors/LibUsbStringDescriptor.java similarity index 100% rename from src/main/java/de/ailis/usb4java/descriptors/LibUsbStringDescriptor.java rename to usb4java/src/main/java/de/ailis/usb4java/descriptors/LibUsbStringDescriptor.java diff --git a/src/main/java/de/ailis/usb4java/descriptors/SimpleUsbConfigurationDescriptor.java b/usb4java/src/main/java/de/ailis/usb4java/descriptors/SimpleUsbConfigurationDescriptor.java similarity index 100% rename from src/main/java/de/ailis/usb4java/descriptors/SimpleUsbConfigurationDescriptor.java rename to usb4java/src/main/java/de/ailis/usb4java/descriptors/SimpleUsbConfigurationDescriptor.java diff --git a/src/main/java/de/ailis/usb4java/descriptors/SimpleUsbDescriptor.java b/usb4java/src/main/java/de/ailis/usb4java/descriptors/SimpleUsbDescriptor.java similarity index 100% rename from src/main/java/de/ailis/usb4java/descriptors/SimpleUsbDescriptor.java rename to usb4java/src/main/java/de/ailis/usb4java/descriptors/SimpleUsbDescriptor.java diff --git a/src/main/java/de/ailis/usb4java/descriptors/SimpleUsbDeviceDescriptor.java b/usb4java/src/main/java/de/ailis/usb4java/descriptors/SimpleUsbDeviceDescriptor.java similarity index 100% rename from src/main/java/de/ailis/usb4java/descriptors/SimpleUsbDeviceDescriptor.java rename to usb4java/src/main/java/de/ailis/usb4java/descriptors/SimpleUsbDeviceDescriptor.java diff --git a/src/main/java/de/ailis/usb4java/descriptors/SimpleUsbInterfaceDescriptor.java b/usb4java/src/main/java/de/ailis/usb4java/descriptors/SimpleUsbInterfaceDescriptor.java similarity index 100% rename from src/main/java/de/ailis/usb4java/descriptors/SimpleUsbInterfaceDescriptor.java rename to usb4java/src/main/java/de/ailis/usb4java/descriptors/SimpleUsbInterfaceDescriptor.java diff --git a/src/main/java/de/ailis/usb4java/descriptors/package-info.java b/usb4java/src/main/java/de/ailis/usb4java/descriptors/package-info.java similarity index 100% rename from src/main/java/de/ailis/usb4java/descriptors/package-info.java rename to usb4java/src/main/java/de/ailis/usb4java/descriptors/package-info.java diff --git a/src/main/java/de/ailis/usb4java/exceptions/LibUsbException.java b/usb4java/src/main/java/de/ailis/usb4java/exceptions/LibUsbException.java similarity index 100% rename from src/main/java/de/ailis/usb4java/exceptions/LibUsbException.java rename to usb4java/src/main/java/de/ailis/usb4java/exceptions/LibUsbException.java diff --git a/src/main/java/de/ailis/usb4java/exceptions/NativesException.java b/usb4java/src/main/java/de/ailis/usb4java/exceptions/NativesException.java similarity index 100% rename from src/main/java/de/ailis/usb4java/exceptions/NativesException.java rename to usb4java/src/main/java/de/ailis/usb4java/exceptions/NativesException.java diff --git a/src/main/java/de/ailis/usb4java/exceptions/package-info.java b/usb4java/src/main/java/de/ailis/usb4java/exceptions/package-info.java similarity index 100% rename from src/main/java/de/ailis/usb4java/exceptions/package-info.java rename to usb4java/src/main/java/de/ailis/usb4java/exceptions/package-info.java diff --git a/src/main/java/de/ailis/usb4java/jni/NativesLoader.java b/usb4java/src/main/java/de/ailis/usb4java/jni/NativesLoader.java similarity index 100% rename from src/main/java/de/ailis/usb4java/jni/NativesLoader.java rename to usb4java/src/main/java/de/ailis/usb4java/jni/NativesLoader.java diff --git a/src/main/java/de/ailis/usb4java/jni/USB.java b/usb4java/src/main/java/de/ailis/usb4java/jni/USB.java similarity index 100% rename from src/main/java/de/ailis/usb4java/jni/USB.java rename to usb4java/src/main/java/de/ailis/usb4java/jni/USB.java diff --git a/src/main/java/de/ailis/usb4java/jni/USB_Bus.java b/usb4java/src/main/java/de/ailis/usb4java/jni/USB_Bus.java similarity index 100% rename from src/main/java/de/ailis/usb4java/jni/USB_Bus.java rename to usb4java/src/main/java/de/ailis/usb4java/jni/USB_Bus.java diff --git a/src/main/java/de/ailis/usb4java/jni/USB_Config_Descriptor.java b/usb4java/src/main/java/de/ailis/usb4java/jni/USB_Config_Descriptor.java similarity index 100% rename from src/main/java/de/ailis/usb4java/jni/USB_Config_Descriptor.java rename to usb4java/src/main/java/de/ailis/usb4java/jni/USB_Config_Descriptor.java diff --git a/src/main/java/de/ailis/usb4java/jni/USB_Descriptor_Header.java b/usb4java/src/main/java/de/ailis/usb4java/jni/USB_Descriptor_Header.java similarity index 100% rename from src/main/java/de/ailis/usb4java/jni/USB_Descriptor_Header.java rename to usb4java/src/main/java/de/ailis/usb4java/jni/USB_Descriptor_Header.java diff --git a/src/main/java/de/ailis/usb4java/jni/USB_Dev_Handle.java b/usb4java/src/main/java/de/ailis/usb4java/jni/USB_Dev_Handle.java similarity index 100% rename from src/main/java/de/ailis/usb4java/jni/USB_Dev_Handle.java rename to usb4java/src/main/java/de/ailis/usb4java/jni/USB_Dev_Handle.java diff --git a/src/main/java/de/ailis/usb4java/jni/USB_Device.java b/usb4java/src/main/java/de/ailis/usb4java/jni/USB_Device.java similarity index 100% rename from src/main/java/de/ailis/usb4java/jni/USB_Device.java rename to usb4java/src/main/java/de/ailis/usb4java/jni/USB_Device.java diff --git a/src/main/java/de/ailis/usb4java/jni/USB_Device_Descriptor.java b/usb4java/src/main/java/de/ailis/usb4java/jni/USB_Device_Descriptor.java similarity index 100% rename from src/main/java/de/ailis/usb4java/jni/USB_Device_Descriptor.java rename to usb4java/src/main/java/de/ailis/usb4java/jni/USB_Device_Descriptor.java diff --git a/src/main/java/de/ailis/usb4java/jni/USB_Endpoint_Descriptor.java b/usb4java/src/main/java/de/ailis/usb4java/jni/USB_Endpoint_Descriptor.java similarity index 100% rename from src/main/java/de/ailis/usb4java/jni/USB_Endpoint_Descriptor.java rename to usb4java/src/main/java/de/ailis/usb4java/jni/USB_Endpoint_Descriptor.java diff --git a/src/main/java/de/ailis/usb4java/jni/USB_Interface.java b/usb4java/src/main/java/de/ailis/usb4java/jni/USB_Interface.java similarity index 100% rename from src/main/java/de/ailis/usb4java/jni/USB_Interface.java rename to usb4java/src/main/java/de/ailis/usb4java/jni/USB_Interface.java diff --git a/src/main/java/de/ailis/usb4java/jni/USB_Interface_Descriptor.java b/usb4java/src/main/java/de/ailis/usb4java/jni/USB_Interface_Descriptor.java similarity index 100% rename from src/main/java/de/ailis/usb4java/jni/USB_Interface_Descriptor.java rename to usb4java/src/main/java/de/ailis/usb4java/jni/USB_Interface_Descriptor.java diff --git a/src/main/java/de/ailis/usb4java/jni/USB_String_Descriptor.java b/usb4java/src/main/java/de/ailis/usb4java/jni/USB_String_Descriptor.java similarity index 100% rename from src/main/java/de/ailis/usb4java/jni/USB_String_Descriptor.java rename to usb4java/src/main/java/de/ailis/usb4java/jni/USB_String_Descriptor.java diff --git a/src/main/java/de/ailis/usb4java/jni/package-info.java b/usb4java/src/main/java/de/ailis/usb4java/jni/package-info.java similarity index 100% rename from src/main/java/de/ailis/usb4java/jni/package-info.java rename to usb4java/src/main/java/de/ailis/usb4java/jni/package-info.java diff --git a/src/main/java/de/ailis/usb4java/package-info.java b/usb4java/src/main/java/de/ailis/usb4java/package-info.java similarity index 100% rename from src/main/java/de/ailis/usb4java/package-info.java rename to usb4java/src/main/java/de/ailis/usb4java/package-info.java diff --git a/src/main/java/de/ailis/usb4java/support/AbstractIrpQueue.java b/usb4java/src/main/java/de/ailis/usb4java/support/AbstractIrpQueue.java similarity index 100% rename from src/main/java/de/ailis/usb4java/support/AbstractIrpQueue.java rename to usb4java/src/main/java/de/ailis/usb4java/support/AbstractIrpQueue.java diff --git a/src/main/java/de/ailis/usb4java/support/Config.java b/usb4java/src/main/java/de/ailis/usb4java/support/Config.java similarity index 100% rename from src/main/java/de/ailis/usb4java/support/Config.java rename to usb4java/src/main/java/de/ailis/usb4java/support/Config.java diff --git a/src/main/java/de/ailis/usb4java/support/ControlIrpQueue.java b/usb4java/src/main/java/de/ailis/usb4java/support/ControlIrpQueue.java similarity index 100% rename from src/main/java/de/ailis/usb4java/support/ControlIrpQueue.java rename to usb4java/src/main/java/de/ailis/usb4java/support/ControlIrpQueue.java diff --git a/src/main/java/de/ailis/usb4java/support/EventListenerList.java b/usb4java/src/main/java/de/ailis/usb4java/support/EventListenerList.java similarity index 100% rename from src/main/java/de/ailis/usb4java/support/EventListenerList.java rename to usb4java/src/main/java/de/ailis/usb4java/support/EventListenerList.java diff --git a/src/main/java/de/ailis/usb4java/support/IOUtils.java b/usb4java/src/main/java/de/ailis/usb4java/support/IOUtils.java similarity index 100% rename from src/main/java/de/ailis/usb4java/support/IOUtils.java rename to usb4java/src/main/java/de/ailis/usb4java/support/IOUtils.java diff --git a/src/main/java/de/ailis/usb4java/support/IrpQueue.java b/usb4java/src/main/java/de/ailis/usb4java/support/IrpQueue.java similarity index 100% rename from src/main/java/de/ailis/usb4java/support/IrpQueue.java rename to usb4java/src/main/java/de/ailis/usb4java/support/IrpQueue.java diff --git a/src/main/java/de/ailis/usb4java/support/UsbDeviceListenerList.java b/usb4java/src/main/java/de/ailis/usb4java/support/UsbDeviceListenerList.java similarity index 100% rename from src/main/java/de/ailis/usb4java/support/UsbDeviceListenerList.java rename to usb4java/src/main/java/de/ailis/usb4java/support/UsbDeviceListenerList.java diff --git a/src/main/java/de/ailis/usb4java/support/UsbLock.java b/usb4java/src/main/java/de/ailis/usb4java/support/UsbLock.java similarity index 100% rename from src/main/java/de/ailis/usb4java/support/UsbLock.java rename to usb4java/src/main/java/de/ailis/usb4java/support/UsbLock.java diff --git a/src/main/java/de/ailis/usb4java/support/UsbPipeListenerList.java b/usb4java/src/main/java/de/ailis/usb4java/support/UsbPipeListenerList.java similarity index 100% rename from src/main/java/de/ailis/usb4java/support/UsbPipeListenerList.java rename to usb4java/src/main/java/de/ailis/usb4java/support/UsbPipeListenerList.java diff --git a/src/main/java/de/ailis/usb4java/support/UsbServicesListenerList.java b/usb4java/src/main/java/de/ailis/usb4java/support/UsbServicesListenerList.java similarity index 100% rename from src/main/java/de/ailis/usb4java/support/UsbServicesListenerList.java rename to usb4java/src/main/java/de/ailis/usb4java/support/UsbServicesListenerList.java diff --git a/src/main/java/de/ailis/usb4java/support/UsbUtils.java b/usb4java/src/main/java/de/ailis/usb4java/support/UsbUtils.java similarity index 100% rename from src/main/java/de/ailis/usb4java/support/UsbUtils.java rename to usb4java/src/main/java/de/ailis/usb4java/support/UsbUtils.java diff --git a/src/main/java/de/ailis/usb4java/support/package-info.java b/usb4java/src/main/java/de/ailis/usb4java/support/package-info.java similarity index 100% rename from src/main/java/de/ailis/usb4java/support/package-info.java rename to usb4java/src/main/java/de/ailis/usb4java/support/package-info.java diff --git a/src/main/java/de/ailis/usb4java/tools/Dump.java b/usb4java/src/main/java/de/ailis/usb4java/tools/Dump.java similarity index 100% rename from src/main/java/de/ailis/usb4java/tools/Dump.java rename to usb4java/src/main/java/de/ailis/usb4java/tools/Dump.java diff --git a/src/main/java/de/ailis/usb4java/tools/package-info.java b/usb4java/src/main/java/de/ailis/usb4java/tools/package-info.java similarity index 100% rename from src/main/java/de/ailis/usb4java/tools/package-info.java rename to usb4java/src/main/java/de/ailis/usb4java/tools/package-info.java diff --git a/src/main/java/de/ailis/usb4java/topology/LibUsbConfiguration.java b/usb4java/src/main/java/de/ailis/usb4java/topology/LibUsbConfiguration.java similarity index 100% rename from src/main/java/de/ailis/usb4java/topology/LibUsbConfiguration.java rename to usb4java/src/main/java/de/ailis/usb4java/topology/LibUsbConfiguration.java diff --git a/src/main/java/de/ailis/usb4java/topology/LibUsbDevice.java b/usb4java/src/main/java/de/ailis/usb4java/topology/LibUsbDevice.java similarity index 100% rename from src/main/java/de/ailis/usb4java/topology/LibUsbDevice.java rename to usb4java/src/main/java/de/ailis/usb4java/topology/LibUsbDevice.java diff --git a/src/main/java/de/ailis/usb4java/topology/LibUsbEndpoint.java b/usb4java/src/main/java/de/ailis/usb4java/topology/LibUsbEndpoint.java similarity index 100% rename from src/main/java/de/ailis/usb4java/topology/LibUsbEndpoint.java rename to usb4java/src/main/java/de/ailis/usb4java/topology/LibUsbEndpoint.java diff --git a/src/main/java/de/ailis/usb4java/topology/LibUsbHub.java b/usb4java/src/main/java/de/ailis/usb4java/topology/LibUsbHub.java similarity index 100% rename from src/main/java/de/ailis/usb4java/topology/LibUsbHub.java rename to usb4java/src/main/java/de/ailis/usb4java/topology/LibUsbHub.java diff --git a/src/main/java/de/ailis/usb4java/topology/LibUsbInterface.java b/usb4java/src/main/java/de/ailis/usb4java/topology/LibUsbInterface.java similarity index 100% rename from src/main/java/de/ailis/usb4java/topology/LibUsbInterface.java rename to usb4java/src/main/java/de/ailis/usb4java/topology/LibUsbInterface.java diff --git a/src/main/java/de/ailis/usb4java/topology/LibUsbNonHub.java b/usb4java/src/main/java/de/ailis/usb4java/topology/LibUsbNonHub.java similarity index 100% rename from src/main/java/de/ailis/usb4java/topology/LibUsbNonHub.java rename to usb4java/src/main/java/de/ailis/usb4java/topology/LibUsbNonHub.java diff --git a/src/main/java/de/ailis/usb4java/topology/LibUsbPipe.java b/usb4java/src/main/java/de/ailis/usb4java/topology/LibUsbPipe.java similarity index 100% rename from src/main/java/de/ailis/usb4java/topology/LibUsbPipe.java rename to usb4java/src/main/java/de/ailis/usb4java/topology/LibUsbPipe.java diff --git a/src/main/java/de/ailis/usb4java/topology/LibUsbPort.java b/usb4java/src/main/java/de/ailis/usb4java/topology/LibUsbPort.java similarity index 100% rename from src/main/java/de/ailis/usb4java/topology/LibUsbPort.java rename to usb4java/src/main/java/de/ailis/usb4java/topology/LibUsbPort.java diff --git a/src/main/java/de/ailis/usb4java/topology/LibUsbPorts.java b/usb4java/src/main/java/de/ailis/usb4java/topology/LibUsbPorts.java similarity index 100% rename from src/main/java/de/ailis/usb4java/topology/LibUsbPorts.java rename to usb4java/src/main/java/de/ailis/usb4java/topology/LibUsbPorts.java diff --git a/src/main/java/de/ailis/usb4java/topology/UsbDeviceScanner.java b/usb4java/src/main/java/de/ailis/usb4java/topology/UsbDeviceScanner.java similarity index 100% rename from src/main/java/de/ailis/usb4java/topology/UsbDeviceScanner.java rename to usb4java/src/main/java/de/ailis/usb4java/topology/UsbDeviceScanner.java diff --git a/src/main/java/de/ailis/usb4java/topology/UsbPorts.java b/usb4java/src/main/java/de/ailis/usb4java/topology/UsbPorts.java similarity index 100% rename from src/main/java/de/ailis/usb4java/topology/UsbPorts.java rename to usb4java/src/main/java/de/ailis/usb4java/topology/UsbPorts.java diff --git a/src/main/java/de/ailis/usb4java/topology/VirtualRootHub.java b/usb4java/src/main/java/de/ailis/usb4java/topology/VirtualRootHub.java similarity index 100% rename from src/main/java/de/ailis/usb4java/topology/VirtualRootHub.java rename to usb4java/src/main/java/de/ailis/usb4java/topology/VirtualRootHub.java diff --git a/src/main/java/de/ailis/usb4java/topology/VirtualRootHubConfiguration.java b/usb4java/src/main/java/de/ailis/usb4java/topology/VirtualRootHubConfiguration.java similarity index 100% rename from src/main/java/de/ailis/usb4java/topology/VirtualRootHubConfiguration.java rename to usb4java/src/main/java/de/ailis/usb4java/topology/VirtualRootHubConfiguration.java diff --git a/src/main/java/de/ailis/usb4java/topology/VirtualRootHubInterface.java b/usb4java/src/main/java/de/ailis/usb4java/topology/VirtualRootHubInterface.java similarity index 100% rename from src/main/java/de/ailis/usb4java/topology/VirtualRootHubInterface.java rename to usb4java/src/main/java/de/ailis/usb4java/topology/VirtualRootHubInterface.java diff --git a/src/main/java/de/ailis/usb4java/topology/package-info.java b/usb4java/src/main/java/de/ailis/usb4java/topology/package-info.java similarity index 100% rename from src/main/java/de/ailis/usb4java/topology/package-info.java rename to usb4java/src/main/java/de/ailis/usb4java/topology/package-info.java diff --git a/src/site/apt/configuration.apt.vm b/usb4java/src/site/apt/configuration.apt.vm similarity index 97% rename from src/site/apt/configuration.apt.vm rename to usb4java/src/site/apt/configuration.apt.vm index 3cbe93e..2cb0b2b 100644 --- a/src/site/apt/configuration.apt.vm +++ b/usb4java/src/site/apt/configuration.apt.vm @@ -70,7 +70,7 @@ de.ailis.usb4java.products = 01aa The purpose of this device filtering is performance. When your machine has many USB devices connected then it may slow down your application when has to read all the descriptors of all connected devices on - startup and everytime a USB device has been attached or detached. + startup and every time a USB device has been attached or detached. So filtering for vendor ID and/or product ID will hide all uninteresting devices from the . When using this feature then it is recommended to disable hierarchy scan, too, because then hubs can be totally diff --git a/usb4java/src/site/apt/download.apt.vm b/usb4java/src/site/apt/download.apt.vm new file mode 100644 index 0000000..4141135 --- /dev/null +++ b/usb4java/src/site/apt/download.apt.vm @@ -0,0 +1,32 @@ + ----------------------------------------------------------------------------- + Download + ----------------------------------------------------------------------------- + +Download + +* Binaries + + First of all you need the platform independent Java library for usb4java: + + * {{{${releasesUrl}/usb4java-${project.version}.jar}usb4java-${project.version}.jar}} + + [] + + Additionally you need the JAR file which contains the native libraries for + all supported platforms. This JAR file also contains the libusb + shared library for Windows and Mac OS X. Linux users must install the + libusb package included in their Linux distribution (Usually a package + called libusb, make sure it is version 0.x and not the newer 1.x). + + * {{{${releasesUrl}/usb4java-natives-${project.version}.jar}usb4java-natives-${project.version}.jar}} + + [] + + If you prefer using bleeding edge snapshots then you can download + them from the {{{$snapshotsUrl/}snapshot repository}}. + + +* Sources + + Sources (Java and C) are available in + the {{{./source-repository.html}source repository}}. diff --git a/src/site/apt/faq.apt.vm b/usb4java/src/site/apt/faq.apt.vm similarity index 100% rename from src/site/apt/faq.apt.vm rename to usb4java/src/site/apt/faq.apt.vm diff --git a/src/site/apt/index.apt.vm b/usb4java/src/site/apt/index.apt.vm similarity index 96% rename from src/site/apt/index.apt.vm rename to usb4java/src/site/apt/index.apt.vm index dc024d4..89415ec 100644 --- a/src/site/apt/index.apt.vm +++ b/usb4java/src/site/apt/index.apt.vm @@ -8,7 +8,7 @@ What is usb4java? based on the native {{{http://www.libusb.org/}libusb 0.1}} shared library and reflects this API as complete as possible. Java NIO buffers are used for data exchange between libusb and Java. The high-level part implements - the {{{http://www.javax-usb.org/}javax.usb standard (JSR-80)}}. + the {{{http://javax-usb.sourceforge.net/}javax.usb standard (JSR-80)}}. Supported platforms are Linux (x86 32/64 bit), Mac OS X (x86 32/64 bit, PowerPC 32 bit) and Windows (x86 32/64 bit). But other platforms may work diff --git a/src/site/apt/quickstart.apt.vm b/usb4java/src/site/apt/quickstart.apt.vm similarity index 92% rename from src/site/apt/quickstart.apt.vm rename to usb4java/src/site/apt/quickstart.apt.vm index 34217f1..8a58c40 100644 --- a/src/site/apt/quickstart.apt.vm +++ b/usb4java/src/site/apt/quickstart.apt.vm @@ -4,15 +4,12 @@ Installation - {{{./download.html}Download}} the and a binary JAR matching - your platform. Copy the into your class path and extract - the binary JAR to a directory from which Java can load JNI shared libraries. - You may specify a custom directory with the java option - <-Djava.library.path=some/dir> when running your java programs. + {{{./download.html}Download}} the and + files and add them to your class path. If you are using the high-level API then you also need the which can be downloaded from the - {{{http://sourceforge.net/projects/javax-usb/files/}javax.usb project site}}. + {{{http://javax-usb.sourceforge.net/}javax.usb project site}}. This JAR must also be copied into your class path. @@ -100,7 +97,7 @@ public class Dump The high-level API The high-level API implements the - {{{http://www.javax-usb.org/}javax.usb (JSR-80)}} standard. It is + {{{http://javax-usb.sourceforge.net/}javax.usb (JSR-80)}} standard. It is recommended to use this API because it is object-oriented, event-driven and uses exceptions for error-handling instead of negative return values like the low-level API. Another advantage is that you may switch to a @@ -201,7 +198,7 @@ System.out.println(irp.getData()[0]); * {{{./apidocs/index.html}API documentation of usb4java}} - * {{{http://www.javax-usb.org/}javax-usb website}} + * {{{http://javax-usb.sourceforge.net/}javax-usb website}} [] \ No newline at end of file diff --git a/src/site/resources/css/site.css b/usb4java/src/site/resources/css/site.css similarity index 100% rename from src/site/resources/css/site.css rename to usb4java/src/site/resources/css/site.css diff --git a/src/site/resources/favicon.ico b/usb4java/src/site/resources/favicon.ico similarity index 100% rename from src/site/resources/favicon.ico rename to usb4java/src/site/resources/favicon.ico diff --git a/src/site/resources/images/add.gif b/usb4java/src/site/resources/images/add.gif similarity index 100% rename from src/site/resources/images/add.gif rename to usb4java/src/site/resources/images/add.gif diff --git a/src/site/resources/images/favicon-16-8.png b/usb4java/src/site/resources/images/favicon-16-8.png similarity index 100% rename from src/site/resources/images/favicon-16-8.png rename to usb4java/src/site/resources/images/favicon-16-8.png diff --git a/src/site/resources/images/favicon-16.png b/usb4java/src/site/resources/images/favicon-16.png similarity index 100% rename from src/site/resources/images/favicon-16.png rename to usb4java/src/site/resources/images/favicon-16.png diff --git a/src/site/resources/images/favicon-24.png b/usb4java/src/site/resources/images/favicon-24.png similarity index 100% rename from src/site/resources/images/favicon-24.png rename to usb4java/src/site/resources/images/favicon-24.png diff --git a/src/site/resources/images/favicon-32.png b/usb4java/src/site/resources/images/favicon-32.png similarity index 100% rename from src/site/resources/images/favicon-32.png rename to usb4java/src/site/resources/images/favicon-32.png diff --git a/src/site/resources/images/favicon-48.png b/usb4java/src/site/resources/images/favicon-48.png similarity index 100% rename from src/site/resources/images/favicon-48.png rename to usb4java/src/site/resources/images/favicon-48.png diff --git a/src/site/resources/images/favicon-64.png b/usb4java/src/site/resources/images/favicon-64.png similarity index 100% rename from src/site/resources/images/favicon-64.png rename to usb4java/src/site/resources/images/favicon-64.png diff --git a/src/site/resources/images/favicon.xcf b/usb4java/src/site/resources/images/favicon.xcf similarity index 100% rename from src/site/resources/images/favicon.xcf rename to usb4java/src/site/resources/images/favicon.xcf diff --git a/src/site/resources/images/fix.gif b/usb4java/src/site/resources/images/fix.gif similarity index 100% rename from src/site/resources/images/fix.gif rename to usb4java/src/site/resources/images/fix.gif diff --git a/src/site/resources/images/logo.png b/usb4java/src/site/resources/images/logo.png similarity index 100% rename from src/site/resources/images/logo.png rename to usb4java/src/site/resources/images/logo.png diff --git a/src/site/resources/images/logo.xcf b/usb4java/src/site/resources/images/logo.xcf similarity index 100% rename from src/site/resources/images/logo.xcf rename to usb4java/src/site/resources/images/logo.xcf diff --git a/src/site/resources/images/remove.gif b/usb4java/src/site/resources/images/remove.gif similarity index 100% rename from src/site/resources/images/remove.gif rename to usb4java/src/site/resources/images/remove.gif diff --git a/src/site/resources/images/update.gif b/usb4java/src/site/resources/images/update.gif similarity index 100% rename from src/site/resources/images/update.gif rename to usb4java/src/site/resources/images/update.gif diff --git a/src/site/site.xml b/usb4java/src/site/site.xml similarity index 94% rename from src/site/site.xml rename to usb4java/src/site/site.xml index d5e08b3..9599aa8 100644 --- a/src/site/site.xml +++ b/usb4java/src/site/site.xml @@ -16,7 +16,7 @@ - +