All of lore.kernel.org
 help / color / mirror / Atom feed
* [meta-java][PATCH] OpenJDK-8: For x86 and ARM
@ 2015-08-20  0:55 Vinay K. Awasthi
  2015-09-30 21:15 ` Awasthi, Vinay K
  0 siblings, 1 reply; 16+ messages in thread
From: Vinay K. Awasthi @ 2015-08-20  0:55 UTC (permalink / raw)
  To: openembedded-devel

From: "Vinay K. Awasthi" <vinay.k.awasthi@intel.com>

OpenJDK-8 Update Build 60b27:

This package enables OpenJDK-8 update for x86 and ARM in following VM configurations.

For x86: Hotspot VM is enabled.

For ARM: Zero VM is enabled.

OpenJDK-8 compact profiles can also be built using this recipe (see commented out code).
Introduction to compact profiles can be found here..
http://openjdk.java.net/jeps/161

Signed-off-by: Vinay K. Awasthi <vinay.k.awasthi@intel.com>
---
 .../openjdk-8-60b27/cacao-arm-ucontext.patch       |  24 +
 .../openjdk/openjdk-8-60b27/cacao-libtoolize.patch |  12 +
 .../openjdk-8-60b27/cacao-loadavg-makefile.patch   |  13 +
 .../openjdk/openjdk-8-60b27/cacao-loadavg.patch    |  27 +
 .../openjdk-8-60b27/faulty-nx-emulation.patch      |  12 +
 .../openjdk/openjdk-8-60b27/fix-checksums.patch    |  61 ++
 recipes-core/openjdk/openjdk-8-60b27/jvm.cfg       |  43 ++
 .../openjdk/openjdk-8-60b27/zero-build.patch       |  14 +
 recipes-core/openjdk/openjdk-8_60b27-2.5.4.bb      | 621 +++++++++++++++++++++
 recipes-images/images/java-test-image.bb           |   1 +
 10 files changed, 828 insertions(+)
 create mode 100644 recipes-core/openjdk/openjdk-8-60b27/cacao-arm-ucontext.patch
 create mode 100644 recipes-core/openjdk/openjdk-8-60b27/cacao-libtoolize.patch
 create mode 100644 recipes-core/openjdk/openjdk-8-60b27/cacao-loadavg-makefile.patch
 create mode 100644 recipes-core/openjdk/openjdk-8-60b27/cacao-loadavg.patch
 create mode 100644 recipes-core/openjdk/openjdk-8-60b27/faulty-nx-emulation.patch
 create mode 100644 recipes-core/openjdk/openjdk-8-60b27/fix-checksums.patch
 create mode 100644 recipes-core/openjdk/openjdk-8-60b27/jvm.cfg
 create mode 100644 recipes-core/openjdk/openjdk-8-60b27/zero-build.patch
 create mode 100644 recipes-core/openjdk/openjdk-8_60b27-2.5.4.bb

diff --git a/recipes-core/openjdk/openjdk-8-60b27/cacao-arm-ucontext.patch b/recipes-core/openjdk/openjdk-8-60b27/cacao-arm-ucontext.patch
new file mode 100644
index 0000000..c21fcf1
--- /dev/null
+++ b/recipes-core/openjdk/openjdk-8-60b27/cacao-arm-ucontext.patch
@@ -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 --git a/recipes-core/openjdk/openjdk-8-60b27/cacao-libtoolize.patch b/recipes-core/openjdk/openjdk-8-60b27/cacao-libtoolize.patch
new file mode 100644
index 0000000..484cb10
--- /dev/null
+++ b/recipes-core/openjdk/openjdk-8-60b27/cacao-libtoolize.patch
@@ -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 --git a/recipes-core/openjdk/openjdk-8-60b27/cacao-loadavg-makefile.patch b/recipes-core/openjdk/openjdk-8-60b27/cacao-loadavg-makefile.patch
new file mode 100644
index 0000000..a389206
--- /dev/null
+++ b/recipes-core/openjdk/openjdk-8-60b27/cacao-loadavg-makefile.patch
@@ -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 --git a/recipes-core/openjdk/openjdk-8-60b27/cacao-loadavg.patch b/recipes-core/openjdk/openjdk-8-60b27/cacao-loadavg.patch
new file mode 100644
index 0000000..0fc1a81
--- /dev/null
+++ b/recipes-core/openjdk/openjdk-8-60b27/cacao-loadavg.patch
@@ -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 --git a/recipes-core/openjdk/openjdk-8-60b27/faulty-nx-emulation.patch b/recipes-core/openjdk/openjdk-8-60b27/faulty-nx-emulation.patch
new file mode 100644
index 0000000..4d65917
--- /dev/null
+++ b/recipes-core/openjdk/openjdk-8-60b27/faulty-nx-emulation.patch
@@ -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 --git a/recipes-core/openjdk/openjdk-8-60b27/fix-checksums.patch b/recipes-core/openjdk/openjdk-8-60b27/fix-checksums.patch
new file mode 100644
index 0000000..e9db990
--- /dev/null
+++ b/recipes-core/openjdk/openjdk-8-60b27/fix-checksums.patch
@@ -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 = be922f27d059
++JAXP_CHANGESET = 56f6ca79467d
++JAXWS_CHANGESET = 975eb04d1795
++JDK_CHANGESET = afbc08ea922b
++LANGTOOLS_CHANGESET = e8e293d0db49
++OPENJDK_CHANGESET = d50c3672fd18
++
++CORBA_SHA256SUM = 868083374cb6eb02ea5ab780f47702c224a50ea8dc7d9f67e10dcad9e731567d
++JAXP_SHA256SUM = 254c622fc8a572efd0a10908b4038ba3cf41775d7c09c8f576800b3f608e33f7
++JAXWS_SHA256SUM = eae19a40fdda776fc8bbe7f8f1ddbc8501d061026ffcd290b7cf8f9d7f8f0e20
++JDK_SHA256SUM = 089850622aea0778ef73e8e43845952c4d21456075b61d2ed04fd3461c002925
++LANGTOOLS_SHA256SUM = 632183f6a948decdbd9f784a2742d4902ac2ab5c87b24232b02afa5f6efe6050
++OPENJDK_SHA256SUM = 211d1a45b032066575e871ae4514f5db7f8313478a3ca9bad236c58e4892b48f
+
+ 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 = jdk8u60
+ 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@ 10ad4b9d79f9 a95c0a8a20a90f387096dc37d52e4d1e42e5ac9da3c48fbe264d2fd5d79e9ae0
+ aarch64 drop http://icedtea.classpath.org/download/drops/icedtea7/@ICEDTEA_RELEASE@ 4d25046abb67 60da8d427f7e3659f701e54c763ea8366d8af3280c7e10670004938b2f07efef
+
diff --git a/recipes-core/openjdk/openjdk-8-60b27/jvm.cfg b/recipes-core/openjdk/openjdk-8-60b27/jvm.cfg
new file mode 100644
index 0000000..ea97cda
--- /dev/null
+++ b/recipes-core/openjdk/openjdk-8-60b27/jvm.cfg
@@ -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 --git a/recipes-core/openjdk/openjdk-8-60b27/zero-build.patch b/recipes-core/openjdk/openjdk-8-60b27/zero-build.patch
new file mode 100644
index 0000000..1c07102
--- /dev/null
+++ b/recipes-core/openjdk/openjdk-8-60b27/zero-build.patch
@@ -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 --git a/recipes-core/openjdk/openjdk-8_60b27-2.5.4.bb b/recipes-core/openjdk/openjdk-8_60b27-2.5.4.bb
new file mode 100644
index 0000000..68ef3b6
--- /dev/null
+++ b/recipes-core/openjdk/openjdk-8_60b27-2.5.4.bb
@@ -0,0 +1,621 @@
+require openjdk-common.inc
+ICEDTEA = "icedtea-${ICEDTEA_VERSION}"
+
+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 \
+	   rhino krb5 \
+	   libxt libxinerama libxrender libxtst libxi \
+	   freetype alsa-lib libffi \
+          "
+
+# No package should directly depend on this (it should require
+# java-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} \
+     --with-boot-jdk=${STAGING_LIBDIR_JVM_NATIVE}/icedtea7-native \
+     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
+        bbnote "We are trying to not apply patches to icedTea Makefile.am etc.."
+        bbnote "This way changes to Makefile.am will not require us to regenerate patches..."
+        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}                     
+        cd openjdk
+
+        rm -rf ${B}/${BUILD_DIR}
+
+        bbnote "Building OpenJDK-8..."
+        oe_runmake DEBUG_BINARIES=true all
+        ############################################
+        # Use following to create compact profiles.
+        ############################################
+        # For JRE only --- oe_runmake profiles
+        # For JDK/JRE  --- oe_runmake images profiles
+        
+        cd build
+        # Remove all debug symbol files.
+        find . -name "*.diz" -exec rm {} \;
+
+        ln -sf ${OPENJDK8_BUILD_LOC}/openjdk/build/*/images ${B}/${BUILD_DIR}
+        echo ${B} ${BUILD_DIR} ${D}
+        ls -al ${B}/${BUILD_DIR}
+        cd ${OPENJDK8_BUILD_LOC}                     
+        bbnote "Done with building Openjdk-8..."
+
+        bbnote "Removing openjdk build created libjsig symlink"
+        for libjsig_symbol in `find . -type l | grep libjsig.so` 
+        do
+            echo $libjsig_symbol
+            cp --remove-destination `dirname $libjsig_symbol`/../libjsig.so $libjsig_symbol
+        done
+        pwd
+        bbnote "Done fixing QA symlink issue"
+
+        ############################################
+        # Use following to copy compact profiles.
+        ############################################
+        # bbnote "Use following to copy 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/
+
+}
+
+do_install() {
+
+	install -d ${D}${libdir_jvm}
+	cp -R ${B}/${BUILD_DIR}/j2sdk-image ${D}${JDK_HOME}
+
+	chmod u+rw -R ${D}${JDK_HOME}
+
+	# 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 'java-runtime'.
+# 2) This lets package mgmt install: openjdk-8-java
+# openjdk-8-common
+#
+# For x86:
+# We use hotspot VM as this is most optimal and fastest VM.
+# For ARM:
+# We use zero (interpreter mode) VM as hotspot is not yet compiling.
+# 
+# We need to install openjdk-8-jre for Java Runtime Support.
+# To enable compiling on target, install openjdk-8-jdk package.
+# 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 = "java-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"
+#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@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 = "java-runtime"
+
+RDEPENDS_${JDKPN}-jdk = "${JDKPN}-jre"
+
+FILES_${JDKPN}-doc = "${JDK_HOME}/man"
+
+require openjdk-postinst.inc
+
+ALTERNATIVE_PRIORITY = "50"
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
+
+FILESPATH =. "${FILE_DIRNAME}/openjdk-8-60b27:"
+
+# 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 = "jdk8u60"
+
+OPENJDK_HG_URL = "http://hg.openjdk.java.net/jdk8u/jdk8u60"
+
+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://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
+
+PR = "r0.1"
+
+SRC_URI[iced.md5sum] = "646064d7a8d57c2cae0ef35a05de57c8"
+SRC_URI[iced.sha256sum] = "5301b9a8592af2cf8e3e7a3650e5e1fe744c6d2de7f8ff78080b2eeae86a9800"
+
+CORBA_CHANGESET = "be922f27d059"
+SRC_URI[corba.md5sum] = "778ba99ed19c288d0d1b22f42d0c2107"
+SRC_URI[corba.sha256sum] = "868083374cb6eb02ea5ab780f47702c224a50ea8dc7d9f67e10dcad9e731567d"
+
+JAXP_CHANGESET = "56f6ca79467d"
+SRC_URI[jaxp.md5sum] = "f8b291ba2a3c1e2964bd96328e0ebcfc"
+SRC_URI[jaxp.sha256sum] = "254c622fc8a572efd0a10908b4038ba3cf41775d7c09c8f576800b3f608e33f7"
+
+JAXWS_CHANGESET = "975eb04d1795"
+SRC_URI[jaxws.md5sum] = "effc3c176b54d94042ef8351635c11d4"
+SRC_URI[jaxws.sha256sum] = "eae19a40fdda776fc8bbe7f8f1ddbc8501d061026ffcd290b7cf8f9d7f8f0e20"
+
+JDK_CHANGESET = "afbc08ea922b"
+SRC_URI[jdk.md5sum] = "b65ffbe132d4efea2fab5c8ccd36693c"
+SRC_URI[jdk.sha256sum] = "089850622aea0778ef73e8e43845952c4d21456075b61d2ed04fd3461c002925"
+
+LANGTOOLS_CHANGESET = "e8e293d0db49"
+SRC_URI[langtools.md5sum] = "35e388d87587131c28862fa244e99383"
+SRC_URI[langtools.sha256sum] = "632183f6a948decdbd9f784a2742d4902ac2ab5c87b24232b02afa5f6efe6050"
+
+OPENJDK_CHANGESET = "d50c3672fd18"
+SRC_URI[openjdk.md5sum] = "afd33e3218e49f7ecb3c3f90088d9d94"
+SRC_URI[openjdk.sha256sum] = "211d1a45b032066575e871ae4514f5db7f8313478a3ca9bad236c58e4892b48f"
+
+# located in hotspot.map
+HOTSPOT_CHANGESET = "10ad4b9d79f9"
+SRC_URI[hotspot.md5sum] = "cf3ae34a7a4f1aec5fb8a895e3ebf2e4"
+SRC_URI[hotspot.sha256sum] = "a95c0a8a20a90f387096dc37d52e4d1e42e5ac9da3c48fbe264d2fd5d79e9ae0"
+
+NASHORN_CHANGESET = "72a33aed7dcc"
+SRC_URI[nashorn.md5sum] = "ea2fdd450fbf186edf98619556eaa1ee"
+SRC_URI[nashorn.sha256sum] = "36752f1ab4b1fb66fd8be412a8d2b1cfa9cf0258db743dc79e1e8c9607f50ef8"
+
+
+INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
+INHIBIT_PACKAGE_STRIP = "1"
+
diff --git a/recipes-images/images/java-test-image.bb b/recipes-images/images/java-test-image.bb
index 22c7bdf..3bacb4b 100644
--- a/recipes-images/images/java-test-image.bb
+++ b/recipes-images/images/java-test-image.bb
@@ -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 \
-- 
1.8.1.2



^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [meta-java][PATCH] OpenJDK-8: For x86 and ARM
@ 2015-08-28  1:14 Vinay K. Awasthi
  2015-08-28  7:12 ` Richard Leitner
  0 siblings, 1 reply; 16+ messages in thread
From: Vinay K. Awasthi @ 2015-08-28  1:14 UTC (permalink / raw)
  To: openembedded-devel

From: "Vinay K. Awasthi" <vinay.k.awasthi@intel.com>

Rebased it again with latest change-set and tested it on oe-core master with latest mate-openembedded.

There is no change in recipe.

This enables OpenJDK-8 jre/jdk for x86 and ARM.

This recipe is tested for arm (zero VM) and x86 (hotspot vm).

To build just use bitbake openjdk-8.

Signed-off-by: Vinay K. Awasthi <vinay.k.awasthi@intel.com>
---
 .../openjdk-8-60b27/cacao-arm-ucontext.patch       |  24 +
 .../openjdk/openjdk-8-60b27/cacao-libtoolize.patch |  12 +
 .../openjdk-8-60b27/cacao-loadavg-makefile.patch   |  13 +
 .../openjdk/openjdk-8-60b27/cacao-loadavg.patch    |  27 +
 .../openjdk-8-60b27/faulty-nx-emulation.patch      |  12 +
 .../openjdk/openjdk-8-60b27/fix-checksums.patch    |  61 ++
 recipes-core/openjdk/openjdk-8-60b27/jvm.cfg       |  43 ++
 .../openjdk/openjdk-8-60b27/zero-build.patch       |  14 +
 recipes-core/openjdk/openjdk-8_60b27-2.5.4.bb      | 621 +++++++++++++++++++++
 recipes-images/images/java-test-image.bb           |   1 +
 10 files changed, 828 insertions(+)
 create mode 100644 recipes-core/openjdk/openjdk-8-60b27/cacao-arm-ucontext.patch
 create mode 100644 recipes-core/openjdk/openjdk-8-60b27/cacao-libtoolize.patch
 create mode 100644 recipes-core/openjdk/openjdk-8-60b27/cacao-loadavg-makefile.patch
 create mode 100644 recipes-core/openjdk/openjdk-8-60b27/cacao-loadavg.patch
 create mode 100644 recipes-core/openjdk/openjdk-8-60b27/faulty-nx-emulation.patch
 create mode 100644 recipes-core/openjdk/openjdk-8-60b27/fix-checksums.patch
 create mode 100644 recipes-core/openjdk/openjdk-8-60b27/jvm.cfg
 create mode 100644 recipes-core/openjdk/openjdk-8-60b27/zero-build.patch
 create mode 100644 recipes-core/openjdk/openjdk-8_60b27-2.5.4.bb

diff --git a/recipes-core/openjdk/openjdk-8-60b27/cacao-arm-ucontext.patch b/recipes-core/openjdk/openjdk-8-60b27/cacao-arm-ucontext.patch
new file mode 100644
index 0000000..c21fcf1
--- /dev/null
+++ b/recipes-core/openjdk/openjdk-8-60b27/cacao-arm-ucontext.patch
@@ -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 --git a/recipes-core/openjdk/openjdk-8-60b27/cacao-libtoolize.patch b/recipes-core/openjdk/openjdk-8-60b27/cacao-libtoolize.patch
new file mode 100644
index 0000000..484cb10
--- /dev/null
+++ b/recipes-core/openjdk/openjdk-8-60b27/cacao-libtoolize.patch
@@ -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 --git a/recipes-core/openjdk/openjdk-8-60b27/cacao-loadavg-makefile.patch b/recipes-core/openjdk/openjdk-8-60b27/cacao-loadavg-makefile.patch
new file mode 100644
index 0000000..a389206
--- /dev/null
+++ b/recipes-core/openjdk/openjdk-8-60b27/cacao-loadavg-makefile.patch
@@ -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 --git a/recipes-core/openjdk/openjdk-8-60b27/cacao-loadavg.patch b/recipes-core/openjdk/openjdk-8-60b27/cacao-loadavg.patch
new file mode 100644
index 0000000..0fc1a81
--- /dev/null
+++ b/recipes-core/openjdk/openjdk-8-60b27/cacao-loadavg.patch
@@ -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 --git a/recipes-core/openjdk/openjdk-8-60b27/faulty-nx-emulation.patch b/recipes-core/openjdk/openjdk-8-60b27/faulty-nx-emulation.patch
new file mode 100644
index 0000000..4d65917
--- /dev/null
+++ b/recipes-core/openjdk/openjdk-8-60b27/faulty-nx-emulation.patch
@@ -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 --git a/recipes-core/openjdk/openjdk-8-60b27/fix-checksums.patch b/recipes-core/openjdk/openjdk-8-60b27/fix-checksums.patch
new file mode 100644
index 0000000..e9db990
--- /dev/null
+++ b/recipes-core/openjdk/openjdk-8-60b27/fix-checksums.patch
@@ -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 = be922f27d059
++JAXP_CHANGESET = 56f6ca79467d
++JAXWS_CHANGESET = 975eb04d1795
++JDK_CHANGESET = afbc08ea922b
++LANGTOOLS_CHANGESET = e8e293d0db49
++OPENJDK_CHANGESET = d50c3672fd18
++
++CORBA_SHA256SUM = 868083374cb6eb02ea5ab780f47702c224a50ea8dc7d9f67e10dcad9e731567d
++JAXP_SHA256SUM = 254c622fc8a572efd0a10908b4038ba3cf41775d7c09c8f576800b3f608e33f7
++JAXWS_SHA256SUM = eae19a40fdda776fc8bbe7f8f1ddbc8501d061026ffcd290b7cf8f9d7f8f0e20
++JDK_SHA256SUM = 089850622aea0778ef73e8e43845952c4d21456075b61d2ed04fd3461c002925
++LANGTOOLS_SHA256SUM = 632183f6a948decdbd9f784a2742d4902ac2ab5c87b24232b02afa5f6efe6050
++OPENJDK_SHA256SUM = 211d1a45b032066575e871ae4514f5db7f8313478a3ca9bad236c58e4892b48f
+
+ 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 = jdk8u60
+ 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@ 10ad4b9d79f9 a95c0a8a20a90f387096dc37d52e4d1e42e5ac9da3c48fbe264d2fd5d79e9ae0
+ aarch64 drop http://icedtea.classpath.org/download/drops/icedtea7/@ICEDTEA_RELEASE@ 4d25046abb67 60da8d427f7e3659f701e54c763ea8366d8af3280c7e10670004938b2f07efef
+
diff --git a/recipes-core/openjdk/openjdk-8-60b27/jvm.cfg b/recipes-core/openjdk/openjdk-8-60b27/jvm.cfg
new file mode 100644
index 0000000..ea97cda
--- /dev/null
+++ b/recipes-core/openjdk/openjdk-8-60b27/jvm.cfg
@@ -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 --git a/recipes-core/openjdk/openjdk-8-60b27/zero-build.patch b/recipes-core/openjdk/openjdk-8-60b27/zero-build.patch
new file mode 100644
index 0000000..1c07102
--- /dev/null
+++ b/recipes-core/openjdk/openjdk-8-60b27/zero-build.patch
@@ -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 --git a/recipes-core/openjdk/openjdk-8_60b27-2.5.4.bb b/recipes-core/openjdk/openjdk-8_60b27-2.5.4.bb
new file mode 100644
index 0000000..68ef3b6
--- /dev/null
+++ b/recipes-core/openjdk/openjdk-8_60b27-2.5.4.bb
@@ -0,0 +1,621 @@
+require openjdk-common.inc
+ICEDTEA = "icedtea-${ICEDTEA_VERSION}"
+
+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 \
+	   rhino krb5 \
+	   libxt libxinerama libxrender libxtst libxi \
+	   freetype alsa-lib libffi \
+          "
+
+# No package should directly depend on this (it should require
+# java-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} \
+     --with-boot-jdk=${STAGING_LIBDIR_JVM_NATIVE}/icedtea7-native \
+     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
+        bbnote "We are trying to not apply patches to icedTea Makefile.am etc.."
+        bbnote "This way changes to Makefile.am will not require us to regenerate patches..."
+        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}                     
+        cd openjdk
+
+        rm -rf ${B}/${BUILD_DIR}
+
+        bbnote "Building OpenJDK-8..."
+        oe_runmake DEBUG_BINARIES=true all
+        ############################################
+        # Use following to create compact profiles.
+        ############################################
+        # For JRE only --- oe_runmake profiles
+        # For JDK/JRE  --- oe_runmake images profiles
+        
+        cd build
+        # Remove all debug symbol files.
+        find . -name "*.diz" -exec rm {} \;
+
+        ln -sf ${OPENJDK8_BUILD_LOC}/openjdk/build/*/images ${B}/${BUILD_DIR}
+        echo ${B} ${BUILD_DIR} ${D}
+        ls -al ${B}/${BUILD_DIR}
+        cd ${OPENJDK8_BUILD_LOC}                     
+        bbnote "Done with building Openjdk-8..."
+
+        bbnote "Removing openjdk build created libjsig symlink"
+        for libjsig_symbol in `find . -type l | grep libjsig.so` 
+        do
+            echo $libjsig_symbol
+            cp --remove-destination `dirname $libjsig_symbol`/../libjsig.so $libjsig_symbol
+        done
+        pwd
+        bbnote "Done fixing QA symlink issue"
+
+        ############################################
+        # Use following to copy compact profiles.
+        ############################################
+        # bbnote "Use following to copy 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/
+
+}
+
+do_install() {
+
+	install -d ${D}${libdir_jvm}
+	cp -R ${B}/${BUILD_DIR}/j2sdk-image ${D}${JDK_HOME}
+
+	chmod u+rw -R ${D}${JDK_HOME}
+
+	# 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 'java-runtime'.
+# 2) This lets package mgmt install: openjdk-8-java
+# openjdk-8-common
+#
+# For x86:
+# We use hotspot VM as this is most optimal and fastest VM.
+# For ARM:
+# We use zero (interpreter mode) VM as hotspot is not yet compiling.
+# 
+# We need to install openjdk-8-jre for Java Runtime Support.
+# To enable compiling on target, install openjdk-8-jdk package.
+# 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 = "java-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"
+#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@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 = "java-runtime"
+
+RDEPENDS_${JDKPN}-jdk = "${JDKPN}-jre"
+
+FILES_${JDKPN}-doc = "${JDK_HOME}/man"
+
+require openjdk-postinst.inc
+
+ALTERNATIVE_PRIORITY = "50"
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
+
+FILESPATH =. "${FILE_DIRNAME}/openjdk-8-60b27:"
+
+# 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 = "jdk8u60"
+
+OPENJDK_HG_URL = "http://hg.openjdk.java.net/jdk8u/jdk8u60"
+
+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://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
+
+PR = "r0.1"
+
+SRC_URI[iced.md5sum] = "646064d7a8d57c2cae0ef35a05de57c8"
+SRC_URI[iced.sha256sum] = "5301b9a8592af2cf8e3e7a3650e5e1fe744c6d2de7f8ff78080b2eeae86a9800"
+
+CORBA_CHANGESET = "be922f27d059"
+SRC_URI[corba.md5sum] = "778ba99ed19c288d0d1b22f42d0c2107"
+SRC_URI[corba.sha256sum] = "868083374cb6eb02ea5ab780f47702c224a50ea8dc7d9f67e10dcad9e731567d"
+
+JAXP_CHANGESET = "56f6ca79467d"
+SRC_URI[jaxp.md5sum] = "f8b291ba2a3c1e2964bd96328e0ebcfc"
+SRC_URI[jaxp.sha256sum] = "254c622fc8a572efd0a10908b4038ba3cf41775d7c09c8f576800b3f608e33f7"
+
+JAXWS_CHANGESET = "975eb04d1795"
+SRC_URI[jaxws.md5sum] = "effc3c176b54d94042ef8351635c11d4"
+SRC_URI[jaxws.sha256sum] = "eae19a40fdda776fc8bbe7f8f1ddbc8501d061026ffcd290b7cf8f9d7f8f0e20"
+
+JDK_CHANGESET = "afbc08ea922b"
+SRC_URI[jdk.md5sum] = "b65ffbe132d4efea2fab5c8ccd36693c"
+SRC_URI[jdk.sha256sum] = "089850622aea0778ef73e8e43845952c4d21456075b61d2ed04fd3461c002925"
+
+LANGTOOLS_CHANGESET = "e8e293d0db49"
+SRC_URI[langtools.md5sum] = "35e388d87587131c28862fa244e99383"
+SRC_URI[langtools.sha256sum] = "632183f6a948decdbd9f784a2742d4902ac2ab5c87b24232b02afa5f6efe6050"
+
+OPENJDK_CHANGESET = "d50c3672fd18"
+SRC_URI[openjdk.md5sum] = "afd33e3218e49f7ecb3c3f90088d9d94"
+SRC_URI[openjdk.sha256sum] = "211d1a45b032066575e871ae4514f5db7f8313478a3ca9bad236c58e4892b48f"
+
+# located in hotspot.map
+HOTSPOT_CHANGESET = "10ad4b9d79f9"
+SRC_URI[hotspot.md5sum] = "cf3ae34a7a4f1aec5fb8a895e3ebf2e4"
+SRC_URI[hotspot.sha256sum] = "a95c0a8a20a90f387096dc37d52e4d1e42e5ac9da3c48fbe264d2fd5d79e9ae0"
+
+NASHORN_CHANGESET = "72a33aed7dcc"
+SRC_URI[nashorn.md5sum] = "ea2fdd450fbf186edf98619556eaa1ee"
+SRC_URI[nashorn.sha256sum] = "36752f1ab4b1fb66fd8be412a8d2b1cfa9cf0258db743dc79e1e8c9607f50ef8"
+
+
+INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
+INHIBIT_PACKAGE_STRIP = "1"
+
diff --git a/recipes-images/images/java-test-image.bb b/recipes-images/images/java-test-image.bb
index 22c7bdf..3c241e6 100644
--- a/recipes-images/images/java-test-image.bb
+++ b/recipes-images/images/java-test-image.bb
@@ -9,6 +9,7 @@ IMAGE_INSTALL = "busybox modutils-initscripts initscripts opkg udev sysvinit net
                  ${ROOTFS_PKGMANAGE_BOOTSTRAP} ${CORE_IMAGE_EXTRA_INSTALL} \
                  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 \
+                 openjdk-8-jre \
                  strace dropbear binutils \
                  classpath \
                  classpath-common \
-- 
1.8.1.2



^ permalink raw reply related	[flat|nested] 16+ messages in thread

* Re: [meta-java][PATCH] OpenJDK-8: For x86 and ARM
  2015-08-28  1:14 [meta-java][PATCH] OpenJDK-8: For x86 and ARM Vinay K. Awasthi
@ 2015-08-28  7:12 ` Richard Leitner
  2015-08-28 12:37   ` Awasthi, Vinay K
  2015-08-28 17:29   ` Otavio Salvador
  0 siblings, 2 replies; 16+ messages in thread
From: Richard Leitner @ 2015-08-28  7:12 UTC (permalink / raw)
  To: openembedded-devel; +Cc: Otavio Salvador

Hi Vinay,
thanks for working on that!

On 08/28/2015 03:14 AM, Vinay K. Awasthi wrote:
> Rebased it again with latest change-set and tested it on oe-core master with latest mate-openembedded.
> 
> There is no change in recipe.
> 
> This enables OpenJDK-8 jre/jdk for x86 and ARM.
> 
> This recipe is tested for arm (zero VM) and x86 (hotspot vm).
> 
> To build just use bitbake openjdk-8.

I successfully compiled and tested it for/on an ARMv7 Cortex A9 CPU:
# /usr/lib/jvm/java-8-openjdk/jre/bin/java -version
openjdk version "1.8.0-internal"
OpenJDK Runtime Environment (build 1.8.0-internal-leri_2015_08_28_08_47-b00)
OpenJDK Zero VM (build 25.60-b23, interpreted mode)

Also X11/awt/swing works fine! Only problem for me is that ZeroVM is
running in "interpreted mode". Therefore my programs are running really
slow.

Was the "mixed mode" available/working in your tests?

IMHO a working JIT (=> mixed-mode) is a must-have for merging this patch
upstream. What do you think Otavio?

thanks & regards,
Richard L


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [meta-java][PATCH] OpenJDK-8: For x86 and ARM
  2015-08-28  7:12 ` Richard Leitner
@ 2015-08-28 12:37   ` Awasthi, Vinay K
  2015-08-28 17:29   ` Otavio Salvador
  1 sibling, 0 replies; 16+ messages in thread
From: Awasthi, Vinay K @ 2015-08-28 12:37 UTC (permalink / raw)
  To: Richard Leitner
  Cc: openembedded-devel@lists.openembedded.org, Otavio Salvador

Thank you for trying out! At present hotspot does not compile for arm32 ...Various compilation issues in code that may requires Oracles assistance...

Yes mixed mode is working for x86....

Thanks,
-Vinay 
408-765-9407
415-770-3385 (cell)

> On Aug 28, 2015, at 12:13 AM, Richard Leitner <richard.leitner@skidata.com> wrote:
> 
> Hi Vinay,
> thanks for working on that!
> 
>> On 08/28/2015 03:14 AM, Vinay K. Awasthi wrote:
>> Rebased it again with latest change-set and tested it on oe-core master with latest mate-openembedded.
>> 
>> There is no change in recipe.
>> 
>> This enables OpenJDK-8 jre/jdk for x86 and ARM.
>> 
>> This recipe is tested for arm (zero VM) and x86 (hotspot vm).
>> 
>> To build just use bitbake openjdk-8.
> 
> I successfully compiled and tested it for/on an ARMv7 Cortex A9 CPU:
> # /usr/lib/jvm/java-8-openjdk/jre/bin/java -version
> openjdk version "1.8.0-internal"
> OpenJDK Runtime Environment (build 1.8.0-internal-leri_2015_08_28_08_47-b00)
> OpenJDK Zero VM (build 25.60-b23, interpreted mode)
> 
> Also X11/awt/swing works fine! Only problem for me is that ZeroVM is
> running in "interpreted mode". Therefore my programs are running really
> slow.
> 
> Was the "mixed mode" available/working in your tests?
> 
> IMHO a working JIT (=> mixed-mode) is a must-have for merging this patch
> upstream. What do you think Otavio?
> 
> thanks & regards,
> Richard L


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [meta-java][PATCH] OpenJDK-8: For x86 and ARM
  2015-08-28  7:12 ` Richard Leitner
  2015-08-28 12:37   ` Awasthi, Vinay K
@ 2015-08-28 17:29   ` Otavio Salvador
  2015-09-11  7:55     ` Richard Purdie
  1 sibling, 1 reply; 16+ messages in thread
From: Otavio Salvador @ 2015-08-28 17:29 UTC (permalink / raw)
  To: OpenEmbedded Devel List; +Cc: Otavio Salvador

On Fri, Aug 28, 2015 at 4:12 AM, Richard Leitner
<richard.leitner@skidata.com> wrote:
> On 08/28/2015 03:14 AM, Vinay K. Awasthi wrote:
>> Rebased it again with latest change-set and tested it on oe-core master with latest mate-openembedded.
>>
>> There is no change in recipe.
>>
>> This enables OpenJDK-8 jre/jdk for x86 and ARM.
>>
>> This recipe is tested for arm (zero VM) and x86 (hotspot vm).
>>
>> To build just use bitbake openjdk-8.
>
> I successfully compiled and tested it for/on an ARMv7 Cortex A9 CPU:
> # /usr/lib/jvm/java-8-openjdk/jre/bin/java -version
> openjdk version "1.8.0-internal"
> OpenJDK Runtime Environment (build 1.8.0-internal-leri_2015_08_28_08_47-b00)
> OpenJDK Zero VM (build 25.60-b23, interpreted mode)
>
> Also X11/awt/swing works fine! Only problem for me is that ZeroVM is
> running in "interpreted mode". Therefore my programs are running really
> slow.
>
> Was the "mixed mode" available/working in your tests?
>
> IMHO a working JIT (=> mixed-mode) is a must-have for merging this patch
> upstream. What do you think Otavio?

Yes, I agree. There are other people working in OpenJDK 8 here[1] (at
ml) it seems so maybe we could share some ideas on how to fix it.

1. https://github.com/rehsack/meta-java

-- 
Otavio Salvador                             O.S. Systems
http://www.ossystems.com.br        http://code.ossystems.com.br
Mobile: +55 (53) 9981-7854            Mobile: +1 (347) 903-9750


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [meta-java][PATCH] OpenJDK-8: For x86 and ARM
  2015-08-28 17:29   ` Otavio Salvador
@ 2015-09-11  7:55     ` Richard Purdie
  2015-09-11 12:11       ` Otavio Salvador
  0 siblings, 1 reply; 16+ messages in thread
From: Richard Purdie @ 2015-09-11  7:55 UTC (permalink / raw)
  To: openembedded-devel; +Cc: Otavio Salvador

On Fri, 2015-08-28 at 14:29 -0300, Otavio Salvador wrote:
> On Fri, Aug 28, 2015 at 4:12 AM, Richard Leitner
> <richard.leitner@skidata.com> wrote:
> > On 08/28/2015 03:14 AM, Vinay K. Awasthi wrote:
> >> Rebased it again with latest change-set and tested it on oe-core master with latest mate-openembedded.
> >>
> >> There is no change in recipe.
> >>
> >> This enables OpenJDK-8 jre/jdk for x86 and ARM.
> >>
> >> This recipe is tested for arm (zero VM) and x86 (hotspot vm).
> >>
> >> To build just use bitbake openjdk-8.
> >
> > I successfully compiled and tested it for/on an ARMv7 Cortex A9 CPU:
> > # /usr/lib/jvm/java-8-openjdk/jre/bin/java -version
> > openjdk version "1.8.0-internal"
> > OpenJDK Runtime Environment (build 1.8.0-internal-leri_2015_08_28_08_47-b00)
> > OpenJDK Zero VM (build 25.60-b23, interpreted mode)
> >
> > Also X11/awt/swing works fine! Only problem for me is that ZeroVM is
> > running in "interpreted mode". Therefore my programs are running really
> > slow.
> >
> > Was the "mixed mode" available/working in your tests?
> >
> > IMHO a working JIT (=> mixed-mode) is a must-have for merging this patch
> > upstream. What do you think Otavio?
> 
> Yes, I agree. There are other people working in OpenJDK 8 here[1] (at
> ml) it seems so maybe we could share some ideas on how to fix it.

I'm hearing there is a little frustration about moving forward with
this. I'd like to suggest that a staged approach might be better in this
case, for example if OpenJDK-8 is working on IA, how about adding it
with:

# mixed-mode isn't working on ARM yet
COMPATIBLE_HOST = '(i.86|x86_64).*-linux'

With a large change like this, I think its perhaps ok to take a staged
approach, as long as its clear what is/isn't expected to work?
If/as/when the ARM people have time to make it work there, patches can
be sent to change that? This way it unblocks people and doesn't hold
keen contributors back.

Cheers,

Richard




^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [meta-java][PATCH] OpenJDK-8: For x86 and ARM
  2015-09-11  7:55     ` Richard Purdie
@ 2015-09-11 12:11       ` Otavio Salvador
  0 siblings, 0 replies; 16+ messages in thread
From: Otavio Salvador @ 2015-09-11 12:11 UTC (permalink / raw)
  To: OpenEmbedded Devel List; +Cc: Otavio Salvador

On Fri, Sep 11, 2015 at 4:55 AM, Richard Purdie
<richard.purdie@linuxfoundation.org> wrote:
> On Fri, 2015-08-28 at 14:29 -0300, Otavio Salvador wrote:
>> On Fri, Aug 28, 2015 at 4:12 AM, Richard Leitner
>> <richard.leitner@skidata.com> wrote:
>> > On 08/28/2015 03:14 AM, Vinay K. Awasthi wrote:
>> >> Rebased it again with latest change-set and tested it on oe-core master with latest mate-openembedded.
>> >>
>> >> There is no change in recipe.
>> >>
>> >> This enables OpenJDK-8 jre/jdk for x86 and ARM.
>> >>
>> >> This recipe is tested for arm (zero VM) and x86 (hotspot vm).
>> >>
>> >> To build just use bitbake openjdk-8.
>> >
>> > I successfully compiled and tested it for/on an ARMv7 Cortex A9 CPU:
>> > # /usr/lib/jvm/java-8-openjdk/jre/bin/java -version
>> > openjdk version "1.8.0-internal"
>> > OpenJDK Runtime Environment (build 1.8.0-internal-leri_2015_08_28_08_47-b00)
>> > OpenJDK Zero VM (build 25.60-b23, interpreted mode)
>> >
>> > Also X11/awt/swing works fine! Only problem for me is that ZeroVM is
>> > running in "interpreted mode". Therefore my programs are running really
>> > slow.
>> >
>> > Was the "mixed mode" available/working in your tests?
>> >
>> > IMHO a working JIT (=> mixed-mode) is a must-have for merging this patch
>> > upstream. What do you think Otavio?
>>
>> Yes, I agree. There are other people working in OpenJDK 8 here[1] (at
>> ml) it seems so maybe we could share some ideas on how to fix it.
>
> I'm hearing there is a little frustration about moving forward with
> this. I'd like to suggest that a staged approach might be better in this
> case, for example if OpenJDK-8 is working on IA, how about adding it
> with:
>
> # mixed-mode isn't working on ARM yet
> COMPATIBLE_HOST = '(i.86|x86_64).*-linux'
>
> With a large change like this, I think its perhaps ok to take a staged
> approach, as long as its clear what is/isn't expected to work?
> If/as/when the ARM people have time to make it work there, patches can
> be sent to change that? This way it unblocks people and doesn't hold
> keen contributors back.

I am without much time to look at this and do a proper testing. If any
other maintainer wants to handle this I would be thankful.

-- 
Otavio Salvador                             O.S. Systems
http://www.ossystems.com.br        http://code.ossystems.com.br
Mobile: +55 (53) 9981-7854            Mobile: +1 (347) 903-9750


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [meta-java][PATCH] OpenJDK-8: For x86 and ARM
  2015-08-20  0:55 Vinay K. Awasthi
@ 2015-09-30 21:15 ` Awasthi, Vinay K
  2015-09-30 21:20   ` Otavio Salvador
  0 siblings, 1 reply; 16+ messages in thread
From: Awasthi, Vinay K @ 2015-09-30 21:15 UTC (permalink / raw)
  To: openembedded-devel@lists.openembedded.org
  Cc: Otavio Salvador, Richard Purdie, mario@ossystems.com.br

Hello meta-java maintainers,

Any update on when openjdk-8 is going to be part of meta-java? It has been over a month..

We are holding a temporary area for meta-java (supporting Edison/galileo/minnow max etc..) with our changes  at https://github.com/intel-iot-devkit/meta-java  that we *DO NOT* want to keep for long (expecting all these changes to be part of open-embedded /meta-java)..

Current OpenJDK-8 (in meta-java) supports x86 (jit mode) and interpreter mode for ARM selected automatically based on target arch... As and when JIT for ARM becomes available, that can also be integrated.

Thanks,
Vinay

-----Original Message-----
From: Awasthi, Vinay K 
Sent: Wednesday, August 19, 2015 5:56 PM
To: openembedded-devel@lists.openembedded.org
Cc: Awasthi, Vinay K
Subject: [meta-java][PATCH] OpenJDK-8: For x86 and ARM

From: "Vinay K. Awasthi" <vinay.k.awasthi@intel.com>

OpenJDK-8 Update Build 60b27:

This package enables OpenJDK-8 update for x86 and ARM in following VM configurations.

For x86: Hotspot VM is enabled.

For ARM: Zero VM is enabled.

OpenJDK-8 compact profiles can also be built using this recipe (see commented out code).
Introduction to compact profiles can be found here..
http://openjdk.java.net/jeps/161

Signed-off-by: Vinay K. Awasthi <vinay.k.awasthi@intel.com>
---
 .../openjdk-8-60b27/cacao-arm-ucontext.patch       |  24 +
 .../openjdk/openjdk-8-60b27/cacao-libtoolize.patch |  12 +
 .../openjdk-8-60b27/cacao-loadavg-makefile.patch   |  13 +
 .../openjdk/openjdk-8-60b27/cacao-loadavg.patch    |  27 +
 .../openjdk-8-60b27/faulty-nx-emulation.patch      |  12 +
 .../openjdk/openjdk-8-60b27/fix-checksums.patch    |  61 ++
 recipes-core/openjdk/openjdk-8-60b27/jvm.cfg       |  43 ++
 .../openjdk/openjdk-8-60b27/zero-build.patch       |  14 +
 recipes-core/openjdk/openjdk-8_60b27-2.5.4.bb      | 621 +++++++++++++++++++++
 recipes-images/images/java-test-image.bb           |   1 +
 10 files changed, 828 insertions(+)
 create mode 100644 recipes-core/openjdk/openjdk-8-60b27/cacao-arm-ucontext.patch
 create mode 100644 recipes-core/openjdk/openjdk-8-60b27/cacao-libtoolize.patch
 create mode 100644 recipes-core/openjdk/openjdk-8-60b27/cacao-loadavg-makefile.patch
 create mode 100644 recipes-core/openjdk/openjdk-8-60b27/cacao-loadavg.patch
 create mode 100644 recipes-core/openjdk/openjdk-8-60b27/faulty-nx-emulation.patch
 create mode 100644 recipes-core/openjdk/openjdk-8-60b27/fix-checksums.patch
 create mode 100644 recipes-core/openjdk/openjdk-8-60b27/jvm.cfg
 create mode 100644 recipes-core/openjdk/openjdk-8-60b27/zero-build.patch
 create mode 100644 recipes-core/openjdk/openjdk-8_60b27-2.5.4.bb

diff --git a/recipes-core/openjdk/openjdk-8-60b27/cacao-arm-ucontext.patch b/recipes-core/openjdk/openjdk-8-60b27/cacao-arm-ucontext.patch
new file mode 100644
index 0000000..c21fcf1
--- /dev/null
+++ b/recipes-core/openjdk/openjdk-8-60b27/cacao-arm-ucontext.patch
@@ -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 --git a/recipes-core/openjdk/openjdk-8-60b27/cacao-libtoolize.patch b/recipes-core/openjdk/openjdk-8-60b27/cacao-libtoolize.patch
new file mode 100644
index 0000000..484cb10
--- /dev/null
+++ b/recipes-core/openjdk/openjdk-8-60b27/cacao-libtoolize.patch
@@ -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 --git a/recipes-core/openjdk/openjdk-8-60b27/cacao-loadavg-makefile.patch b/recipes-core/openjdk/openjdk-8-60b27/cacao-loadavg-makefile.patch
new file mode 100644
index 0000000..a389206
--- /dev/null
+++ b/recipes-core/openjdk/openjdk-8-60b27/cacao-loadavg-makefile.patch
@@ -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 --git a/recipes-core/openjdk/openjdk-8-60b27/cacao-loadavg.patch b/recipes-core/openjdk/openjdk-8-60b27/cacao-loadavg.patch
new file mode 100644
index 0000000..0fc1a81
--- /dev/null
+++ b/recipes-core/openjdk/openjdk-8-60b27/cacao-loadavg.patch
@@ -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 --git a/recipes-core/openjdk/openjdk-8-60b27/faulty-nx-emulation.patch b/recipes-core/openjdk/openjdk-8-60b27/faulty-nx-emulation.patch
new file mode 100644
index 0000000..4d65917
--- /dev/null
+++ b/recipes-core/openjdk/openjdk-8-60b27/faulty-nx-emulation.patch
@@ -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 --git a/recipes-core/openjdk/openjdk-8-60b27/fix-checksums.patch b/recipes-core/openjdk/openjdk-8-60b27/fix-checksums.patch
new file mode 100644
index 0000000..e9db990
--- /dev/null
+++ b/recipes-core/openjdk/openjdk-8-60b27/fix-checksums.patch
@@ -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 = be922f27d059
++JAXP_CHANGESET = 56f6ca79467d
++JAXWS_CHANGESET = 975eb04d1795
++JDK_CHANGESET = afbc08ea922b
++LANGTOOLS_CHANGESET = e8e293d0db49
++OPENJDK_CHANGESET = d50c3672fd18
++
++CORBA_SHA256SUM = 
++868083374cb6eb02ea5ab780f47702c224a50ea8dc7d9f67e10dcad9e731567d
++JAXP_SHA256SUM = 
++254c622fc8a572efd0a10908b4038ba3cf41775d7c09c8f576800b3f608e33f7
++JAXWS_SHA256SUM = 
++eae19a40fdda776fc8bbe7f8f1ddbc8501d061026ffcd290b7cf8f9d7f8f0e20
++JDK_SHA256SUM = 
++089850622aea0778ef73e8e43845952c4d21456075b61d2ed04fd3461c002925
++LANGTOOLS_SHA256SUM = 
++632183f6a948decdbd9f784a2742d4902ac2ab5c87b24232b02afa5f6efe6050
++OPENJDK_SHA256SUM = 
++211d1a45b032066575e871ae4514f5db7f8313478a3ca9bad236c58e4892b48f
+
+ 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 = jdk8u60
+ 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@ 
++10ad4b9d79f9 
++a95c0a8a20a90f387096dc37d52e4d1e42e5ac9da3c48fbe264d2fd5d79e9ae0
+ aarch64 drop 
+ http://icedtea.classpath.org/download/drops/icedtea7/@ICEDTEA_RELEASE@ 
+ 4d25046abb67 
+ 60da8d427f7e3659f701e54c763ea8366d8af3280c7e10670004938b2f07efef
+
diff --git a/recipes-core/openjdk/openjdk-8-60b27/jvm.cfg b/recipes-core/openjdk/openjdk-8-60b27/jvm.cfg
new file mode 100644
index 0000000..ea97cda
--- /dev/null
+++ b/recipes-core/openjdk/openjdk-8-60b27/jvm.cfg
@@ -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 --git a/recipes-core/openjdk/openjdk-8-60b27/zero-build.patch b/recipes-core/openjdk/openjdk-8-60b27/zero-build.patch
new file mode 100644
index 0000000..1c07102
--- /dev/null
+++ b/recipes-core/openjdk/openjdk-8-60b27/zero-build.patch
@@ -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 --git a/recipes-core/openjdk/openjdk-8_60b27-2.5.4.bb b/recipes-core/openjdk/openjdk-8_60b27-2.5.4.bb
new file mode 100644
index 0000000..68ef3b6
--- /dev/null
+++ b/recipes-core/openjdk/openjdk-8_60b27-2.5.4.bb
@@ -0,0 +1,621 @@
+require openjdk-common.inc
+ICEDTEA = "icedtea-${ICEDTEA_VERSION}"
+
+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 \
+	   rhino krb5 \
+	   libxt libxinerama libxrender libxtst libxi \
+	   freetype alsa-lib libffi \
+          "
+
+# No package should directly depend on this (it should require # 
+java-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} \
+     --with-boot-jdk=${STAGING_LIBDIR_JVM_NATIVE}/icedtea7-native \
+     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
+        bbnote "We are trying to not apply patches to icedTea Makefile.am etc.."
+        bbnote "This way changes to Makefile.am will not require us to regenerate patches..."
+        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}                     
+        cd openjdk
+
+        rm -rf ${B}/${BUILD_DIR}
+
+        bbnote "Building OpenJDK-8..."
+        oe_runmake DEBUG_BINARIES=true all
+        ############################################
+        # Use following to create compact profiles.
+        ############################################
+        # For JRE only --- oe_runmake profiles
+        # For JDK/JRE  --- oe_runmake images profiles
+        
+        cd build
+        # Remove all debug symbol files.
+        find . -name "*.diz" -exec rm {} \;
+
+        ln -sf ${OPENJDK8_BUILD_LOC}/openjdk/build/*/images ${B}/${BUILD_DIR}
+        echo ${B} ${BUILD_DIR} ${D}
+        ls -al ${B}/${BUILD_DIR}
+        cd ${OPENJDK8_BUILD_LOC}                     
+        bbnote "Done with building Openjdk-8..."
+
+        bbnote "Removing openjdk build created libjsig symlink"
+        for libjsig_symbol in `find . -type l | grep libjsig.so` 
+        do
+            echo $libjsig_symbol
+            cp --remove-destination `dirname $libjsig_symbol`/../libjsig.so $libjsig_symbol
+        done
+        pwd
+        bbnote "Done fixing QA symlink issue"
+
+        ############################################
+        # Use following to copy compact profiles.
+        ############################################
+        # bbnote "Use following to copy 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/
+
+}
+
+do_install() {
+
+	install -d ${D}${libdir_jvm}
+	cp -R ${B}/${BUILD_DIR}/j2sdk-image ${D}${JDK_HOME}
+
+	chmod u+rw -R ${D}${JDK_HOME}
+
+	# 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 'java-runtime'.
+# 2) This lets package mgmt install: openjdk-8-java # openjdk-8-common 
+# # For x86:
+# We use hotspot VM as this is most optimal and fastest VM.
+# For ARM:
+# We use zero (interpreter mode) VM as hotspot is not yet compiling.
+#
+# We need to install openjdk-8-jre for Java Runtime Support.
+# To enable compiling on target, install openjdk-8-jdk package.
+# 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 = "java-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"
+#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@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 = "java-runtime"
+
+RDEPENDS_${JDKPN}-jdk = "${JDKPN}-jre"
+
+FILES_${JDKPN}-doc = "${JDK_HOME}/man"
+
+require openjdk-postinst.inc
+
+ALTERNATIVE_PRIORITY = "50"
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
+
+FILESPATH =. "${FILE_DIRNAME}/openjdk-8-60b27:"
+
+# 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 = "jdk8u60"
+
+OPENJDK_HG_URL = "http://hg.openjdk.java.net/jdk8u/jdk8u60"
+
+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://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
+
+PR = "r0.1"
+
+SRC_URI[iced.md5sum] = "646064d7a8d57c2cae0ef35a05de57c8"
+SRC_URI[iced.sha256sum] = "5301b9a8592af2cf8e3e7a3650e5e1fe744c6d2de7f8ff78080b2eeae86a9800"
+
+CORBA_CHANGESET = "be922f27d059"
+SRC_URI[corba.md5sum] = "778ba99ed19c288d0d1b22f42d0c2107"
+SRC_URI[corba.sha256sum] = "868083374cb6eb02ea5ab780f47702c224a50ea8dc7d9f67e10dcad9e731567d"
+
+JAXP_CHANGESET = "56f6ca79467d"
+SRC_URI[jaxp.md5sum] = "f8b291ba2a3c1e2964bd96328e0ebcfc"
+SRC_URI[jaxp.sha256sum] = "254c622fc8a572efd0a10908b4038ba3cf41775d7c09c8f576800b3f608e33f7"
+
+JAXWS_CHANGESET = "975eb04d1795"
+SRC_URI[jaxws.md5sum] = "effc3c176b54d94042ef8351635c11d4"
+SRC_URI[jaxws.sha256sum] = "eae19a40fdda776fc8bbe7f8f1ddbc8501d061026ffcd290b7cf8f9d7f8f0e20"
+
+JDK_CHANGESET = "afbc08ea922b"
+SRC_URI[jdk.md5sum] = "b65ffbe132d4efea2fab5c8ccd36693c"
+SRC_URI[jdk.sha256sum] = "089850622aea0778ef73e8e43845952c4d21456075b61d2ed04fd3461c002925"
+
+LANGTOOLS_CHANGESET = "e8e293d0db49"
+SRC_URI[langtools.md5sum] = "35e388d87587131c28862fa244e99383"
+SRC_URI[langtools.sha256sum] = "632183f6a948decdbd9f784a2742d4902ac2ab5c87b24232b02afa5f6efe6050"
+
+OPENJDK_CHANGESET = "d50c3672fd18"
+SRC_URI[openjdk.md5sum] = "afd33e3218e49f7ecb3c3f90088d9d94"
+SRC_URI[openjdk.sha256sum] = "211d1a45b032066575e871ae4514f5db7f8313478a3ca9bad236c58e4892b48f"
+
+# located in hotspot.map
+HOTSPOT_CHANGESET = "10ad4b9d79f9"
+SRC_URI[hotspot.md5sum] = "cf3ae34a7a4f1aec5fb8a895e3ebf2e4"
+SRC_URI[hotspot.sha256sum] = "a95c0a8a20a90f387096dc37d52e4d1e42e5ac9da3c48fbe264d2fd5d79e9ae0"
+
+NASHORN_CHANGESET = "72a33aed7dcc"
+SRC_URI[nashorn.md5sum] = "ea2fdd450fbf186edf98619556eaa1ee"
+SRC_URI[nashorn.sha256sum] = "36752f1ab4b1fb66fd8be412a8d2b1cfa9cf0258db743dc79e1e8c9607f50ef8"
+
+
+INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
+INHIBIT_PACKAGE_STRIP = "1"
+
diff --git a/recipes-images/images/java-test-image.bb b/recipes-images/images/java-test-image.bb
index 22c7bdf..3bacb4b 100644
--- a/recipes-images/images/java-test-image.bb
+++ b/recipes-images/images/java-test-image.bb
@@ -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 \
--
1.8.1.2



^ permalink raw reply related	[flat|nested] 16+ messages in thread

* Re: [meta-java][PATCH] OpenJDK-8: For x86 and ARM
  2015-09-30 21:15 ` Awasthi, Vinay K
@ 2015-09-30 21:20   ` Otavio Salvador
  2015-09-30 21:30     ` Awasthi, Vinay K
  2015-09-30 22:58     ` Awasthi, Vinay K
  0 siblings, 2 replies; 16+ messages in thread
From: Otavio Salvador @ 2015-09-30 21:20 UTC (permalink / raw)
  To: OpenEmbedded Devel List
  Cc: Richard Purdie, Otavio Salvador, mario@ossystems.com.br

Hello Vinay,

On Wed, Sep 30, 2015 at 6:15 PM, Awasthi, Vinay K
<vinay.k.awasthi@intel.com> wrote:
> Any update on when openjdk-8 is going to be part of meta-java? It has been over a month..

Jens has prepared the patches and it has the ARM side fixed as well.

Is it possible for you to take a look at his changes and see if those
work for you?

* https://github.com/rehsack/poky/tree/master
* https://github.com/rehsack/meta-openembedded/tree/master
* https://github.com/rehsack/meta-fsl-arm/tree/master
* https://github.com/rehsack/meta-java/tree/master

-- 
Otavio Salvador                             O.S. Systems
http://www.ossystems.com.br        http://code.ossystems.com.br
Mobile: +55 (53) 9981-7854            Mobile: +1 (347) 903-9750


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [meta-java][PATCH] OpenJDK-8: For x86 and ARM
  2015-09-30 21:20   ` Otavio Salvador
@ 2015-09-30 21:30     ` Awasthi, Vinay K
  2015-09-30 22:58     ` Awasthi, Vinay K
  1 sibling, 0 replies; 16+ messages in thread
From: Awasthi, Vinay K @ 2015-09-30 21:30 UTC (permalink / raw)
  To: openembedded-devel@lists.openembedded.org
  Cc: Richard Purdie, Otavio Salvador, mario@ossystems.com.br

Sure... I will take a look at it today..
Thanks,
Vinay

-----Original Message-----
From: openembedded-devel-bounces@lists.openembedded.org [mailto:openembedded-devel-bounces@lists.openembedded.org] On Behalf Of Otavio Salvador
Sent: Wednesday, September 30, 2015 2:21 PM
To: OpenEmbedded Devel List
Cc: Richard Purdie; Otavio Salvador; mario@ossystems.com.br
Subject: Re: [oe] [meta-java][PATCH] OpenJDK-8: For x86 and ARM

Hello Vinay,

On Wed, Sep 30, 2015 at 6:15 PM, Awasthi, Vinay K <vinay.k.awasthi@intel.com> wrote:
> Any update on when openjdk-8 is going to be part of meta-java? It has been over a month..

Jens has prepared the patches and it has the ARM side fixed as well.

Is it possible for you to take a look at his changes and see if those work for you?

* https://github.com/rehsack/poky/tree/master
* https://github.com/rehsack/meta-openembedded/tree/master
* https://github.com/rehsack/meta-fsl-arm/tree/master
* https://github.com/rehsack/meta-java/tree/master

-- 
Otavio Salvador                             O.S. Systems
http://www.ossystems.com.br        http://code.ossystems.com.br
Mobile: +55 (53) 9981-7854            Mobile: +1 (347) 903-9750
--
_______________________________________________
Openembedded-devel mailing list
Openembedded-devel@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-devel


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [meta-java][PATCH] OpenJDK-8: For x86 and ARM
  2015-09-30 21:20   ` Otavio Salvador
  2015-09-30 21:30     ` Awasthi, Vinay K
@ 2015-09-30 22:58     ` Awasthi, Vinay K
  2015-10-02 13:27       ` Otavio Salvador
  2015-10-02 15:50       ` Jens Rehsack
  1 sibling, 2 replies; 16+ messages in thread
From: Awasthi, Vinay K @ 2015-09-30 22:58 UTC (permalink / raw)
  To: openembedded-devel@lists.openembedded.org
  Cc: Richard Purdie, Otavio Salvador, mario@ossystems.com.br

I have 2 inputs... 

openjdk-8 is pointing to unrelased 8u72b00 can we roll it back to released version 8u60b27 (http://hg.openjdk.java.net/jdk8u/jdk8u60/tags ).

I am getting a failure in do_configure for openjdk-8... see logs and list of files in 

ls -al  /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790
total 440
drwxrwxr-x 15 vinay vinay   4096 Sep 30 15:30 .
drwxrwxr-x  5 vinay vinay   4096 Sep 30 15:00 ..
-rw-r--r--  1 vinay vinay   1503 Aug  7 11:52 ASSEMBLY_EXCEPTION
drwxrwxr-x  6 vinay vinay   4096 Sep 30 15:00 common
-rw-r--r--  1 vinay vinay   1235 Aug  7 11:52 configure
drwxrwxr-x  5 vinay vinay   4096 Sep 30 15:00 corba
-rw-r--r--  1 vinay vinay   3095 Aug  7 11:52 get_source.sh
-rw-r--r--  1 vinay vinay    154 Aug  7 11:52 .hg_archival.txt
-rw-r--r--  1 vinay vinay     70 Aug  7 11:52 .hgignore
-rw-r--r--  1 vinay vinay  23202 Aug  7 11:52 .hgtags
drwxrwxr-x  7 vinay vinay   4096 Sep 30 15:00 hotspot
drwxrwxr-x  6 vinay vinay   4096 Sep 30 15:00 jaxp
drwxrwxr-x  6 vinay vinay   4096 Sep 30 15:00 jaxws
drwxrwxr-x  2 vinay vinay   4096 Sep 30 15:00 .jcheck
drwxrwxr-x  6 vinay vinay   4096 Sep 30 15:00 jdk
drwxrwxr-x  6 vinay vinay   4096 Sep 30 15:00 langtools
-rw-r--r--  1 vinay vinay  19263 Aug  7 11:52 LICENSE
drwxrwxr-x  6 vinay vinay   4096 Sep 30 15:00 make
-rw-r--r--  1 vinay vinay   6232 Aug  7 11:52 Makefile
drwxrwxr-x 12 vinay vinay   4096 Sep 30 15:00 nashorn
drwxrwxr-x  2 vinay vinay   4096 Sep 30 15:00 patches
drwxrwxr-x  5 vinay vinay   4096 Sep 30 15:00 .pc
-rw-r--r--  1 vinay vinay   1549 Aug  7 11:52 README
-rw-r--r--  1 vinay vinay 129333 Aug  7 11:52 README-builds.html
drwxrwxr-x  3 vinay vinay   4096 Sep 30 15:00 test
-rw-r--r--  1 vinay vinay 177094 Aug  7 11:52 THIRD_PARTY_README



DEBUG: Executing python function sysroot_cleansstate
DEBUG: Python function sysroot_cleansstate finished
DEBUG: SITE files ['endian-little', 'common-linux', 'common-glibc', 'bit-64', 'x86_64-linux', 'common']
DEBUG: Executing shell function autotools_preconfigure
+ cd /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/build
+ autotools_preconfigure
+ [ -n /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/configure.sstate -a -e /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/configure.sstate ]
+ ret=0
+ trap  0
+ exit 0

+ cd /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/build
+ autotools_preconfigure
+ [ -n /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/configure.sstate -a -e /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/configure.sstate ]
+ ret=0
+ trap  0
+ exit 0
DEBUG: Shell function autotools_preconfigure finished
DEBUG: Executing python function autotools_copy_aclocals
DEBUG: Python function autotools_copy_aclocals finished
DEBUG: Executing shell function do_configure
+ cd /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/build
+ do_configure
+ export X11_NOT_NEEDED=yes CUPS_NOT_NEEDED=yes ALSA_NOT_NEEDED=yes PULSE_NOT_NEEDED=yes
+ autotools_do_configure

+ find /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790 -ignore_readdir_race -name configure.in -o -name configure.ac

+ dirname /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790/common/autoconf/configure.ac

+ rm -f /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790/common/autoconf/configure

+ CS=/home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790

+ dirname configure

+ test . != .
+ [ -e /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790/configure.in -o -e /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790/configure.ac ]
+ [ -e /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790/configure ]

+ cd /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/build
+ do_configure
+ export X11_NOT_NEEDED=yes CUPS_NOT_NEEDED=yes ALSA_NOT_NEEDED=yes PULSE_NOT_NEEDED=yes
+ autotools_do_configure
+ find /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790 -ignore_readdir_race -name configure.in -o -name configure.ac
+ dirname /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790/common/autoconf/configure.ac
+ rm -f /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790/common/autoconf/configure
+ CS=/home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790
+ dirname configure
+ test . != .
+ [ -e /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790/configure.in -o -e /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790/configure.ac ]
+ [ -e /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790/configure ]
ERROR: Function failed: do_configure (log file is located at /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/temp/log.do_configure.1566)

I do see configure here .. /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790/configure but for some reason build just bails out..

ls /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790/
ASSEMBLY_EXCEPTION  configure  get_source.sh  jaxp   jdk        LICENSE  Makefile  patches  README-builds.html  THIRD_PARTY_README
common              corba      hotspot        jaxws  langtools  make     nashorn   README   test

Thanks,
Vinay
________________________________________
From: openembedded-devel-bounces@lists.openembedded.org [openembedded-devel-bounces@lists.openembedded.org] on behalf of Otavio Salvador [otavio.salvador@ossystems.com.br]
Sent: Wednesday, September 30, 2015 2:20 PM
To: OpenEmbedded Devel List
Cc: Richard Purdie; Otavio Salvador; mario@ossystems.com.br
Subject: Re: [oe] [meta-java][PATCH] OpenJDK-8: For x86 and ARM

Hello Vinay,

On Wed, Sep 30, 2015 at 6:15 PM, Awasthi, Vinay K
<vinay.k.awasthi@intel.com> wrote:
> Any update on when openjdk-8 is going to be part of meta-java? It has been over a month..

Jens has prepared the patches and it has the ARM side fixed as well.

Is it possible for you to take a look at his changes and see if those
work for you?

* https://github.com/rehsack/poky/tree/master
* https://github.com/rehsack/meta-openembedded/tree/master
* https://github.com/rehsack/meta-fsl-arm/tree/master
* https://github.com/rehsack/meta-java/tree/master

--
Otavio Salvador                             O.S. Systems
http://www.ossystems.com.br        http://code.ossystems.com.br
Mobile: +55 (53) 9981-7854            Mobile: +1 (347) 903-9750
--
_______________________________________________
Openembedded-devel mailing list
Openembedded-devel@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-devel


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [meta-java][PATCH] OpenJDK-8: For x86 and ARM
  2015-09-30 22:58     ` Awasthi, Vinay K
@ 2015-10-02 13:27       ` Otavio Salvador
  2015-10-02 15:50       ` Jens Rehsack
  1 sibling, 0 replies; 16+ messages in thread
From: Otavio Salvador @ 2015-10-02 13:27 UTC (permalink / raw)
  To: OpenEmbedded Devel List, Jens Rehsack
  Cc: Richard Purdie, Otavio Salvador, mario@ossystems.com.br

Hello,

Adding Jens in Cc.

On Wed, Sep 30, 2015 at 7:58 PM, Awasthi, Vinay K
<vinay.k.awasthi@intel.com> wrote:
> I have 2 inputs...
>
> openjdk-8 is pointing to unrelased 8u72b00 can we roll it back to released version 8u60b27 (http://hg.openjdk.java.net/jdk8u/jdk8u60/tags ).
>
> I am getting a failure in do_configure for openjdk-8... see logs and list of files in
>
> ls -al  /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790
> total 440
> drwxrwxr-x 15 vinay vinay   4096 Sep 30 15:30 .
> drwxrwxr-x  5 vinay vinay   4096 Sep 30 15:00 ..
> -rw-r--r--  1 vinay vinay   1503 Aug  7 11:52 ASSEMBLY_EXCEPTION
> drwxrwxr-x  6 vinay vinay   4096 Sep 30 15:00 common
> -rw-r--r--  1 vinay vinay   1235 Aug  7 11:52 configure
> drwxrwxr-x  5 vinay vinay   4096 Sep 30 15:00 corba
> -rw-r--r--  1 vinay vinay   3095 Aug  7 11:52 get_source.sh
> -rw-r--r--  1 vinay vinay    154 Aug  7 11:52 .hg_archival.txt
> -rw-r--r--  1 vinay vinay     70 Aug  7 11:52 .hgignore
> -rw-r--r--  1 vinay vinay  23202 Aug  7 11:52 .hgtags
> drwxrwxr-x  7 vinay vinay   4096 Sep 30 15:00 hotspot
> drwxrwxr-x  6 vinay vinay   4096 Sep 30 15:00 jaxp
> drwxrwxr-x  6 vinay vinay   4096 Sep 30 15:00 jaxws
> drwxrwxr-x  2 vinay vinay   4096 Sep 30 15:00 .jcheck
> drwxrwxr-x  6 vinay vinay   4096 Sep 30 15:00 jdk
> drwxrwxr-x  6 vinay vinay   4096 Sep 30 15:00 langtools
> -rw-r--r--  1 vinay vinay  19263 Aug  7 11:52 LICENSE
> drwxrwxr-x  6 vinay vinay   4096 Sep 30 15:00 make
> -rw-r--r--  1 vinay vinay   6232 Aug  7 11:52 Makefile
> drwxrwxr-x 12 vinay vinay   4096 Sep 30 15:00 nashorn
> drwxrwxr-x  2 vinay vinay   4096 Sep 30 15:00 patches
> drwxrwxr-x  5 vinay vinay   4096 Sep 30 15:00 .pc
> -rw-r--r--  1 vinay vinay   1549 Aug  7 11:52 README
> -rw-r--r--  1 vinay vinay 129333 Aug  7 11:52 README-builds.html
> drwxrwxr-x  3 vinay vinay   4096 Sep 30 15:00 test
> -rw-r--r--  1 vinay vinay 177094 Aug  7 11:52 THIRD_PARTY_README
>
>
>
> DEBUG: Executing python function sysroot_cleansstate
> DEBUG: Python function sysroot_cleansstate finished
> DEBUG: SITE files ['endian-little', 'common-linux', 'common-glibc', 'bit-64', 'x86_64-linux', 'common']
> DEBUG: Executing shell function autotools_preconfigure
> + cd /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/build
> + autotools_preconfigure
> + [ -n /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/configure.sstate -a -e /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/configure.sstate ]
> + ret=0
> + trap  0
> + exit 0
>
> + cd /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/build
> + autotools_preconfigure
> + [ -n /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/configure.sstate -a -e /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/configure.sstate ]
> + ret=0
> + trap  0
> + exit 0
> DEBUG: Shell function autotools_preconfigure finished
> DEBUG: Executing python function autotools_copy_aclocals
> DEBUG: Python function autotools_copy_aclocals finished
> DEBUG: Executing shell function do_configure
> + cd /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/build
> + do_configure
> + export X11_NOT_NEEDED=yes CUPS_NOT_NEEDED=yes ALSA_NOT_NEEDED=yes PULSE_NOT_NEEDED=yes
> + autotools_do_configure
>
> + find /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790 -ignore_readdir_race -name configure.in -o -name configure.ac
>
> + dirname /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790/common/autoconf/configure.ac
>
> + rm -f /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790/common/autoconf/configure
>
> + CS=/home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790
>
> + dirname configure
>
> + test . != .
> + [ -e /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790/configure.in -o -e /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790/configure.ac ]
> + [ -e /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790/configure ]
>
> + cd /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/build
> + do_configure
> + export X11_NOT_NEEDED=yes CUPS_NOT_NEEDED=yes ALSA_NOT_NEEDED=yes PULSE_NOT_NEEDED=yes
> + autotools_do_configure
> + find /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790 -ignore_readdir_race -name configure.in -o -name configure.ac
> + dirname /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790/common/autoconf/configure.ac
> + rm -f /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790/common/autoconf/configure
> + CS=/home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790
> + dirname configure
> + test . != .
> + [ -e /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790/configure.in -o -e /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790/configure.ac ]
> + [ -e /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790/configure ]
> ERROR: Function failed: do_configure (log file is located at /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/temp/log.do_configure.1566)
>
> I do see configure here .. /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790/configure but for some reason build just bails out..
>
> ls /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790/
> ASSEMBLY_EXCEPTION  configure  get_source.sh  jaxp   jdk        LICENSE  Makefile  patches  README-builds.html  THIRD_PARTY_README
> common              corba      hotspot        jaxws  langtools  make     nashorn   README   test
>
> Thanks,
> Vinay
> ________________________________________
> From: openembedded-devel-bounces@lists.openembedded.org [openembedded-devel-bounces@lists.openembedded.org] on behalf of Otavio Salvador [otavio.salvador@ossystems.com.br]
> Sent: Wednesday, September 30, 2015 2:20 PM
> To: OpenEmbedded Devel List
> Cc: Richard Purdie; Otavio Salvador; mario@ossystems.com.br
> Subject: Re: [oe] [meta-java][PATCH] OpenJDK-8: For x86 and ARM
>
> Hello Vinay,
>
> On Wed, Sep 30, 2015 at 6:15 PM, Awasthi, Vinay K
> <vinay.k.awasthi@intel.com> wrote:
>> Any update on when openjdk-8 is going to be part of meta-java? It has been over a month..
>
> Jens has prepared the patches and it has the ARM side fixed as well.
>
> Is it possible for you to take a look at his changes and see if those
> work for you?
>
> * https://github.com/rehsack/poky/tree/master
> * https://github.com/rehsack/meta-openembedded/tree/master
> * https://github.com/rehsack/meta-fsl-arm/tree/master
> * https://github.com/rehsack/meta-java/tree/master
>
> --
> Otavio Salvador                             O.S. Systems
> http://www.ossystems.com.br        http://code.ossystems.com.br
> Mobile: +55 (53) 9981-7854            Mobile: +1 (347) 903-9750
> --
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
> --
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel



-- 
Otavio Salvador                             O.S. Systems
http://www.ossystems.com.br        http://code.ossystems.com.br
Mobile: +55 (53) 9981-7854            Mobile: +1 (347) 903-9750


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [meta-java][PATCH] OpenJDK-8: For x86 and ARM
  2015-09-30 22:58     ` Awasthi, Vinay K
  2015-10-02 13:27       ` Otavio Salvador
@ 2015-10-02 15:50       ` Jens Rehsack
  2015-10-02 16:42         ` Otavio Salvador
  2015-10-02 16:44         ` Awasthi, Vinay K
  1 sibling, 2 replies; 16+ messages in thread
From: Jens Rehsack @ 2015-10-02 15:50 UTC (permalink / raw)
  To: openembedded-devel
  Cc: Richard Purdie, Otavio Salvador, mario@ossystems.com.br

Hi,

> Am 01.10.2015 um 00:58 schrieb Awasthi, Vinay K <vinay.k.awasthi@intel.com>:
> 
> I have 2 inputs... 
> 
> openjdk-8 is pointing to unrelased 8u72b00 can we roll it back to released version 8u60b27 (http://hg.openjdk.java.net/jdk8u/jdk8u60/tags ).

I discussed that with our local Java expert. He says: The hotspot changes in u72b00 looking better and u60b27 should be ignored. The entire 8u is maintenance only, so keep on recent tags ;)

Generally, let's see what we have when yocto branches for next stable and decide then. My personal opinion is: move forward until we hit u80 :)

> I am getting a failure in do_configure for openjdk-8... see logs and list of files in 
> 
> ls -al  /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790
> total 440
> drwxrwxr-x 15 vinay vinay   4096 Sep 30 15:30 .
> drwxrwxr-x  5 vinay vinay   4096 Sep 30 15:00 ..
> -rw-r--r--  1 vinay vinay   1503 Aug  7 11:52 ASSEMBLY_EXCEPTION
> drwxrwxr-x  6 vinay vinay   4096 Sep 30 15:00 common
> -rw-r--r--  1 vinay vinay   1235 Aug  7 11:52 configure
> drwxrwxr-x  5 vinay vinay   4096 Sep 30 15:00 corba
> -rw-r--r--  1 vinay vinay   3095 Aug  7 11:52 get_source.sh
> -rw-r--r--  1 vinay vinay    154 Aug  7 11:52 .hg_archival.txt
> -rw-r--r--  1 vinay vinay     70 Aug  7 11:52 .hgignore
> -rw-r--r--  1 vinay vinay  23202 Aug  7 11:52 .hgtags
> drwxrwxr-x  7 vinay vinay   4096 Sep 30 15:00 hotspot
> drwxrwxr-x  6 vinay vinay   4096 Sep 30 15:00 jaxp
> drwxrwxr-x  6 vinay vinay   4096 Sep 30 15:00 jaxws
> drwxrwxr-x  2 vinay vinay   4096 Sep 30 15:00 .jcheck
> drwxrwxr-x  6 vinay vinay   4096 Sep 30 15:00 jdk
> drwxrwxr-x  6 vinay vinay   4096 Sep 30 15:00 langtools
> -rw-r--r--  1 vinay vinay  19263 Aug  7 11:52 LICENSE
> drwxrwxr-x  6 vinay vinay   4096 Sep 30 15:00 make
> -rw-r--r--  1 vinay vinay   6232 Aug  7 11:52 Makefile
> drwxrwxr-x 12 vinay vinay   4096 Sep 30 15:00 nashorn
> drwxrwxr-x  2 vinay vinay   4096 Sep 30 15:00 patches
> drwxrwxr-x  5 vinay vinay   4096 Sep 30 15:00 .pc
> -rw-r--r--  1 vinay vinay   1549 Aug  7 11:52 README
> -rw-r--r--  1 vinay vinay 129333 Aug  7 11:52 README-builds.html
> drwxrwxr-x  3 vinay vinay   4096 Sep 30 15:00 test
> -rw-r--r--  1 vinay vinay 177094 Aug  7 11:52 THIRD_PARTY_README
> 
> 
> 
> DEBUG: Executing python function sysroot_cleansstate
> DEBUG: Python function sysroot_cleansstate finished
> DEBUG: SITE files ['endian-little', 'common-linux', 'common-glibc', 'bit-64', 'x86_64-linux', 'common']
> DEBUG: Executing shell function autotools_preconfigure
> + cd /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/build
> + autotools_preconfigure
> + [ -n /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/configure.sstate -a -e /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/configure.sstate ]
> + ret=0
> + trap  0
> + exit 0
> 
> + cd /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/build
> + autotools_preconfigure
> + [ -n /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/configure.sstate -a -e /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/configure.sstate ]
> + ret=0
> + trap  0
> + exit 0
> DEBUG: Shell function autotools_preconfigure finished
> DEBUG: Executing python function autotools_copy_aclocals
> DEBUG: Python function autotools_copy_aclocals finished
> DEBUG: Executing shell function do_configure
> + cd /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/build
> + do_configure
> + export X11_NOT_NEEDED=yes CUPS_NOT_NEEDED=yes ALSA_NOT_NEEDED=yes PULSE_NOT_NEEDED=yes
> + autotools_do_configure
> 
> + find /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790 -ignore_readdir_race -name configure.in -o -name configure.ac
> 
> + dirname /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790/common/autoconf/configure.ac
> 
> + rm -f /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790/common/autoconf/configure
> 
> + CS=/home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790
> 
> + dirname configure
> 
> + test . != .
> + [ -e /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790/configure.in -o -e /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790/configure.ac ]
> + [ -e /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790/configure ]
> 
> + cd /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/build
> + do_configure
> + export X11_NOT_NEEDED=yes CUPS_NOT_NEEDED=yes ALSA_NOT_NEEDED=yes PULSE_NOT_NEEDED=yes
> + autotools_do_configure
> + find /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790 -ignore_readdir_race -name configure.in -o -name configure.ac
> + dirname /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790/common/autoconf/configure.ac
> + rm -f /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790/common/autoconf/configure
> + CS=/home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790
> + dirname configure
> + test . != .
> + [ -e /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790/configure.in -o -e /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790/configure.ac ]
> + [ -e /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790/configure ]
> ERROR: Function failed: do_configure (log file is located at /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/temp/log.do_configure.1566)
> 
> I do see configure here .. /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790/configure but for some reason build just bails out..

I told you in private mail yesterday evening, you have to apply https://github.com/rehsack/poky/commit/9aa003359f9d804544ba68fa812dd65915c4901b in poky before running openjdk's autoconf procedure. It's because of poky unlink's all "configure" files and expects running autoreconf brings the fine ones back.
OpenJDK has a weird perspective regarding "fine ones" ^^

The other issue you mailed me:

> Am 01.10.2015 um 23:04 schrieb Awasthi, Vinay K <vinay.k.awasthi@intel.com>:
> 
> It seems openjdk-8-native truly looks for native toolschains etc.. and does not pick up cross compiling targets.. (my target is i586-poky-linux but configure picks up x86_64 etc..).. it fails looking for gcc in x86_64 area under sysroot... where as it should look into i586-poky-linux...
> 
> I am running bitbake openjdk-8...
> In openjdk-8-native.inc it is set to pick up native not TARGET_SYS..
> EXTRA_OECONF_append = "\
>        --with-jobs=${@get_jdk8_native_jobs(d)} \
>        \
>        --openjdk-target=${TARGET_SYS} \
>        --with-sys-root=${STAGING_DIR_NATIVE} \
>        --with-tools-dir=${STAGING_DIR_NATIVE} \
>        --with-boot-jdk=${STAGING_LIBDIR_NATIVE}/jvm/icedtea7-native \
>        ${@jdk_configure_options(d)} \
>  "

I have no clue what that means. If one would give me a hint, I'm happy to fix anything (what's broken).

We're should looking forward to include the way you apply compact profiles, I've seen nice blog posts from Java developers at oracle shrinking jre to 10MB ...
Since our's is currently at 76MB, that would be worth investing ...

Cheers,
Jens

> ls /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790/
> ASSEMBLY_EXCEPTION  configure  get_source.sh  jaxp   jdk        LICENSE  Makefile  patches  README-builds.html  THIRD_PARTY_README
> common              corba      hotspot        jaxws  langtools  make     nashorn   README   test
> 
> Thanks,
> Vinay
> ________________________________________
> From: openembedded-devel-bounces@lists.openembedded.org [openembedded-devel-bounces@lists.openembedded.org] on behalf of Otavio Salvador [otavio.salvador@ossystems.com.br]
> Sent: Wednesday, September 30, 2015 2:20 PM
> To: OpenEmbedded Devel List
> Cc: Richard Purdie; Otavio Salvador; mario@ossystems.com.br
> Subject: Re: [oe] [meta-java][PATCH] OpenJDK-8: For x86 and ARM
> 
> Hello Vinay,
> 
> On Wed, Sep 30, 2015 at 6:15 PM, Awasthi, Vinay K
> <vinay.k.awasthi@intel.com> wrote:
>> Any update on when openjdk-8 is going to be part of meta-java? It has been over a month..
> 
> Jens has prepared the patches and it has the ARM side fixed as well.
> 
> Is it possible for you to take a look at his changes and see if those
> work for you?
> 
> * https://github.com/rehsack/poky/tree/master
> * https://github.com/rehsack/meta-openembedded/tree/master
> * https://github.com/rehsack/meta-fsl-arm/tree/master
> * https://github.com/rehsack/meta-java/tree/master
> 
> --
> Otavio Salvador                             O.S. Systems
> http://www.ossystems.com.br        http://code.ossystems.com.br
> Mobile: +55 (53) 9981-7854            Mobile: +1 (347) 903-9750
> --
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
> -- 
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel

-- 
Jens Rehsack - rehsack@gmail.com



^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [meta-java][PATCH] OpenJDK-8: For x86 and ARM
  2015-10-02 15:50       ` Jens Rehsack
@ 2015-10-02 16:42         ` Otavio Salvador
  2015-10-02 17:15           ` Jens Rehsack
  2015-10-02 16:44         ` Awasthi, Vinay K
  1 sibling, 1 reply; 16+ messages in thread
From: Otavio Salvador @ 2015-10-02 16:42 UTC (permalink / raw)
  To: OpenEmbedded Devel List
  Cc: Richard Purdie, Otavio Salvador, mario@ossystems.com.br

On Fri, Oct 2, 2015 at 12:50 PM, Jens Rehsack <rehsack@gmail.com> wrote:
>> Am 01.10.2015 um 00:58 schrieb Awasthi, Vinay K <vinay.k.awasthi@intel.com>:
>> I do see configure here .. /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790/configure but for some reason build just bails out..
>
> I told you in private mail yesterday evening, you have to apply https://github.com/rehsack/poky/commit/9aa003359f9d804544ba68fa812dd65915c4901b in poky before running openjdk's autoconf procedure. It's because of poky unlink's all "configure" files and expects running autoreconf brings the fine ones back.
> OpenJDK has a weird perspective regarding "fine ones" ^^

I agree the OE-Core change should be included indeed but I also think
we could work on a temporary solution using a do_configure so it could
be used with Fido, as well.

-- 
Otavio Salvador                             O.S. Systems
http://www.ossystems.com.br        http://code.ossystems.com.br
Mobile: +55 (53) 9981-7854            Mobile: +1 (347) 903-9750


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [meta-java][PATCH] OpenJDK-8: For x86 and ARM
  2015-10-02 15:50       ` Jens Rehsack
  2015-10-02 16:42         ` Otavio Salvador
@ 2015-10-02 16:44         ` Awasthi, Vinay K
  1 sibling, 0 replies; 16+ messages in thread
From: Awasthi, Vinay K @ 2015-10-02 16:44 UTC (permalink / raw)
  To: openembedded-devel@lists.openembedded.org
  Cc: Richard Purdie, Otavio Salvador, mario@ossystems.com.br

Thanks for poky patches input (I picked java branch and that got me past configure script issue but it is still failing for me while looking for gcc in STAGING_DIR_NATIVE..

If I were to pick 64 bit OS to cross compile 32 bit Yocto and all related software.. recipe does not look at TARGET_SYS instead goes for STAGING_DIR_NATIVE to look for gcc and other tools...

You can reproduce this failure by simply setting MACHINE as qemux86 and try building it on 64 bit OS (say Ubuntu 14.04)

Thanks,
Vinay

-----Original Message-----
From: openembedded-devel-bounces@lists.openembedded.org [mailto:openembedded-devel-bounces@lists.openembedded.org] On Behalf Of Jens Rehsack
Sent: Friday, October 2, 2015 8:50 AM
To: openembedded-devel@lists.openembedded.org
Cc: Richard Purdie; Otavio Salvador; mario@ossystems.com.br
Subject: Re: [oe] [meta-java][PATCH] OpenJDK-8: For x86 and ARM

Hi,

> Am 01.10.2015 um 00:58 schrieb Awasthi, Vinay K <vinay.k.awasthi@intel.com>:
> 
> I have 2 inputs... 
> 
> openjdk-8 is pointing to unrelased 8u72b00 can we roll it back to released version 8u60b27 (http://hg.openjdk.java.net/jdk8u/jdk8u60/tags ).

I discussed that with our local Java expert. He says: The hotspot changes in u72b00 looking better and u60b27 should be ignored. The entire 8u is maintenance only, so keep on recent tags ;)

Generally, let's see what we have when yocto branches for next stable and decide then. My personal opinion is: move forward until we hit u80 :)

> I am getting a failure in do_configure for openjdk-8... see logs and 
> list of files in
> 
> ls -al  
> /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-
> native/72b00-r0/jdk8u-d0afaafe3790
> total 440
> drwxrwxr-x 15 vinay vinay   4096 Sep 30 15:30 .
> drwxrwxr-x  5 vinay vinay   4096 Sep 30 15:00 ..
> -rw-r--r--  1 vinay vinay   1503 Aug  7 11:52 ASSEMBLY_EXCEPTION
> drwxrwxr-x  6 vinay vinay   4096 Sep 30 15:00 common
> -rw-r--r--  1 vinay vinay   1235 Aug  7 11:52 configure
> drwxrwxr-x  5 vinay vinay   4096 Sep 30 15:00 corba
> -rw-r--r--  1 vinay vinay   3095 Aug  7 11:52 get_source.sh
> -rw-r--r--  1 vinay vinay    154 Aug  7 11:52 .hg_archival.txt
> -rw-r--r--  1 vinay vinay     70 Aug  7 11:52 .hgignore
> -rw-r--r--  1 vinay vinay  23202 Aug  7 11:52 .hgtags
> drwxrwxr-x  7 vinay vinay   4096 Sep 30 15:00 hotspot
> drwxrwxr-x  6 vinay vinay   4096 Sep 30 15:00 jaxp
> drwxrwxr-x  6 vinay vinay   4096 Sep 30 15:00 jaxws
> drwxrwxr-x  2 vinay vinay   4096 Sep 30 15:00 .jcheck
> drwxrwxr-x  6 vinay vinay   4096 Sep 30 15:00 jdk
> drwxrwxr-x  6 vinay vinay   4096 Sep 30 15:00 langtools
> -rw-r--r--  1 vinay vinay  19263 Aug  7 11:52 LICENSE
> drwxrwxr-x  6 vinay vinay   4096 Sep 30 15:00 make
> -rw-r--r--  1 vinay vinay   6232 Aug  7 11:52 Makefile
> drwxrwxr-x 12 vinay vinay   4096 Sep 30 15:00 nashorn
> drwxrwxr-x  2 vinay vinay   4096 Sep 30 15:00 patches
> drwxrwxr-x  5 vinay vinay   4096 Sep 30 15:00 .pc
> -rw-r--r--  1 vinay vinay   1549 Aug  7 11:52 README
> -rw-r--r--  1 vinay vinay 129333 Aug  7 11:52 README-builds.html
> drwxrwxr-x  3 vinay vinay   4096 Sep 30 15:00 test
> -rw-r--r--  1 vinay vinay 177094 Aug  7 11:52 THIRD_PARTY_README
> 
> 
> 
> DEBUG: Executing python function sysroot_cleansstate
> DEBUG: Python function sysroot_cleansstate finished
> DEBUG: SITE files ['endian-little', 'common-linux', 'common-glibc', 
> 'bit-64', 'x86_64-linux', 'common']
> DEBUG: Executing shell function autotools_preconfigure
> + cd 
> + /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-
> + 8-native/72b00-r0/build
> + autotools_preconfigure
> + [ -n 
> + /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-
> + 8-native/72b00-r0/configure.sstate -a -e 
> + /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-
> + 8-native/72b00-r0/configure.sstate ]
> + ret=0
> + trap  0
> + exit 0
> 
> + cd 
> + /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-
> + 8-native/72b00-r0/build
> + autotools_preconfigure
> + [ -n 
> + /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-
> + 8-native/72b00-r0/configure.sstate -a -e 
> + /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-
> + 8-native/72b00-r0/configure.sstate ]
> + ret=0
> + trap  0
> + exit 0
> DEBUG: Shell function autotools_preconfigure finished
> DEBUG: Executing python function autotools_copy_aclocals
> DEBUG: Python function autotools_copy_aclocals finished
> DEBUG: Executing shell function do_configure
> + cd 
> + /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-
> + 8-native/72b00-r0/build
> + do_configure
> + export X11_NOT_NEEDED=yes CUPS_NOT_NEEDED=yes ALSA_NOT_NEEDED=yes 
> + PULSE_NOT_NEEDED=yes autotools_do_configure
> 
> + find 
> + /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-
> + 8-native/72b00-r0/jdk8u-d0afaafe3790 -ignore_readdir_race -name 
> + configure.in -o -name configure.ac
> 
> + dirname 
> + /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-
> + 8-native/72b00-r0/jdk8u-d0afaafe3790/common/autoconf/configure.ac
> 
> + rm -f 
> + /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-
> + 8-native/72b00-r0/jdk8u-d0afaafe3790/common/autoconf/configure
> 
> + CS=/home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openj
> + dk-8-native/72b00-r0/jdk8u-d0afaafe3790
> 
> + dirname configure
> 
> + test . != .
> + [ -e 
> + /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-
> + 8-native/72b00-r0/jdk8u-d0afaafe3790/configure.in -o -e 
> + /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-
> + 8-native/72b00-r0/jdk8u-d0afaafe3790/configure.ac ] [ -e 
> + /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-
> + 8-native/72b00-r0/jdk8u-d0afaafe3790/configure ]
> 
> + cd 
> + /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-
> + 8-native/72b00-r0/build
> + do_configure
> + export X11_NOT_NEEDED=yes CUPS_NOT_NEEDED=yes ALSA_NOT_NEEDED=yes 
> + PULSE_NOT_NEEDED=yes autotools_do_configure find 
> + /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-
> + 8-native/72b00-r0/jdk8u-d0afaafe3790 -ignore_readdir_race -name 
> + configure.in -o -name configure.ac dirname 
> + /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-
> + 8-native/72b00-r0/jdk8u-d0afaafe3790/common/autoconf/configure.ac
> + rm -f 
> + /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-
> + 8-native/72b00-r0/jdk8u-d0afaafe3790/common/autoconf/configure
> + CS=/home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openj
> + dk-8-native/72b00-r0/jdk8u-d0afaafe3790
> + dirname configure
> + test . != .
> + [ -e 
> + /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-
> + 8-native/72b00-r0/jdk8u-d0afaafe3790/configure.in -o -e 
> + /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-
> + 8-native/72b00-r0/jdk8u-d0afaafe3790/configure.ac ] [ -e 
> + /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-
> + 8-native/72b00-r0/jdk8u-d0afaafe3790/configure ]
> ERROR: Function failed: do_configure (log file is located at 
> /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-
> native/72b00-r0/temp/log.do_configure.1566)
> 
> I do see configure here .. /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790/configure but for some reason build just bails out..

I told you in private mail yesterday evening, you have to apply https://github.com/rehsack/poky/commit/9aa003359f9d804544ba68fa812dd65915c4901b in poky before running openjdk's autoconf procedure. It's because of poky unlink's all "configure" files and expects running autoreconf brings the fine ones back.
OpenJDK has a weird perspective regarding "fine ones" ^^

The other issue you mailed me:

> Am 01.10.2015 um 23:04 schrieb Awasthi, Vinay K <vinay.k.awasthi@intel.com>:
> 
> It seems openjdk-8-native truly looks for native toolschains etc.. and does not pick up cross compiling targets.. (my target is i586-poky-linux but configure picks up x86_64 etc..).. it fails looking for gcc in x86_64 area under sysroot... where as it should look into i586-poky-linux...
> 
> I am running bitbake openjdk-8...
> In openjdk-8-native.inc it is set to pick up native not TARGET_SYS..
> EXTRA_OECONF_append = "\
>        --with-jobs=${@get_jdk8_native_jobs(d)} \
>        \
>        --openjdk-target=${TARGET_SYS} \
>        --with-sys-root=${STAGING_DIR_NATIVE} \
>        --with-tools-dir=${STAGING_DIR_NATIVE} \
>        --with-boot-jdk=${STAGING_LIBDIR_NATIVE}/jvm/icedtea7-native \
>        ${@jdk_configure_options(d)} \
>  "

I have no clue what that means. If one would give me a hint, I'm happy to fix anything (what's broken).

We're should looking forward to include the way you apply compact profiles, I've seen nice blog posts from Java developers at oracle shrinking jre to 10MB ...
Since our's is currently at 76MB, that would be worth investing ...

Cheers,
Jens

> ls /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790/
> ASSEMBLY_EXCEPTION  configure  get_source.sh  jaxp   jdk        LICENSE  Makefile  patches  README-builds.html  THIRD_PARTY_README
> common              corba      hotspot        jaxws  langtools  make     nashorn   README   test
> 
> Thanks,
> Vinay
> ________________________________________
> From: openembedded-devel-bounces@lists.openembedded.org 
> [openembedded-devel-bounces@lists.openembedded.org] on behalf of 
> Otavio Salvador [otavio.salvador@ossystems.com.br]
> Sent: Wednesday, September 30, 2015 2:20 PM
> To: OpenEmbedded Devel List
> Cc: Richard Purdie; Otavio Salvador; mario@ossystems.com.br
> Subject: Re: [oe] [meta-java][PATCH] OpenJDK-8: For x86 and ARM
> 
> Hello Vinay,
> 
> On Wed, Sep 30, 2015 at 6:15 PM, Awasthi, Vinay K 
> <vinay.k.awasthi@intel.com> wrote:
>> Any update on when openjdk-8 is going to be part of meta-java? It has been over a month..
> 
> Jens has prepared the patches and it has the ARM side fixed as well.
> 
> Is it possible for you to take a look at his changes and see if those 
> work for you?
> 
> * https://github.com/rehsack/poky/tree/master
> * https://github.com/rehsack/meta-openembedded/tree/master
> * https://github.com/rehsack/meta-fsl-arm/tree/master
> * https://github.com/rehsack/meta-java/tree/master
> 
> --
> Otavio Salvador                             O.S. Systems
> http://www.ossystems.com.br        http://code.ossystems.com.br
> Mobile: +55 (53) 9981-7854            Mobile: +1 (347) 903-9750
> --
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
> --
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel

--
Jens Rehsack - rehsack@gmail.com

--
_______________________________________________
Openembedded-devel mailing list
Openembedded-devel@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-devel


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [meta-java][PATCH] OpenJDK-8: For x86 and ARM
  2015-10-02 16:42         ` Otavio Salvador
@ 2015-10-02 17:15           ` Jens Rehsack
  0 siblings, 0 replies; 16+ messages in thread
From: Jens Rehsack @ 2015-10-02 17:15 UTC (permalink / raw)
  To: openembedded-devel
  Cc: Richard Purdie, Otavio Salvador, mario@ossystems.com.br


> Am 02.10.2015 um 18:42 schrieb Otavio Salvador <otavio.salvador@ossystems.com.br>:
> 
> On Fri, Oct 2, 2015 at 12:50 PM, Jens Rehsack <rehsack@gmail.com> wrote:
>>> Am 01.10.2015 um 00:58 schrieb Awasthi, Vinay K <vinay.k.awasthi@intel.com>:
>>> I do see configure here .. /home/vinay/YOCTO/NEW_META_JAVA/build/tmp/work/x86_64-linux/openjdk-8-native/72b00-r0/jdk8u-d0afaafe3790/configure but for some reason build just bails out..
>> 
>> I told you in private mail yesterday evening, you have to apply https://github.com/rehsack/poky/commit/9aa003359f9d804544ba68fa812dd65915c4901b in poky before running openjdk's autoconf procedure. It's because of poky unlink's all "configure" files and expects running autoreconf brings the fine ones back.
>> OpenJDK has a weird perspective regarding "fine ones" ^^
> 
> I agree the OE-Core change should be included indeed but I also think
> we could work on a temporary solution using a do_configure so it could
> be used with Fido, as well.

How about https://github.com/rehsack/poky/commit/e1421f802ead7ed46c675c0639a5eee9ef7fdd5a :)
With a bit fine-tuning (CONFIGURE_SCRIPT vs. AUTOTOOLS_SCRIPT_PATH) - easy going ;)

I did OpenJDK-8 on Fido and rebased to master as recommended by Otavio for submiting patches.

Cheers
-- 
Jens Rehsack - rehsack@gmail.com



^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2015-10-02 17:15 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-08-28  1:14 [meta-java][PATCH] OpenJDK-8: For x86 and ARM Vinay K. Awasthi
2015-08-28  7:12 ` Richard Leitner
2015-08-28 12:37   ` Awasthi, Vinay K
2015-08-28 17:29   ` Otavio Salvador
2015-09-11  7:55     ` Richard Purdie
2015-09-11 12:11       ` Otavio Salvador
  -- strict thread matches above, loose matches on Subject: below --
2015-08-20  0:55 Vinay K. Awasthi
2015-09-30 21:15 ` Awasthi, Vinay K
2015-09-30 21:20   ` Otavio Salvador
2015-09-30 21:30     ` Awasthi, Vinay K
2015-09-30 22:58     ` Awasthi, Vinay K
2015-10-02 13:27       ` Otavio Salvador
2015-10-02 15:50       ` Jens Rehsack
2015-10-02 16:42         ` Otavio Salvador
2015-10-02 17:15           ` Jens Rehsack
2015-10-02 16:44         ` Awasthi, Vinay K

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.