diff options
author | jkim <jkim@FreeBSD.org> | 2016-06-13 20:00:19 +0800 |
---|---|---|
committer | jkim <jkim@FreeBSD.org> | 2016-06-13 20:00:19 +0800 |
commit | ac0fb9ac0fac6413cc1d34a674c50083728df92d (patch) | |
tree | 14373e8f140a7482a1886ba36184a0003779edb6 /java | |
parent | 743a1c60b1c5261ca149f127d68dbff6a1297d54 (diff) | |
download | freebsd-ports-gnome-ac0fb9ac0fac6413cc1d34a674c50083728df92d.tar.gz freebsd-ports-gnome-ac0fb9ac0fac6413cc1d34a674c50083728df92d.tar.zst freebsd-ports-gnome-ac0fb9ac0fac6413cc1d34a674c50083728df92d.zip |
Unbreak arm.
- Remove armv6hf because it is default now.
- Merge a HotSpot fix from src/os_cpu/linux_zero/vm/os_linux_zero.cpp.
http://hg.openjdk.java.net/jdk8u/jdk8u/hotspot/rev/c6ef40024aa2
- Add an upstream patch to unbreak Zero.
http://hg.openjdk.java.net/jdk8u/jdk8u/hotspot/rev/8f58998958ca
- Extend PR209599 to cover arm platforms.
Diffstat (limited to 'java')
4 files changed, 63 insertions, 10 deletions
diff --git a/java/openjdk8/Makefile b/java/openjdk8/Makefile index 3ea1ebbd7e6d..e40895756525 100644 --- a/java/openjdk8/Makefile +++ b/java/openjdk8/Makefile @@ -2,7 +2,7 @@ PORTNAME= openjdk PORTVERSION= ${JDK_MAJOR_VERSION}.${JDK_UPDATE_VERSION}.${JDK_BUILD_NUMBER:S/^0//} -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= java devel MASTER_SITES= http://download.java.net/openjdk/jdk${JDK_MAJOR_VERSION}/promoted/b${DIST_BUILD_NUMBER}/:jdk \ https://adopt-openjdk.ci.cloudbees.com/job/jtreg/${JTREG_JENKINS_BUILD}/artifact/:jtreg \ @@ -51,7 +51,7 @@ USE_XORG= x11 xext xi xrender xt xtst BUILD_DEPENDS+= ${UNZIP_CMD}:archivers/unzip .endif -ONLY_FOR_ARCHS= amd64 armv6 armv6hf i386 +ONLY_FOR_ARCHS= amd64 armv6 i386 WRKSRC= ${WRKDIR}/${PORTNAME} DOS2UNIX_FILES= jdk/src/bsd/doc/man/appletviewer.1 \ @@ -195,8 +195,8 @@ JRE_IMAGEDIR= ${JDK_BUILDDIR}/images/j2sdk-image/jre .else JRE_IMAGEDIR= ${JDK_BUILDDIR}/images/j2re-image .endif -JDK_JVMDIR= lib/${ARCH:C/armv6.*/arm/} -JDK_OSARCH= bsd-${ARCH:S/amd64/x86_64/:C/armv6.*/arm/:S/i386/x86/} +JDK_JVMDIR= lib/${ARCH:S/armv6/arm/} +JDK_OSARCH= bsd-${ARCH:S/amd64/x86_64/:S/armv6/arm/:S/i386/x86/} INSTALLDIR= ${PREFIX}/${PKGBASE} NO_CCACHE= yes @@ -287,7 +287,7 @@ CONFIGURE_ARGS+= --with-tools-dir="${TOOLS_DIR:u:S/ /:/g}" .include <bsd.port.pre.mk> -.if ${ARCH:Marmv6*} || ${ARCH} == "i386" +.if ${ARCH} == "armv6" || ${ARCH} == "i386" # XXX We must limit max heap size for 32-bit targets. CONFIGURE_ARGS+= --with-boot-jdk-jvmargs="-Xmx768m" MAKE_ENV+= JAVADOC_CMD_MEM="-Xmx768m" @@ -312,7 +312,7 @@ LIB_DEPENDS+= libffi.so:devel/libffi BOOTSTRAP_JDKS= ${LOCALBASE}/openjdk8 \ ${LOCALBASE}/openjdk7 -.if ${ARCH:Marmv6*} +.if ${ARCH} == "armv6" BOOTSTRAP_JDKS+= ${LOCALBASE}/bootstrap-openjdk .endif @@ -325,7 +325,7 @@ BOOTSTRAPJDKDIR= ${BJDK} # if no valid jdk found, set dependency .if !defined(BOOTSTRAPJDKDIR) -. if ${ARCH:Marmv6*} +. if ${ARCH} == "armv6" # bootstrap-openjdk is based on openjdk7 and can compile openjdk8 BOOTSTRAPJDKDIR?= ${LOCALBASE}/bootstrap-openjdk BUILD_DEPENDS+= ${BOOTSTRAPJDKDIR}/bin/javac:java/bootstrap-openjdk diff --git a/java/openjdk8/files/patch-hotspot_src_cpu_zero_vm_cppInterpreter__zero.cpp b/java/openjdk8/files/patch-hotspot_src_cpu_zero_vm_cppInterpreter__zero.cpp new file mode 100644 index 000000000000..90749da16631 --- /dev/null +++ b/java/openjdk8/files/patch-hotspot_src_cpu_zero_vm_cppInterpreter__zero.cpp @@ -0,0 +1,21 @@ +--- hotspot/src/cpu/zero/vm/cppInterpreter_zero.cpp Mon Apr 25 21:03:53 2016 +0000 ++++ hotspot/src/cpu/zero/vm/cppInterpreter_zero.cpp Tue Apr 26 02:49:59 2016 +0100 +@@ -220,9 +220,16 @@ + // Push our result + for (int i = 0; i < result_slots; i++) { + // Adjust result to smaller +- intptr_t res = result[-i]; ++ union { ++ intptr_t res; ++ jint res_jint; ++ }; ++ res = result[-i]; + if (result_slots == 1) { +- res = narrow(method->result_type(), res); ++ BasicType t = method->result_type(); ++ if (is_subword_type(t)) { ++ res_jint = (jint)narrow(t, res_jint); ++ } + } + stack->push(res); + } diff --git a/java/openjdk8/files/patch-hotspot_src_os__cpu_bsd__zero_vm_os__bsd__zero.cpp b/java/openjdk8/files/patch-hotspot_src_os__cpu_bsd__zero_vm_os__bsd__zero.cpp index 7c5a24426637..713d5c13c630 100644 --- a/java/openjdk8/files/patch-hotspot_src_os__cpu_bsd__zero_vm_os__bsd__zero.cpp +++ b/java/openjdk8/files/patch-hotspot_src_os__cpu_bsd__zero_vm_os__bsd__zero.cpp @@ -1,7 +1,25 @@ -clang objects to redefining builtins. - ---- hotspot/src/os_cpu/bsd_zero/vm/os_bsd_zero.cpp.orig 2015-06-03 15:48:43 UTC +--- hotspot/src/os_cpu/bsd_zero/vm/os_bsd_zero.cpp.orig 2014-03-04 02:52:15 UTC +++ hotspot/src/os_cpu/bsd_zero/vm/os_bsd_zero.cpp +@@ -60,8 +60,8 @@ + #include "utilities/vmError.hpp" + + address os::current_stack_pointer() { +- address dummy = (address) &dummy; +- return dummy; ++ // return the address of the current function ++ return (address)__builtin_frame_address(0); + } + + frame os::get_sender_for_C_frame(frame* fr) { +@@ -189,7 +189,7 @@ + ShouldNotCallThis(); + } + else*/ if (thread->thread_state() == _thread_in_vm && +- sig == SIGBUS && thread->doing_unsafe_access()) { ++ (sig == SIGSEGV || sig == SIGBUS) && thread->doing_unsafe_access()) { + ShouldNotCallThis(); + } + @@ -446,21 +446,6 @@ extern "C" { } }; diff --git a/java/openjdk8/files/patch-hotspot_src_share_vm_interpreter_bytecodeInterpreter.cpp b/java/openjdk8/files/patch-hotspot_src_share_vm_interpreter_bytecodeInterpreter.cpp new file mode 100644 index 000000000000..db6cd4de4eaa --- /dev/null +++ b/java/openjdk8/files/patch-hotspot_src_share_vm_interpreter_bytecodeInterpreter.cpp @@ -0,0 +1,14 @@ +--- hotspot/src/share/vm/interpreter/bytecodeInterpreter.cpp Mon Apr 25 21:03:53 2016 +0000 ++++ hotspot/src/share/vm/interpreter/bytecodeInterpreter.cpp Tue Apr 26 02:49:59 2016 +0100 +@@ -593,8 +593,9 @@ + /* 0xDC */ &&opc_default, &&opc_default, &&opc_default, &&opc_default, + + /* 0xE0 */ &&opc_default, &&opc_default, &&opc_default, &&opc_default, +-/* 0xE4 */ &&opc_default, &&opc_fast_aldc, &&opc_fast_aldc_w, &&opc_return_register_finalizer, +-/* 0xE8 */ &&opc_invokehandle,&&opc_default, &&opc_default, &&opc_default, ++/* 0xE4 */ &&opc_default, &&opc_default, &&opc_fast_aldc, &&opc_fast_aldc_w, ++/* 0xE8 */ &&opc_return_register_finalizer, ++ &&opc_invokehandle, &&opc_default, &&opc_default, + /* 0xEC */ &&opc_default, &&opc_default, &&opc_default, &&opc_default, + + /* 0xF0 */ &&opc_default, &&opc_default, &&opc_default, &&opc_default, |