[oe] mata-java openjdk-8 recipe

Awasthi, Vinay K vinay.k.awasthi at intel.com
Fri Jul 31 18:57:20 UTC 2015


Binary files current-meta-java/.git/index and meta-java/.git/index differ
diff -rupN current-meta-java/.git/logs/HEAD meta-java/.git/logs/HEAD
--- current-meta-java/.git/logs/HEAD  2015-07-31 10:54:23.484453867 -0700
+++ meta-java/.git/logs/HEAD     2015-07-30 16:26:20.072240322 -0700
@@ -1 +1 @@
-0000000000000000000000000000000000000000 66c97ae7461f4c1a13917131787bb76dc34e6b6f Vinay K. Awasthi <vinay.k.awasthi at intel.com> 1438365263 -0700     clone: from http://git.yoctoproject.org/git/meta-java
+0000000000000000000000000000000000000000 66c97ae7461f4c1a13917131787bb76dc34e6b6f Vinay K. Awasthi <vinay.k.awasthi at intel.com> 1438298780 -0700     clone: from http://git.yoctoproject.org/git/meta-java
diff -rupN current-meta-java/.git/logs/refs/heads/master meta-java/.git/logs/refs/heads/master
--- current-meta-java/.git/logs/refs/heads/master 2015-07-31 10:54:23.484453867 -0700
+++ meta-java/.git/logs/refs/heads/master   2015-07-30 16:26:20.072240322 -0700
@@ -1 +1 @@
-0000000000000000000000000000000000000000 66c97ae7461f4c1a13917131787bb76dc34e6b6f Vinay K. Awasthi <vinay.k.awasthi at intel.com> 1438365263 -0700     clone: from http://git.yoctoproject.org/git/meta-java
+0000000000000000000000000000000000000000 66c97ae7461f4c1a13917131787bb76dc34e6b6f Vinay K. Awasthi <vinay.k.awasthi at intel.com> 1438298780 -0700     clone: from http://git.yoctoproject.org/git/meta-java
diff -rupN current-meta-java/.git/logs/refs/remotes/origin/HEAD meta-java/.git/logs/refs/remotes/origin/HEAD
--- current-meta-java/.git/logs/refs/remotes/origin/HEAD     2015-07-31 10:54:23.484453867 -0700
+++ meta-java/.git/logs/refs/remotes/origin/HEAD 2015-07-30 16:26:20.072240322 -0700
@@ -1 +1 @@
-0000000000000000000000000000000000000000 66c97ae7461f4c1a13917131787bb76dc34e6b6f Vinay K. Awasthi <vinay.k.awasthi at intel.com> 1438365263 -0700     clone: from http://git.yoctoproject.org/git/meta-java
+0000000000000000000000000000000000000000 66c97ae7461f4c1a13917131787bb76dc34e6b6f Vinay K. Awasthi <vinay.k.awasthi at intel.com> 1438298780 -0700     clone: from http://git.yoctoproject.org/git/meta-java
diff -rupN current-meta-java/recipes-core/openjdk/openjdk-8-8u40b27/cacao-arm-ucontext.patch meta-java/recipes-core/openjdk/openjdk-8-8u40b27/cacao-arm-ucontext.patch
--- current-meta-java/recipes-core/openjdk/openjdk-8-8u40b27/cacao-arm-ucontext.patch 1969-12-31 16:00:00.000000000 -0800
+++ meta-java/recipes-core/openjdk/openjdk-8-8u40b27/cacao-arm-ucontext.patch  2015-06-01 17:03:03.317644000 -0700
@@ -0,0 +1,24 @@
+Index: cacao-a567bcb7f589/src/vm/jit/arm/linux/md-os.c
+===================================================================
+--- cacao-a567bcb7f589/src/vm/jit/arm/linux/md-os.c   2013-01-26 21:30:54.206581090 +0100
++++ cacao-a567bcb7f589/src/vm/jit/arm/linux/md-os.c   2013-01-26 21:31:34.406991316 +0100
+@@ -28,19 +28,7 @@
+
+ #include <stdint.h>
+
+-#define ucontext broken_glibc_ucontext
+-#define ucontext_t broken_glibc_ucontext_t
+ #include <ucontext.h>
+-#undef ucontext
+-#undef ucontext_t
+-
+-typedef struct ucontext {
+-   unsigned long     uc_flags;
+-   struct ucontext  *uc_link;
+-   stack_t           uc_stack;
+-   struct sigcontext uc_mcontext;
+-   sigset_t          uc_sigmask;
+-} ucontext_t;
+
+ #define scontext_t struct sigcontext
+
diff -rupN current-meta-java/recipes-core/openjdk/openjdk-8-8u40b27/cacao-libtoolize.patch meta-java/recipes-core/openjdk/openjdk-8-8u40b27/cacao-libtoolize.patch
--- current-meta-java/recipes-core/openjdk/openjdk-8-8u40b27/cacao-libtoolize.patch   1969-12-31 16:00:00.000000000 -0800
+++ meta-java/recipes-core/openjdk/openjdk-8-8u40b27/cacao-libtoolize.patch 2015-07-31 10:43:27.768451761 -0700
@@ -0,0 +1,12 @@
+Index: icedtea6/Makefile.am
+===================================================================
+--- icedtea6.orig/Makefile.am   2011-12-21 22:58:23.000000000 +0100
++++ icedtea6/Makefile.am  2011-12-21 23:00:21.405887186 +0100
+@@ -1922,6 +1922,7 @@
+ if BUILD_CACAO
+ if !USE_SYSTEM_CACAO
+    cd cacao/cacao && \
++   rm -f libtool && \
+    ./autogen.sh && \
+    $(ARCH_PREFIX) ./configure \
+      --host=$(host_alias) \
diff -rupN current-meta-java/recipes-core/openjdk/openjdk-8-8u40b27/cacao-loadavg-makefile.patch meta-java/recipes-core/openjdk/openjdk-8-8u40b27/cacao-loadavg-makefile.patch
--- current-meta-java/recipes-core/openjdk/openjdk-8-8u40b27/cacao-loadavg-makefile.patch  1969-12-31 16:00:00.000000000 -0800
+++ meta-java/recipes-core/openjdk/openjdk-8-8u40b27/cacao-loadavg-makefile.patch     2015-07-31 10:43:27.768451761 -0700
@@ -0,0 +1,13 @@
+Index: icedtea-2.1.4/Makefile.am
+===================================================================
+--- icedtea-2.1.4.orig/Makefile.am   2013-01-26 18:20:55.152561203 +0100
++++ icedtea-2.1.4/Makefile.am   2013-01-26 18:41:07.637992206 +0100
+@@ -1994,6 +1994,8 @@
+ if BUILD_CACAO
+ if !USE_SYSTEM_CACAO
+    cd cacao/cacao && \
++   patch -p1 -N < $(abs_top_srcdir)/patches/cacao-loadavg.patch && \
++   patch -p1 -N < $(abs_top_srcdir)/patches/cacao-arm-ucontext.patch && \
+    rm -f libtool && \
+    ./autogen.sh && \
+    $(ARCH_PREFIX) ./configure \
diff -rupN current-meta-java/recipes-core/openjdk/openjdk-8-8u40b27/cacao-loadavg.patch meta-java/recipes-core/openjdk/openjdk-8-8u40b27/cacao-loadavg.patch
--- current-meta-java/recipes-core/openjdk/openjdk-8-8u40b27/cacao-loadavg.patch 1969-12-31 16:00:00.000000000 -0800
+++ meta-java/recipes-core/openjdk/openjdk-8-8u40b27/cacao-loadavg.patch   2015-06-01 17:03:03.317644000 -0700
@@ -0,0 +1,27 @@
+Index: cacao-cff92704c4e0/src/vm/os.hpp
+===================================================================
+--- cacao-cff92704c4e0/src/vm/os.hpp 2011-12-08 13:40:45.000000000 +0100
++++ cacao-cff92704c4e0/src/vm/os.hpp 2011-12-20 11:42:36.985633921 +0100
+@@ -425,7 +425,21 @@
+ #if defined(HAVE_GETLOADAVG)
+    return ::getloadavg(loadavg, nelem);
+ #else
+-# error getloadavg not available
++        FILE *LOADAVG;
++        double avg[3] = { 0.0, 0.0, 0.0 };
++        int i, res = -1;;
++
++        if ((LOADAVG = fopen("/proc/loadavg", "r"))) {
++                fscanf(LOADAVG, "%lf %lf %lf", &avg[0], &avg[1], &avg[2]);
++                res = 0;
++                fclose(LOADAVG);
++        }
++
++        for (i = 0; (i < nelem) && (i < 3); i++) {
++                loadavg[i] = avg[i];
++        }
++
++        return res;
+ #endif
+ }
+
diff -rupN current-meta-java/recipes-core/openjdk/openjdk-8-8u40b27/faulty-nx-emulation.patch meta-java/recipes-core/openjdk/openjdk-8-8u40b27/faulty-nx-emulation.patch
--- current-meta-java/recipes-core/openjdk/openjdk-8-8u40b27/faulty-nx-emulation.patch     1969-12-31 16:00:00.000000000 -0800
+++ meta-java/recipes-core/openjdk/openjdk-8-8u40b27/faulty-nx-emulation.patch 2015-07-23 11:47:08.206243000 -0700
@@ -0,0 +1,12 @@
+--- hotspot/src/os/linux/vm/os_linux.cpp   2015-03-07 10:25:19.000000000 -0800
++++ hotspot/src/os/linux/vm/os_linux.cpp   2015-03-07 10:25:19.000000000 -0800
++++ a.cpp 2015-07-23 11:45:17.666243540 -0700
+@@ -4847,7 +4847,7 @@
+   Linux::capture_initial_stack(JavaThread::stack_size_at_create());
+
+ #if defined(IA32)
+-  workaround_expand_exec_shield_cs_limit();
++//  workaround_expand_exec_shield_cs_limit();
+ #endif
+
+   Linux::libpthread_init();
diff -rupN current-meta-java/recipes-core/openjdk/openjdk-8-8u40b27/fix-checksums.patch meta-java/recipes-core/openjdk/openjdk-8-8u40b27/fix-checksums.patch
--- current-meta-java/recipes-core/openjdk/openjdk-8-8u40b27/fix-checksums.patch 1969-12-31 16:00:00.000000000 -0800
+++ meta-java/recipes-core/openjdk/openjdk-8-8u40b27/fix-checksums.patch 2015-07-01 17:29:09.452204000 -0700
@@ -0,0 +1,61 @@
+--- icedtea-2.5.4/Makefile.am   2015-04-02 10:48:12.919550836 +0200
++++ icedtea-2.5.4/Makefile.am   2015-04-02 10:49:41.483806147 +0200
+@@ -4,19 +4,19 @@
+ BUILD_VERSION = b13
+ COMBINED_VERSION = $(JDK_UPDATE_VERSION)-$(BUILD_VERSION)
+
+-CORBA_CHANGESET = 3c9f523bf96e
+-JAXP_CHANGESET = ca26767d3375
+-JAXWS_CHANGESET = 9a6c90336922
+-JDK_CHANGESET = 1e6db4f8b0f3
+-LANGTOOLS_CHANGESET = 960cdffa8b3f
+-OPENJDK_CHANGESET = 6cf2880aab5e
+-
+-CORBA_SHA256SUM = 7411fe2df795981124ae2e4da0ddb7d98db0a94c9399a12876be03e7177eaa0b
+-JAXP_SHA256SUM = 84623e50b69710d12209fc761a49953c78f1a664ff54e022a77e35e25489f2f3
+-JAXWS_SHA256SUM = 4bd38a8121d85c422b425177ce648afdee9da18812c91c5b74939c58db33ab4b
+-JDK_SHA256SUM = e99b65baf66d8818e3c8fd31d71fbad4ad0ceb0b7fa4c2e0607eca3a40f2ba09
+-LANGTOOLS_SHA256SUM = 4fd76cbdf18174128863514b4d3997cb623368697bf4f5af6d079dbbcd7b378a
+-OPENJDK_SHA256SUM = 88c92a3cab37446352086876771733229b1602d4f79ef68629a151180652e1f1
++CORBA_CHANGESET = bd0186cd2419
++JAXP_CHANGESET = 56f6ca79467d
++JAXWS_CHANGESET = a5f2cdedb940
++JDK_CHANGESET = d4453d784fb6
++LANGTOOLS_CHANGESET = 83eca922346e
++OPENJDK_CHANGESET = 12deacac8257
++
++CORBA_SHA256SUM = 870888241bfe3718e1de10e6de5ae70d5f7131752bb3c1657b020c8fb7af6049
++JAXP_SHA256SUM = 254c622fc8a572efd0a10908b4038ba3cf41775d7c09c8f576800b3f608e33f7
++JAXWS_SHA256SUM = c7882fa363960b511a08038130a45477fb8d5e82f3d6244248e61e564f3c84a3
++JDK_SHA256SUM = b02b46c4b52ca06cf0b42cd7daadc7dbee6403e83f7bc951e28d0c7e6d23c3cd
++LANGTOOLS_SHA256SUM = e46e8322d189dbdf631c1b2796b8ca628f2f83b2f05f0ede74bcbc118201aa16
++OPENJDK_SHA256SUM = 6f54575843bf258fdbef4a23d76f3c4b0ada685b42df0f7f5da2e6112113ad10
+
+ DROP_URL = http://icedtea.classpath.org/download/drops
+
+@@ -35,6 +35,7 @@
+ ICEDTEA_MAJOR = icedtea7
+ ICEDTEA_BRANCH = 2.5
+ ICEDTEA_PREFIX = $(ICEDTEA_MAJOR)-forest-$(ICEDTEA_BRANCH)
++ICEDTEA_PREFIX = jdk8u
+ ICEDTEA_HG_URL = http://icedtea.classpath.org/hg/release/$(ICEDTEA_PREFIX)
+ ICEDTEA_URL = $(DROP_URL)/$(ICEDTEA_MAJOR)/$(ICEDTEA_RELEASE)
+
+@@ -403,6 +403,7 @@
+ endif
+
+ ICEDTEA_BOOT_PATCHES += $(DISTRIBUTION_BOOT_PATCHES)
++ICEDTEA_BOOT_PATCHES = "patches/boot/no.patch"
+
+ # OpenJDK build environment.
+ if ZERO_BUILD
+
+
+--- icedtea-2.5.4/hotspot.map.in     2015-01-22 05:28:55.952757442 +0100
++++ icedtea-2.5.4/hotspot.map.in     2015-04-07 10:41:38.713960082 +0200
+@@ -1,3 +1,3 @@
+ # version type(drop/hg) url changeset sha256sum
+-default drop http://icedtea.classpath.org/download/drops/icedtea7/@ICEDTEA_RELEASE@ 6144ca9b6a72 4825f8543aa0c065530b05b0a95915a44eea153bbb696d2ffc4b50a398813e34
++default drop http://icedtea.classpath.org/download/drops/icedtea7/@ICEDTEA_RELEASE@ 6824e2475e04 011dd76928809ac1240d91e2d244ab020f161c33d69e5af35cf4c87084a6949d
+ aarch64 drop http://icedtea.classpath.org/download/drops/icedtea7/@ICEDTEA_RELEASE@ 4d25046abb67 60da8d427f7e3659f701e54c763ea8366d8af3280c7e10670004938b2f07efef
+
diff -rupN current-meta-java/recipes-core/openjdk/openjdk-8-8u40b27/jvm.cfg meta-java/recipes-core/openjdk/openjdk-8-8u40b27/jvm.cfg
--- current-meta-java/recipes-core/openjdk/openjdk-8-8u40b27/jvm.cfg 1969-12-31 16:00:00.000000000 -0800
+++ meta-java/recipes-core/openjdk/openjdk-8-8u40b27/jvm.cfg     2015-05-20 15:04:01.722291000 -0700
@@ -0,0 +1,43 @@
+# Copyright 2003 Sun Microsystems, Inc.  All Rights Reserved.
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# This code is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License version 2 only, as
+# published by the Free Software Foundation.  Sun designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Sun in the LICENSE file that accompanied this code.
+#
+# This code is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+# version 2 for more details (a copy is included in the LICENSE file that
+# accompanied this code).
+#
+# You should have received a copy of the GNU General Public License version
+# 2 along with this work; if not, write to the Free Software Foundation,
+# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+#
+# Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
+# CA 95054 USA or visit www.sun.com if you need additional information or
+# have any questions.
+#
+#
+# List of JVMs that can be used as an option to java, javac, etc.
+# Order is important -- first in this list is the default JVM.
+# NOTE that this both this file and its format are UNSUPPORTED and
+# WILL GO AWAY in a future release.
+#
+# You may also select a JVM in an arbitrary location with the
+# "-XXaltjvm=<jvm_dir>" option, but that too is unsupported
+# and may not be available in a future release.
+#
+-server ERROR
+-client IGNORE
+-hotspot ERROR
+-classic WARN
+-native ERROR
+-green ERROR
+-zero ALIASED_TO -server
+-shark ERROR
+-cacao ERROR
+-jamvm ERROR
diff -rupN current-meta-java/recipes-core/openjdk/openjdk-8-8u40b27/zero-build.patch meta-java/recipes-core/openjdk/openjdk-8-8u40b27/zero-build.patch
--- current-meta-java/recipes-core/openjdk/openjdk-8-8u40b27/zero-build.patch   1969-12-31 16:00:00.000000000 -0800
+++ meta-java/recipes-core/openjdk/openjdk-8-8u40b27/zero-build.patch     2015-07-23 09:58:00.310222000 -0700
@@ -0,0 +1,14 @@
+---  hotspot/src/share/vm/interpreter/interpreterRuntime.cpp     2015-03-07 10:25:19.000000000 -0800
++++  hotspot/src/share/vm/interpreter/interpreterRuntime.cpp     2015-03-07 10:25:19.000000000 -0800
+@@ -407,7 +407,11 @@
+     // during deoptimization so the interpreter needs to skip it when
+     // the frame is popped.
+     thread->set_do_not_unlock_if_synchronized(true);
++#ifdef CC_INTERP
++    return (address) -1;
++#else
+     return Interpreter::remove_activation_entry();
++#endif
+   }
+
+   // Need to do this check first since when _do_not_unlock_if_synchronized
diff -rupN current-meta-java/recipes-core/openjdk/openjdk-8_8u40b27-2.5.4.bb meta-java/recipes-core/openjdk/openjdk-8_8u40b27-2.5.4.bb
--- current-meta-java/recipes-core/openjdk/openjdk-8_8u40b27-2.5.4.bb   1969-12-31 16:00:00.000000000 -0800
+++ meta-java/recipes-core/openjdk/openjdk-8_8u40b27-2.5.4.bb     2015-07-23 09:07:20.918213000 -0700
@@ -0,0 +1,44 @@
+require openjdk-8-release-8u40b27.inc
+
+PR = "${INC_PR}.1"
+
+SRC_URI[iced.md5sum] = "646064d7a8d57c2cae0ef35a05de57c8"
+SRC_URI[iced.sha256sum] = "5301b9a8592af2cf8e3e7a3650e5e1fe744c6d2de7f8ff78080b2eeae86a9800"
+
+CORBA_CHANGESET = "bd0186cd2419"
+SRC_URI[corba.md5sum] = "200c233a1b7c72c5c77cd7779d1d257a"
+SRC_URI[corba.sha256sum] = "870888241bfe3718e1de10e6de5ae70d5f7131752bb3c1657b020c8fb7af6049"
+
+JAXP_CHANGESET = "56f6ca79467d"
+SRC_URI[jaxp.md5sum] = "f8b291ba2a3c1e2964bd96328e0ebcfc"
+SRC_URI[jaxp.sha256sum] = "254c622fc8a572efd0a10908b4038ba3cf41775d7c09c8f576800b3f608e33f7"
+
+JAXWS_CHANGESET = "a5f2cdedb940"
+SRC_URI[jaxws.md5sum] = "eef146e64e8b5e11473357bb2f4f1ce2"
+SRC_URI[jaxws.sha256sum] = "c7882fa363960b511a08038130a45477fb8d5e82f3d6244248e61e564f3c84a3"
+
+JDK_CHANGESET = "d4453d784fb6"
+SRC_URI[jdk.md5sum] = "f96a5f820b1ffc8a228d3f44f85c792f"
+SRC_URI[jdk.sha256sum] = "b02b46c4b52ca06cf0b42cd7daadc7dbee6403e83f7bc951e28d0c7e6d23c3cd"
+
+LANGTOOLS_CHANGESET = "83eca922346e"
+SRC_URI[langtools.md5sum] = "6e2491a30d39b34a3c007c5fc3fc073e"
+SRC_URI[langtools.sha256sum] = "e46e8322d189dbdf631c1b2796b8ca628f2f83b2f05f0ede74bcbc118201aa16"
+
+OPENJDK_CHANGESET = "12deacac8257"
+SRC_URI[openjdk.md5sum] = "2eb4480a74fa5737ace90494c5e16c00"
+SRC_URI[openjdk.sha256sum] = "6f54575843bf258fdbef4a23d76f3c4b0ada685b42df0f7f5da2e6112113ad10"
+
+# located in hotspot.map
+HOTSPOT_CHANGESET = "6824e2475e04"
+SRC_URI[hotspot.md5sum] = "261b1075a044f2620d04ca4a00589fd5"
+SRC_URI[hotspot.sha256sum] = "011dd76928809ac1240d91e2d244ab020f161c33d69e5af35cf4c87084a6949d"
+
+NASHORN_CHANGESET = "c2dd88e89edc"
+SRC_URI[nashorn.md5sum] = "134199a03c9365febebcad695273a24d"
+SRC_URI[nashorn.sha256sum] = "4ab1d77f7763962b85fbf60951c5e2d397badc54470b58653af3e991b728c6a9"
+
+
+INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
+INHIBIT_PACKAGE_STRIP = "1"
+
diff -rupN current-meta-java/recipes-core/openjdk/openjdk-8-common.inc meta-java/recipes-core/openjdk/openjdk-8-common.inc
--- current-meta-java/recipes-core/openjdk/openjdk-8-common.inc     1969-12-31 16:00:00.000000000 -0800
+++ meta-java/recipes-core/openjdk/openjdk-8-common.inc     2015-07-31 11:37:20.272462144 -0700
@@ -0,0 +1,550 @@
+require openjdk-common.inc
+ICEDTEA = "icedtea-${ICEDTEA_VERSION}"
+
+INC_PR = "r5"
+
+SRC_URI = " \
+  ${ICEDTEA_URI} \
+  ${OPENJDK_URI} \
+  ${HOTSPOT_URI} \
+  ${CORBA_URI} \
+  ${JAXP_URI} \
+  ${JAXWS_URI} \
+  ${JDK_URI} \
+  ${LANGTOOLS_URI} \
+  ${CACAO_URI} \
+  ${JAMVM_URI} \
+  ${NASHORN_URI} \
+  ${OEPATCHES} \
+  file://jvm.cfg \
+  "
+
+JDKPN = "openjdk-8"
+JDK_DIR = "java-8-openjdk"
+
+PN = "${JDKPN}-jre"
+PROVIDES += "${JDKPN}"
+
+DEPENDS = " \
+           icedtea7-native zip-native ant-native \
+           zlib libxslt-native \
+       jpeg libpng giflib \
+           gtk+ glib-2.0 \
+           cups fontconfig \
+       krb5 \
+       libxt libxinerama libxrender libxtst libxi \
+       freetype alsa-lib libffi \
+          "
+
+# No package should directly depend on this (it should require
+# java2-runtime instead).
+PRIVATE_LIBS = "\
+    lib.so libunpack.so libverify.so libjava.so libzip.so libnpt.so \
+    libjava_crw_demo.so libhprof.so libjavanet.so libnio.so \
+    libmanagement.so libinstrument.so libjsound.so libjsoundalsa.so \
+    libj2pcsc.so libj2pkcs11.so libj2gss.so libmlib_image.so \
+    libawt.so libsplashscreen.so libfreetype.so.6 libfontmanager.so \
+    libjpeg.so liblcms.so librmi.so libjawt.so libjaas_unix.so \
+    libattach.so libjdwp.so libdt_socket.so libhpi.so libjli.so \
+    libmawt.so libjvm.so \
+    libversionCheck.so libcompiledMethodLoad.so libgctest.so \
+    libheapViewer.so libheapTracker.so libminst.so libmtrace.so \
+    libwaiters.so libhprof.so \
+       "
+
+export ALT_CUPS_HEADERS_PATH = "${STAGING_INCDIR}"
+export ALT_FREETYPE_HEADERS_PATH = "${STAGING_INCDIR}/freetype2"
+export ALT_FREETYPE_LIB_PATH = "${STAGING_LIBDIR}"
+export CACAO_CONFIGURE_ARGS = " \
+    ${@['','--enable-softfloat'][bb.data.getVar('TARGET_FPU',d,1) == 'soft']}"
+
+JAVA_HOME[unexport] = "1"
+
+# disable shark until it is fully working again
+# WITH_ADDITIONAL_VMS ?= "--with-additional-vms=shark,cacao,jamvm"
+
+WITH_ADDITIONAL_VMS ?= "--with-additional-vms=cacao,jamvm"
+
+# OpenJDK supports parallel compilation but uses a plain number for this.
+# In OE we have PARALLEL_MAKE which is the actual option passed to make,
+# e.g. "-j 4".
+
+OPENJDK_PARALLEL_MAKE := "${PARALLEL_MAKE}"
+PARALLEL_MAKE =  ""
+
+def get_jdk8_jobs(d):
+    import bb
+
+    pm = bb.data.getVar('OPENJDK_PARALLEL_MAKE', d, 1);
+    if not pm:
+        return "1"
+
+    pm = pm.split("j");
+    if (len(pm) == 2):
+        return pm[1].strip()
+
+    # Whatever found in PARALLEL_MAKE was not suitable.
+    return "1"
+
+JDK_JOBS = "${@get_jdk8_jobs(d)}"
+
+EXTRA_OECONF = " \
+        --disable-tests \
+    --disable-hotspot-tests \
+    --disable-langtools-tests \
+    --disable-jdk-tests \
+    --disable-docs \
+    --disable-nss \
+    --disable-system-lcms \
+    --disable-bootstrap \
+        --with-rhino=${STAGING_DATADIR_JAVA}/rhino.jar \
+    --with-jdk-home=${STAGING_LIBDIR_JVM_NATIVE}/icedtea7-native \
+        --with-openjdk-src-zip=${WORKDIR}/${OPENJDK_FILE} \
+    --with-hotspot-src-zip=${WORKDIR}/${HOTSPOT_FILE} \
+    --with-corba-src-zip=${WORKDIR}/${CORBA_FILE} \
+    --with-jaxp-src-zip=${WORKDIR}/${JAXP_FILE} \
+    --with-jaxws-src-zip=${WORKDIR}/${JAXWS_FILE} \
+    --with-jdk-src-zip=${WORKDIR}/${JDK_FILE} \
+    --with-langtools-src-zip=${WORKDIR}/${LANGTOOLS_FILE} \
+    --with-parallel-jobs=${JDK_JOBS} \
+    --with-pkgversion=${PV} \
+       "
+
+do_configure_prepend() {
+  bbnote "Copying and resetting patches...Configure with parallel-jobs: ${JDK_JOBS}"
+
+  # Automatically copy everything that starts with "icedtea" (or "cacao") and ends with
+  # ".patch" into the patches directory.
+  find ${WORKDIR} -maxdepth 1 -name "icedtea*.patch" -exec cp {} ${S}/patches \;
+  find ${WORKDIR} -maxdepth 1 -name "cacao*.patch" -exec cp {} ${S}/patches \;
+  find ${WORKDIR} -maxdepth 1 -name "zero*.patch" -exec cp {} ${S}/patches \;
+  find ${WORKDIR} -maxdepth 1 -name "faulty-nx-emulation.patch" -exec cp {} ${S}/patches \;
+  # Overwrite pr2124.patch about NamedCurve.java
+  > ${S}/patches/pr2124.patch
+  # Overwrite rhino.patch about JavaScript
+  > ${S}/patches/rhino.patch
+  > ${S}/patches/boot/no.patch
+  bbnote "No need to remove snmp etc.. from openjdk-8"
+  > ${S}/fsg.sh.in
+}
+
+do_configure_append() {
+        # We are not removing any files from openjdk-8
+        bbnote "Applying remaining patches.."
+    oe_runmake patch
+}
+
+# Work around broken variable quoting in oe-stable 2009 and provide the variable
+# via the environment which then overrides the erroneous value that was written
+# into '${ICETDEA}/Makefile'.
+# Icedtea's makefile is not compatible to parallelization so we cannot allow
+# passing a valid ${PARALLEL_MAKE} to it. OTOH OpenJDK's makefiles are
+# parallelizable and we need ${PARALLEL_MAKE} to derive the proper value.
+# The base for this quirk is that GNU Make only considers the last "-j" option.
+EXTRA_OEMAKE += 'CC="${CC}" CCC="${CXX}" CPP="${CPP}" CXX="${CXX}" CC_FOR_BUILD="${BUILD_CC}"'
+
+EXTRA_OEMAKE += ' \
+                OE_CFLAGS="${TARGET_CFLAGS}" \
+                OE_CPPFLAGS="${TARGET_CPPFLAGS}" \
+                OE_CXXFLAGS="${TARGET_CXXFLAGS}" \
+                OE_LDFLAGS="${TARGET_LDFLAGS}" \
+                ZIPEXE="${STAGING_BINDIR_NATIVE}/zip" \
+          CROSS_COMPILE_ARCH="${JDK_ARCH}" \
+          REQUIRED_ALSA_VERSION="" \
+               '
+
+# Provides the target architecture to the configure script.
+export LLVM_CONFIGURE_ARCH="${@get_llvm_configure_arch(d)}"
+
+OE_LAUNCHER_LDFLAGS = "-Wl,-rpath-link,${STAGING_LIBDIR}/llvm${WANT_LLVM_RELEASE} -Wl,-rpath,${libdir}/llvm${WANT_LLVM_RELEASE}"
+
+OE_LAUNCHER_LDFLAGS_arm = ""
+
+EXTRA_OEMAKE += 'OE_LAUNCHER_LDFLAGS="${OE_LAUNCHER_LDFLAGS}"'
+
+
+OPENJDK_OECONF = " \
+     --openjdk-target=${TARGET_SYS} \
+     --prefix=/usr                  \
+     --exec_prefix=/usr             \
+     --bindir=/usr/bin              \
+     --sbindir=/usr/sbin            \
+     --libexecdir=/usr/libexec      \
+     --datadir=/usr/share           \
+     --sysconfdir=/etc              \
+     --sharedstatedir=/com          \
+     --localstatedir=/var           \
+     --libdir=/usr/lib              \
+     --includedir=/usr/include      \
+     --oldincludedir=/usr/include   \
+     --infodir=/usr/share/info      \
+     --mandir=/usr/share/man        \
+     --disable-headful              \
+     --with-sys-root=${STAGING_DIR_TARGET} \
+     CFLAGS="--sysroot=${STAGING_DIR_TARGET} " \
+     CXXFLAGS="--sysroot=${STAGING_DIR_TARGET} " \
+     LDFLAGS="--sysroot=${STAGING_DIR_TARGET} " \
+     --with-extra-cflags="--sysroot=${STAGING_DIR_TARGET} " \
+     --with-extra-cxxflags="--sysroot=${STAGING_DIR_TARGET} " \
+     --with-extra-ldflags="--sysroot=${STAGING_DIR_TARGET} " \
+     "
+
+def should_build_zero(d):
+    if (get_llvm_configure_arch(d) == "x86"):
+        return False
+    else:
+        return True
+
+def openjdk8_configuration(d):
+    if (should_build_zero(d) == True):
+        return "--with-jvm-variants=zero LIBFFI_LIBS=-lffi"
+    else:
+        return "--with-jvm-variants=server"
+
+def openjdk_configuration(d):
+    if (should_build_zero(d) == True):
+        return "LIBFFI_LIBS=-lffi"
+    else:
+        return ""
+
+# LIBFFI_LIBS needs to be in EXTRA_OECONF
+OPENJDK_OECONF += "${@openjdk8_configuration(d)}"
+EXTRA_OECONF += "${@openjdk_configuration(d)}"
+BUILD_ZERO = "${@should_build_zero(d)}"
+
+do_compile() {
+
+        OPENJDK8_BUILD_LOC=`pwd`
+    bbnote "3/3 Building final JDK @ ${OPENJDK8_BUILD_LOC}"
+        # Create dummy Defs.gmk
+        mkdir -p ${OPENJDK8_BUILD_LOC}/openjdk/jdk/make/common/
+        mkdir -p ${OPENJDK8_BUILD_LOC}/openjdk/jdk/make/common/shared/
+        > ${OPENJDK8_BUILD_LOC}/openjdk/jdk/make/common/shared/Defs.gmk
+
+        # we do not want MAKE=make
+        MAKE=/usr/bin/make
+        BUILD_LD=/usr/bin/gcc
+        ###############################################
+        # Icedtea Makefile creates openjdk directory and copies various Java tar files etc.. and
+        # and unpacks it...
+        # This is where we need to configure OpenJDK-8
+        ###############################################
+    # Build the final Hotspot + OpenJDK
+        #
+        for F in `find ${TMPDIR}/work/${MULTIMACH_TARGET_SYS}/libffi -name sysroot-destdir`
+        do
+            #export LIBFFI_LIBS="-L${F}/usr/lib/ -lffi"
+            LIBFFI_LOC=$F
+        done
+        for H in `find ${LIBFFI_LOC} -name include`
+        do
+            #export LIBFFI_CFLAGS="-I${H}/"
+            ln -sf $H/ffi.h ${STAGING_INCDIR}/ffi.h
+            ln -sf $H/ffitarget.h ${STAGING_INCDIR}/ffitarget.h
+        done
+        env
+        bbnote "We are trying to not apply patches to icedTea Makefile.am etc.."
+        if [ -e ${OPENJDK8_BUILD_LOC}/openjdk/configure ] ; then
+          cd ${OPENJDK8_BUILD_LOC}/openjdk
+          chmod +x ${OPENJDK8_BUILD_LOC}/openjdk/configure
+          bbnote "Setting up NASHORN...."
+          ln -sf ${WORKDIR}/${NASHORN_FILE} ${OPENJDK8_BUILD_LOC}/nashorn.tar.bz2
+          tar xf ${OPENJDK8_BUILD_LOC}/nashorn.tar.bz2
+          if [ -e nashorn ] ; then
+              rm -rf nashorn
+          fi;
+          mv nashorn-${NASHORN_CHANGESET} nashorn
+          if [ "${BUILD_ZERO}" = "True" ] ; then
+              bbnote "Apply fixes to Openjdk source so that we can build Zero"
+              if patch -l -p0 --dry-run -s -t -f -F 0 < ${S}/patches/zero-build.patch ;
+              then
+                  bbnote "zero-build fix..."
+                  patch -l -p0 < ${S}/patches/zero-build.patch
+              else
+                  bbnote "Already patched for zero-build"
+              fi;
+
+              if patch -l -p0 --dry-run -s -t -f -F 0 < ${S}/patches/faulty-nx-emulation.patch ;
+              then
+                  bbnote "faulty-nx-emulation fix"
+                  patch -l -p0 < ${S}/patches/faulty-nx-emulation.patch
+              else
+                  bbnote "Already patched for nx-emulation"
+              fi;
+          fi;
+
+          bbnote "Configuring OpenJDK-8..."
+          ${OPENJDK8_BUILD_LOC}/openjdk/configure ${OPENJDK_OECONF}
+        fi ;
+
+        cd ${OPENJDK8_BUILD_LOC}
+
+        # check other environment variables
+        bbnote "Starting stage2"
+    oe_runmake icedtea-stage2
+        bbnote "Done with stage2"
+}
+
+do_install() {
+        # Bitbake does not like symlink in packages not containing dbg, dev in name
+        # see insane.bb
+        # Fixing it...
+
+        # Here you will be at icedtea/build area...
+        # come to openjdk-8 area and copy all files.
+        cd openjdk
+        #bbnote "Always run clean before bew build"
+        #make clean
+        bbnote "Building all.."
+        make DEBUG_BINARIES=true all
+
+        ############################################
+        # Use following to create compact profiles.
+        ############################################
+        #bbnote "Building All 3 jre compact profiles... Will copy most used compact3 as jre"
+        #oe_runmake profiles
+        # bbnote "Building All 3 JDK/JRE compact profiles... Will copy most used compact3 as jdk/jre"
+        # oe_runmake images profiles
+
+        # Fix Permissions.
+        find ${B}/${BUILD_DIR}/ -type f -not -perm -go=r -exec chmod go+r {} \;
+
+        cd build
+        # Remove all debug symbol files.
+        find . -name "*.diz" -exec rm {} \;
+        cd *
+        cd jdk/bin
+        # There are NO directories here.
+        mkdir -p ${B}/${BUILD_DIR}/j2sdk-image/bin
+        cp * ${B}/${BUILD_DIR}/j2sdk-image/bin/
+        cd ../lib
+        #########################################
+        # Remve symlink for libjsig.so
+        #########################################
+
+
+        bbnote "Removing openjdk build created libjsig symlink"
+        find ${B}/${BUILD_DIR}/ -type l -name libjsig.so |
+            while read SYMLINK
+            do
+                cp --remove-destination `dirname $SYMLINK`/../libjsig.so $SYMLINK
+            done
+        bbnote "Done fixing QA symlink issue"
+
+        mkdir -p ${B}/${BUILD_DIR}/j2sdk-image/lib
+        cp -R * ${B}/${BUILD_DIR}/j2sdk-image/lib
+        # Go back to jdk
+        cd ../include
+        bbnote "copying include"
+
+        # Copy includes
+        mkdir -p ${B}/${BUILD_DIR}/j2sdk-image/include
+        cp -R * ${B}/${BUILD_DIR}/j2sdk-image/include/
+        # go to build
+        cd ../..
+
+        ############################################
+        # Use following to copy compact profiles.
+        ############################################
+        #bbnote "copying compact3 profiles"
+
+        # Copy comapct3 profile as JRE
+        #cp -r images/j2re-compact3-image/bin ${B}/${BUILD_DIR}/j2sdk-image/jre/
+        #cp -r images/j2re-compact3-image/lib ${B}/${BUILD_DIR}/j2sdk-image/jre/
+        # Do the same for j2re-image
+        #cp -r images/j2re-compact3-image/bin ${B}/${BUILD_DIR}/j2re-image/
+        #cp -r images/j2re-compact3-image/lib ${B}/${BUILD_DIR}/j2re-image/
+
+        # Copy entire JRE
+        cp -r images/j2re-image ${B}/${BUILD_DIR}/
+        # Copy JRE at JDK as base setup
+        # Do the same for JDK (this has src.zip,demo, man, sample and jre as well)
+        cp -r images/j2sdk-image ${B}/${BUILD_DIR}/
+
+
+        # come out of openjdk
+        cd ..
+        pwd
+        bbnote "Done with building openjdk ..."
+
+
+    install -d ${D}${libdir_jvm}
+    cp -R ${B}/${BUILD_DIR}/j2sdk-image ${D}${JDK_HOME}
+
+    chmod u+rw -R ${D}${JDK_HOME}
+
+    # Fix symlink which would point into staging in the binary package.
+    #ln -sf ${datadir_java}/rhino.jar ${D}${JDK_HOME}/jre/lib/rhino.jar
+
+    # JRE is a subset of JDK. So to save space and resemble what the BIG distros
+    # do we create symlinks from the JDK binaries to their counterparts in the
+    # JRE folder (which have to exist by that time b/c of dependencies).
+    for F in `find ${D}${JDK_HOME}/jre/bin -type f`
+    do
+          bf=`basename $F`
+          bbnote "replace:" $bf
+          rm ${D}${JDK_HOME}/bin/$bf
+          ln -s ${JDK_HOME}/jre/bin/$bf ${D}${JDK_HOME}/bin/$bf
+    done
+
+        install -m644 ${WORKDIR}/jvm.cfg  ${D}${JDK_HOME}/jre/lib/${JDK_ARCH}/
+        # workaround for shared libarary searching
+    ln -sf ${JDK_HOME}/jre/lib/${JDK_ARCH}/server/libjvm.so ${D}${JDK_HOME}/jre/lib/${JDK_ARCH}/
+}
+
+# Notes about the ideas behind packaging:
+# 1) User should install openjdk-8-jre. This is a provider of 'java2-runtime'.
+# 2) This lets package mgmt install: openjdk-8-java
+# -> openjdk-8-vm-shark|openjdk-8-vm-zero|openjdk-8-vm-cacao -> openjdk-8-common
+#
+# With opkg the zero VM is chosen which is good b/c that is the best known (= compatible)
+# runtime. Installing other runtimes side-by-side is possible. Through jvm.cfg the following
+# order of precedence is enforced: zero, shark, cacao. User can chose a different runtime
+# by adding '-shark' or '-cacao' to the Java command (or by deinstalling an otherwise preferred
+# runtime)
+# 3) All other packages, including -jdk, are optional and not needed for normal Java apps.
+#PACKAGES = " \
+#            ${JDKPN}-jre \
+#        ${JDKPN}-jre-dbg \
+#            ${JDKPN}-dbg \
+#            ${JDKPN}-demo-dbg \
+#            ${JDKPN}-demo \
+#            ${JDKPN}-source \
+#            ${JDKPN}-doc \
+#            ${JDKPN}-jdk \
+#            ${JDKPN}-java \
+#            ${JDKPN}-vm-shark \
+#            ${JDKPN}-vm-zero \
+#            ${JDKPN}-vm-cacao \
+#        ${JDKPN}-vm-jamvm \
+#            ${JDKPN}-common \
+#           "
+
+PACKAGES = " \
+            ${JDKPN}-jre \
+            ${JDKPN}-jdk \
+            ${JDKPN}-java \
+            ${JDKPN}-common \
+            ${JDKPN}-src \
+            ${JDKPN}-vm-server \
+            ${JDKPN}-vm-client \
+            ${JDKPN}-doc \
+            ${JDKPN}-demo \
+            ${JDKPN}-source \
+           "
+
+FILES_${JDKPN}-dbg = "\
+    ${JDK_HOME}/bin/.debug \
+    ${JDK_HOME}/lib/.debug \
+    ${JDK_HOME}/lib/${JDK_ARCH}/jli/.debug \
+    ${JDK_HOME}/jre/bin/.debug \
+    ${JDK_HOME}/jre/lib/.debug \
+    ${JDK_HOME}/jre/lib/${JDK_ARCH}/.debug \
+    ${JDK_HOME}/jre/lib/${JDK_ARCH}/jli/.debug \
+    ${JDK_HOME}/jre/lib/${JDK_ARCH}/native_threads/.debug \
+    ${JDK_HOME}/jre/lib/${JDK_ARCH}/server/.debug \
+    ${JDK_HOME}/jre/lib/${JDK_ARCH}/headless/.debug \
+    ${JDK_HOME}/jre/lib/${JDK_ARCH}/xawt/.debug \
+    ${JDK_HOME}/jre/lib/${JDK_ARCH}/client/.debug \
+       "
+
+FILES_${JDKPN}-demo = "${JDK_HOME}/demo ${JDK_HOME}/sample"
+RDEPENDS_${JDKPN}-demo = "java2-runtime"
+FILES_${JDKPN}-demo-dbg = "\
+    ${JDK_HOME}/demo/jvmti/gctest/lib/.debug \
+    ${JDK_HOME}/demo/jvmti/heapTracker/lib/.debug \
+    ${JDK_HOME}/demo/jvmti/heapViewer/lib/.debug \
+    ${JDK_HOME}/demo/jvmti/hprof/lib/.debug \
+    ${JDK_HOME}/demo/jvmti/minst/lib/.debug \
+    ${JDK_HOME}/demo/jvmti/mtrace/lib/.debug \
+    ${JDK_HOME}/demo/jvmti/versionCheck/lib/.debug \
+    ${JDK_HOME}/demo/jvmti/waiters/lib/.debug \
+    ${JDK_HOME}/demo/jvmti/compiledMethodLoad/lib/.debug \
+       "
+
+FILES_${JDKPN}-source = "${JDK_HOME}/src.zip"
+
+FILES_${JDKPN}-java = "${JDK_HOME}/jre/bin/java"
+
+FILES_${JDKPN}-vm-server = "${JDK_HOME}/jre/lib/${JDK_ARCH}/server/"
+
+FILES_${JDKPN}-vm-client = "${JDK_HOME}/jre/lib/${JDK_ARCH}/client/"
+
+FILES_${JDKPN}-vm-zero = "${JDK_HOME}/jre/lib/${JDK_ARCH}/server/"
+
+FILES_${JDKPN}-vm-shark = "${JDK_HOME}/jre/lib/${JDK_ARCH}/shark/"
+
+FILES_${JDKPN}-vm-cacao = "${JDK_HOME}/jre/lib/${JDK_ARCH}/cacao/"
+
+FILES_${JDKPN}-vm-jamvm = "${JDK_HOME}/jre/lib/${JDK_ARCH}/jamvm/"
+
+FILES_${JDKPN}-common = "${JDK_HOME}/jre/ASSEMBLY_EXCEPTION \
+                          ${JDK_HOME}/jre/THIRD_PARTY_README \
+                          ${JDK_HOME}/jre/LICENSE \
+                          ${JDK_HOME}/ASSEMBLY_EXCEPTION \
+                          ${JDK_HOME}/THIRD_PARTY_README \
+                          ${JDK_HOME}/LICENSE \
+                          ${JDK_HOME}/release \
+                          ${JDK_HOME}/jre/lib \
+                         "
+
+FILES_${JDKPN}-jre_append = " \
+    ${JDK_HOME}/jre/bin/keytool \
+        ${JDK_HOME}/jre/bin/orbd \
+    ${JDK_HOME}/jre/bin/pack200 \
+        ${JDK_HOME}/jre/bin/rmid \
+    ${JDK_HOME}/jre/bin/rmiregistry \
+        ${JDK_HOME}/jre/bin/servertool \
+    ${JDK_HOME}/jre/bin/tnameserv \
+        ${JDK_HOME}/jre/bin/unpack200 \
+    ${JDK_HOME}/jre/bin/policytool \
+        ${JDK_HOME}/jre/bin/javaws \
+        ${JDK_HOME}/jre/bin/jjs \
+       "
+
+
+RPROVIDES_${JDKPN}-vm-shark = "java2-vm"
+RPROVIDES_${JDKPN}-vm-zero = "java2-vm"
+RPROVIDES_${JDKPN}-vm-cacao = "java2-vm"
+RPROVIDES_${JDKPN}-vm-jamvm = "java2-vm"
+
+# Even though a vm is a hard dependency it is set as RRECOMMENDS so a single vm can get uninstalled:
+# root at beaglebone:~/java# opkg remove openjdk-8-vm-shark
+# No packages removed.
+# Collected errors:
+#  * print_dependents_warning: Package openjdk-8-vm-shark is depended upon by packages:
+#  * print_dependents_warning: openjdk-8-java
+#  * print_dependents_warning: These might cease to work if package openjdk-8-vm-shark is removed.
+RRECOMMENDS_${JDKPN}-java = "java2-vm"
+
+# For some reason shark and cacao do not automatically depends on -common.
+# So we add that manually.
+RDEPENDS_${JDKPN}-vm-shark = "${JDKPN}-common"
+RDEPENDS_${JDKPN}-vm-cacao = "${JDKPN}-common"
+RDEPENDS_${JDKPN}-vm-jamvm = "${JDKPN}-common"
+# With out this you may see md5 mismatches.
+RDEPENDS_${JDKPN}-common = "librhino-java"
+
+# There is a symlink to a .so but this one is valid.
+INSANE_SKIP_${JDKPN}-vm-shark = "dev-so"
+INSANE_SKIP_${JDKPN}-vm-zero = "dev-so"
+INSANE_SKIP_${JDKPN}-vm-cacao = "dev-so"
+INSANE_SKIP_${JDKPN}-vm-jamvm = "dev-so"
+INSANE_SKIP_${JDKPN}-common = "dev-so"
+
+FILES_${JDKPN}-jdk = " \
+                       ${JDK_HOME}/bin \
+                       ${JDK_HOME}/lib \
+                       ${JDK_HOME}/include \
+                      "
+RDEPENDS_${JDKPN}-jre = "${JDKPN}-java ${JDKPN}-common"
+RDEPENDS_${JDKPN}-java = "${JDKPN}-common"
+RPROVIDES_${JDKPN}-jre = "java2-runtime"
+
+RDEPENDS_${JDKPN}-jdk = "${JDKPN}-jre"
+
+FILES_${JDKPN}-doc = "${JDK_HOME}/man"
+
+require openjdk-postinst.inc
+
+ALTERNATIVE_PRIORITY = "50"
diff -rupN current-meta-java/recipes-core/openjdk/openjdk-8-release-8u40b27.inc meta-java/recipes-core/openjdk/openjdk-8-release-8u40b27.inc
--- current-meta-java/recipes-core/openjdk/openjdk-8-release-8u40b27.inc     1969-12-31 16:00:00.000000000 -0800
+++ meta-java/recipes-core/openjdk/openjdk-8-release-8u40b27.inc     2015-07-23 11:56:05.938245000 -0700
@@ -0,0 +1,74 @@
+require openjdk-8-common.inc
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
+
+FILESPATH =. "${FILE_DIRNAME}/openjdk-8-8u40b27:"
+
+# Name of the directory containing the compiled output
+BUILD_DIR = "openjdk.build"
+BUILD_DIR_ECJ = "openjdk.build-ecj"
+
+ICEDTEA_URI = "http://icedtea.wildebeest.org/download/source/${ICEDTEA}.tar.gz;name=iced"
+
+#ICEDTEA_PREFIX = "icedtea7-forest-2.5"
+ICEDTEA_PREFIX = "jdk8u"
+
+OPENJDK_HG_URL = "http://hg.openjdk.java.net/jdk8u/jdk8u"
+
+OPENJDK_FILE = "${OPENJDK_CHANGESET}.tar.bz2"
+OPENJDK_URI = "${OPENJDK_HG_URL}/archive/${OPENJDK_FILE};name=openjdk;unpack=false"
+
+HOTSPOT_FILE = "${HOTSPOT_CHANGESET}.tar.bz2"
+HOTSPOT_URI = "${OPENJDK_HG_URL}/hotspot/archive/${HOTSPOT_FILE};name=hotspot;unpack=false"
+
+CORBA_FILE = "${CORBA_CHANGESET}.tar.bz2"
+CORBA_URI = "${OPENJDK_HG_URL}/corba/archive/${CORBA_FILE};name=corba;unpack=false"
+
+JAXP_FILE = "${JAXP_CHANGESET}.tar.bz2"
+JAXP_URI = "${OPENJDK_HG_URL}/jaxp/archive/${JAXP_FILE};name=jaxp;unpack=false"
+
+JAXWS_FILE = "${JAXWS_CHANGESET}.tar.bz2"
+JAXWS_URI = "${OPENJDK_HG_URL}/jaxws/archive/${JAXWS_FILE};name=jaxws;unpack=false"
+
+JDK_FILE = "${JDK_CHANGESET}.tar.bz2"
+JDK_URI = "${OPENJDK_HG_URL}/jdk/archive/${JDK_FILE};name=jdk;unpack=false"
+
+LANGTOOLS_FILE = "${LANGTOOLS_CHANGESET}.tar.bz2"
+LANGTOOLS_URI = "${OPENJDK_HG_URL}/langtools/archive/${LANGTOOLS_FILE};name=langtools;unpack=false"
+
+CACAO_VERSION = "e215e36be9fc"
+CACAO_FILE = "${CACAO_VERSION}.tar.gz"
+CACAO_URI = "http://icedtea.wildebeest.org/download/drops/cacao/${CACAO_FILE};name=cacao;unpack=false"
+SRC_URI[cacao.md5sum] = "79f95f0aea4ba04cf2f1a8632ac66d14"
+SRC_URI[cacao.sha256sum] = "4966514c72ee7ed108b882d9b6e65c3adf8a8f9c2dccb029f971b3c8cb4870ab"
+
+JAMVM_VERSION = "ec18fb9e49e62dce16c5094ef1527eed619463aa"
+JAMVM_FILE = "jamvm-${JAMVM_VERSION}.tar.gz"
+JAMVM_URI = "http://icedtea.wildebeest.org/download/drops/jamvm/${JAMVM_FILE};name=jamvm;unpack=false"
+SRC_URI[jamvm.md5sum] = "d50ae193d01a9251e10679c7a2cc6ff1"
+SRC_URI[jamvm.sha256sum] = "31810266666c23822942aac62a78019c2c4589e1c5ee48329cbf42652d4437bc"
+
+NASHORN_FILE = "${NASHORN_CHANGESET}.tar.bz2"
+NASHORN_URI = "${OPENJDK_HG_URL}/nashorn/archive/${NASHORN_FILE};name=nashorn;unpack=false"
+
+# Allow overriding this separately
+OEPATCHES = "\
+    file://fix-checksums.patch \
+    file://build-hacks.patch \
+    file://cacao-libtoolize.patch \
+    file://cacao-loadavg-makefile.patch \
+    file://cacao-loadavg.patch;apply=no \
+    file://cacao-arm-ucontext.patch;apply=no \
+    file://zero-build.patch;apply=no \
+    file://faulty-nx-emulation.patch;apply=no \
+    "
+
+# overrride the jamvm patch for now, needs to be solved upstream
+do_unpackpost() {
+}
+
+addtask unpackpost after do_unpack before do_patch
+
+# Allow overriding this separately
+
+# Allow overriding this separately
diff -rupN current-meta-java/recipes-images/images/java-test-image.bb meta-java/recipes-images/images/java-test-image.bb
--- current-meta-java/recipes-images/images/java-test-image.bb     2015-07-31 10:54:23.504453867 -0700
+++ meta-java/recipes-images/images/java-test-image.bb 2015-07-31 10:13:38.612446014 -0700
@@ -7,6 +7,7 @@ IMAGE_LINGUAS = " "
 IMAGE_INSTALL = "busybox modutils-initscripts initscripts opkg udev sysvinit netbase base-files base-passwd \
                  ${ROOTFS_PKGMANAGE_BOOTSTRAP} ${CORE_IMAGE_EXTRA_INSTALL} \
+                 openjdk-8-jre \
                  openjdk-7-jre openjdk-7-vm-zero openjdk-7-vm-jamvm openjdk-7-vm-cacao \
                  openjdk-6-jre openjdk-6-vm-zero openjdk-6-vm-jamvm openjdk-6-vm-cacao \
                  strace dropbear binutils \

From: Awasthi, Vinay K
Sent: Friday, July 31, 2015 11:53 AM
To: 'openembedded-devel at lists.openembedded.org'
Subject: mata-java openjdk-8 recipe

Here is the patch for review tested on x86 (hotspot) and ARM (zero - build only)...
Thanks,
Vinay



More information about the Openembedded-devel mailing list