summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--packages/jamvm/files/debian-jni.patch19
-rw-r--r--packages/jamvm/jamvm.inc2
-rw-r--r--packages/jamvm/jamvm_1.5.0.bb9
3 files changed, 28 insertions, 2 deletions
diff --git a/packages/jamvm/files/debian-jni.patch b/packages/jamvm/files/debian-jni.patch
new file mode 100644
index 0000000000..040163da69
--- /dev/null
+++ b/packages/jamvm/files/debian-jni.patch
@@ -0,0 +1,19 @@
+--- src/dll.c.orig 2004-09-09 15:48:45.000000000 +0000
++++ src/dll.c 2004-09-09 15:50:32.000000000 +0000
+@@ -189,6 +189,16 @@
+ #ifndef NO_JNI
+ /* Init hash table, and create lock */
+ initHashTable(hash_table, HASHTABSZE, TRUE);
++
++ /* XXX: Add Debian JNI directory. */
++ char* path = getenv("LD_LIBRARY_PATH");
++
++ if (path != NULL)
++ path = strcat(path, ":OE_LIBDIR_JNI");
++ else
++ path = "OE_LIBDIR_JNI";
++
++ setenv("LD_LIBRARY_PATH", path, 1);
+ #endif
+ }
+
diff --git a/packages/jamvm/jamvm.inc b/packages/jamvm/jamvm.inc
index 36378370c5..930159e891 100644
--- a/packages/jamvm/jamvm.inc
+++ b/packages/jamvm/jamvm.inc
@@ -12,7 +12,7 @@ RPROVIDES_jamvm = "java2-runtime"
# This uses 32 bit arm, so force the instruction set to arm, not thumb
ARM_INSTRUCTION_SET = "arm"
-inherit autotools update-alternatives
+inherit java autotools update-alternatives
EXTRA_OECONF = "--with-classpath-install-dir=${prefix}"
CFLAGS += "-DDEFAULT_MAX_HEAP=16*MB"
diff --git a/packages/jamvm/jamvm_1.5.0.bb b/packages/jamvm/jamvm_1.5.0.bb
index efa959f0f9..366658dd97 100644
--- a/packages/jamvm/jamvm_1.5.0.bb
+++ b/packages/jamvm/jamvm_1.5.0.bb
@@ -1,5 +1,12 @@
require jamvm.inc
-PR = "r0"
+SRC_URI += "file://debian-jni.patch;patch=1;pnum=0"
+PR = "r1"
+
+do_configure_prepend() {
+ # Replaces the placeholder OE_LIBDIR_JNI with the JNI library directory
+ # configured in OE.
+ sed -i -e "s|OE_LIBDIR_JNI|${libdir_jni}|" src/dll.c
+}