* [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
* 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
* [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 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