Description: Use System's native library loader
Sikuli upstream binary archives come with the native library loader
mx-native-loader from http://opensource.mxtelecom.com/ which permits
to embed native libraries into the jar archive.
This is not compatible with the Debian policy for java. Hence native
libraries are shipped in their own binary package and we use the standard
native library loader.
Author: Gilles Filippini <pini@debian.org>
Index: sikuli/sikuli-script/src/main/java/org/sikuli/script/VDictProxy.java
===================================================================
--- sikuli.orig/sikuli-script/src/main/java/org/sikuli/script/VDictProxy.java 2012-02-13 23:18:12.000000000 +0100
+++ sikuli/sikuli-script/src/main/java/org/sikuli/script/VDictProxy.java 2012-02-13 23:18:28.000000000 +0100
@@ -12,7 +12,6 @@
import java.util.HashMap;
import java.util.Map;
import java.util.List;
-import com.wapmx.nativeutils.jniloader.NativeLoader;
public class VDictProxy<T> {
private long _instance;
@@ -22,10 +21,10 @@
// load libScreenMatchProxy.{so,jnilib}
//System.loadLibrary("ScreenMatchProxy");
try{
- NativeLoader.loadLibrary("VDictProxy");
+ System.loadLibrary("VDictProxy");
Debug.info("VDictProxy loaded.");
}
- catch(IOException e){
+ catch(Exception e){
e.printStackTrace();
}
}
Index: sikuli/sikuli-script/src/main/java/org/sikuli/script/Finder.java
===================================================================
--- sikuli.orig/sikuli-script/src/main/java/org/sikuli/script/Finder.java 2012-02-13 23:18:12.000000000 +0100
+++ sikuli/sikuli-script/src/main/java/org/sikuli/script/Finder.java 2012-02-13 23:18:28.000000000 +0100
@@ -18,8 +18,6 @@
import org.sikuli.script.natives.TARGET_TYPE;
import org.sikuli.script.natives.Vision;
-import com.wapmx.nativeutils.jniloader.NativeLoader;
-
public class Finder implements Iterator<Match>{
private Region _region = null;
private Pattern _pattern = null;
@@ -30,10 +28,10 @@
static {
try{
- NativeLoader.loadLibrary("VisionProxy");
+ System.loadLibrary("VisionProxy");
Debug.info("Sikuli vision engine loaded.");
}
- catch(IOException e){
+ catch(Exception e){
e.printStackTrace();
}
//Vision.setParameter("GPU", 1);
Index: sikuli/sikuli-script/src/main/java/org/sikuli/script/TextRecognizer.java
===================================================================
--- sikuli.orig/sikuli-script/src/main/java/org/sikuli/script/TextRecognizer.java 2012-02-13 23:18:12.000000000 +0100
+++ sikuli/sikuli-script/src/main/java/org/sikuli/script/TextRecognizer.java 2012-02-13 23:18:28.000000000 +0100
@@ -17,18 +17,16 @@
import org.sikuli.script.natives.OCRWord;
import org.sikuli.script.natives.OCRWords;
-import com.wapmx.nativeutils.jniloader.NativeLoader;
-
// Singleton
public class TextRecognizer {
protected static TextRecognizer _instance = null;
static {
try{
- NativeLoader.loadLibrary("VisionProxy");
+ System.loadLibrary("VisionProxy");
TextRecognizer tr = TextRecognizer.getInstance();
}
- catch(IOException e){
+ catch(Exception e){
e.printStackTrace();
}
}
Index: sikuli/sikuli-script/src/main/java/org/sikuli/script/internal/hotkey/LinuxHotkeyManager.java
===================================================================
--- sikuli.orig/sikuli-script/src/main/java/org/sikuli/script/internal/hotkey/LinuxHotkeyManager.java 2012-02-13 23:18:12.000000000 +0100
+++ sikuli/sikuli-script/src/main/java/org/sikuli/script/internal/hotkey/LinuxHotkeyManager.java 2012-02-13 23:18:28.000000000 +0100
@@ -15,16 +15,15 @@
import org.sikuli.script.HotkeyListener;
import org.sikuli.script.HotkeyEvent;
-import com.wapmx.nativeutils.jniloader.NativeLoader;
import jxgrabkey.HotkeyConflictException;
import jxgrabkey.JXGrabKey;
public class LinuxHotkeyManager extends HotkeyManager {
static{
try{
- NativeLoader.loadLibrary("JXGrabKey");
+ System.loadLibrary("JXGrabKey");
}
- catch(IOException e){
+ catch(Exception e){
Debug.error("Can't load native lib JXGrabKey");
e.printStackTrace();
}
Index: sikuli/sikuli-script/src/main/native/vision.i
===================================================================
--- sikuli.orig/sikuli-script/src/main/native/vision.i 2012-02-13 23:18:12.000000000 +0100
+++ sikuli/sikuli-script/src/main/native/vision.i 2012-02-13 23:18:28.000000000 +0100
@@ -13,14 +13,14 @@
%include "typemaps.i"
%include "various.i"
-%pragma(java) jniclassimports=%{
- import com.wapmx.nativeutils.jniloader.NativeLoader;
-%}
+//%pragma(java) jniclassimports=%{
+// import com.wapmx.nativeutils.jniloader.NativeLoader;
+//%}
%pragma(java) jniclasscode=%{
static {
try {
- NativeLoader.loadLibrary("VisionProxy");
+ System.loadLibrary("VisionProxy");
} catch (Exception e) {
System.err.println("Failed to load VisionProxy.\n" + e);
}