cacao: add hg version 8190 and the corresponding cacaoh-native.
authorJohn Lee <john_lee@openmoko.org>
Wed, 21 May 2008 11:52:48 +0000 (11:52 +0000)
committerJohn Lee <john_lee@openmoko.org>
Wed, 21 May 2008 11:52:48 +0000 (11:52 +0000)
packages/cacao/cacao_0.98+hg8190.bb [new file with mode: 0644]
packages/cacao/cacaoh-native_0.98+hg8190.bb [new file with mode: 0644]
packages/cacao/files/cacao-hg8190-classpath_var.patch [new file with mode: 0644]
packages/cacao/files/cacao-hg8190-libdir.patch [new file with mode: 0644]

diff --git a/packages/cacao/cacao_0.98+hg8190.bb b/packages/cacao/cacao_0.98+hg8190.bb
new file mode 100644 (file)
index 0000000..ead3d41
--- /dev/null
@@ -0,0 +1,24 @@
+require cacao.inc
+
+PR = "r0"
+
+SRC_URI = "http://downloads.openmoko.org/sources/cacao-0.98+hg8190.tar.gz;md5sum=1c6e0530be63ec8a4c0ab2935c2fdc8f \
+           file://cacao-hg8190-classpath_var.patch;patch=1 \
+           file://cacao-hg8190-libdir.patch;patch=1 \
+          "
+
+S = "${WORKDIR}/cacao"
+
+EXTRA_OECONF = "\
+        ${@['','--enable-softfloat'][bb.data.getVar('TARGET_FPU',d,1) == 'soft']} \
+        --enable-debug \
+        --with-vm-zip=${datadir}/cacao/vm.zip \
+        --with-cacaoh=${STAGING_BINDIR_NATIVE}/cacaoh-${PV} \
+        --with-java-runtime-library-classes=${STAGING_DATADIR}/classpath/glibj.zip \
+        --with-target-java-runtime-library-classes=${datadir}/classpath/glibj.zip \
+        --with-java-runtime-library-libdir=${libdir} \
+        --with-jni_md_h=${STAGING_INCDIR}/classpath \
+        --with-jni_h=${STAGING_INCDIR}/classpath \
+        "
+
+DEFAULT_PREFERENCE = "-1"
diff --git a/packages/cacao/cacaoh-native_0.98+hg8190.bb b/packages/cacao/cacaoh-native_0.98+hg8190.bb
new file mode 100644 (file)
index 0000000..3b7fbcd
--- /dev/null
@@ -0,0 +1,15 @@
+require cacaoh-native.inc
+
+PR = "r0"
+
+SRC_URI = "http://downloads.openmoko.org/sources/cacao-0.98+hg8190.tar.gz;md5sum=1c6e0530be63ec8a4c0ab2935c2fdc8f"
+
+S = "${WORKDIR}/cacao"
+
+EXTRA_OECONF = " \
+        --with-java-runtime-library-classes=${STAGING_DATADIR}/classpath/glibj.zip \
+        --with-jni_md_h=${STAGING_INCDIR}/classpath \
+        --with-jni_h=${STAGING_INCDIR}/classpath \
+    "
+
+DEFAULT_PREFERENCE = "-1"
diff --git a/packages/cacao/files/cacao-hg8190-classpath_var.patch b/packages/cacao/files/cacao-hg8190-classpath_var.patch
new file mode 100644 (file)
index 0000000..a3e39e0
--- /dev/null
@@ -0,0 +1,67 @@
+Index: cacao/configure.ac
+===================================================================
+--- cacao.orig/configure.ac    2008-05-21 14:16:33.000000000 +0800
++++ cacao/configure.ac 2008-05-21 15:57:42.000000000 +0800
+@@ -772,6 +772,7 @@
+ AC_CHECK_WITH_JAVA_RUNTIME_LIBRARY_PREFIX
+ AC_CHECK_WITH_JAVA_RUNTIME_LIBRARY_CLASSES
++AC_CHECK_WITH_TARGET_JAVA_RUNTIME_LIBRARY_CLASSES
+ if test x"${ENABLE_JRE_LAYOUT}" = "xno"; then
+    AC_CHECK_WITH_JAVA_RUNTIME_LIBRARY_LIBDIR
+Index: cacao/m4/java-runtime-library.m4
+===================================================================
+--- cacao.orig/m4/java-runtime-library.m4      2008-05-21 14:16:34.000000000 +0800
++++ cacao/m4/java-runtime-library.m4   2008-05-21 16:18:23.000000000 +0800
+@@ -106,6 +106,29 @@
+ ])
++dnl where are Java runtime library classes installed on the target
++
++AC_DEFUN([AC_CHECK_WITH_TARGET_JAVA_RUNTIME_LIBRARY_CLASSES],[
++AC_MSG_CHECKING(where Java runtime library classes are installed on the target)
++AC_ARG_WITH([target-java-runtime-library-classes],
++            [AS_HELP_STRING(--with-target-java-runtime-library-classes=<path>,path to Java runtime library classes (includes the name of the file and may be flat) [[default=(gnuclasspath:${JAVA_RUNTIME_LIBRARY_PREFIX}/share/classpath/glibj.zip,openjdk:${JAVA_RUNTIME_LIBRARY_PREFIX}/control/build/${OS_DIR}-${JAVA_ARCH}/classes,*:${JAVA_RUNTIME_LIBRARY_PREFIX})]])],
++            [TARGET_JAVA_RUNTIME_LIBRARY_CLASSES=${withval}],
++            [case "${WITH_JAVA_RUNTIME_LIBRARY}" in
++                 gnuclasspath)
++                     TARGET_JAVA_RUNTIME_LIBRARY_CLASSES=${JAVA_RUNTIME_LIBRARY_PREFIX}/share/classpath/glibj.zip
++                     ;;
++                 openjdk)
++                     TARGET_JAVA_RUNTIME_LIBRARY_CLASSES=${JAVA_RUNTIME_LIBRARY_PREFIX}/control/build/${OS_DIR}-${JAVA_ARCH}/classes
++                     ;;
++                 *)
++                     TARGET_JAVA_RUNTIME_LIBRARY_CLASSES=${JAVA_RUNTIME_LIBRARY_PREFIX}
++                     ;;
++             esac])
++AC_MSG_RESULT(${TARGET_JAVA_RUNTIME_LIBRARY_CLASSES})
++AC_DEFINE_UNQUOTED([TARGET_JAVA_RUNTIME_LIBRARY_CLASSES], "${TARGET_JAVA_RUNTIME_LIBRARY_CLASSES}", [Java runtime library classes on the target])
++AC_SUBST(TARGET_JAVA_RUNTIME_LIBRARY_CLASSES)
++])
++
+ dnl where are Java runtime library native libraries installed
+ AC_DEFUN([AC_CHECK_WITH_JAVA_RUNTIME_LIBRARY_LIBDIR],[
+Index: cacao/src/vm/properties.c
+===================================================================
+--- cacao.orig/src/vm/properties.c     2008-05-21 14:16:34.000000000 +0800
++++ cacao/src/vm/properties.c  2008-05-21 16:16:24.000000000 +0800
+@@ -295,14 +295,14 @@
+               len =
+                       strlen(CACAO_VM_ZIP) +
+                       strlen(":") +
+-                      strlen(JAVA_RUNTIME_LIBRARY_CLASSES) +
++                      strlen(TARGET_JAVA_RUNTIME_LIBRARY_CLASSES) +
+                       strlen("0");
+               boot_class_path = MNEW(char, len);
+               strcpy(boot_class_path, CACAO_VM_ZIP);
+               strcat(boot_class_path, ":");
+-              strcat(boot_class_path, JAVA_RUNTIME_LIBRARY_CLASSES);
++              strcat(boot_class_path, TARGET_JAVA_RUNTIME_LIBRARY_CLASSES);
+ # elif defined(WITH_JAVA_RUNTIME_LIBRARY_OPENJDK)
diff --git a/packages/cacao/files/cacao-hg8190-libdir.patch b/packages/cacao/files/cacao-hg8190-libdir.patch
new file mode 100644 (file)
index 0000000..1be13b3
--- /dev/null
@@ -0,0 +1,30 @@
+Index: cacao/src/vm/properties.c
+===================================================================
+--- cacao.orig/src/vm/properties.c     2008-05-21 15:26:21.000000000 +0800
++++ cacao/src/vm/properties.c  2008-05-21 15:28:59.000000000 +0800
+@@ -211,15 +211,22 @@
+ # if defined(WITH_JAVA_RUNTIME_LIBRARY_GNU_CLASSPATH)
+-      boot_library_path = JAVA_RUNTIME_LIBRARY_LIBDIR"/classpath";
++      boot_library_path = JAVA_RUNTIME_LIBRARY_LIBDIR"/classpath:OE_LIBDIR_JNI";
+ # elif defined(WITH_JAVA_RUNTIME_LIBRARY_OPENJDK)
+-      boot_library_path = JAVA_RUNTIME_LIBRARY_LIBDIR;
++      boot_library_path = JAVA_RUNTIME_LIBRARY_LIBDIR":OE_LIBDIR_JNI";
+ # elif defined(WITH_JAVA_RUNTIME_LIBRARY_CLDC1_1)
+-      /* No boot_library_path required. */
++      /* No boot_library_path required.
++         Well, don't be that strict on Debian-like
++         environments. Setting this to /usr/lib/jni
++         makes it unneccessary to fumble with
++         LD_LIBRARY_PATH to get things like MIDPath
++         running.
++      */
++      boot_library_path = "OE_LIBDIR_JNI";
+ # else
+ #  error unknown classpath configuration