summaryrefslogtreecommitdiff
path: root/recipes/jamvm
diff options
context:
space:
mode:
authorDenys Dmytriyenko <denis@denix.org>2009-03-17 14:32:59 -0400
committerDenys Dmytriyenko <denis@denix.org>2009-03-17 14:32:59 -0400
commit709c4d66e0b107ca606941b988bad717c0b45d9b (patch)
tree37ee08b1eb308f3b2b6426d5793545c38396b838 /recipes/jamvm
parentfa6cd5a3b993f16c27de4ff82b42684516d433ba (diff)
rename packages/ to recipes/ per earlier agreement
See links below for more details: http://thread.gmane.org/gmane.comp.handhelds.openembedded/21326 http://thread.gmane.org/gmane.comp.handhelds.openembedded/21816 Signed-off-by: Denys Dmytriyenko <denis@denix.org> Acked-by: Mike Westerhof <mwester@dls.net> Acked-by: Philip Balister <philip@balister.org> Acked-by: Khem Raj <raj.khem@gmail.com> Acked-by: Marcin Juszkiewicz <hrw@openembedded.org> Acked-by: Koen Kooi <koen@openembedded.org> Acked-by: Frans Meulenbroeks <fransmeulenbroeks@gmail.com>
Diffstat (limited to 'recipes/jamvm')
-rw-r--r--recipes/jamvm/files/debian-jni.patch19
-rw-r--r--recipes/jamvm/files/jamvm-1.3.1-size-defaults.patch12
-rw-r--r--recipes/jamvm/files/jamvm_1.4.5-initial.patch73
-rw-r--r--recipes/jamvm/files/jamvm_1.5.0-initial.patch82
-rw-r--r--recipes/jamvm/jamvm-initial_1.4.5.bb38
-rw-r--r--recipes/jamvm/jamvm-initial_1.5.0.bb38
-rw-r--r--recipes/jamvm/jamvm-native.inc26
-rw-r--r--recipes/jamvm/jamvm-native_1.5.2.bb4
-rw-r--r--recipes/jamvm/jamvm.inc22
-rw-r--r--recipes/jamvm/jamvm_1.4.5.bb6
-rw-r--r--recipes/jamvm/jamvm_1.5.0.bb12
-rw-r--r--recipes/jamvm/jamvm_1.5.2.bb12
12 files changed, 344 insertions, 0 deletions
diff --git a/recipes/jamvm/files/debian-jni.patch b/recipes/jamvm/files/debian-jni.patch
new file mode 100644
index 0000000000..040163da69
--- /dev/null
+++ b/recipes/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/recipes/jamvm/files/jamvm-1.3.1-size-defaults.patch b/recipes/jamvm/files/jamvm-1.3.1-size-defaults.patch
new file mode 100644
index 0000000000..a41beee982
--- /dev/null
+++ b/recipes/jamvm/files/jamvm-1.3.1-size-defaults.patch
@@ -0,0 +1,12 @@
+--- jamvm-1.3.1.orig/src/jam.h 2005-07-17 23:53:34.000000000 +0200
++++ jamvm-1.3.1/src/jam.h 2005-07-17 23:54:17.000000000 +0200
+@@ -548,7 +548,9 @@
+ #endif
+
+ /* default size of the Java stack */
++#ifndef DEFAULT_STACK
+ #define DEFAULT_STACK 64*KB
++#endif
+
+ /* size of emergency area - big enough to create
+ a StackOverflow exception */
diff --git a/recipes/jamvm/files/jamvm_1.4.5-initial.patch b/recipes/jamvm/files/jamvm_1.4.5-initial.patch
new file mode 100644
index 0000000000..3c68818955
--- /dev/null
+++ b/recipes/jamvm/files/jamvm_1.4.5-initial.patch
@@ -0,0 +1,73 @@
+Index: jamvm-1.4.5/configure.ac
+===================================================================
+--- jamvm-1.4.5.orig/configure.ac
++++ jamvm-1.4.5/configure.ac
+@@ -1,6 +1,6 @@
+ dnl Process this file with autoconf to produce a configure script.
+ AC_INIT(src/jam.c)
+-AM_INIT_AUTOMAKE(jamvm, 1.4.5)
++AM_INIT_AUTOMAKE(jamvm-initial, 1.4.5)
+ AC_CONFIG_HEADERS([src/config.h])
+ AC_PREFIX_DEFAULT(/usr/local/jamvm)
+
+Index: jamvm-1.4.5/java-initial
+===================================================================
+--- /dev/null
++++ jamvm-1.4.5/java-initial
+@@ -0,0 +1,5 @@
++#!/bin/sh
++#
++# Wrapper script inspired by the one provided by cacao.
++
++exec jamvm-initial ${1+"$@"}
+Index: jamvm-1.4.5/lib/Makefile.am
+===================================================================
+--- jamvm-1.4.5.orig/lib/Makefile.am
++++ jamvm-1.4.5/lib/Makefile.am
+@@ -1,4 +1,4 @@
+-@use_zip_yes@ GLIBJ_ZIP = ${with_classpath_install_dir}/share/classpath/glibj.zip
++@use_zip_yes@ GLIBJ_ZIP = ${with_classpath_install_dir}/share/classpath-initial/glibj.zip
+ @use_zip_no@ GLIBJ_ZIP = ${with_classpath_install_dir}/share/classpath/
+
+ SUBDIRS = jamvm java gnu sun
+Index: jamvm-1.4.5/src/dll.c
+===================================================================
+--- jamvm-1.4.5.orig/src/dll.c
++++ jamvm-1.4.5/src/dll.c
+@@ -294,7 +294,7 @@ char *getDllPath() {
+ }
+
+ char *getBootDllPath() {
+- return CLASSPATH_INSTALL_DIR"/lib/classpath";
++ return CLASSPATH_INSTALL_DIR"/lib/classpath-initial";
+ }
+
+ char *getDllName(char *name) {
+Index: jamvm-1.4.5/src/Makefile.am
+===================================================================
+--- jamvm-1.4.5.orig/src/Makefile.am
++++ jamvm-1.4.5/src/Makefile.am
+@@ -2,7 +2,7 @@ SUBDIRS = os
+ DIST_SUBDIRS = os arch
+
+ bin_PROGRAMS = jamvm
+-include_HEADERS = jni.h
++noinst_HEADERS = jni.h
+
+ lib_LTLIBRARIES = libjvm.la
+ noinst_LTLIBRARIES = libcore.la
+Index: jamvm-1.4.5/src/class.c
+===================================================================
+--- jamvm-1.4.5.orig/src/class.c
++++ jamvm-1.4.5/src/class.c
+@@ -1653,8 +1653,8 @@ void scanDirsForJars(char *directories)
+ }
+
+ #ifdef USE_ZIP
+-#define JAMVM_CLASSES INSTALL_DIR"/share/jamvm/classes.zip"
+-#define CLASSPATH_CLASSES CLASSPATH_INSTALL_DIR"/share/classpath/glibj.zip"
++#define JAMVM_CLASSES INSTALL_DIR"/share/jamvm-initial/classes.zip"
++#define CLASSPATH_CLASSES CLASSPATH_INSTALL_DIR"/share/classpath-initial/glibj.zip"
+ #else
+ #define JAMVM_CLASSES INSTALL_DIR"/share/jamvm/classes"
+ #define CLASSPATH_CLASSES CLASSPATH_INSTALL_DIR"/share/classpath"
diff --git a/recipes/jamvm/files/jamvm_1.5.0-initial.patch b/recipes/jamvm/files/jamvm_1.5.0-initial.patch
new file mode 100644
index 0000000000..9b972da014
--- /dev/null
+++ b/recipes/jamvm/files/jamvm_1.5.0-initial.patch
@@ -0,0 +1,82 @@
+Index: jamvm-1.5.0/configure.ac
+===================================================================
+--- jamvm-1.5.0.orig/configure.ac 2007-12-20 00:01:08.000000000 +0100
++++ jamvm-1.5.0/configure.ac 2007-12-20 00:03:40.000000000 +0100
+@@ -22,7 +22,7 @@
+ dnl Process this file with autoconf to produce a configure script.
+
+ AC_INIT(src/jam.c)
+-AM_INIT_AUTOMAKE(jamvm, 1.5.0)
++AM_INIT_AUTOMAKE(jamvm-initial, 1.5.0)
+ AC_CONFIG_HEADERS([src/config.h])
+ AC_PREFIX_DEFAULT(/usr/local/jamvm)
+
+Index: jamvm-1.5.0/java-initial
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ jamvm-1.5.0/java-initial 2007-12-20 00:03:27.000000000 +0100
+@@ -0,0 +1,5 @@
++#!/bin/sh
++#
++# Wrapper script inspired by the one provided by cacao.
++
++exec jamvm-initial ${1+"$@"}
+Index: jamvm-1.5.0/lib/Makefile.am
+===================================================================
+--- jamvm-1.5.0.orig/lib/Makefile.am 2007-12-20 00:05:24.000000000 +0100
++++ jamvm-1.5.0/lib/Makefile.am 2007-12-20 00:05:28.000000000 +0100
+@@ -19,7 +19,7 @@
+ ## Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ ##
+
+-CP_LIB_DIR = ${with_classpath_install_dir}/share/classpath
++CP_LIB_DIR = ${with_classpath_install_dir}/share/classpath-initial
+ GLIBJ_ZIP = ${CP_LIB_DIR}/glibj.zip
+
+ SUBDIRS = jamvm java gnu sun
+Index: jamvm-1.5.0/src/class.h
+===================================================================
+--- jamvm-1.5.0.orig/src/class.h 2007-12-20 00:06:34.000000000 +0100
++++ jamvm-1.5.0/src/class.h 2007-12-20 00:16:41.000000000 +0100
+@@ -39,11 +39,11 @@
+ separate class files in a directory structure */
+
+ #ifdef USE_ZIP
+-#define JAMVM_CLASSES INSTALL_DIR"/share/jamvm/classes.zip"
+-#define CLASSPATH_CLASSES CLASSPATH_INSTALL_DIR"/share/classpath/glibj.zip"
++#define JAMVM_CLASSES CLASSPATH_INSTALL_DIR"/share/jamvm-initial/classes.zip"
++#define CLASSPATH_CLASSES CLASSPATH_INSTALL_DIR"/share/classpath-initial/glibj.zip"
+ #else
+-#define JAMVM_CLASSES INSTALL_DIR"/share/jamvm/classes"
+-#define CLASSPATH_CLASSES CLASSPATH_INSTALL_DIR"/share/classpath"
++#define JAMVM_CLASSES CLASSPATH_INSTALL_DIR"/share/jamvm-initial/classes"
++#define CLASSPATH_CLASSES CLASSPATH_INSTALL_DIR"/share/classpath-initial"
+ #endif
+
+ #define DFLT_BCP JAMVM_CLASSES":"CLASSPATH_CLASSES
+Index: jamvm-1.5.0/src/dll.c
+===================================================================
+--- jamvm-1.5.0.orig/src/dll.c 2007-12-20 00:01:24.000000000 +0100
++++ jamvm-1.5.0/src/dll.c 2007-12-20 00:03:27.000000000 +0100
+@@ -294,7 +294,7 @@
+ }
+
+ char *getBootDllPath() {
+- return CLASSPATH_INSTALL_DIR"/lib/classpath";
++ return CLASSPATH_INSTALL_DIR"/lib/classpath-initial";
+ }
+
+ char *getDllName(char *name) {
+Index: jamvm-1.5.0/src/Makefile.am
+===================================================================
+--- jamvm-1.5.0.orig/src/Makefile.am 2007-12-20 00:21:37.000000000 +0100
++++ jamvm-1.5.0/src/Makefile.am 2007-12-20 00:21:46.000000000 +0100
+@@ -23,7 +23,7 @@
+ DIST_SUBDIRS = os arch interp
+
+ bin_PROGRAMS = jamvm
+-include_HEADERS = jni.h
++noinst_HEADERS = jni.h
+
+ lib_LTLIBRARIES = libjvm.la
+ noinst_LTLIBRARIES = libcore.la
diff --git a/recipes/jamvm/jamvm-initial_1.4.5.bb b/recipes/jamvm/jamvm-initial_1.4.5.bb
new file mode 100644
index 0000000000..c71811dd4e
--- /dev/null
+++ b/recipes/jamvm/jamvm-initial_1.4.5.bb
@@ -0,0 +1,38 @@
+SUMMARY = "A compact Java Virtual Machine which conforms to the JVM specification version 2."
+HOMEPAGE = "http://jamvm.sourceforge.net/"
+LICENSE = "GPL"
+
+DEPENDS = "zlib-native classpath-initial jikes-initial"
+
+PR = "r0"
+
+PROVIDES = "virtual/java-initial"
+
+S = "${WORKDIR}/jamvm-${PV}"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/jamvm/jamvm-${PV}.tar.gz \
+ file://jamvm_${PV}-initial.patch;patch=1;pnum=1 \
+ "
+
+# This uses 32 bit arm, so force the instruction set to arm, not thumb
+ARM_INSTRUCTION_SET = "arm"
+
+inherit native autotools
+
+EXTRA_OECONF = "\
+ --with-classpath-install-dir=${prefix} \
+ --program-suffix=-initial \
+ "
+
+CFLAGS += "-DDEFAULT_MAX_HEAP=16*MB"
+
+do_compile() {
+ oe_runmake \
+ JAVAC=jikes-initial \
+ GLIBJ_ZIP=${STAGING_DATADIR_NATIVE}/classpath-initial/glibj.zip
+}
+
+do_stage_append() {
+ install -d ${STAGING_BINDIR}
+ install -m 0755 java-initial ${STAGING_BINDIR}
+}
diff --git a/recipes/jamvm/jamvm-initial_1.5.0.bb b/recipes/jamvm/jamvm-initial_1.5.0.bb
new file mode 100644
index 0000000000..a1c415dd62
--- /dev/null
+++ b/recipes/jamvm/jamvm-initial_1.5.0.bb
@@ -0,0 +1,38 @@
+SUMMARY = "A compact Java Virtual Machine which conforms to the JVM specification version 2."
+HOMEPAGE = "http://jamvm.sourceforge.net/"
+LICENSE = "GPL"
+
+DEPENDS = "zlib-native classpath-initial jikes-initial"
+
+PR = "r1"
+
+PROVIDES = "virtual/java-initial"
+
+S = "${WORKDIR}/jamvm-${PV}"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/jamvm/jamvm-${PV}.tar.gz \
+ file://jamvm_${PV}-initial.patch;patch=1;pnum=1 \
+ "
+
+# This uses 32 bit arm, so force the instruction set to arm, not thumb
+ARM_INSTRUCTION_SET = "arm"
+
+inherit native autotools
+
+EXTRA_OECONF = "\
+ --with-classpath-install-dir=${prefix} \
+ --program-suffix=-initial \
+ "
+
+CFLAGS += "-DDEFAULT_MAX_HEAP=16*MB"
+
+do_compile() {
+ oe_runmake \
+ JAVAC=jikes-initial \
+ GLIBJ_ZIP=${STAGING_DATADIR_NATIVE}/classpath-initial/glibj.zip
+}
+
+do_stage_append() {
+ install -d ${STAGING_BINDIR}
+ install -m 0755 java-initial ${STAGING_BINDIR}
+}
diff --git a/recipes/jamvm/jamvm-native.inc b/recipes/jamvm/jamvm-native.inc
new file mode 100644
index 0000000000..ff2dba645b
--- /dev/null
+++ b/recipes/jamvm/jamvm-native.inc
@@ -0,0 +1,26 @@
+require jamvm.inc
+
+DEPENDS = "zlib-native classpath-native ecj-initial"
+RDEPENDS = ""
+
+PROVIDES = "virtual/java-native"
+
+RPROVIDES_jamvm = ""
+
+# This uses 32 bit arm, so force the instruction set to arm, not thumb
+ARM_INSTRUCTION_SET = "arm"
+
+# Needed for big compilation targets like OpenJDK
+CFLAGS += "-DDEFAULT_MAX_HEAP=2048*MB"
+
+inherit native
+
+S = "${WORKDIR}/jamvm-${PV}"
+
+do_install_append() {
+ ln -sf jamvm ${STAGING_BINDIR}/java
+}
+
+# Enforce usage of ecj-initial.
+export JAVAC="${STAGING_BINDIR_NATIVE}/ecj-initial"
+
diff --git a/recipes/jamvm/jamvm-native_1.5.2.bb b/recipes/jamvm/jamvm-native_1.5.2.bb
new file mode 100644
index 0000000000..e174e2a312
--- /dev/null
+++ b/recipes/jamvm/jamvm-native_1.5.2.bb
@@ -0,0 +1,4 @@
+require jamvm-native.inc
+
+PR = "r0"
+
diff --git a/recipes/jamvm/jamvm.inc b/recipes/jamvm/jamvm.inc
new file mode 100644
index 0000000000..428e6b2449
--- /dev/null
+++ b/recipes/jamvm/jamvm.inc
@@ -0,0 +1,22 @@
+DESCRIPTION = "A compact Java Virtual Machine which conforms to the JVM specification version 2."
+HOMEPAGE = "http://jamvm.sourceforge.net/"
+LICENSE = "GPL"
+
+DEPENDS = "zlib classpath virtual/javac-native"
+RDEPENDS = "classpath"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/jamvm/jamvm-${PV}.tar.gz"
+
+RPROVIDES_jamvm = "java2-runtime"
+
+# This uses 32 bit arm, so force the instruction set to arm, not thumb
+ARM_INSTRUCTION_SET = "arm"
+
+inherit java autotools update-alternatives
+
+EXTRA_OECONF = "--with-classpath-install-dir=${prefix}"
+CFLAGS += "-DDEFAULT_MAX_HEAP=16*MB"
+
+ALTERNATIVE_NAME = "java"
+ALTERNATIVE_PATH = "${bindir}/jamvm"
+ALTERNATIVE_PRIORITY = "4"
diff --git a/recipes/jamvm/jamvm_1.4.5.bb b/recipes/jamvm/jamvm_1.4.5.bb
new file mode 100644
index 0000000000..7bb46f6f97
--- /dev/null
+++ b/recipes/jamvm/jamvm_1.4.5.bb
@@ -0,0 +1,6 @@
+require jamvm.inc
+
+PR = "r3"
+
+SRC_URI += "file://jamvm-1.3.1-size-defaults.patch;patch=1"
+
diff --git a/recipes/jamvm/jamvm_1.5.0.bb b/recipes/jamvm/jamvm_1.5.0.bb
new file mode 100644
index 0000000000..c95faf9d6b
--- /dev/null
+++ b/recipes/jamvm/jamvm_1.5.0.bb
@@ -0,0 +1,12 @@
+require jamvm.inc
+
+SRC_URI += "file://debian-jni.patch;patch=1;pnum=0"
+
+PR = "r4"
+
+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
+}
+
diff --git a/recipes/jamvm/jamvm_1.5.2.bb b/recipes/jamvm/jamvm_1.5.2.bb
new file mode 100644
index 0000000000..bf9271c938
--- /dev/null
+++ b/recipes/jamvm/jamvm_1.5.2.bb
@@ -0,0 +1,12 @@
+require jamvm.inc
+
+SRC_URI += "file://debian-jni.patch;patch=1;pnum=0"
+
+PR = "r0"
+
+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
+}
+