* [meta-java 0/5] icedtea build fixes
@ 2012-10-05 19:45 Steffen Sledz
2012-10-05 19:46 ` [meta-java 1/5] icedtea6-native-1.7.10: add missing LIC_FILES_CHKSUM Steffen Sledz
` (5 more replies)
0 siblings, 6 replies; 9+ messages in thread
From: Steffen Sledz @ 2012-10-05 19:45 UTC (permalink / raw)
To: Henning Heinold, openembedded-devel
Hi meta-jav maintainers,
this is a set of patches which make icedtea6-native-1.7.10 and
icedtea6-native-1.8.11 buildable for us.
The following changes since commit da13c12203a4ba9020d7083861c0038c8ee67c88:
openjdk-6: update to version 1.11.4 (2012-09-10 20:43:55 +0200)
are available in the git repository at:
git://github.com/sledz/meta-java pull-request-1
https://github.com/sledz/meta-java/tree/pull-request-1
Steffen Sledz (5):
icedtea6-native-1.7.10: add missing LIC_FILES_CHKSUM
icedtea6-native-1.7.10: backport S7103224
icedtea6-native: fix problem on build hosts with linux kernel 3.x
icedtea6-native: fix compile error
icedtea6-native: fix build problem
.../glibc_name_collision.patch | 523 ++++++++++++++++++++
.../icedtea-hotspot-dont-return-booleans.patch | 12 +
.../icedtea-hotspot-dont-return-booleans.patch | 12 +
recipes-core/icedtea/icedtea6-native.inc | 8 +
recipes-core/icedtea/icedtea6-native_1.7.10.bb | 7 +-
recipes-core/icedtea/icedtea6-native_1.8.11.bb | 4 +-
6 files changed, 564 insertions(+), 2 deletions(-)
create mode 100644 recipes-core/icedtea/icedtea6-native-1.7.10/glibc_name_collision.patch
create mode 100644 recipes-core/icedtea/icedtea6-native-1.7.10/icedtea-hotspot-dont-return-booleans.patch
create mode 100644 recipes-core/icedtea/icedtea6-native-1.8.11/icedtea-hotspot-dont-return-booleans.patch
--
1.7.10.4
^ permalink raw reply [flat|nested] 9+ messages in thread
* [meta-java 1/5] icedtea6-native-1.7.10: add missing LIC_FILES_CHKSUM
2012-10-05 19:45 [meta-java 0/5] icedtea build fixes Steffen Sledz
@ 2012-10-05 19:46 ` Steffen Sledz
2012-10-05 19:46 ` [meta-java 2/5] icedtea6-native-1.7.10: backport S7103224 Steffen Sledz
` (4 subsequent siblings)
5 siblings, 0 replies; 9+ messages in thread
From: Steffen Sledz @ 2012-10-05 19:46 UTC (permalink / raw)
To: Henning Heinold, openembedded-devel
Signed-off-by: Steffen Sledz <sledz@dresearch-fe.de>
---
recipes-core/icedtea/icedtea6-native_1.7.10.bb | 2 ++
1 file changed, 2 insertions(+)
diff --git a/recipes-core/icedtea/icedtea6-native_1.7.10.bb b/recipes-core/icedtea/icedtea6-native_1.7.10.bb
index 77c6232..54ac87d 100644
--- a/recipes-core/icedtea/icedtea6-native_1.7.10.bb
+++ b/recipes-core/icedtea/icedtea6-native_1.7.10.bb
@@ -1,5 +1,7 @@
require ${PN}.inc
+LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
+
PR = "${INC_PR}.0"
SRC_URI = "\
--
1.7.10.4
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [meta-java 2/5] icedtea6-native-1.7.10: backport S7103224
2012-10-05 19:45 [meta-java 0/5] icedtea build fixes Steffen Sledz
2012-10-05 19:46 ` [meta-java 1/5] icedtea6-native-1.7.10: add missing LIC_FILES_CHKSUM Steffen Sledz
@ 2012-10-05 19:46 ` Steffen Sledz
2012-10-07 22:29 ` Khem Raj
2012-10-05 19:46 ` [meta-java 3/5] icedtea6-native: fix problem on build hosts with linux kernel 3.x Steffen Sledz
` (3 subsequent siblings)
5 siblings, 1 reply; 9+ messages in thread
From: Steffen Sledz @ 2012-10-05 19:46 UTC (permalink / raw)
To: Henning Heinold, openembedded-devel
Backport the fix for 7103224.
This fix allows icedtea6 to be built with (very) new glibc versions.
It was originally suggested by Omair Majid from RedHat.
For details see:
<http://permalink.gmane.org/gmane.comp.java.openjdk.distro-packaging.devel/16103>
<http://mail.openjdk.java.net/pipermail/hotspot-dev/2011-October/004589.html>
Signed-off-by: Steffen Sledz <sledz@dresearch-fe.de>
---
.../glibc_name_collision.patch | 523 ++++++++++++++++++++
recipes-core/icedtea/icedtea6-native_1.7.10.bb | 3 +-
2 files changed, 525 insertions(+), 1 deletion(-)
create mode 100644 recipes-core/icedtea/icedtea6-native-1.7.10/glibc_name_collision.patch
diff --git a/recipes-core/icedtea/icedtea6-native-1.7.10/glibc_name_collision.patch b/recipes-core/icedtea/icedtea6-native-1.7.10/glibc_name_collision.patch
new file mode 100644
index 0000000..0702b77
--- /dev/null
+++ b/recipes-core/icedtea/icedtea6-native-1.7.10/glibc_name_collision.patch
@@ -0,0 +1,523 @@
+icedtea6-native-1.7.10: backport S7103224
+
+Backport the fix for 7103224.
+
+This fix allows icedtea6 to be built with (very) new glibc versions.
+It was originally suggested by Omair Majid from RedHat.
+
+For details see:
+<http://permalink.gmane.org/gmane.comp.java.openjdk.distro-packaging.devel/16103>
+<http://mail.openjdk.java.net/pipermail/hotspot-dev/2011-October/004589.html>
+
+Upstream-Status: Pending
+
+Signed-off-by: Steffen Sledz <sledz@dresearch-fe.de>
+
+diff -Nurd icedtea6-1.7.10.orig/Makefile.am icedtea6-1.7.10/Makefile.am
+--- icedtea6-1.7.10.orig/Makefile.am 2012-05-03 14:59:31.596076283 +0200
++++ icedtea6-1.7.10/Makefile.am 2012-05-03 15:03:43.787566714 +0200
+@@ -393,7 +393,8 @@
+ patches/openjdk/6541476-png-iTXt-chunk.patch \
+ patches/openjdk/6782079-png_metadata_oom.patch \
+ patches/rh676659-gcc-export-dynamic.patch \
+- patches/latent_jaxp_bug.patch
++ patches/latent_jaxp_bug.patch \
++ patches/openjdk/7103224-glibc_name_collision.patch
+
+ if WITH_ALT_HSBUILD
+ ICEDTEA_PATCHES += patches/hotspot/$(HSBUILD)/openjdk-6886353-ignore_deoptimizealot.patch \
+diff -Nurd icedtea6-1.7.10.orig/patches/openjdk/7103224-glibc_name_collision.patch icedtea6-1.7.10/patches/openjdk/7103224-glibc_name_collision.patch
+--- icedtea6-1.7.10.orig/patches/openjdk/7103224-glibc_name_collision.patch 1970-01-01 01:00:00.000000000 +0100
++++ icedtea6-1.7.10/patches/openjdk/7103224-glibc_name_collision.patch 2012-05-03 15:01:27.817684671 +0200
+@@ -0,0 +1,491 @@
++# HG changeset patch
++# User never
++# Date 1319555835 25200
++# Node ID a6eef545f1a2ceca6aeadf688a965df600ffef28
++# Parent 2ec638646e86e455978c31a9d47fc0ec271ed926
++7103224: collision between __LEAF define in interfaceSupport.hpp and /usr/include/sys/cdefs.h with gcc
++Reviewed-by: never
++Contributed-by: Omair Majid <omajid@...>
++
++diff -r 2ec638646e86 -r a6eef545f1a2 src/share/vm/opto/addnode.cpp
++--- openjdk/hotspot/src/share/vm/opto/addnode.cpp Tue Oct 25 04:07:20 2011 -0700
+++++ openjdk/hotspot/src/share/vm/opto/addnode.cpp Tue Oct 25 08:17:15 2011 -0700
++@@ -34,8 +34,6 @@
++
++ // Portions of code courtesy of Clifford Click
++
++-#define MAXFLOAT ((float)3.40282346638528860e+38)
++-
++ // Classic Add functionality. This covers all the usual 'add' behaviors for
++ // an algebraic ring. Add-integer, add-float, add-double, and binary-or are
++ // all inherited from this class. The various identity values are supplied
++diff -r 2ec638646e86 -r a6eef545f1a2 src/share/vm/prims/jniCheck.cpp
++--- openjdk/hotspot/src/share/vm/prims/jniCheck.cpp Tue Oct 25 04:07:20 2011 -0700
+++++ openjdk/hotspot/src/share/vm/prims/jniCheck.cpp Tue Oct 25 08:17:15 2011 -0700
++@@ -107,7 +107,7 @@
++ if (env != xenv) { \
++ NativeReportJNIFatalError(thr, warn_wrong_jnienv); \
++ } \
++- __ENTRY(result_type, header, thr)
+++ VM_ENTRY_BASE(result_type, header, thr)
++
++
++ #define UNCHECKED() (unchecked_jni_NativeInterface)
++diff -r 2ec638646e86 -r a6eef545f1a2 src/share/vm/prims/jvmtiEnter.xsl
++--- openjdk/hotspot/src/share/vm/prims/jvmtiEnter.xsl Tue Oct 25 04:07:20 2011 -0700
+++++ openjdk/hotspot/src/share/vm/prims/jvmtiEnter.xsl Tue Oct 25 08:17:15 2011 -0700
++@@ -426,7 +426,7 @@
++ <xsl:value-of select="$space"/>
++ <xsl:text>ThreadInVMfromNative __tiv(current_thread);</xsl:text>
++ <xsl:value-of select="$space"/>
++- <xsl:text>__ENTRY(jvmtiError, </xsl:text>
+++ <xsl:text>VM_ENTRY_BASE(jvmtiError, </xsl:text>
++ <xsl:apply-templates select="." mode="functionid"/>
++ <xsl:text> , current_thread)</xsl:text>
++ <xsl:value-of select="$space"/>
++diff -r 2ec638646e86 -r a6eef545f1a2 src/share/vm/prims/jvmtiEnv.cpp
++--- openjdk/hotspot/src/share/vm/prims/jvmtiEnv.cpp Tue Oct 25 04:07:20 2011 -0700
+++++ openjdk/hotspot/src/share/vm/prims/jvmtiEnv.cpp Tue Oct 25 08:17:15 2011 -0700
++@@ -173,7 +173,7 @@
++ // from native so as to resolve the jthread.
++
++ ThreadInVMfromNative __tiv(current_thread);
++- __ENTRY(jvmtiError, JvmtiEnv::GetThreadLocalStorage , current_thread)
+++ VM_ENTRY_BASE(jvmtiError, JvmtiEnv::GetThreadLocalStorage , current_thread)
++ debug_only(VMNativeEntryWrapper __vew;)
++
++ oop thread_oop = JNIHandles::resolve_external_guard(thread);
++diff -r 2ec638646e86 -r a6eef545f1a2 src/share/vm/prims/jvmtiExport.cpp
++--- openjdk/hotspot/src/share/vm/prims/jvmtiExport.cpp Tue Oct 25 04:07:20 2011 -0700
+++++ openjdk/hotspot/src/share/vm/prims/jvmtiExport.cpp Tue Oct 25 08:17:15 2011 -0700
++@@ -373,7 +373,7 @@
++ JavaThread* current_thread = (JavaThread*) ThreadLocalStorage::thread();
++ // transition code: native to VM
++ ThreadInVMfromNative __tiv(current_thread);
++- __ENTRY(jvmtiEnv*, JvmtiExport::get_jvmti_interface, current_thread)
+++ VM_ENTRY_BASE(jvmtiEnv*, JvmtiExport::get_jvmti_interface, current_thread)
++ debug_only(VMNativeEntryWrapper __vew;)
++
++ JvmtiEnv *jvmti_env = JvmtiEnv::create_a_jvmti(version);
++diff -r 2ec638646e86 -r a6eef545f1a2 src/share/vm/runtime/interfaceSupport.hpp
++--- openjdk/hotspot/src/share/vm/runtime/interfaceSupport.hpp Tue Oct 25 04:07:20 2011 -0700
+++++ openjdk/hotspot/src/share/vm/runtime/interfaceSupport.hpp Tue Oct 25 08:17:15 2011 -0700
++@@ -72,9 +72,9 @@
++ }
++ };
++
++-// InterfaceSupport provides functionality used by the __LEAF and __ENTRY
++-// macros. These macros are used to guard entry points into the VM and
++-// perform checks upon leave of the VM.
+++// InterfaceSupport provides functionality used by the VM_LEAF_BASE and
+++// VM_ENTRY_BASE macros. These macros are used to guard entry points into
+++// the VM and perform checks upon leave of the VM.
++
++
++ class InterfaceSupport: AllStatic {
++@@ -433,7 +433,7 @@
++
++ // LEAF routines do not lock, GC or throw exceptions
++
++-#define __LEAF(result_type, header) \
+++#define VM_LEAF_BASE(result_type, header) \
++ TRACE_CALL(result_type, header) \
++ debug_only(NoHandleMark __hm;) \
++ /* begin of body */
++@@ -441,7 +441,7 @@
++
++ // ENTRY routines may lock, GC and throw exceptions
++
++-#define __ENTRY(result_type, header, thread) \
+++#define VM_ENTRY_BASE(result_type, header, thread) \
++ TRACE_CALL(result_type, header) \
++ HandleMarkCleaner __hm(thread); \
++ Thread* THREAD = thread; \
++@@ -450,7 +450,7 @@
++
++ // QUICK_ENTRY routines behave like ENTRY but without a handle mark
++
++-#define __QUICK_ENTRY(result_type, header, thread) \
+++#define VM_QUICK_ENTRY_BASE(result_type, header, thread) \
++ TRACE_CALL(result_type, header) \
++ debug_only(NoHandleMark __hm;) \
++ Thread* THREAD = thread; \
++@@ -463,20 +463,20 @@
++ #define IRT_ENTRY(result_type, header) \
++ result_type header { \
++ ThreadInVMfromJava __tiv(thread); \
++- __ENTRY(result_type, header, thread) \
+++ VM_ENTRY_BASE(result_type, header, thread) \
++ debug_only(VMEntryWrapper __vew;)
++
++
++ #define IRT_LEAF(result_type, header) \
++ result_type header { \
++- __LEAF(result_type, header) \
+++ VM_LEAF_BASE(result_type, header) \
++ debug_only(No_Safepoint_Verifier __nspv(true);)
++
++
++ #define IRT_ENTRY_NO_ASYNC(result_type, header) \
++ result_type header { \
++ ThreadInVMfromJavaNoAsyncException __tiv(thread); \
++- __ENTRY(result_type, header, thread) \
+++ VM_ENTRY_BASE(result_type, header, thread) \
++ debug_only(VMEntryWrapper __vew;)
++
++ // Another special case for nmethod_entry_point so the nmethod that the
++@@ -487,7 +487,7 @@
++ result_type header { \
++ nmethodLocker _nmlock(nm); \
++ ThreadInVMfromJavaNoAsyncException __tiv(thread); \
++- __ENTRY(result_type, header, thread)
+++ VM_ENTRY_BASE(result_type, header, thread)
++
++ #define IRT_END }
++
++@@ -497,20 +497,20 @@
++ #define JRT_ENTRY(result_type, header) \
++ result_type header { \
++ ThreadInVMfromJava __tiv(thread); \
++- __ENTRY(result_type, header, thread) \
+++ VM_ENTRY_BASE(result_type, header, thread) \
++ debug_only(VMEntryWrapper __vew;)
++
++
++ #define JRT_LEAF(result_type, header) \
++ result_type header { \
++- __LEAF(result_type, header) \
+++ VM_LEAF_BASE(result_type, header) \
++ debug_only(JRT_Leaf_Verifier __jlv;)
++
++
++ #define JRT_ENTRY_NO_ASYNC(result_type, header) \
++ result_type header { \
++ ThreadInVMfromJavaNoAsyncException __tiv(thread); \
++- __ENTRY(result_type, header, thread) \
+++ VM_ENTRY_BASE(result_type, header, thread) \
++ debug_only(VMEntryWrapper __vew;)
++
++ // Same as JRT Entry but allows for return value after the safepoint
++@@ -543,11 +543,11 @@
++ assert( !VerifyJNIEnvThread || (thread == Thread::current()), "JNIEnv is only valid in same thread"); \
++ ThreadInVMfromNative __tiv(thread); \
++ debug_only(VMNativeEntryWrapper __vew;) \
++- __ENTRY(result_type, header, thread)
+++ VM_ENTRY_BASE(result_type, header, thread)
++
++
++ // Ensure that the VMNativeEntryWrapper constructor, which can cause
++-// a GC, is called outside the NoHandleMark (set via __QUICK_ENTRY).
+++// a GC, is called outside the NoHandleMark (set via VM_QUICK_ENTRY_BASE).
++ #define JNI_QUICK_ENTRY(result_type, header) \
++ extern "C" { \
++ result_type JNICALL header { \
++@@ -555,7 +555,7 @@
++ assert( !VerifyJNIEnvThread || (thread == Thread::current()), "JNIEnv is only valid in same thread"); \
++ ThreadInVMfromNative __tiv(thread); \
++ debug_only(VMNativeEntryWrapper __vew;) \
++- __QUICK_ENTRY(result_type, header, thread)
+++ VM_QUICK_ENTRY_BASE(result_type, header, thread)
++
++
++ #define JNI_LEAF(result_type, header) \
++@@ -563,7 +563,7 @@
++ result_type JNICALL header { \
++ JavaThread* thread=JavaThread::thread_from_jni_environment(env); \
++ assert( !VerifyJNIEnvThread || (thread == Thread::current()), "JNIEnv is only valid in same thread"); \
++- __LEAF(result_type, header)
+++ VM_LEAF_BASE(result_type, header)
++
++
++ // Close the routine and the extern "C"
++@@ -579,7 +579,7 @@
++ JavaThread* thread=JavaThread::thread_from_jni_environment(env); \
++ ThreadInVMfromNative __tiv(thread); \
++ debug_only(VMNativeEntryWrapper __vew;) \
++- __ENTRY(result_type, header, thread)
+++ VM_ENTRY_BASE(result_type, header, thread)
++
++
++ #define JVM_ENTRY_NO_ENV(result_type, header) \
++@@ -588,7 +588,7 @@
++ JavaThread* thread = (JavaThread*)ThreadLocalStorage::thread(); \
++ ThreadInVMfromNative __tiv(thread); \
++ debug_only(VMNativeEntryWrapper __vew;) \
++- __ENTRY(result_type, header, thread)
+++ VM_ENTRY_BASE(result_type, header, thread)
++
++
++ #define JVM_QUICK_ENTRY(result_type, header) \
++@@ -597,14 +597,14 @@
++ JavaThread* thread=JavaThread::thread_from_jni_environment(env); \
++ ThreadInVMfromNative __tiv(thread); \
++ debug_only(VMNativeEntryWrapper __vew;) \
++- __QUICK_ENTRY(result_type, header, thread)
+++ VM_QUICK_ENTRY_BASE(result_type, header, thread)
++
++
++ #define JVM_LEAF(result_type, header) \
++ extern "C" { \
++ result_type JNICALL header { \
++ VM_Exit::block_if_vm_exited(); \
++- __LEAF(result_type, header)
+++ VM_LEAF_BASE(result_type, header)
++
++
++ #define JVM_END } }
++
++iff --git a/Makefile.am b/Makefile.am
++-- a/Makefile.am
++++ b/Makefile.am
++@ -362,7 +362,8 @@
++ patches/openjdk/7036148-npe-null-jmenu-name.patch \
++ patches/jtreg-bug7036148-test.patch \
++ patches/support_linux_3.patch \
++ patches/openjdk/6826104-npe_on_app_and_toolkit_modal_dialog_click.patch
++ patches/openjdk/6826104-npe_on_app_and_toolkit_modal_dialog_click.patch \
++ patches/openjdk/7103224-glibc_name_collision.patch
++
++if WITH_ALT_HSBUILD
++ICEDTEA_PATCHES += \
++iff --git a/patches/openjdk/7103224-glibc_name_collision.patch b/patches/openjdk/7103224-glibc_name_collision.patch
++ew file mode 100644
++-- /dev/null
++++ b/patches/openjdk/7103224-glibc_name_collision.patch
++@ -0,0 +1,236 @@
++# HG changeset patch
++# User never
++# Date 1319555835 25200
++# Node ID a6eef545f1a2ceca6aeadf688a965df600ffef28
++# Parent 2ec638646e86e455978c31a9d47fc0ec271ed926
++7103224: collision between __LEAF define in interfaceSupport.hpp and /usr/include/sys/cdefs.h with gcc
++Reviewed-by: never
++Contributed-by: Omair Majid <omajid@...>
++
++diff -r 2ec638646e86 -r a6eef545f1a2 src/share/vm/opto/addnode.cpp
++--- openjdk/hotspot/src/share/vm/opto/addnode.cpp Tue Oct 25 04:07:20 2011 -0700
+++++ openjdk/hotspot/src/share/vm/opto/addnode.cpp Tue Oct 25 08:17:15 2011 -0700
++@@ -34,8 +34,6 @@
++
++ // Portions of code courtesy of Clifford Click
++
++-#define MAXFLOAT ((float)3.40282346638528860e+38)
++-
++ // Classic Add functionality. This covers all the usual 'add' behaviors for
++ // an algebraic ring. Add-integer, add-float, add-double, and binary-or are
++ // all inherited from this class. The various identity values are supplied
++diff -r 2ec638646e86 -r a6eef545f1a2 src/share/vm/prims/jniCheck.cpp
++--- openjdk/hotspot/src/share/vm/prims/jniCheck.cpp Tue Oct 25 04:07:20 2011 -0700
+++++ openjdk/hotspot/src/share/vm/prims/jniCheck.cpp Tue Oct 25 08:17:15 2011 -0700
++@@ -107,7 +107,7 @@
++ if (env != xenv) { \
++ NativeReportJNIFatalError(thr, warn_wrong_jnienv); \
++ } \
++- __ENTRY(result_type, header, thr)
+++ VM_ENTRY_BASE(result_type, header, thr)
++
++
++ #define UNCHECKED() (unchecked_jni_NativeInterface)
++diff -r 2ec638646e86 -r a6eef545f1a2 src/share/vm/prims/jvmtiEnter.xsl
++--- openjdk/hotspot/src/share/vm/prims/jvmtiEnter.xsl Tue Oct 25 04:07:20 2011 -0700
+++++ openjdk/hotspot/src/share/vm/prims/jvmtiEnter.xsl Tue Oct 25 08:17:15 2011 -0700
++@@ -426,7 +426,7 @@
++ <xsl:value-of select="$space"/>
++ <xsl:text>ThreadInVMfromNative __tiv(current_thread);</xsl:text>
++ <xsl:value-of select="$space"/>
++- <xsl:text>__ENTRY(jvmtiError, </xsl:text>
+++ <xsl:text>VM_ENTRY_BASE(jvmtiError, </xsl:text>
++ <xsl:apply-templates select="." mode="functionid"/>
++ <xsl:text> , current_thread)</xsl:text>
++ <xsl:value-of select="$space"/>
++diff -r 2ec638646e86 -r a6eef545f1a2 src/share/vm/prims/jvmtiEnv.cpp
++--- openjdk/hotspot/src/share/vm/prims/jvmtiEnv.cpp Tue Oct 25 04:07:20 2011 -0700
+++++ openjdk/hotspot/src/share/vm/prims/jvmtiEnv.cpp Tue Oct 25 08:17:15 2011 -0700
++@@ -173,7 +173,7 @@
++ // from native so as to resolve the jthread.
++
++ ThreadInVMfromNative __tiv(current_thread);
++- __ENTRY(jvmtiError, JvmtiEnv::GetThreadLocalStorage , current_thread)
+++ VM_ENTRY_BASE(jvmtiError, JvmtiEnv::GetThreadLocalStorage , current_thread)
++ debug_only(VMNativeEntryWrapper __vew;)
++
++ oop thread_oop = JNIHandles::resolve_external_guard(thread);
++diff -r 2ec638646e86 -r a6eef545f1a2 src/share/vm/prims/jvmtiExport.cpp
++--- openjdk/hotspot/src/share/vm/prims/jvmtiExport.cpp Tue Oct 25 04:07:20 2011 -0700
+++++ openjdk/hotspot/src/share/vm/prims/jvmtiExport.cpp Tue Oct 25 08:17:15 2011 -0700
++@@ -373,7 +373,7 @@
++ JavaThread* current_thread = (JavaThread*) ThreadLocalStorage::thread();
++ // transition code: native to VM
++ ThreadInVMfromNative __tiv(current_thread);
++- __ENTRY(jvmtiEnv*, JvmtiExport::get_jvmti_interface, current_thread)
+++ VM_ENTRY_BASE(jvmtiEnv*, JvmtiExport::get_jvmti_interface, current_thread)
++ debug_only(VMNativeEntryWrapper __vew;)
++
++ JvmtiEnv *jvmti_env = JvmtiEnv::create_a_jvmti(version);
++diff -r 2ec638646e86 -r a6eef545f1a2 src/share/vm/runtime/interfaceSupport.hpp
++--- openjdk/hotspot/src/share/vm/runtime/interfaceSupport.hpp Tue Oct 25 04:07:20 2011 -0700
+++++ openjdk/hotspot/src/share/vm/runtime/interfaceSupport.hpp Tue Oct 25 08:17:15 2011 -0700
++@@ -72,9 +72,9 @@
++ }
++ };
++
++-// InterfaceSupport provides functionality used by the __LEAF and __ENTRY
++-// macros. These macros are used to guard entry points into the VM and
++-// perform checks upon leave of the VM.
+++// InterfaceSupport provides functionality used by the VM_LEAF_BASE and
+++// VM_ENTRY_BASE macros. These macros are used to guard entry points into
+++// the VM and perform checks upon leave of the VM.
++
++
++ class InterfaceSupport: AllStatic {
++@@ -433,7 +433,7 @@
++
++ // LEAF routines do not lock, GC or throw exceptions
++
++-#define __LEAF(result_type, header) \
+++#define VM_LEAF_BASE(result_type, header) \
++ TRACE_CALL(result_type, header) \
++ debug_only(NoHandleMark __hm;) \
++ /* begin of body */
++@@ -441,7 +441,7 @@
++
++ // ENTRY routines may lock, GC and throw exceptions
++
++-#define __ENTRY(result_type, header, thread) \
+++#define VM_ENTRY_BASE(result_type, header, thread) \
++ TRACE_CALL(result_type, header) \
++ HandleMarkCleaner __hm(thread); \
++ Thread* THREAD = thread; \
++@@ -450,7 +450,7 @@
++
++ // QUICK_ENTRY routines behave like ENTRY but without a handle mark
++
++-#define __QUICK_ENTRY(result_type, header, thread) \
+++#define VM_QUICK_ENTRY_BASE(result_type, header, thread) \
++ TRACE_CALL(result_type, header) \
++ debug_only(NoHandleMark __hm;) \
++ Thread* THREAD = thread; \
++@@ -463,20 +463,20 @@
++ #define IRT_ENTRY(result_type, header) \
++ result_type header { \
++ ThreadInVMfromJava __tiv(thread); \
++- __ENTRY(result_type, header, thread) \
+++ VM_ENTRY_BASE(result_type, header, thread) \
++ debug_only(VMEntryWrapper __vew;)
++
++
++ #define IRT_LEAF(result_type, header) \
++ result_type header { \
++- __LEAF(result_type, header) \
+++ VM_LEAF_BASE(result_type, header) \
++ debug_only(No_Safepoint_Verifier __nspv(true);)
++
++
++ #define IRT_ENTRY_NO_ASYNC(result_type, header) \
++ result_type header { \
++ ThreadInVMfromJavaNoAsyncException __tiv(thread); \
++- __ENTRY(result_type, header, thread) \
+++ VM_ENTRY_BASE(result_type, header, thread) \
++ debug_only(VMEntryWrapper __vew;)
++
++ // Another special case for nmethod_entry_point so the nmethod that the
++@@ -487,7 +487,7 @@
++ result_type header { \
++ nmethodLocker _nmlock(nm); \
++ ThreadInVMfromJavaNoAsyncException __tiv(thread); \
++- __ENTRY(result_type, header, thread)
+++ VM_ENTRY_BASE(result_type, header, thread)
++
++ #define IRT_END }
++
++@@ -497,20 +497,20 @@
++ #define JRT_ENTRY(result_type, header) \
++ result_type header { \
++ ThreadInVMfromJava __tiv(thread); \
++- __ENTRY(result_type, header, thread) \
+++ VM_ENTRY_BASE(result_type, header, thread) \
++ debug_only(VMEntryWrapper __vew;)
++
++
++ #define JRT_LEAF(result_type, header) \
++ result_type header { \
++- __LEAF(result_type, header) \
+++ VM_LEAF_BASE(result_type, header) \
++ debug_only(JRT_Leaf_Verifier __jlv;)
++
++
++ #define JRT_ENTRY_NO_ASYNC(result_type, header) \
++ result_type header { \
++ ThreadInVMfromJavaNoAsyncException __tiv(thread); \
++- __ENTRY(result_type, header, thread) \
+++ VM_ENTRY_BASE(result_type, header, thread) \
++ debug_only(VMEntryWrapper __vew;)
++
++ // Same as JRT Entry but allows for return value after the safepoint
++@@ -543,11 +543,11 @@
++ assert( !VerifyJNIEnvThread || (thread == Thread::current()), "JNIEnv is only valid in same thread"); \
++ ThreadInVMfromNative __tiv(thread); \
++ debug_only(VMNativeEntryWrapper __vew;) \
++- __ENTRY(result_type, header, thread)
+++ VM_ENTRY_BASE(result_type, header, thread)
++
++
++ // Ensure that the VMNativeEntryWrapper constructor, which can cause
++-// a GC, is called outside the NoHandleMark (set via __QUICK_ENTRY).
+++// a GC, is called outside the NoHandleMark (set via VM_QUICK_ENTRY_BASE).
++ #define JNI_QUICK_ENTRY(result_type, header) \
++ extern "C" { \
++ result_type JNICALL header { \
++@@ -555,7 +555,7 @@
++ assert( !VerifyJNIEnvThread || (thread == Thread::current()), "JNIEnv is only valid in same thread"); \
++ ThreadInVMfromNative __tiv(thread); \
++ debug_only(VMNativeEntryWrapper __vew;) \
++- __QUICK_ENTRY(result_type, header, thread)
+++ VM_QUICK_ENTRY_BASE(result_type, header, thread)
++
++
++ #define JNI_LEAF(result_type, header) \
++@@ -563,7 +563,7 @@
++ result_type JNICALL header { \
++ JavaThread* thread=JavaThread::thread_from_jni_environment(env); \
++ assert( !VerifyJNIEnvThread || (thread == Thread::current()), "JNIEnv is only valid in same thread"); \
++- __LEAF(result_type, header)
+++ VM_LEAF_BASE(result_type, header)
++
++
++ // Close the routine and the extern "C"
++@@ -579,7 +579,7 @@
++ JavaThread* thread=JavaThread::thread_from_jni_environment(env); \
++ ThreadInVMfromNative __tiv(thread); \
++ debug_only(VMNativeEntryWrapper __vew;) \
++- __ENTRY(result_type, header, thread)
+++ VM_ENTRY_BASE(result_type, header, thread)
++
++
++ #define JVM_ENTRY_NO_ENV(result_type, header) \
++@@ -588,7 +588,7 @@
++ JavaThread* thread = (JavaThread*)ThreadLocalStorage::thread(); \
++ ThreadInVMfromNative __tiv(thread); \
++ debug_only(VMNativeEntryWrapper __vew;) \
++- __ENTRY(result_type, header, thread)
+++ VM_ENTRY_BASE(result_type, header, thread)
++
++
++ #define JVM_QUICK_ENTRY(result_type, header) \
++@@ -597,14 +597,14 @@
++ JavaThread* thread=JavaThread::thread_from_jni_environment(env); \
++ ThreadInVMfromNative __tiv(thread); \
++ debug_only(VMNativeEntryWrapper __vew;) \
++- __QUICK_ENTRY(result_type, header, thread)
+++ VM_QUICK_ENTRY_BASE(result_type, header, thread)
++
++
++ #define JVM_LEAF(result_type, header) \
++ extern "C" { \
++ result_type JNICALL header { \
++ VM_Exit::block_if_vm_exited(); \
++- __LEAF(result_type, header)
+++ VM_LEAF_BASE(result_type, header)
++
++
++ #define JVM_END } }
diff --git a/recipes-core/icedtea/icedtea6-native_1.7.10.bb b/recipes-core/icedtea/icedtea6-native_1.7.10.bb
index 54ac87d..a3edb98 100644
--- a/recipes-core/icedtea/icedtea6-native_1.7.10.bb
+++ b/recipes-core/icedtea/icedtea6-native_1.7.10.bb
@@ -2,7 +2,7 @@ require ${PN}.inc
LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
-PR = "${INC_PR}.0"
+PR = "${INC_PR}.1"
SRC_URI = "\
http://icedtea.classpath.org/download/source/icedtea6-${PV}.tar.gz;name=iced \
@@ -12,6 +12,7 @@ SRC_URI = "\
file://build-hacks-native.patch \
file://icedtea-sane-x86-arch-name.patch \
file://icedtea-javac-in.patch \
+ file://glibc_name_collision.patch \
${ICEDTEA_PATCHES} \
"
SRC_URI[ojdk.md5sum] = "078fe0ab744c98694decc77f2456c560"
--
1.7.10.4
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [meta-java 3/5] icedtea6-native: fix problem on build hosts with linux kernel 3.x
2012-10-05 19:45 [meta-java 0/5] icedtea build fixes Steffen Sledz
2012-10-05 19:46 ` [meta-java 1/5] icedtea6-native-1.7.10: add missing LIC_FILES_CHKSUM Steffen Sledz
2012-10-05 19:46 ` [meta-java 2/5] icedtea6-native-1.7.10: backport S7103224 Steffen Sledz
@ 2012-10-05 19:46 ` Steffen Sledz
2012-10-05 19:46 ` [meta-java 4/5] icedtea6-native: fix compile error Steffen Sledz
` (2 subsequent siblings)
5 siblings, 0 replies; 9+ messages in thread
From: Steffen Sledz @ 2012-10-05 19:46 UTC (permalink / raw)
To: Henning Heinold, openembedded-devel
see http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7072341
Signed-off-by: Steffen Sledz <sledz@dresearch-fe.de>
---
recipes-core/icedtea/icedtea6-native.inc | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/recipes-core/icedtea/icedtea6-native.inc b/recipes-core/icedtea/icedtea6-native.inc
index 1414ac3..4a613ff 100644
--- a/recipes-core/icedtea/icedtea6-native.inc
+++ b/recipes-core/icedtea/icedtea6-native.inc
@@ -107,6 +107,13 @@ do_configure_append() {
-e"s|g++\$(GCC_SUFFIX)|${CXX}|" \
$F
done
+
+ for F in openjdk/hotspot/make/linux/Makefile openjdk-ecj/hotspot/make/linux/Makefile ;
+ do
+ sed -i \
+ -e"s|SUPPORTED_OS_VERSION = 2.4% 2.5% 2.6% 2.7%|SUPPORTED_OS_VERSION = 2.4% 2.5% 2.6% 3%|" \
+ $F
+ done
}
EXTRA_OEMAKE = ' \
--
1.7.10.4
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [meta-java 4/5] icedtea6-native: fix compile error
2012-10-05 19:45 [meta-java 0/5] icedtea build fixes Steffen Sledz
` (2 preceding siblings ...)
2012-10-05 19:46 ` [meta-java 3/5] icedtea6-native: fix problem on build hosts with linux kernel 3.x Steffen Sledz
@ 2012-10-05 19:46 ` Steffen Sledz
2012-10-05 19:46 ` [meta-java 5/5] icedtea6-native: fix build problem Steffen Sledz
2012-10-18 13:30 ` [meta-java 0/5] icedtea build fixes Steffen Sledz
5 siblings, 0 replies; 9+ messages in thread
From: Steffen Sledz @ 2012-10-05 19:46 UTC (permalink / raw)
To: Henning Heinold, openembedded-devel
Don't return booleans from methods returning pointers.
see also: <http://hg.openjdk.java.net/hsx/hotspot-rt/hotspot/rev/f457154eee8b>
Signed-off-by: Steffen Sledz <sledz@dresearch-fe.de>
---
.../icedtea-hotspot-dont-return-booleans.patch | 12 ++++++++++++
.../icedtea-hotspot-dont-return-booleans.patch | 12 ++++++++++++
recipes-core/icedtea/icedtea6-native_1.7.10.bb | 4 +++-
recipes-core/icedtea/icedtea6-native_1.8.11.bb | 4 +++-
4 files changed, 30 insertions(+), 2 deletions(-)
create mode 100644 recipes-core/icedtea/icedtea6-native-1.7.10/icedtea-hotspot-dont-return-booleans.patch
create mode 100644 recipes-core/icedtea/icedtea6-native-1.8.11/icedtea-hotspot-dont-return-booleans.patch
diff --git a/recipes-core/icedtea/icedtea6-native-1.7.10/icedtea-hotspot-dont-return-booleans.patch b/recipes-core/icedtea/icedtea6-native-1.7.10/icedtea-hotspot-dont-return-booleans.patch
new file mode 100644
index 0000000..73f90b3
--- /dev/null
+++ b/recipes-core/icedtea/icedtea6-native-1.7.10/icedtea-hotspot-dont-return-booleans.patch
@@ -0,0 +1,12 @@
+diff -Nurd openjdk/hotspot/src/share/vm/opto/loopnode.cpp openjdk/hotspot/src/share/vm/opto/loopnode.cpp
+--- openjdk/hotspot/src/share/vm/opto/loopnode.cpp 2012-10-05 14:18:19.725747261 +0200
++++ openjdk/hotspot/src/share/vm/opto/loopnode.cpp 2012-10-05 14:18:40.751035242 +0200
+@@ -534,7 +534,7 @@
+ Node* CountedLoopNode::match_incr_with_optional_truncation(
+ Node* expr, Node** trunc1, Node** trunc2, const TypeInt** trunc_type) {
+ // Quick cutouts:
+- if (expr == NULL || expr->req() != 3) return false;
++ if (expr == NULL || expr->req() != 3) return NULL;
+
+ Node *t1 = NULL;
+ Node *t2 = NULL;
diff --git a/recipes-core/icedtea/icedtea6-native-1.8.11/icedtea-hotspot-dont-return-booleans.patch b/recipes-core/icedtea/icedtea6-native-1.8.11/icedtea-hotspot-dont-return-booleans.patch
new file mode 100644
index 0000000..73f90b3
--- /dev/null
+++ b/recipes-core/icedtea/icedtea6-native-1.8.11/icedtea-hotspot-dont-return-booleans.patch
@@ -0,0 +1,12 @@
+diff -Nurd openjdk/hotspot/src/share/vm/opto/loopnode.cpp openjdk/hotspot/src/share/vm/opto/loopnode.cpp
+--- openjdk/hotspot/src/share/vm/opto/loopnode.cpp 2012-10-05 14:18:19.725747261 +0200
++++ openjdk/hotspot/src/share/vm/opto/loopnode.cpp 2012-10-05 14:18:40.751035242 +0200
+@@ -534,7 +534,7 @@
+ Node* CountedLoopNode::match_incr_with_optional_truncation(
+ Node* expr, Node** trunc1, Node** trunc2, const TypeInt** trunc_type) {
+ // Quick cutouts:
+- if (expr == NULL || expr->req() != 3) return false;
++ if (expr == NULL || expr->req() != 3) return NULL;
+
+ Node *t1 = NULL;
+ Node *t2 = NULL;
diff --git a/recipes-core/icedtea/icedtea6-native_1.7.10.bb b/recipes-core/icedtea/icedtea6-native_1.7.10.bb
index a3edb98..4e86dac 100644
--- a/recipes-core/icedtea/icedtea6-native_1.7.10.bb
+++ b/recipes-core/icedtea/icedtea6-native_1.7.10.bb
@@ -2,7 +2,7 @@ require ${PN}.inc
LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
-PR = "${INC_PR}.1"
+PR = "${INC_PR}.2"
SRC_URI = "\
http://icedtea.classpath.org/download/source/icedtea6-${PV}.tar.gz;name=iced \
@@ -27,6 +27,7 @@ ICEDTEA_PATCHES = "\
file://icedtea-hotspot-make-arch-sane-for-x86.patch;apply=no \
file://icedtea-jdk-sane-x86-arch.patch;apply=no \
file://icedtea-unbreak-float.patch;apply=no \
+ file://icedtea-hotspot-dont-return-booleans.patch;apply=no \
"
export DISTRIBUTION_PATCHES = "\
@@ -36,4 +37,5 @@ export DISTRIBUTION_PATCHES = "\
patches/icedtea-hotspot-make-arch-sane-for-x86.patch \
patches/icedtea-jdk-sane-x86-arch.patch \
patches/icedtea-unbreak-float.patch \
+ patches/icedtea-hotspot-dont-return-booleans.patch \
"
diff --git a/recipes-core/icedtea/icedtea6-native_1.8.11.bb b/recipes-core/icedtea/icedtea6-native_1.8.11.bb
index 7c2e6ea..65f29ea 100644
--- a/recipes-core/icedtea/icedtea6-native_1.8.11.bb
+++ b/recipes-core/icedtea/icedtea6-native_1.8.11.bb
@@ -4,7 +4,7 @@ require ${PN}.inc
LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
-PR = "${INC_PR}.2"
+PR = "${INC_PR}.3"
SRC_URI = "\
http://icedtea.classpath.org/download/source/icedtea6-${PV}.tar.gz;name=iced \
@@ -44,6 +44,7 @@ ICEDTEA_PATCHES = "\
file://icedtea-jdk-sane-x86-arch.patch;apply=no \
file://icedtea-unbreak-float.patch;apply=no \
file://icedtea-jdk-avoid-cdef-collision.patch;apply=no \
+ file://icedtea-hotspot-dont-return-booleans.patch;apply=no \
"
export DISTRIBUTION_PATCHES = "\
@@ -54,6 +55,7 @@ export DISTRIBUTION_PATCHES = "\
patches/icedtea-jdk-sane-x86-arch.patch \
patches/icedtea-unbreak-float.patch \
patches/icedtea-jdk-avoid-cdef-collision.patch \
+ patches/icedtea-hotspot-dont-return-booleans.patch \
"
EXTRA_OECONF += " --with-jaxws-drop-zip=${DL_DIR}/jdk6-jaxws-2009_10_27.zip \
--
1.7.10.4
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [meta-java 5/5] icedtea6-native: fix build problem
2012-10-05 19:45 [meta-java 0/5] icedtea build fixes Steffen Sledz
` (3 preceding siblings ...)
2012-10-05 19:46 ` [meta-java 4/5] icedtea6-native: fix compile error Steffen Sledz
@ 2012-10-05 19:46 ` Steffen Sledz
2012-10-18 13:30 ` [meta-java 0/5] icedtea build fixes Steffen Sledz
5 siblings, 0 replies; 9+ messages in thread
From: Steffen Sledz @ 2012-10-05 19:46 UTC (permalink / raw)
To: Henning Heinold, openembedded-devel
Fix problem with unknown gcc command line option '-mimpure-text'
which is an Solaris 2 only option (according to the man page).
Signed-off-by: Steffen Sledz <sledz@dresearch-fe.de>
---
recipes-core/icedtea/icedtea6-native.inc | 1 +
1 file changed, 1 insertion(+)
diff --git a/recipes-core/icedtea/icedtea6-native.inc b/recipes-core/icedtea/icedtea6-native.inc
index 4a613ff..13e9d27 100644
--- a/recipes-core/icedtea/icedtea6-native.inc
+++ b/recipes-core/icedtea/icedtea6-native.inc
@@ -97,6 +97,7 @@ do_configure_append() {
-e"s|\$(COMPILER_PATH)gcc\$(GCC_SUFFIX)|${CC}|" \
-e"s|\$(COMPILER_PATH)gcc\$(GCC_SUFFIX) -E|${CPP}|" \
-e"s|\$(COMPILER_PATH)g++\$(GCC_SUFFIX)|${CXX}|" \
+ -e"s|-mimpure-text||" \
$F
done
--
1.7.10.4
^ permalink raw reply related [flat|nested] 9+ messages in thread
* Re: [meta-java 2/5] icedtea6-native-1.7.10: backport S7103224
2012-10-05 19:46 ` [meta-java 2/5] icedtea6-native-1.7.10: backport S7103224 Steffen Sledz
@ 2012-10-07 22:29 ` Khem Raj
2012-10-08 6:10 ` Steffen Sledz
0 siblings, 1 reply; 9+ messages in thread
From: Khem Raj @ 2012-10-07 22:29 UTC (permalink / raw)
To: openembedded-devel
I have posted some patches which covered this as well some weeks ago
see
http://patchwork.openembedded.org/patch/33463/
On Fri, Oct 5, 2012 at 12:46 PM, Steffen Sledz <sledz@dresearch-fe.de> wrote:
> Backport the fix for 7103224.
>
> This fix allows icedtea6 to be built with (very) new glibc versions.
> It was originally suggested by Omair Majid from RedHat.
>
> For details see:
> <http://permalink.gmane.org/gmane.comp.java.openjdk.distro-packaging.devel/16103>
> <http://mail.openjdk.java.net/pipermail/hotspot-dev/2011-October/004589.html>
>
> Signed-off-by: Steffen Sledz <sledz@dresearch-fe.de>
> ---
> .../glibc_name_collision.patch | 523 ++++++++++++++++++++
> recipes-core/icedtea/icedtea6-native_1.7.10.bb | 3 +-
> 2 files changed, 525 insertions(+), 1 deletion(-)
> create mode 100644 recipes-core/icedtea/icedtea6-native-1.7.10/glibc_name_collision.patch
>
> diff --git a/recipes-core/icedtea/icedtea6-native-1.7.10/glibc_name_collision.patch b/recipes-core/icedtea/icedtea6-native-1.7.10/glibc_name_collision.patch
> new file mode 100644
> index 0000000..0702b77
> --- /dev/null
> +++ b/recipes-core/icedtea/icedtea6-native-1.7.10/glibc_name_collision.patch
> @@ -0,0 +1,523 @@
> +icedtea6-native-1.7.10: backport S7103224
> +
> +Backport the fix for 7103224.
> +
> +This fix allows icedtea6 to be built with (very) new glibc versions.
> +It was originally suggested by Omair Majid from RedHat.
> +
> +For details see:
> +<http://permalink.gmane.org/gmane.comp.java.openjdk.distro-packaging.devel/16103>
> +<http://mail.openjdk.java.net/pipermail/hotspot-dev/2011-October/004589.html>
> +
> +Upstream-Status: Pending
> +
> +Signed-off-by: Steffen Sledz <sledz@dresearch-fe.de>
> +
> +diff -Nurd icedtea6-1.7.10.orig/Makefile.am icedtea6-1.7.10/Makefile.am
> +--- icedtea6-1.7.10.orig/Makefile.am 2012-05-03 14:59:31.596076283 +0200
> ++++ icedtea6-1.7.10/Makefile.am 2012-05-03 15:03:43.787566714 +0200
> +@@ -393,7 +393,8 @@
> + patches/openjdk/6541476-png-iTXt-chunk.patch \
> + patches/openjdk/6782079-png_metadata_oom.patch \
> + patches/rh676659-gcc-export-dynamic.patch \
> +- patches/latent_jaxp_bug.patch
> ++ patches/latent_jaxp_bug.patch \
> ++ patches/openjdk/7103224-glibc_name_collision.patch
> +
> + if WITH_ALT_HSBUILD
> + ICEDTEA_PATCHES += patches/hotspot/$(HSBUILD)/openjdk-6886353-ignore_deoptimizealot.patch \
> +diff -Nurd icedtea6-1.7.10.orig/patches/openjdk/7103224-glibc_name_collision.patch icedtea6-1.7.10/patches/openjdk/7103224-glibc_name_collision.patch
> +--- icedtea6-1.7.10.orig/patches/openjdk/7103224-glibc_name_collision.patch 1970-01-01 01:00:00.000000000 +0100
> ++++ icedtea6-1.7.10/patches/openjdk/7103224-glibc_name_collision.patch 2012-05-03 15:01:27.817684671 +0200
> +@@ -0,0 +1,491 @@
> ++# HG changeset patch
> ++# User never
> ++# Date 1319555835 25200
> ++# Node ID a6eef545f1a2ceca6aeadf688a965df600ffef28
> ++# Parent 2ec638646e86e455978c31a9d47fc0ec271ed926
> ++7103224: collision between __LEAF define in interfaceSupport.hpp and /usr/include/sys/cdefs.h with gcc
> ++Reviewed-by: never
> ++Contributed-by: Omair Majid <omajid@...>
> ++
> ++diff -r 2ec638646e86 -r a6eef545f1a2 src/share/vm/opto/addnode.cpp
> ++--- openjdk/hotspot/src/share/vm/opto/addnode.cpp Tue Oct 25 04:07:20 2011 -0700
> +++++ openjdk/hotspot/src/share/vm/opto/addnode.cpp Tue Oct 25 08:17:15 2011 -0700
> ++@@ -34,8 +34,6 @@
> ++
> ++ // Portions of code courtesy of Clifford Click
> ++
> ++-#define MAXFLOAT ((float)3.40282346638528860e+38)
> ++-
> ++ // Classic Add functionality. This covers all the usual 'add' behaviors for
> ++ // an algebraic ring. Add-integer, add-float, add-double, and binary-or are
> ++ // all inherited from this class. The various identity values are supplied
> ++diff -r 2ec638646e86 -r a6eef545f1a2 src/share/vm/prims/jniCheck.cpp
> ++--- openjdk/hotspot/src/share/vm/prims/jniCheck.cpp Tue Oct 25 04:07:20 2011 -0700
> +++++ openjdk/hotspot/src/share/vm/prims/jniCheck.cpp Tue Oct 25 08:17:15 2011 -0700
> ++@@ -107,7 +107,7 @@
> ++ if (env != xenv) { \
> ++ NativeReportJNIFatalError(thr, warn_wrong_jnienv); \
> ++ } \
> ++- __ENTRY(result_type, header, thr)
> +++ VM_ENTRY_BASE(result_type, header, thr)
> ++
> ++
> ++ #define UNCHECKED() (unchecked_jni_NativeInterface)
> ++diff -r 2ec638646e86 -r a6eef545f1a2 src/share/vm/prims/jvmtiEnter.xsl
> ++--- openjdk/hotspot/src/share/vm/prims/jvmtiEnter.xsl Tue Oct 25 04:07:20 2011 -0700
> +++++ openjdk/hotspot/src/share/vm/prims/jvmtiEnter.xsl Tue Oct 25 08:17:15 2011 -0700
> ++@@ -426,7 +426,7 @@
> ++ <xsl:value-of select="$space"/>
> ++ <xsl:text>ThreadInVMfromNative __tiv(current_thread);</xsl:text>
> ++ <xsl:value-of select="$space"/>
> ++- <xsl:text>__ENTRY(jvmtiError, </xsl:text>
> +++ <xsl:text>VM_ENTRY_BASE(jvmtiError, </xsl:text>
> ++ <xsl:apply-templates select="." mode="functionid"/>
> ++ <xsl:text> , current_thread)</xsl:text>
> ++ <xsl:value-of select="$space"/>
> ++diff -r 2ec638646e86 -r a6eef545f1a2 src/share/vm/prims/jvmtiEnv.cpp
> ++--- openjdk/hotspot/src/share/vm/prims/jvmtiEnv.cpp Tue Oct 25 04:07:20 2011 -0700
> +++++ openjdk/hotspot/src/share/vm/prims/jvmtiEnv.cpp Tue Oct 25 08:17:15 2011 -0700
> ++@@ -173,7 +173,7 @@
> ++ // from native so as to resolve the jthread.
> ++
> ++ ThreadInVMfromNative __tiv(current_thread);
> ++- __ENTRY(jvmtiError, JvmtiEnv::GetThreadLocalStorage , current_thread)
> +++ VM_ENTRY_BASE(jvmtiError, JvmtiEnv::GetThreadLocalStorage , current_thread)
> ++ debug_only(VMNativeEntryWrapper __vew;)
> ++
> ++ oop thread_oop = JNIHandles::resolve_external_guard(thread);
> ++diff -r 2ec638646e86 -r a6eef545f1a2 src/share/vm/prims/jvmtiExport.cpp
> ++--- openjdk/hotspot/src/share/vm/prims/jvmtiExport.cpp Tue Oct 25 04:07:20 2011 -0700
> +++++ openjdk/hotspot/src/share/vm/prims/jvmtiExport.cpp Tue Oct 25 08:17:15 2011 -0700
> ++@@ -373,7 +373,7 @@
> ++ JavaThread* current_thread = (JavaThread*) ThreadLocalStorage::thread();
> ++ // transition code: native to VM
> ++ ThreadInVMfromNative __tiv(current_thread);
> ++- __ENTRY(jvmtiEnv*, JvmtiExport::get_jvmti_interface, current_thread)
> +++ VM_ENTRY_BASE(jvmtiEnv*, JvmtiExport::get_jvmti_interface, current_thread)
> ++ debug_only(VMNativeEntryWrapper __vew;)
> ++
> ++ JvmtiEnv *jvmti_env = JvmtiEnv::create_a_jvmti(version);
> ++diff -r 2ec638646e86 -r a6eef545f1a2 src/share/vm/runtime/interfaceSupport.hpp
> ++--- openjdk/hotspot/src/share/vm/runtime/interfaceSupport.hpp Tue Oct 25 04:07:20 2011 -0700
> +++++ openjdk/hotspot/src/share/vm/runtime/interfaceSupport.hpp Tue Oct 25 08:17:15 2011 -0700
> ++@@ -72,9 +72,9 @@
> ++ }
> ++ };
> ++
> ++-// InterfaceSupport provides functionality used by the __LEAF and __ENTRY
> ++-// macros. These macros are used to guard entry points into the VM and
> ++-// perform checks upon leave of the VM.
> +++// InterfaceSupport provides functionality used by the VM_LEAF_BASE and
> +++// VM_ENTRY_BASE macros. These macros are used to guard entry points into
> +++// the VM and perform checks upon leave of the VM.
> ++
> ++
> ++ class InterfaceSupport: AllStatic {
> ++@@ -433,7 +433,7 @@
> ++
> ++ // LEAF routines do not lock, GC or throw exceptions
> ++
> ++-#define __LEAF(result_type, header) \
> +++#define VM_LEAF_BASE(result_type, header) \
> ++ TRACE_CALL(result_type, header) \
> ++ debug_only(NoHandleMark __hm;) \
> ++ /* begin of body */
> ++@@ -441,7 +441,7 @@
> ++
> ++ // ENTRY routines may lock, GC and throw exceptions
> ++
> ++-#define __ENTRY(result_type, header, thread) \
> +++#define VM_ENTRY_BASE(result_type, header, thread) \
> ++ TRACE_CALL(result_type, header) \
> ++ HandleMarkCleaner __hm(thread); \
> ++ Thread* THREAD = thread; \
> ++@@ -450,7 +450,7 @@
> ++
> ++ // QUICK_ENTRY routines behave like ENTRY but without a handle mark
> ++
> ++-#define __QUICK_ENTRY(result_type, header, thread) \
> +++#define VM_QUICK_ENTRY_BASE(result_type, header, thread) \
> ++ TRACE_CALL(result_type, header) \
> ++ debug_only(NoHandleMark __hm;) \
> ++ Thread* THREAD = thread; \
> ++@@ -463,20 +463,20 @@
> ++ #define IRT_ENTRY(result_type, header) \
> ++ result_type header { \
> ++ ThreadInVMfromJava __tiv(thread); \
> ++- __ENTRY(result_type, header, thread) \
> +++ VM_ENTRY_BASE(result_type, header, thread) \
> ++ debug_only(VMEntryWrapper __vew;)
> ++
> ++
> ++ #define IRT_LEAF(result_type, header) \
> ++ result_type header { \
> ++- __LEAF(result_type, header) \
> +++ VM_LEAF_BASE(result_type, header) \
> ++ debug_only(No_Safepoint_Verifier __nspv(true);)
> ++
> ++
> ++ #define IRT_ENTRY_NO_ASYNC(result_type, header) \
> ++ result_type header { \
> ++ ThreadInVMfromJavaNoAsyncException __tiv(thread); \
> ++- __ENTRY(result_type, header, thread) \
> +++ VM_ENTRY_BASE(result_type, header, thread) \
> ++ debug_only(VMEntryWrapper __vew;)
> ++
> ++ // Another special case for nmethod_entry_point so the nmethod that the
> ++@@ -487,7 +487,7 @@
> ++ result_type header { \
> ++ nmethodLocker _nmlock(nm); \
> ++ ThreadInVMfromJavaNoAsyncException __tiv(thread); \
> ++- __ENTRY(result_type, header, thread)
> +++ VM_ENTRY_BASE(result_type, header, thread)
> ++
> ++ #define IRT_END }
> ++
> ++@@ -497,20 +497,20 @@
> ++ #define JRT_ENTRY(result_type, header) \
> ++ result_type header { \
> ++ ThreadInVMfromJava __tiv(thread); \
> ++- __ENTRY(result_type, header, thread) \
> +++ VM_ENTRY_BASE(result_type, header, thread) \
> ++ debug_only(VMEntryWrapper __vew;)
> ++
> ++
> ++ #define JRT_LEAF(result_type, header) \
> ++ result_type header { \
> ++- __LEAF(result_type, header) \
> +++ VM_LEAF_BASE(result_type, header) \
> ++ debug_only(JRT_Leaf_Verifier __jlv;)
> ++
> ++
> ++ #define JRT_ENTRY_NO_ASYNC(result_type, header) \
> ++ result_type header { \
> ++ ThreadInVMfromJavaNoAsyncException __tiv(thread); \
> ++- __ENTRY(result_type, header, thread) \
> +++ VM_ENTRY_BASE(result_type, header, thread) \
> ++ debug_only(VMEntryWrapper __vew;)
> ++
> ++ // Same as JRT Entry but allows for return value after the safepoint
> ++@@ -543,11 +543,11 @@
> ++ assert( !VerifyJNIEnvThread || (thread == Thread::current()), "JNIEnv is only valid in same thread"); \
> ++ ThreadInVMfromNative __tiv(thread); \
> ++ debug_only(VMNativeEntryWrapper __vew;) \
> ++- __ENTRY(result_type, header, thread)
> +++ VM_ENTRY_BASE(result_type, header, thread)
> ++
> ++
> ++ // Ensure that the VMNativeEntryWrapper constructor, which can cause
> ++-// a GC, is called outside the NoHandleMark (set via __QUICK_ENTRY).
> +++// a GC, is called outside the NoHandleMark (set via VM_QUICK_ENTRY_BASE).
> ++ #define JNI_QUICK_ENTRY(result_type, header) \
> ++ extern "C" { \
> ++ result_type JNICALL header { \
> ++@@ -555,7 +555,7 @@
> ++ assert( !VerifyJNIEnvThread || (thread == Thread::current()), "JNIEnv is only valid in same thread"); \
> ++ ThreadInVMfromNative __tiv(thread); \
> ++ debug_only(VMNativeEntryWrapper __vew;) \
> ++- __QUICK_ENTRY(result_type, header, thread)
> +++ VM_QUICK_ENTRY_BASE(result_type, header, thread)
> ++
> ++
> ++ #define JNI_LEAF(result_type, header) \
> ++@@ -563,7 +563,7 @@
> ++ result_type JNICALL header { \
> ++ JavaThread* thread=JavaThread::thread_from_jni_environment(env); \
> ++ assert( !VerifyJNIEnvThread || (thread == Thread::current()), "JNIEnv is only valid in same thread"); \
> ++- __LEAF(result_type, header)
> +++ VM_LEAF_BASE(result_type, header)
> ++
> ++
> ++ // Close the routine and the extern "C"
> ++@@ -579,7 +579,7 @@
> ++ JavaThread* thread=JavaThread::thread_from_jni_environment(env); \
> ++ ThreadInVMfromNative __tiv(thread); \
> ++ debug_only(VMNativeEntryWrapper __vew;) \
> ++- __ENTRY(result_type, header, thread)
> +++ VM_ENTRY_BASE(result_type, header, thread)
> ++
> ++
> ++ #define JVM_ENTRY_NO_ENV(result_type, header) \
> ++@@ -588,7 +588,7 @@
> ++ JavaThread* thread = (JavaThread*)ThreadLocalStorage::thread(); \
> ++ ThreadInVMfromNative __tiv(thread); \
> ++ debug_only(VMNativeEntryWrapper __vew;) \
> ++- __ENTRY(result_type, header, thread)
> +++ VM_ENTRY_BASE(result_type, header, thread)
> ++
> ++
> ++ #define JVM_QUICK_ENTRY(result_type, header) \
> ++@@ -597,14 +597,14 @@
> ++ JavaThread* thread=JavaThread::thread_from_jni_environment(env); \
> ++ ThreadInVMfromNative __tiv(thread); \
> ++ debug_only(VMNativeEntryWrapper __vew;) \
> ++- __QUICK_ENTRY(result_type, header, thread)
> +++ VM_QUICK_ENTRY_BASE(result_type, header, thread)
> ++
> ++
> ++ #define JVM_LEAF(result_type, header) \
> ++ extern "C" { \
> ++ result_type JNICALL header { \
> ++ VM_Exit::block_if_vm_exited(); \
> ++- __LEAF(result_type, header)
> +++ VM_LEAF_BASE(result_type, header)
> ++
> ++
> ++ #define JVM_END } }
> ++
> ++iff --git a/Makefile.am b/Makefile.am
> ++-- a/Makefile.am
> ++++ b/Makefile.am
> ++@ -362,7 +362,8 @@
> ++ patches/openjdk/7036148-npe-null-jmenu-name.patch \
> ++ patches/jtreg-bug7036148-test.patch \
> ++ patches/support_linux_3.patch \
> ++ patches/openjdk/6826104-npe_on_app_and_toolkit_modal_dialog_click.patch
> ++ patches/openjdk/6826104-npe_on_app_and_toolkit_modal_dialog_click.patch \
> ++ patches/openjdk/7103224-glibc_name_collision.patch
> ++
> ++if WITH_ALT_HSBUILD
> ++ICEDTEA_PATCHES += \
> ++iff --git a/patches/openjdk/7103224-glibc_name_collision.patch b/patches/openjdk/7103224-glibc_name_collision.patch
> ++ew file mode 100644
> ++-- /dev/null
> ++++ b/patches/openjdk/7103224-glibc_name_collision.patch
> ++@ -0,0 +1,236 @@
> ++# HG changeset patch
> ++# User never
> ++# Date 1319555835 25200
> ++# Node ID a6eef545f1a2ceca6aeadf688a965df600ffef28
> ++# Parent 2ec638646e86e455978c31a9d47fc0ec271ed926
> ++7103224: collision between __LEAF define in interfaceSupport.hpp and /usr/include/sys/cdefs.h with gcc
> ++Reviewed-by: never
> ++Contributed-by: Omair Majid <omajid@...>
> ++
> ++diff -r 2ec638646e86 -r a6eef545f1a2 src/share/vm/opto/addnode.cpp
> ++--- openjdk/hotspot/src/share/vm/opto/addnode.cpp Tue Oct 25 04:07:20 2011 -0700
> +++++ openjdk/hotspot/src/share/vm/opto/addnode.cpp Tue Oct 25 08:17:15 2011 -0700
> ++@@ -34,8 +34,6 @@
> ++
> ++ // Portions of code courtesy of Clifford Click
> ++
> ++-#define MAXFLOAT ((float)3.40282346638528860e+38)
> ++-
> ++ // Classic Add functionality. This covers all the usual 'add' behaviors for
> ++ // an algebraic ring. Add-integer, add-float, add-double, and binary-or are
> ++ // all inherited from this class. The various identity values are supplied
> ++diff -r 2ec638646e86 -r a6eef545f1a2 src/share/vm/prims/jniCheck.cpp
> ++--- openjdk/hotspot/src/share/vm/prims/jniCheck.cpp Tue Oct 25 04:07:20 2011 -0700
> +++++ openjdk/hotspot/src/share/vm/prims/jniCheck.cpp Tue Oct 25 08:17:15 2011 -0700
> ++@@ -107,7 +107,7 @@
> ++ if (env != xenv) { \
> ++ NativeReportJNIFatalError(thr, warn_wrong_jnienv); \
> ++ } \
> ++- __ENTRY(result_type, header, thr)
> +++ VM_ENTRY_BASE(result_type, header, thr)
> ++
> ++
> ++ #define UNCHECKED() (unchecked_jni_NativeInterface)
> ++diff -r 2ec638646e86 -r a6eef545f1a2 src/share/vm/prims/jvmtiEnter.xsl
> ++--- openjdk/hotspot/src/share/vm/prims/jvmtiEnter.xsl Tue Oct 25 04:07:20 2011 -0700
> +++++ openjdk/hotspot/src/share/vm/prims/jvmtiEnter.xsl Tue Oct 25 08:17:15 2011 -0700
> ++@@ -426,7 +426,7 @@
> ++ <xsl:value-of select="$space"/>
> ++ <xsl:text>ThreadInVMfromNative __tiv(current_thread);</xsl:text>
> ++ <xsl:value-of select="$space"/>
> ++- <xsl:text>__ENTRY(jvmtiError, </xsl:text>
> +++ <xsl:text>VM_ENTRY_BASE(jvmtiError, </xsl:text>
> ++ <xsl:apply-templates select="." mode="functionid"/>
> ++ <xsl:text> , current_thread)</xsl:text>
> ++ <xsl:value-of select="$space"/>
> ++diff -r 2ec638646e86 -r a6eef545f1a2 src/share/vm/prims/jvmtiEnv.cpp
> ++--- openjdk/hotspot/src/share/vm/prims/jvmtiEnv.cpp Tue Oct 25 04:07:20 2011 -0700
> +++++ openjdk/hotspot/src/share/vm/prims/jvmtiEnv.cpp Tue Oct 25 08:17:15 2011 -0700
> ++@@ -173,7 +173,7 @@
> ++ // from native so as to resolve the jthread.
> ++
> ++ ThreadInVMfromNative __tiv(current_thread);
> ++- __ENTRY(jvmtiError, JvmtiEnv::GetThreadLocalStorage , current_thread)
> +++ VM_ENTRY_BASE(jvmtiError, JvmtiEnv::GetThreadLocalStorage , current_thread)
> ++ debug_only(VMNativeEntryWrapper __vew;)
> ++
> ++ oop thread_oop = JNIHandles::resolve_external_guard(thread);
> ++diff -r 2ec638646e86 -r a6eef545f1a2 src/share/vm/prims/jvmtiExport.cpp
> ++--- openjdk/hotspot/src/share/vm/prims/jvmtiExport.cpp Tue Oct 25 04:07:20 2011 -0700
> +++++ openjdk/hotspot/src/share/vm/prims/jvmtiExport.cpp Tue Oct 25 08:17:15 2011 -0700
> ++@@ -373,7 +373,7 @@
> ++ JavaThread* current_thread = (JavaThread*) ThreadLocalStorage::thread();
> ++ // transition code: native to VM
> ++ ThreadInVMfromNative __tiv(current_thread);
> ++- __ENTRY(jvmtiEnv*, JvmtiExport::get_jvmti_interface, current_thread)
> +++ VM_ENTRY_BASE(jvmtiEnv*, JvmtiExport::get_jvmti_interface, current_thread)
> ++ debug_only(VMNativeEntryWrapper __vew;)
> ++
> ++ JvmtiEnv *jvmti_env = JvmtiEnv::create_a_jvmti(version);
> ++diff -r 2ec638646e86 -r a6eef545f1a2 src/share/vm/runtime/interfaceSupport.hpp
> ++--- openjdk/hotspot/src/share/vm/runtime/interfaceSupport.hpp Tue Oct 25 04:07:20 2011 -0700
> +++++ openjdk/hotspot/src/share/vm/runtime/interfaceSupport.hpp Tue Oct 25 08:17:15 2011 -0700
> ++@@ -72,9 +72,9 @@
> ++ }
> ++ };
> ++
> ++-// InterfaceSupport provides functionality used by the __LEAF and __ENTRY
> ++-// macros. These macros are used to guard entry points into the VM and
> ++-// perform checks upon leave of the VM.
> +++// InterfaceSupport provides functionality used by the VM_LEAF_BASE and
> +++// VM_ENTRY_BASE macros. These macros are used to guard entry points into
> +++// the VM and perform checks upon leave of the VM.
> ++
> ++
> ++ class InterfaceSupport: AllStatic {
> ++@@ -433,7 +433,7 @@
> ++
> ++ // LEAF routines do not lock, GC or throw exceptions
> ++
> ++-#define __LEAF(result_type, header) \
> +++#define VM_LEAF_BASE(result_type, header) \
> ++ TRACE_CALL(result_type, header) \
> ++ debug_only(NoHandleMark __hm;) \
> ++ /* begin of body */
> ++@@ -441,7 +441,7 @@
> ++
> ++ // ENTRY routines may lock, GC and throw exceptions
> ++
> ++-#define __ENTRY(result_type, header, thread) \
> +++#define VM_ENTRY_BASE(result_type, header, thread) \
> ++ TRACE_CALL(result_type, header) \
> ++ HandleMarkCleaner __hm(thread); \
> ++ Thread* THREAD = thread; \
> ++@@ -450,7 +450,7 @@
> ++
> ++ // QUICK_ENTRY routines behave like ENTRY but without a handle mark
> ++
> ++-#define __QUICK_ENTRY(result_type, header, thread) \
> +++#define VM_QUICK_ENTRY_BASE(result_type, header, thread) \
> ++ TRACE_CALL(result_type, header) \
> ++ debug_only(NoHandleMark __hm;) \
> ++ Thread* THREAD = thread; \
> ++@@ -463,20 +463,20 @@
> ++ #define IRT_ENTRY(result_type, header) \
> ++ result_type header { \
> ++ ThreadInVMfromJava __tiv(thread); \
> ++- __ENTRY(result_type, header, thread) \
> +++ VM_ENTRY_BASE(result_type, header, thread) \
> ++ debug_only(VMEntryWrapper __vew;)
> ++
> ++
> ++ #define IRT_LEAF(result_type, header) \
> ++ result_type header { \
> ++- __LEAF(result_type, header) \
> +++ VM_LEAF_BASE(result_type, header) \
> ++ debug_only(No_Safepoint_Verifier __nspv(true);)
> ++
> ++
> ++ #define IRT_ENTRY_NO_ASYNC(result_type, header) \
> ++ result_type header { \
> ++ ThreadInVMfromJavaNoAsyncException __tiv(thread); \
> ++- __ENTRY(result_type, header, thread) \
> +++ VM_ENTRY_BASE(result_type, header, thread) \
> ++ debug_only(VMEntryWrapper __vew;)
> ++
> ++ // Another special case for nmethod_entry_point so the nmethod that the
> ++@@ -487,7 +487,7 @@
> ++ result_type header { \
> ++ nmethodLocker _nmlock(nm); \
> ++ ThreadInVMfromJavaNoAsyncException __tiv(thread); \
> ++- __ENTRY(result_type, header, thread)
> +++ VM_ENTRY_BASE(result_type, header, thread)
> ++
> ++ #define IRT_END }
> ++
> ++@@ -497,20 +497,20 @@
> ++ #define JRT_ENTRY(result_type, header) \
> ++ result_type header { \
> ++ ThreadInVMfromJava __tiv(thread); \
> ++- __ENTRY(result_type, header, thread) \
> +++ VM_ENTRY_BASE(result_type, header, thread) \
> ++ debug_only(VMEntryWrapper __vew;)
> ++
> ++
> ++ #define JRT_LEAF(result_type, header) \
> ++ result_type header { \
> ++- __LEAF(result_type, header) \
> +++ VM_LEAF_BASE(result_type, header) \
> ++ debug_only(JRT_Leaf_Verifier __jlv;)
> ++
> ++
> ++ #define JRT_ENTRY_NO_ASYNC(result_type, header) \
> ++ result_type header { \
> ++ ThreadInVMfromJavaNoAsyncException __tiv(thread); \
> ++- __ENTRY(result_type, header, thread) \
> +++ VM_ENTRY_BASE(result_type, header, thread) \
> ++ debug_only(VMEntryWrapper __vew;)
> ++
> ++ // Same as JRT Entry but allows for return value after the safepoint
> ++@@ -543,11 +543,11 @@
> ++ assert( !VerifyJNIEnvThread || (thread == Thread::current()), "JNIEnv is only valid in same thread"); \
> ++ ThreadInVMfromNative __tiv(thread); \
> ++ debug_only(VMNativeEntryWrapper __vew;) \
> ++- __ENTRY(result_type, header, thread)
> +++ VM_ENTRY_BASE(result_type, header, thread)
> ++
> ++
> ++ // Ensure that the VMNativeEntryWrapper constructor, which can cause
> ++-// a GC, is called outside the NoHandleMark (set via __QUICK_ENTRY).
> +++// a GC, is called outside the NoHandleMark (set via VM_QUICK_ENTRY_BASE).
> ++ #define JNI_QUICK_ENTRY(result_type, header) \
> ++ extern "C" { \
> ++ result_type JNICALL header { \
> ++@@ -555,7 +555,7 @@
> ++ assert( !VerifyJNIEnvThread || (thread == Thread::current()), "JNIEnv is only valid in same thread"); \
> ++ ThreadInVMfromNative __tiv(thread); \
> ++ debug_only(VMNativeEntryWrapper __vew;) \
> ++- __QUICK_ENTRY(result_type, header, thread)
> +++ VM_QUICK_ENTRY_BASE(result_type, header, thread)
> ++
> ++
> ++ #define JNI_LEAF(result_type, header) \
> ++@@ -563,7 +563,7 @@
> ++ result_type JNICALL header { \
> ++ JavaThread* thread=JavaThread::thread_from_jni_environment(env); \
> ++ assert( !VerifyJNIEnvThread || (thread == Thread::current()), "JNIEnv is only valid in same thread"); \
> ++- __LEAF(result_type, header)
> +++ VM_LEAF_BASE(result_type, header)
> ++
> ++
> ++ // Close the routine and the extern "C"
> ++@@ -579,7 +579,7 @@
> ++ JavaThread* thread=JavaThread::thread_from_jni_environment(env); \
> ++ ThreadInVMfromNative __tiv(thread); \
> ++ debug_only(VMNativeEntryWrapper __vew;) \
> ++- __ENTRY(result_type, header, thread)
> +++ VM_ENTRY_BASE(result_type, header, thread)
> ++
> ++
> ++ #define JVM_ENTRY_NO_ENV(result_type, header) \
> ++@@ -588,7 +588,7 @@
> ++ JavaThread* thread = (JavaThread*)ThreadLocalStorage::thread(); \
> ++ ThreadInVMfromNative __tiv(thread); \
> ++ debug_only(VMNativeEntryWrapper __vew;) \
> ++- __ENTRY(result_type, header, thread)
> +++ VM_ENTRY_BASE(result_type, header, thread)
> ++
> ++
> ++ #define JVM_QUICK_ENTRY(result_type, header) \
> ++@@ -597,14 +597,14 @@
> ++ JavaThread* thread=JavaThread::thread_from_jni_environment(env); \
> ++ ThreadInVMfromNative __tiv(thread); \
> ++ debug_only(VMNativeEntryWrapper __vew;) \
> ++- __QUICK_ENTRY(result_type, header, thread)
> +++ VM_QUICK_ENTRY_BASE(result_type, header, thread)
> ++
> ++
> ++ #define JVM_LEAF(result_type, header) \
> ++ extern "C" { \
> ++ result_type JNICALL header { \
> ++ VM_Exit::block_if_vm_exited(); \
> ++- __LEAF(result_type, header)
> +++ VM_LEAF_BASE(result_type, header)
> ++
> ++
> ++ #define JVM_END } }
> diff --git a/recipes-core/icedtea/icedtea6-native_1.7.10.bb b/recipes-core/icedtea/icedtea6-native_1.7.10.bb
> index 54ac87d..a3edb98 100644
> --- a/recipes-core/icedtea/icedtea6-native_1.7.10.bb
> +++ b/recipes-core/icedtea/icedtea6-native_1.7.10.bb
> @@ -2,7 +2,7 @@ require ${PN}.inc
>
> LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
>
> -PR = "${INC_PR}.0"
> +PR = "${INC_PR}.1"
>
> SRC_URI = "\
> http://icedtea.classpath.org/download/source/icedtea6-${PV}.tar.gz;name=iced \
> @@ -12,6 +12,7 @@ SRC_URI = "\
> file://build-hacks-native.patch \
> file://icedtea-sane-x86-arch-name.patch \
> file://icedtea-javac-in.patch \
> + file://glibc_name_collision.patch \
> ${ICEDTEA_PATCHES} \
> "
> SRC_URI[ojdk.md5sum] = "078fe0ab744c98694decc77f2456c560"
> --
> 1.7.10.4
>
>
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [meta-java 2/5] icedtea6-native-1.7.10: backport S7103224
2012-10-07 22:29 ` Khem Raj
@ 2012-10-08 6:10 ` Steffen Sledz
0 siblings, 0 replies; 9+ messages in thread
From: Steffen Sledz @ 2012-10-08 6:10 UTC (permalink / raw)
To: openembedded-devel
On 08.10.2012 00:29, Khem Raj wrote:
> I have posted some patches which covered this as well some weeks ago
>
> see
>
> http://patchwork.openembedded.org/patch/33463/
If i'm right they were for 1.8.11 only.
> On Fri, Oct 5, 2012 at 12:46 PM, Steffen Sledz <sledz@dresearch-fe.de> wrote:
>> Backport the fix for 7103224.
>>
>> This fix allows icedtea6 to be built with (very) new glibc versions.
>> It was originally suggested by Omair Majid from RedHat.
>>
>> For details see:
>> <http://permalink.gmane.org/gmane.comp.java.openjdk.distro-packaging.devel/16103>
>> <http://mail.openjdk.java.net/pipermail/hotspot-dev/2011-October/004589.html>
>>
>> Signed-off-by: Steffen Sledz <sledz@dresearch-fe.de>
>> ---
>> .../glibc_name_collision.patch | 523 ++++++++++++++++++++
>> recipes-core/icedtea/icedtea6-native_1.7.10.bb | 3 +-
>> 2 files changed, 525 insertions(+), 1 deletion(-)
>> create mode 100644 recipes-core/icedtea/icedtea6-native-1.7.10/glibc_name_collision.patch
>>
>> diff --git a/recipes-core/icedtea/icedtea6-native-1.7.10/glibc_name_collision.patch b/recipes-core/icedtea/icedtea6-native-1.7.10/glibc_name_collision.patch
>> new file mode 100644
>> index 0000000..0702b77
>> --- /dev/null
>> +++ b/recipes-core/icedtea/icedtea6-native-1.7.10/glibc_name_collision.patch
>> @@ -0,0 +1,523 @@
>> +icedtea6-native-1.7.10: backport S7103224
>> +
>> +Backport the fix for 7103224.
>> +
>> +This fix allows icedtea6 to be built with (very) new glibc versions.
>> +It was originally suggested by Omair Majid from RedHat.
>> +
>> +For details see:
>> +<http://permalink.gmane.org/gmane.comp.java.openjdk.distro-packaging.devel/16103>
>> +<http://mail.openjdk.java.net/pipermail/hotspot-dev/2011-October/004589.html>
>> +
>> +Upstream-Status: Pending
>> +
>> +Signed-off-by: Steffen Sledz <sledz@dresearch-fe.de>
>> +
>> +diff -Nurd icedtea6-1.7.10.orig/Makefile.am icedtea6-1.7.10/Makefile.am
>> +--- icedtea6-1.7.10.orig/Makefile.am 2012-05-03 14:59:31.596076283 +0200
>> ++++ icedtea6-1.7.10/Makefile.am 2012-05-03 15:03:43.787566714 +0200
>> +@@ -393,7 +393,8 @@
>> + patches/openjdk/6541476-png-iTXt-chunk.patch \
>> + patches/openjdk/6782079-png_metadata_oom.patch \
>> + patches/rh676659-gcc-export-dynamic.patch \
>> +- patches/latent_jaxp_bug.patch
>> ++ patches/latent_jaxp_bug.patch \
>> ++ patches/openjdk/7103224-glibc_name_collision.patch
>> +
>> + if WITH_ALT_HSBUILD
>> + ICEDTEA_PATCHES += patches/hotspot/$(HSBUILD)/openjdk-6886353-ignore_deoptimizealot.patch \
>> +diff -Nurd icedtea6-1.7.10.orig/patches/openjdk/7103224-glibc_name_collision.patch icedtea6-1.7.10/patches/openjdk/7103224-glibc_name_collision.patch
>> +--- icedtea6-1.7.10.orig/patches/openjdk/7103224-glibc_name_collision.patch 1970-01-01 01:00:00.000000000 +0100
>> ++++ icedtea6-1.7.10/patches/openjdk/7103224-glibc_name_collision.patch 2012-05-03 15:01:27.817684671 +0200
>> +@@ -0,0 +1,491 @@
>> ++# HG changeset patch
>> ++# User never
>> ++# Date 1319555835 25200
>> ++# Node ID a6eef545f1a2ceca6aeadf688a965df600ffef28
>> ++# Parent 2ec638646e86e455978c31a9d47fc0ec271ed926
>> ++7103224: collision between __LEAF define in interfaceSupport.hpp and /usr/include/sys/cdefs.h with gcc
>> ++Reviewed-by: never
>> ++Contributed-by: Omair Majid <omajid@...>
>> ++
>> ++diff -r 2ec638646e86 -r a6eef545f1a2 src/share/vm/opto/addnode.cpp
>> ++--- openjdk/hotspot/src/share/vm/opto/addnode.cpp Tue Oct 25 04:07:20 2011 -0700
>> +++++ openjdk/hotspot/src/share/vm/opto/addnode.cpp Tue Oct 25 08:17:15 2011 -0700
>> ++@@ -34,8 +34,6 @@
>> ++
>> ++ // Portions of code courtesy of Clifford Click
>> ++
>> ++-#define MAXFLOAT ((float)3.40282346638528860e+38)
>> ++-
>> ++ // Classic Add functionality. This covers all the usual 'add' behaviors for
>> ++ // an algebraic ring. Add-integer, add-float, add-double, and binary-or are
>> ++ // all inherited from this class. The various identity values are supplied
>> ++diff -r 2ec638646e86 -r a6eef545f1a2 src/share/vm/prims/jniCheck.cpp
>> ++--- openjdk/hotspot/src/share/vm/prims/jniCheck.cpp Tue Oct 25 04:07:20 2011 -0700
>> +++++ openjdk/hotspot/src/share/vm/prims/jniCheck.cpp Tue Oct 25 08:17:15 2011 -0700
>> ++@@ -107,7 +107,7 @@
>> ++ if (env != xenv) { \
>> ++ NativeReportJNIFatalError(thr, warn_wrong_jnienv); \
>> ++ } \
>> ++- __ENTRY(result_type, header, thr)
>> +++ VM_ENTRY_BASE(result_type, header, thr)
>> ++
>> ++
>> ++ #define UNCHECKED() (unchecked_jni_NativeInterface)
>> ++diff -r 2ec638646e86 -r a6eef545f1a2 src/share/vm/prims/jvmtiEnter.xsl
>> ++--- openjdk/hotspot/src/share/vm/prims/jvmtiEnter.xsl Tue Oct 25 04:07:20 2011 -0700
>> +++++ openjdk/hotspot/src/share/vm/prims/jvmtiEnter.xsl Tue Oct 25 08:17:15 2011 -0700
>> ++@@ -426,7 +426,7 @@
>> ++ <xsl:value-of select="$space"/>
>> ++ <xsl:text>ThreadInVMfromNative __tiv(current_thread);</xsl:text>
>> ++ <xsl:value-of select="$space"/>
>> ++- <xsl:text>__ENTRY(jvmtiError, </xsl:text>
>> +++ <xsl:text>VM_ENTRY_BASE(jvmtiError, </xsl:text>
>> ++ <xsl:apply-templates select="." mode="functionid"/>
>> ++ <xsl:text> , current_thread)</xsl:text>
>> ++ <xsl:value-of select="$space"/>
>> ++diff -r 2ec638646e86 -r a6eef545f1a2 src/share/vm/prims/jvmtiEnv.cpp
>> ++--- openjdk/hotspot/src/share/vm/prims/jvmtiEnv.cpp Tue Oct 25 04:07:20 2011 -0700
>> +++++ openjdk/hotspot/src/share/vm/prims/jvmtiEnv.cpp Tue Oct 25 08:17:15 2011 -0700
>> ++@@ -173,7 +173,7 @@
>> ++ // from native so as to resolve the jthread.
>> ++
>> ++ ThreadInVMfromNative __tiv(current_thread);
>> ++- __ENTRY(jvmtiError, JvmtiEnv::GetThreadLocalStorage , current_thread)
>> +++ VM_ENTRY_BASE(jvmtiError, JvmtiEnv::GetThreadLocalStorage , current_thread)
>> ++ debug_only(VMNativeEntryWrapper __vew;)
>> ++
>> ++ oop thread_oop = JNIHandles::resolve_external_guard(thread);
>> ++diff -r 2ec638646e86 -r a6eef545f1a2 src/share/vm/prims/jvmtiExport.cpp
>> ++--- openjdk/hotspot/src/share/vm/prims/jvmtiExport.cpp Tue Oct 25 04:07:20 2011 -0700
>> +++++ openjdk/hotspot/src/share/vm/prims/jvmtiExport.cpp Tue Oct 25 08:17:15 2011 -0700
>> ++@@ -373,7 +373,7 @@
>> ++ JavaThread* current_thread = (JavaThread*) ThreadLocalStorage::thread();
>> ++ // transition code: native to VM
>> ++ ThreadInVMfromNative __tiv(current_thread);
>> ++- __ENTRY(jvmtiEnv*, JvmtiExport::get_jvmti_interface, current_thread)
>> +++ VM_ENTRY_BASE(jvmtiEnv*, JvmtiExport::get_jvmti_interface, current_thread)
>> ++ debug_only(VMNativeEntryWrapper __vew;)
>> ++
>> ++ JvmtiEnv *jvmti_env = JvmtiEnv::create_a_jvmti(version);
>> ++diff -r 2ec638646e86 -r a6eef545f1a2 src/share/vm/runtime/interfaceSupport.hpp
>> ++--- openjdk/hotspot/src/share/vm/runtime/interfaceSupport.hpp Tue Oct 25 04:07:20 2011 -0700
>> +++++ openjdk/hotspot/src/share/vm/runtime/interfaceSupport.hpp Tue Oct 25 08:17:15 2011 -0700
>> ++@@ -72,9 +72,9 @@
>> ++ }
>> ++ };
>> ++
>> ++-// InterfaceSupport provides functionality used by the __LEAF and __ENTRY
>> ++-// macros. These macros are used to guard entry points into the VM and
>> ++-// perform checks upon leave of the VM.
>> +++// InterfaceSupport provides functionality used by the VM_LEAF_BASE and
>> +++// VM_ENTRY_BASE macros. These macros are used to guard entry points into
>> +++// the VM and perform checks upon leave of the VM.
>> ++
>> ++
>> ++ class InterfaceSupport: AllStatic {
>> ++@@ -433,7 +433,7 @@
>> ++
>> ++ // LEAF routines do not lock, GC or throw exceptions
>> ++
>> ++-#define __LEAF(result_type, header) \
>> +++#define VM_LEAF_BASE(result_type, header) \
>> ++ TRACE_CALL(result_type, header) \
>> ++ debug_only(NoHandleMark __hm;) \
>> ++ /* begin of body */
>> ++@@ -441,7 +441,7 @@
>> ++
>> ++ // ENTRY routines may lock, GC and throw exceptions
>> ++
>> ++-#define __ENTRY(result_type, header, thread) \
>> +++#define VM_ENTRY_BASE(result_type, header, thread) \
>> ++ TRACE_CALL(result_type, header) \
>> ++ HandleMarkCleaner __hm(thread); \
>> ++ Thread* THREAD = thread; \
>> ++@@ -450,7 +450,7 @@
>> ++
>> ++ // QUICK_ENTRY routines behave like ENTRY but without a handle mark
>> ++
>> ++-#define __QUICK_ENTRY(result_type, header, thread) \
>> +++#define VM_QUICK_ENTRY_BASE(result_type, header, thread) \
>> ++ TRACE_CALL(result_type, header) \
>> ++ debug_only(NoHandleMark __hm;) \
>> ++ Thread* THREAD = thread; \
>> ++@@ -463,20 +463,20 @@
>> ++ #define IRT_ENTRY(result_type, header) \
>> ++ result_type header { \
>> ++ ThreadInVMfromJava __tiv(thread); \
>> ++- __ENTRY(result_type, header, thread) \
>> +++ VM_ENTRY_BASE(result_type, header, thread) \
>> ++ debug_only(VMEntryWrapper __vew;)
>> ++
>> ++
>> ++ #define IRT_LEAF(result_type, header) \
>> ++ result_type header { \
>> ++- __LEAF(result_type, header) \
>> +++ VM_LEAF_BASE(result_type, header) \
>> ++ debug_only(No_Safepoint_Verifier __nspv(true);)
>> ++
>> ++
>> ++ #define IRT_ENTRY_NO_ASYNC(result_type, header) \
>> ++ result_type header { \
>> ++ ThreadInVMfromJavaNoAsyncException __tiv(thread); \
>> ++- __ENTRY(result_type, header, thread) \
>> +++ VM_ENTRY_BASE(result_type, header, thread) \
>> ++ debug_only(VMEntryWrapper __vew;)
>> ++
>> ++ // Another special case for nmethod_entry_point so the nmethod that the
>> ++@@ -487,7 +487,7 @@
>> ++ result_type header { \
>> ++ nmethodLocker _nmlock(nm); \
>> ++ ThreadInVMfromJavaNoAsyncException __tiv(thread); \
>> ++- __ENTRY(result_type, header, thread)
>> +++ VM_ENTRY_BASE(result_type, header, thread)
>> ++
>> ++ #define IRT_END }
>> ++
>> ++@@ -497,20 +497,20 @@
>> ++ #define JRT_ENTRY(result_type, header) \
>> ++ result_type header { \
>> ++ ThreadInVMfromJava __tiv(thread); \
>> ++- __ENTRY(result_type, header, thread) \
>> +++ VM_ENTRY_BASE(result_type, header, thread) \
>> ++ debug_only(VMEntryWrapper __vew;)
>> ++
>> ++
>> ++ #define JRT_LEAF(result_type, header) \
>> ++ result_type header { \
>> ++- __LEAF(result_type, header) \
>> +++ VM_LEAF_BASE(result_type, header) \
>> ++ debug_only(JRT_Leaf_Verifier __jlv;)
>> ++
>> ++
>> ++ #define JRT_ENTRY_NO_ASYNC(result_type, header) \
>> ++ result_type header { \
>> ++ ThreadInVMfromJavaNoAsyncException __tiv(thread); \
>> ++- __ENTRY(result_type, header, thread) \
>> +++ VM_ENTRY_BASE(result_type, header, thread) \
>> ++ debug_only(VMEntryWrapper __vew;)
>> ++
>> ++ // Same as JRT Entry but allows for return value after the safepoint
>> ++@@ -543,11 +543,11 @@
>> ++ assert( !VerifyJNIEnvThread || (thread == Thread::current()), "JNIEnv is only valid in same thread"); \
>> ++ ThreadInVMfromNative __tiv(thread); \
>> ++ debug_only(VMNativeEntryWrapper __vew;) \
>> ++- __ENTRY(result_type, header, thread)
>> +++ VM_ENTRY_BASE(result_type, header, thread)
>> ++
>> ++
>> ++ // Ensure that the VMNativeEntryWrapper constructor, which can cause
>> ++-// a GC, is called outside the NoHandleMark (set via __QUICK_ENTRY).
>> +++// a GC, is called outside the NoHandleMark (set via VM_QUICK_ENTRY_BASE).
>> ++ #define JNI_QUICK_ENTRY(result_type, header) \
>> ++ extern "C" { \
>> ++ result_type JNICALL header { \
>> ++@@ -555,7 +555,7 @@
>> ++ assert( !VerifyJNIEnvThread || (thread == Thread::current()), "JNIEnv is only valid in same thread"); \
>> ++ ThreadInVMfromNative __tiv(thread); \
>> ++ debug_only(VMNativeEntryWrapper __vew;) \
>> ++- __QUICK_ENTRY(result_type, header, thread)
>> +++ VM_QUICK_ENTRY_BASE(result_type, header, thread)
>> ++
>> ++
>> ++ #define JNI_LEAF(result_type, header) \
>> ++@@ -563,7 +563,7 @@
>> ++ result_type JNICALL header { \
>> ++ JavaThread* thread=JavaThread::thread_from_jni_environment(env); \
>> ++ assert( !VerifyJNIEnvThread || (thread == Thread::current()), "JNIEnv is only valid in same thread"); \
>> ++- __LEAF(result_type, header)
>> +++ VM_LEAF_BASE(result_type, header)
>> ++
>> ++
>> ++ // Close the routine and the extern "C"
>> ++@@ -579,7 +579,7 @@
>> ++ JavaThread* thread=JavaThread::thread_from_jni_environment(env); \
>> ++ ThreadInVMfromNative __tiv(thread); \
>> ++ debug_only(VMNativeEntryWrapper __vew;) \
>> ++- __ENTRY(result_type, header, thread)
>> +++ VM_ENTRY_BASE(result_type, header, thread)
>> ++
>> ++
>> ++ #define JVM_ENTRY_NO_ENV(result_type, header) \
>> ++@@ -588,7 +588,7 @@
>> ++ JavaThread* thread = (JavaThread*)ThreadLocalStorage::thread(); \
>> ++ ThreadInVMfromNative __tiv(thread); \
>> ++ debug_only(VMNativeEntryWrapper __vew;) \
>> ++- __ENTRY(result_type, header, thread)
>> +++ VM_ENTRY_BASE(result_type, header, thread)
>> ++
>> ++
>> ++ #define JVM_QUICK_ENTRY(result_type, header) \
>> ++@@ -597,14 +597,14 @@
>> ++ JavaThread* thread=JavaThread::thread_from_jni_environment(env); \
>> ++ ThreadInVMfromNative __tiv(thread); \
>> ++ debug_only(VMNativeEntryWrapper __vew;) \
>> ++- __QUICK_ENTRY(result_type, header, thread)
>> +++ VM_QUICK_ENTRY_BASE(result_type, header, thread)
>> ++
>> ++
>> ++ #define JVM_LEAF(result_type, header) \
>> ++ extern "C" { \
>> ++ result_type JNICALL header { \
>> ++ VM_Exit::block_if_vm_exited(); \
>> ++- __LEAF(result_type, header)
>> +++ VM_LEAF_BASE(result_type, header)
>> ++
>> ++
>> ++ #define JVM_END } }
>> ++
>> ++iff --git a/Makefile.am b/Makefile.am
>> ++-- a/Makefile.am
>> ++++ b/Makefile.am
>> ++@ -362,7 +362,8 @@
>> ++ patches/openjdk/7036148-npe-null-jmenu-name.patch \
>> ++ patches/jtreg-bug7036148-test.patch \
>> ++ patches/support_linux_3.patch \
>> ++ patches/openjdk/6826104-npe_on_app_and_toolkit_modal_dialog_click.patch
>> ++ patches/openjdk/6826104-npe_on_app_and_toolkit_modal_dialog_click.patch \
>> ++ patches/openjdk/7103224-glibc_name_collision.patch
>> ++
>> ++if WITH_ALT_HSBUILD
>> ++ICEDTEA_PATCHES += \
>> ++iff --git a/patches/openjdk/7103224-glibc_name_collision.patch b/patches/openjdk/7103224-glibc_name_collision.patch
>> ++ew file mode 100644
>> ++-- /dev/null
>> ++++ b/patches/openjdk/7103224-glibc_name_collision.patch
>> ++@ -0,0 +1,236 @@
>> ++# HG changeset patch
>> ++# User never
>> ++# Date 1319555835 25200
>> ++# Node ID a6eef545f1a2ceca6aeadf688a965df600ffef28
>> ++# Parent 2ec638646e86e455978c31a9d47fc0ec271ed926
>> ++7103224: collision between __LEAF define in interfaceSupport.hpp and /usr/include/sys/cdefs.h with gcc
>> ++Reviewed-by: never
>> ++Contributed-by: Omair Majid <omajid@...>
>> ++
>> ++diff -r 2ec638646e86 -r a6eef545f1a2 src/share/vm/opto/addnode.cpp
>> ++--- openjdk/hotspot/src/share/vm/opto/addnode.cpp Tue Oct 25 04:07:20 2011 -0700
>> +++++ openjdk/hotspot/src/share/vm/opto/addnode.cpp Tue Oct 25 08:17:15 2011 -0700
>> ++@@ -34,8 +34,6 @@
>> ++
>> ++ // Portions of code courtesy of Clifford Click
>> ++
>> ++-#define MAXFLOAT ((float)3.40282346638528860e+38)
>> ++-
>> ++ // Classic Add functionality. This covers all the usual 'add' behaviors for
>> ++ // an algebraic ring. Add-integer, add-float, add-double, and binary-or are
>> ++ // all inherited from this class. The various identity values are supplied
>> ++diff -r 2ec638646e86 -r a6eef545f1a2 src/share/vm/prims/jniCheck.cpp
>> ++--- openjdk/hotspot/src/share/vm/prims/jniCheck.cpp Tue Oct 25 04:07:20 2011 -0700
>> +++++ openjdk/hotspot/src/share/vm/prims/jniCheck.cpp Tue Oct 25 08:17:15 2011 -0700
>> ++@@ -107,7 +107,7 @@
>> ++ if (env != xenv) { \
>> ++ NativeReportJNIFatalError(thr, warn_wrong_jnienv); \
>> ++ } \
>> ++- __ENTRY(result_type, header, thr)
>> +++ VM_ENTRY_BASE(result_type, header, thr)
>> ++
>> ++
>> ++ #define UNCHECKED() (unchecked_jni_NativeInterface)
>> ++diff -r 2ec638646e86 -r a6eef545f1a2 src/share/vm/prims/jvmtiEnter.xsl
>> ++--- openjdk/hotspot/src/share/vm/prims/jvmtiEnter.xsl Tue Oct 25 04:07:20 2011 -0700
>> +++++ openjdk/hotspot/src/share/vm/prims/jvmtiEnter.xsl Tue Oct 25 08:17:15 2011 -0700
>> ++@@ -426,7 +426,7 @@
>> ++ <xsl:value-of select="$space"/>
>> ++ <xsl:text>ThreadInVMfromNative __tiv(current_thread);</xsl:text>
>> ++ <xsl:value-of select="$space"/>
>> ++- <xsl:text>__ENTRY(jvmtiError, </xsl:text>
>> +++ <xsl:text>VM_ENTRY_BASE(jvmtiError, </xsl:text>
>> ++ <xsl:apply-templates select="." mode="functionid"/>
>> ++ <xsl:text> , current_thread)</xsl:text>
>> ++ <xsl:value-of select="$space"/>
>> ++diff -r 2ec638646e86 -r a6eef545f1a2 src/share/vm/prims/jvmtiEnv.cpp
>> ++--- openjdk/hotspot/src/share/vm/prims/jvmtiEnv.cpp Tue Oct 25 04:07:20 2011 -0700
>> +++++ openjdk/hotspot/src/share/vm/prims/jvmtiEnv.cpp Tue Oct 25 08:17:15 2011 -0700
>> ++@@ -173,7 +173,7 @@
>> ++ // from native so as to resolve the jthread.
>> ++
>> ++ ThreadInVMfromNative __tiv(current_thread);
>> ++- __ENTRY(jvmtiError, JvmtiEnv::GetThreadLocalStorage , current_thread)
>> +++ VM_ENTRY_BASE(jvmtiError, JvmtiEnv::GetThreadLocalStorage , current_thread)
>> ++ debug_only(VMNativeEntryWrapper __vew;)
>> ++
>> ++ oop thread_oop = JNIHandles::resolve_external_guard(thread);
>> ++diff -r 2ec638646e86 -r a6eef545f1a2 src/share/vm/prims/jvmtiExport.cpp
>> ++--- openjdk/hotspot/src/share/vm/prims/jvmtiExport.cpp Tue Oct 25 04:07:20 2011 -0700
>> +++++ openjdk/hotspot/src/share/vm/prims/jvmtiExport.cpp Tue Oct 25 08:17:15 2011 -0700
>> ++@@ -373,7 +373,7 @@
>> ++ JavaThread* current_thread = (JavaThread*) ThreadLocalStorage::thread();
>> ++ // transition code: native to VM
>> ++ ThreadInVMfromNative __tiv(current_thread);
>> ++- __ENTRY(jvmtiEnv*, JvmtiExport::get_jvmti_interface, current_thread)
>> +++ VM_ENTRY_BASE(jvmtiEnv*, JvmtiExport::get_jvmti_interface, current_thread)
>> ++ debug_only(VMNativeEntryWrapper __vew;)
>> ++
>> ++ JvmtiEnv *jvmti_env = JvmtiEnv::create_a_jvmti(version);
>> ++diff -r 2ec638646e86 -r a6eef545f1a2 src/share/vm/runtime/interfaceSupport.hpp
>> ++--- openjdk/hotspot/src/share/vm/runtime/interfaceSupport.hpp Tue Oct 25 04:07:20 2011 -0700
>> +++++ openjdk/hotspot/src/share/vm/runtime/interfaceSupport.hpp Tue Oct 25 08:17:15 2011 -0700
>> ++@@ -72,9 +72,9 @@
>> ++ }
>> ++ };
>> ++
>> ++-// InterfaceSupport provides functionality used by the __LEAF and __ENTRY
>> ++-// macros. These macros are used to guard entry points into the VM and
>> ++-// perform checks upon leave of the VM.
>> +++// InterfaceSupport provides functionality used by the VM_LEAF_BASE and
>> +++// VM_ENTRY_BASE macros. These macros are used to guard entry points into
>> +++// the VM and perform checks upon leave of the VM.
>> ++
>> ++
>> ++ class InterfaceSupport: AllStatic {
>> ++@@ -433,7 +433,7 @@
>> ++
>> ++ // LEAF routines do not lock, GC or throw exceptions
>> ++
>> ++-#define __LEAF(result_type, header) \
>> +++#define VM_LEAF_BASE(result_type, header) \
>> ++ TRACE_CALL(result_type, header) \
>> ++ debug_only(NoHandleMark __hm;) \
>> ++ /* begin of body */
>> ++@@ -441,7 +441,7 @@
>> ++
>> ++ // ENTRY routines may lock, GC and throw exceptions
>> ++
>> ++-#define __ENTRY(result_type, header, thread) \
>> +++#define VM_ENTRY_BASE(result_type, header, thread) \
>> ++ TRACE_CALL(result_type, header) \
>> ++ HandleMarkCleaner __hm(thread); \
>> ++ Thread* THREAD = thread; \
>> ++@@ -450,7 +450,7 @@
>> ++
>> ++ // QUICK_ENTRY routines behave like ENTRY but without a handle mark
>> ++
>> ++-#define __QUICK_ENTRY(result_type, header, thread) \
>> +++#define VM_QUICK_ENTRY_BASE(result_type, header, thread) \
>> ++ TRACE_CALL(result_type, header) \
>> ++ debug_only(NoHandleMark __hm;) \
>> ++ Thread* THREAD = thread; \
>> ++@@ -463,20 +463,20 @@
>> ++ #define IRT_ENTRY(result_type, header) \
>> ++ result_type header { \
>> ++ ThreadInVMfromJava __tiv(thread); \
>> ++- __ENTRY(result_type, header, thread) \
>> +++ VM_ENTRY_BASE(result_type, header, thread) \
>> ++ debug_only(VMEntryWrapper __vew;)
>> ++
>> ++
>> ++ #define IRT_LEAF(result_type, header) \
>> ++ result_type header { \
>> ++- __LEAF(result_type, header) \
>> +++ VM_LEAF_BASE(result_type, header) \
>> ++ debug_only(No_Safepoint_Verifier __nspv(true);)
>> ++
>> ++
>> ++ #define IRT_ENTRY_NO_ASYNC(result_type, header) \
>> ++ result_type header { \
>> ++ ThreadInVMfromJavaNoAsyncException __tiv(thread); \
>> ++- __ENTRY(result_type, header, thread) \
>> +++ VM_ENTRY_BASE(result_type, header, thread) \
>> ++ debug_only(VMEntryWrapper __vew;)
>> ++
>> ++ // Another special case for nmethod_entry_point so the nmethod that the
>> ++@@ -487,7 +487,7 @@
>> ++ result_type header { \
>> ++ nmethodLocker _nmlock(nm); \
>> ++ ThreadInVMfromJavaNoAsyncException __tiv(thread); \
>> ++- __ENTRY(result_type, header, thread)
>> +++ VM_ENTRY_BASE(result_type, header, thread)
>> ++
>> ++ #define IRT_END }
>> ++
>> ++@@ -497,20 +497,20 @@
>> ++ #define JRT_ENTRY(result_type, header) \
>> ++ result_type header { \
>> ++ ThreadInVMfromJava __tiv(thread); \
>> ++- __ENTRY(result_type, header, thread) \
>> +++ VM_ENTRY_BASE(result_type, header, thread) \
>> ++ debug_only(VMEntryWrapper __vew;)
>> ++
>> ++
>> ++ #define JRT_LEAF(result_type, header) \
>> ++ result_type header { \
>> ++- __LEAF(result_type, header) \
>> +++ VM_LEAF_BASE(result_type, header) \
>> ++ debug_only(JRT_Leaf_Verifier __jlv;)
>> ++
>> ++
>> ++ #define JRT_ENTRY_NO_ASYNC(result_type, header) \
>> ++ result_type header { \
>> ++ ThreadInVMfromJavaNoAsyncException __tiv(thread); \
>> ++- __ENTRY(result_type, header, thread) \
>> +++ VM_ENTRY_BASE(result_type, header, thread) \
>> ++ debug_only(VMEntryWrapper __vew;)
>> ++
>> ++ // Same as JRT Entry but allows for return value after the safepoint
>> ++@@ -543,11 +543,11 @@
>> ++ assert( !VerifyJNIEnvThread || (thread == Thread::current()), "JNIEnv is only valid in same thread"); \
>> ++ ThreadInVMfromNative __tiv(thread); \
>> ++ debug_only(VMNativeEntryWrapper __vew;) \
>> ++- __ENTRY(result_type, header, thread)
>> +++ VM_ENTRY_BASE(result_type, header, thread)
>> ++
>> ++
>> ++ // Ensure that the VMNativeEntryWrapper constructor, which can cause
>> ++-// a GC, is called outside the NoHandleMark (set via __QUICK_ENTRY).
>> +++// a GC, is called outside the NoHandleMark (set via VM_QUICK_ENTRY_BASE).
>> ++ #define JNI_QUICK_ENTRY(result_type, header) \
>> ++ extern "C" { \
>> ++ result_type JNICALL header { \
>> ++@@ -555,7 +555,7 @@
>> ++ assert( !VerifyJNIEnvThread || (thread == Thread::current()), "JNIEnv is only valid in same thread"); \
>> ++ ThreadInVMfromNative __tiv(thread); \
>> ++ debug_only(VMNativeEntryWrapper __vew;) \
>> ++- __QUICK_ENTRY(result_type, header, thread)
>> +++ VM_QUICK_ENTRY_BASE(result_type, header, thread)
>> ++
>> ++
>> ++ #define JNI_LEAF(result_type, header) \
>> ++@@ -563,7 +563,7 @@
>> ++ result_type JNICALL header { \
>> ++ JavaThread* thread=JavaThread::thread_from_jni_environment(env); \
>> ++ assert( !VerifyJNIEnvThread || (thread == Thread::current()), "JNIEnv is only valid in same thread"); \
>> ++- __LEAF(result_type, header)
>> +++ VM_LEAF_BASE(result_type, header)
>> ++
>> ++
>> ++ // Close the routine and the extern "C"
>> ++@@ -579,7 +579,7 @@
>> ++ JavaThread* thread=JavaThread::thread_from_jni_environment(env); \
>> ++ ThreadInVMfromNative __tiv(thread); \
>> ++ debug_only(VMNativeEntryWrapper __vew;) \
>> ++- __ENTRY(result_type, header, thread)
>> +++ VM_ENTRY_BASE(result_type, header, thread)
>> ++
>> ++
>> ++ #define JVM_ENTRY_NO_ENV(result_type, header) \
>> ++@@ -588,7 +588,7 @@
>> ++ JavaThread* thread = (JavaThread*)ThreadLocalStorage::thread(); \
>> ++ ThreadInVMfromNative __tiv(thread); \
>> ++ debug_only(VMNativeEntryWrapper __vew;) \
>> ++- __ENTRY(result_type, header, thread)
>> +++ VM_ENTRY_BASE(result_type, header, thread)
>> ++
>> ++
>> ++ #define JVM_QUICK_ENTRY(result_type, header) \
>> ++@@ -597,14 +597,14 @@
>> ++ JavaThread* thread=JavaThread::thread_from_jni_environment(env); \
>> ++ ThreadInVMfromNative __tiv(thread); \
>> ++ debug_only(VMNativeEntryWrapper __vew;) \
>> ++- __QUICK_ENTRY(result_type, header, thread)
>> +++ VM_QUICK_ENTRY_BASE(result_type, header, thread)
>> ++
>> ++
>> ++ #define JVM_LEAF(result_type, header) \
>> ++ extern "C" { \
>> ++ result_type JNICALL header { \
>> ++ VM_Exit::block_if_vm_exited(); \
>> ++- __LEAF(result_type, header)
>> +++ VM_LEAF_BASE(result_type, header)
>> ++
>> ++
>> ++ #define JVM_END } }
>> diff --git a/recipes-core/icedtea/icedtea6-native_1.7.10.bb b/recipes-core/icedtea/icedtea6-native_1.7.10.bb
>> index 54ac87d..a3edb98 100644
>> --- a/recipes-core/icedtea/icedtea6-native_1.7.10.bb
>> +++ b/recipes-core/icedtea/icedtea6-native_1.7.10.bb
>> @@ -2,7 +2,7 @@ require ${PN}.inc
>>
>> LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
>>
>> -PR = "${INC_PR}.0"
>> +PR = "${INC_PR}.1"
>>
>> SRC_URI = "\
>> http://icedtea.classpath.org/download/source/icedtea6-${PV}.tar.gz;name=iced \
>> @@ -12,6 +12,7 @@ SRC_URI = "\
>> file://build-hacks-native.patch \
>> file://icedtea-sane-x86-arch-name.patch \
>> file://icedtea-javac-in.patch \
>> + file://glibc_name_collision.patch \
>> ${ICEDTEA_PATCHES} \
>> "
>> SRC_URI[ojdk.md5sum] = "078fe0ab744c98694decc77f2456c560"
>> --
>> 1.7.10.4
>>
>>
>> _______________________________________________
>> Openembedded-devel mailing list
>> Openembedded-devel@lists.openembedded.org
>> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel
>
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel
>
--
DResearch Fahrzeugelektronik GmbH
Otto-Schmirgal-Str. 3, 10319 Berlin, Germany
Tel: +49 30 515932-237 mailto:sledz@dresearch-fe.de
Fax: +49 30 515932-299
Geschäftsführer: Dr. Michael Weber, Werner Mögle;
Amtsgericht Berlin Charlottenburg; HRB 130120 B;
Ust.-IDNr. DE273952058
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [meta-java 0/5] icedtea build fixes
2012-10-05 19:45 [meta-java 0/5] icedtea build fixes Steffen Sledz
` (4 preceding siblings ...)
2012-10-05 19:46 ` [meta-java 5/5] icedtea6-native: fix build problem Steffen Sledz
@ 2012-10-18 13:30 ` Steffen Sledz
5 siblings, 0 replies; 9+ messages in thread
From: Steffen Sledz @ 2012-10-18 13:30 UTC (permalink / raw)
To: Henning Heinold; +Cc: openembedded-devel
On 05.10.2012 21:45, Steffen Sledz wrote:
> Hi meta-jav maintainers,
>
> this is a set of patches which make icedtea6-native-1.7.10 and
> icedtea6-native-1.8.11 buildable for us.
>
> The following changes since commit da13c12203a4ba9020d7083861c0038c8ee67c88:
>
> openjdk-6: update to version 1.11.4 (2012-09-10 20:43:55 +0200)
>
> are available in the git repository at:
>
> git://github.com/sledz/meta-java pull-request-1
> https://github.com/sledz/meta-java/tree/pull-request-1
>
> Steffen Sledz (5):
> icedtea6-native-1.7.10: add missing LIC_FILES_CHKSUM
> icedtea6-native-1.7.10: backport S7103224
> icedtea6-native: fix problem on build hosts with linux kernel 3.x
> icedtea6-native: fix compile error
> icedtea6-native: fix build problem
Ping!
--
DResearch Fahrzeugelektronik GmbH
Otto-Schmirgal-Str. 3, 10319 Berlin, Germany
Tel: +49 30 515932-237 mailto:sledz@dresearch-fe.de
Fax: +49 30 515932-299
Geschäftsführer: Dr. Michael Weber, Werner Mögle;
Amtsgericht Berlin Charlottenburg; HRB 130120 B;
Ust.-IDNr. DE273952058
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2012-10-18 13:43 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-10-05 19:45 [meta-java 0/5] icedtea build fixes Steffen Sledz
2012-10-05 19:46 ` [meta-java 1/5] icedtea6-native-1.7.10: add missing LIC_FILES_CHKSUM Steffen Sledz
2012-10-05 19:46 ` [meta-java 2/5] icedtea6-native-1.7.10: backport S7103224 Steffen Sledz
2012-10-07 22:29 ` Khem Raj
2012-10-08 6:10 ` Steffen Sledz
2012-10-05 19:46 ` [meta-java 3/5] icedtea6-native: fix problem on build hosts with linux kernel 3.x Steffen Sledz
2012-10-05 19:46 ` [meta-java 4/5] icedtea6-native: fix compile error Steffen Sledz
2012-10-05 19:46 ` [meta-java 5/5] icedtea6-native: fix build problem Steffen Sledz
2012-10-18 13:30 ` [meta-java 0/5] icedtea build fixes Steffen Sledz
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox