Update devel/jdk/11 to 11.0.5+8 which includes aarch64 support.
* 11.0.5 is not released officially yet so this is realy a pre-
  release of 11.0.5 and will be updated again when the final
  upstream release occurs.
* Adds aarch64 support.
* Contains many upstream changes between 11.0.4+11 and 11.0.5+8
* Contains many bsd-port changes to improve stablity and
  compatiblity.
* Update java.port.mk module to support jdk/11 only on aarch64.
* aarch64 pbuild data size limit may need to be bumped - working
  that out now.

Index: java.port.mk
===================================================================
RCS file: /cvs/ports/devel/jdk/java.port.mk,v
retrieving revision 1.37
diff -u -p -u -r1.37 java.port.mk
--- java.port.mk        11 Jun 2019 00:36:04 -0000      1.37
+++ java.port.mk        20 Sep 2019 19:02:14 -0000
@@ -5,7 +5,6 @@
 # version. Valid values for x.y are 1.8 or 11.
 
 MODJAVA_VER?=
-ONLY_FOR_ARCHS?= i386 amd64
 
 # Based on the MODJAVA_VER, NO_BUILD and MACHINE_ARCH, the following
 # things will be setup:
@@ -25,14 +24,27 @@ ONLY_FOR_ARCHS?= i386 amd64
 # to set the default JAVA_HOME or JAVACMD vars for a package.
 #
 
-.if ${MODJAVA_VER:S/+//} == "1.8"
-    JAVA_HOME= ${LOCALBASE}/jdk-1.8.0
-    MODJAVA_BUILD_DEPENDS= jdk->=1.8v0,<1.9v0:devel/jdk/1.8
-.elif ${MODJAVA_VER:S/+//} == "11"
+.if ${MODJAVA_VER:S/+//} != "1.8" && ${MODJAVA_VER:S/+//} != "11"
+    ERRORS+="Fatal: MODJAVA_VER must be set to a valid value."
+.endif
+
+.if ${MODJAVA_VER} == "1.8"
+    ONLY_FOR_ARCHS?= i386 amd64
+.else
+    ONLY_FOR_ARCHS?= i386 amd64 aarch64
+.endif
+
+.if ${MACHINE_ARCH} == "aarch64"
     JAVA_HOME= ${LOCALBASE}/jdk-11
     MODJAVA_BUILD_DEPENDS+= jdk->=11v0,<12v0:devel/jdk/11
 .else
-    ERRORS+="Fatal: MODJAVA_VER must be set to a valid value."
+.   if ${MODJAVA_VER:S/+//} == "1.8"
+        JAVA_HOME= ${LOCALBASE}/jdk-1.8.0
+        MODJAVA_BUILD_DEPENDS= jdk->=1.8v0,<1.9v0:devel/jdk/1.8
+.   else
+        JAVA_HOME= ${LOCALBASE}/jdk-11
+        MODJAVA_BUILD_DEPENDS+= jdk->=11v0,<12v0:devel/jdk/11
+.   endif
 .endif
 
 .if ${MODJAVA_VER:M*+}
Index: 11/Makefile
===================================================================
RCS file: /cvs/ports/devel/jdk/11/Makefile,v
retrieving revision 1.9
diff -u -p -u -r1.9 Makefile
--- 11/Makefile 13 Sep 2019 16:18:33 -0000      1.9
+++ 11/Makefile 20 Sep 2019 19:02:14 -0000
@@ -1,12 +1,12 @@
 # $OpenBSD: Makefile,v 1.9 2019/09/13 16:18:33 kurt Exp $
 
-ONLY_FOR_ARCHS=        i386 amd64
+ONLY_FOR_ARCHS=        i386 amd64 aarch64
 USE_WXNEEDED=  Yes
 DPB_PROPERTIES=        parallel
 
 COMMENT=       OpenJDK Software Development Kit v${VERSION_STR}
-BASE_VER=      11.0.4
-PATCH_VER=     11
+BASE_VER=      11.0.5
+PATCH_VER=     8
 BSD_PORT_REL=  1
 VERSION_STR=   ${BASE_VER}+${PATCH_VER}-${BSD_PORT_REL}
 PACKAGE_VER=   ${BASE_VER}.${PATCH_VER}.${BSD_PORT_REL}
@@ -18,7 +18,7 @@ DIST_SUBDIR=  jdk
 DISTNAME=      jdk-${VERSION_STR}
 DISTFILES=     ${DISTNAME}${EXTRACT_SUFX}
 WRKDIST=       
${WRKDIR}/openjdk-jdk11u-jdk-${BASE_VER}-${PATCH_VER}-${BSD_PORT_REL}
-BOOTJDK_DATE=  20190325
+BOOTJDK_DATE=  20190919
 
 CATEGORIES=    devel/jdk java
 
@@ -42,7 +42,8 @@ WANTLIB += iconv jpeg lcms2 m png pthrea
 NO_TEST=       Yes
 
 SUPDISTFILES+= openjdk-jdk11u-bootjdk-i386-${BOOTJDK_DATE}.tar.gz:1  \
-               openjdk-jdk11u-bootjdk-amd64-${BOOTJDK_DATE}.tar.gz:1
+               openjdk-jdk11u-bootjdk-amd64-${BOOTJDK_DATE}.tar.gz:1 \
+               openjdk-jdk11u-bootjdk-aarch64-${BOOTJDK_DATE}.tar.gz:1
 
 COMPILER=      base-clang ports-gcc
 
@@ -56,8 +57,8 @@ ERRORS += "Fatal: This flavor requires a
 BUILD_DEPENDS+=        jdk->=11v0,<12v0:devel/jdk/11
 BOOT_JDK=      ${LOCALBASE}/jdk-11
 .else
-BOOT_JDK_DIST= openjdk-jdk11u-bootjdk-${ARCH}-${BOOTJDK_DATE}.tar.gz
-.  if (${ARCH}==amd64) || (${ARCH}==i386)
+BOOT_JDK_DIST= openjdk-jdk11u-bootjdk-${MACHINE_ARCH}-${BOOTJDK_DATE}.tar.gz
+.  if (${MACHINE_ARCH}==amd64) || (${MACHINE_ARCH}==i386) || 
(${MACHINE_ARCH}==aarch64)
 DISTFILES+=    ${BOOT_JDK_DIST}:1
 .  endif
 MAKE_ENV+=     LD_LIBRARY_PATH=${WRKDIR}/bootjdk-libs
@@ -128,6 +129,14 @@ PKG_ARGS+= -Daot=1
 PKG_ARGS+=     -Daot=0
 .endif
 
+.if ${MACHINE_ARCH} == "aarch64"
+# aot is not working yet on aarch64
+CONFIGURE_ARGS+=--enable-aot=no
+PKG_ARGS+=     -Dci=1
+.else
+PKG_ARGS+=     -Dci=0
+.endif
+
 JVMARCH=       ${MACHINE_ARCH:S/i386/x86/:S/amd64/x86_64/}
 IMAGEDIR=      ${WRKDIST}/build/bsd-${JVMARCH}-normal-server-release/images/jdk
 WRKTMP=                ${WRKDIR}/tmp
@@ -156,7 +165,7 @@ build-bootjdk: build
                find ${WRKTMP}/bootjdk -type f -perm -500 -exec ldd {} \; 
2>/dev/null | \
                grep rlib | cut -d"/" -f 2-20 | sort -u | grep -v "\.so$$" | \
                xargs -I % cp /% ${WRKTMP}/bootjdk-libs
-       @cd ${WRKTMP} && tar czf openjdk-jdk11u-bootjdk-${ARCH}-$$(date 
+%Y%m%d).tar.gz bootjdk*
-       @echo "New bootjdk is located at 
${WRKTMP}/openjdk-jdk11u-bootjdk-${ARCH}-$$(date +%Y%m%d).tar.gz"
+       @cd ${WRKTMP} && tar czf openjdk-jdk11u-bootjdk-${MACHINE_ARCH}-$$(date 
+%Y%m%d).tar.gz bootjdk*
+       @echo "New bootjdk is located at 
${WRKTMP}/openjdk-jdk11u-bootjdk-${MACHINE_ARCH}-$$(date +%Y%m%d).tar.gz"
 
 .include <bsd.port.mk>
Index: 11/distinfo
===================================================================
RCS file: /cvs/ports/devel/jdk/11/distinfo,v
retrieving revision 1.4
diff -u -p -u -r1.4 distinfo
--- 11/distinfo 23 Jul 2019 11:55:42 -0000      1.4
+++ 11/distinfo 20 Sep 2019 19:02:14 -0000
@@ -1,6 +1,8 @@
-SHA256 (jdk/jdk-11.0.4+11-1.tar.gz) = 
7tCx3DDRbhTvRwGGyf4hw24C2pXyZXdUuEAuhLgDllw=
-SHA256 (jdk/openjdk-jdk11u-bootjdk-amd64-20190325.tar.gz) = 
uADjYEnch2TUXtDpWe9rAfgLXR7NvqOKsOrdpKH4qNY=
-SHA256 (jdk/openjdk-jdk11u-bootjdk-i386-20190325.tar.gz) = 
nI7/p0nVpFbiD01gpCl5QSfjtOeI/41PumOKfK/HeOA=
-SIZE (jdk/jdk-11.0.4+11-1.tar.gz) = 116997649
-SIZE (jdk/openjdk-jdk11u-bootjdk-amd64-20190325.tar.gz) = 113818989
-SIZE (jdk/openjdk-jdk11u-bootjdk-i386-20190325.tar.gz) = 101841640
+SHA256 (jdk/jdk-11.0.5+8-1.tar.gz) = 
9jkYgaNzlXD9KcZKStlYBh2YP5amkmeowkf/h0IXdKc=
+SHA256 (jdk/openjdk-jdk11u-bootjdk-aarch64-20190919.tar.gz) = 
Rt/ZLdUf8FZXf2Ss7uw7aDHkrNCW/CN/AOdL0sj/CF8=
+SHA256 (jdk/openjdk-jdk11u-bootjdk-amd64-20190919.tar.gz) = 
sOBqXutJcjIJC2HBAHKl5RwDObxMvaxNO5VtNfReWus=
+SHA256 (jdk/openjdk-jdk11u-bootjdk-i386-20190919.tar.gz) = 
ixD5L58A+3YBMi9Ve+2bWn6CCHmdCGhDzALRCIVCc4U=
+SIZE (jdk/jdk-11.0.5+8-1.tar.gz) = 117115267
+SIZE (jdk/openjdk-jdk11u-bootjdk-aarch64-20190919.tar.gz) = 103258821
+SIZE (jdk/openjdk-jdk11u-bootjdk-amd64-20190919.tar.gz) = 113594555
+SIZE (jdk/openjdk-jdk11u-bootjdk-i386-20190919.tar.gz) = 102061258
Index: 11/patches/patch-make_autoconf_flags-cflags_m4
===================================================================
RCS file: 11/patches/patch-make_autoconf_flags-cflags_m4
diff -N 11/patches/patch-make_autoconf_flags-cflags_m4
--- 11/patches/patch-make_autoconf_flags-cflags_m4      23 Jul 2019 11:55:42 
-0000      1.1
+++ /dev/null   1 Jan 1970 00:00:00 -0000
@@ -1,25 +0,0 @@
-$OpenBSD: patch-make_autoconf_flags-cflags_m4,v 1.1 2019/07/23 11:55:42 kurt 
Exp $
-
-On x86 (32bit) with clang add -mstackrealign to JVM CFLAGS:
-* On x86 32bit, the JVM builds with -mstack-alignment=16 which is
-  required for SSE instruction support in hotstpot. However, this option
-  only maintains 16 byte alignment and does not realign the stack when
-  called from native i386 code with 4 byte alignment. Jdk 8 had this
-  option as well and was lost in the refactoring of the JDK in later
-  versions.
-* It also corrects fastdebug build assert failures in stubRoutines.cpp.
-
-Index: make/autoconf/flags-cflags.m4
---- make/autoconf/flags-cflags.m4.orig
-+++ make/autoconf/flags-cflags.m4
-@@ -519,6 +519,10 @@ AC_DEFUN([FLAGS_SETUP_CFLAGS_HELPER],
-     # works for all platforms.
-     TOOLCHAIN_CFLAGS_JVM="$TOOLCHAIN_CFLAGS_JVM -mno-omit-leaf-frame-pointer 
-mstack-alignment=16"
- 
-+    if test "x$OPENJDK_TARGET_CPU" = xx86; then
-+      TOOLCHAIN_CFLAGS_JVM="$TOOLCHAIN_CFLAGS_JVM -mstackrealign"
-+    fi
-+
-     if test "x$OPENJDK_TARGET_OS" = xlinux; then
-       TOOLCHAIN_CFLAGS_JDK="-pipe"
-       TOOLCHAIN_CFLAGS_JDK_CONLY="-fno-strict-aliasing" # technically NOT for 
CXX
Index: 11/patches/patch-make_hotspot_lib_JvmOverrideFiles_gmk
===================================================================
RCS file: 11/patches/patch-make_hotspot_lib_JvmOverrideFiles_gmk
diff -N 11/patches/patch-make_hotspot_lib_JvmOverrideFiles_gmk
--- 11/patches/patch-make_hotspot_lib_JvmOverrideFiles_gmk      23 Jul 2019 
11:55:42 -0000      1.1
+++ /dev/null   1 Jan 1970 00:00:00 -0000
@@ -1,34 +0,0 @@
-$OpenBSD: patch-make_hotspot_lib_JvmOverrideFiles_gmk,v 1.1 2019/07/23 
11:55:42 kurt Exp $
-
-Reduce optimization level for parse2.cpp on x86 with clang:
-* jtreg test hotspot/jtreg/compiler/c2/Test8062950.java fails when
-  parse2.cpp is optimized above -O1 with clang on x86.
-
-Index: make/hotspot/lib/JvmOverrideFiles.gmk
---- make/hotspot/lib/JvmOverrideFiles.gmk.orig
-+++ make/hotspot/lib/JvmOverrideFiles.gmk
-@@ -210,6 +210,14 @@ else ifeq ($(OPENJDK_TARGET_OS), bsd)
-   endif
- 
-   ifeq ($(TOOLCHAIN_TYPE), clang)
-+    ifeq ($(OPENJDK_TARGET_CPU), x86)
-+      ifneq ($(DEBUG_LEVEL), slowdebug)
-+        # hotspot/jtreg/compiler/c2/Test8062950.java test fails on x86
-+        # with clang when parse2.cpp is optimized above -O1
-+        BUILD_LIBJVM_parse2.cpp_CXXFLAGS := -O1
-+      endif
-+    endif
-+
-     # The following files are compiled at various optimization
-     # levels due to optimization issues encountered at the
-     # default level. The Clang compiler issues a compile
-@@ -224,7 +232,8 @@ else ifeq ($(OPENJDK_TARGET_OS), bsd)
-         sharedRuntimeTrig.cpp \
-         sharedRuntimeTrans.cpp \
-         loopTransform.cpp \
--        unsafe.cpp
-+        unsafe.cpp \
-+        parse2.cpp \
-         #
-   endif
- 
Index: 11/patches/patch-src_hotspot_os_cpu_bsd_x86_os_bsd_x86_cpp
===================================================================
RCS file: 11/patches/patch-src_hotspot_os_cpu_bsd_x86_os_bsd_x86_cpp
diff -N 11/patches/patch-src_hotspot_os_cpu_bsd_x86_os_bsd_x86_cpp
--- 11/patches/patch-src_hotspot_os_cpu_bsd_x86_os_bsd_x86_cpp  23 Jul 2019 
11:55:42 -0000      1.1
+++ /dev/null   1 Jan 1970 00:00:00 -0000
@@ -1,41 +0,0 @@
-$OpenBSD: patch-src_hotspot_os_cpu_bsd_x86_os_bsd_x86_cpp,v 1.1 2019/07/23 
11:55:42 kurt Exp $
-
-Enable os::verify_stack_alignment() on BSD:
-* Add implementation for stack alignment checking.
-* Disable optimization on os::current_stack_pointer() for clang to
-  prevent clang from optimizing away the stack alignment on x86 and to
-  prevent inlining into os::verify_stack_alignment() which also gets
-  over optimized and breaks the checking of stack alignment.
-
-Index: src/hotspot/os_cpu/bsd_x86/os_bsd_x86.cpp
---- src/hotspot/os_cpu/bsd_x86/os_bsd_x86.cpp.orig
-+++ src/hotspot/os_cpu/bsd_x86/os_bsd_x86.cpp
-@@ -271,16 +271,18 @@
- # endif
- #endif
- 
--address os::current_stack_pointer() {
- #if defined(__clang__) || defined(__llvm__)
-+address os::current_stack_pointer() __attribute__ ((optnone)) {
-   intptr_t* esp;
-   __asm__ __volatile__ ("mov %%" SPELL_REG_SP ", %0":"=r"(esp):);
-   return (address) esp;
-+}
- #else
-+address os::current_stack_pointer() {
-   register void *esp __asm__ (SPELL_REG_SP);
-   return (address) esp;
--#endif
- }
-+#endif
- 
- char* os::non_memory_address_word() {
-   // Must never look like an address returned by reserve_memory,
-@@ -975,6 +977,7 @@ void os::setup_fpu() {
- 
- #ifndef PRODUCT
- void os::verify_stack_alignment() {
-+  assert(((intptr_t)os::current_stack_pointer() & (StackAlignmentInBytes-1)) 
== 0, "incorrect stack alignment");
- }
- #endif
- 
Index: 11/pkg/PFRAG.ci
===================================================================
RCS file: 11/pkg/PFRAG.ci
diff -N 11/pkg/PFRAG.ci
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ 11/pkg/PFRAG.ci     20 Sep 2019 19:02:14 -0000
@@ -0,0 +1,6 @@
+@comment $OpenBSD: PFRAG.ci,v$
+jdk-11/jmods/jdk.internal.vm.ci.jmod
+jdk-11/legal/jdk.internal.vm.ci/
+jdk-11/legal/jdk.internal.vm.ci/ADDITIONAL_LICENSE_INFO
+jdk-11/legal/jdk.internal.vm.ci/ASSEMBLY_EXCEPTION
+jdk-11/legal/jdk.internal.vm.ci/LICENSE
Index: 11/pkg/PLIST
===================================================================
RCS file: /cvs/ports/devel/jdk/11/pkg/PLIST,v
retrieving revision 1.1.1.1
diff -u -p -u -r1.1.1.1 PLIST
--- 11/pkg/PLIST        28 Mar 2019 17:47:53 -0000      1.1.1.1
+++ 11/pkg/PLIST        20 Sep 2019 19:02:14 -0000
@@ -677,3 +677,4 @@ jdk-11/man/man1/
 jdk-11/release
 share/doc/pkg-readmes/${PKGSTEM}
 %%aot%%
+%%ci%%

Reply via email to