Re: [UPDATE] devel/jdk/11 11.0.5+8 + aarch64 support

2019-09-23 Thread Stuart Henderson
> > > >  .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
> > since this is "every arch in ONLY_FOR_ARCHS", the extra var and conditional
> > aren't needed:
> > 
> > DISTFILES+= 
> > openjdk-jdk11u-bootjdk-${MACHINE_ARCH}-${BOOTJDK_DATE}.tar.gz:1
> 
> I have a vague recollection that espie@ asked for the arch
> limiter there to correct an issue with fetching all the
> distfiles or something along those lines IIRC.

Ah - OK then, slightly non-obvious but that does make sense when considering
DPB fetches.



Re: [UPDATE] devel/jdk/11 11.0.5+8 + aarch64 support

2019-09-23 Thread Kurt Miller
On Mon, 2019-09-23 at 15:35 +0100, Stuart Henderson wrote:
> On 2019/09/20 20:46, Kurt Miller wrote:
> > 
> > On Fri, 2019-09-20 at 15:18 -0400, k...@intricatesoftware.com wrote:
> > > 
> > > 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.
> > ulimit -Sd 1572864 works to build the jdk on aarch64.
> > 
> > > 
> > > 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 -  1.37
> > > +++ java.port.mk  20 Sep 2019 19:02:14 -
> > > @@ -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*+}
> java.port.mk OK.
> 
> I haven't run tested jdk yet, but it reads OK - a couple of comments but
> they don't need to block the update:
> 
> > 
> > > 
> > >  .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
> since this is "every arch in ONLY_FOR_ARCHS", the extra var and conditional
> aren't needed:
> 
> DISTFILES+= 
> openjdk-jdk11u-bootjdk-${MACHINE_ARCH}-${BOOTJDK_DATE}.tar.gz:1

I have a vague recollection that espie@ asked for the arch
limiter there to correct an issue with fetching all the
distfiles or something along those lines IIRC.

> > 
> > > 
> > > @@ -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
> would it make more sense to have CONFIGURE_ARGS+=--enable-aot=no in the
> previous block alongside -Daot=0?
> 

Yes. I'll move that up and test it before committing.

Thank you,
-Kurt



Re: [UPDATE] devel/jdk/11 11.0.5+8 + aarch64 support

2019-09-23 Thread Stuart Henderson
On 2019/09/20 20:46, Kurt Miller wrote:
> On Fri, 2019-09-20 at 15:18 -0400, k...@intricatesoftware.com wrote:
> > 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.
> 
> ulimit -Sd 1572864 works to build the jdk on aarch64.
> 
> > 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.mk11 Jun 2019 00:36:04 -  1.37
> > +++ java.port.mk20 Sep 2019 19:02:14 -
> > @@ -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*+}

java.port.mk OK.

I haven't run tested jdk yet, but it reads OK - a couple of comments but
they don't need to block the update:

> >  .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

since this is "every arch in ONLY_FOR_ARCHS", the extra var and conditional
aren't needed:

DISTFILES+= openjdk-jdk11u-bootjdk-${MACHINE_ARCH}-${BOOTJDK_DATE}.tar.gz:1

> > @@ -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

would it make more sense to have CONFIGURE_ARGS+=--enable-aot=no in the
previous block alongside -Daot=0?



Re: [UPDATE] devel/jdk/11 11.0.5+8 + aarch64 support

2019-09-20 Thread Kurt Miller
On Fri, 2019-09-20 at 15:18 -0400, k...@intricatesoftware.com wrote:
> 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.

ulimit -Sd 1572864 works to build the jdk on aarch64.

> 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 -  1.37
> +++ java.port.mk  20 Sep 2019 19:02:14 -
> @@ -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 -  1.9
> +++ 11/Makefile   20 Sep 2019 19:02:14 -
> @@ -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 

[UPDATE] devel/jdk/11 11.0.5+8 + aarch64 support

2019-09-20 Thread kurt
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.mk11 Jun 2019 00:36:04 -  1.37
+++ java.port.mk20 Sep 2019 19:02:14 -
@@ -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 -  1.9
+++ 11/Makefile 20 Sep 2019 19:02:14 -
@@ -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