From: Kurt Miller Subject: Re: java.port.mk: remove jdk 1.8 support To: ports@openbsd.org Cc: Ian Darwin , Stuart Henderson Date: Fri, 23 Jan 2026 15:30:40 +0000 On Jan 16, 2026, at 9:19 AM, Kurt Miller wrote: > > We are almost ready to remove jdk/1.8. The updates for lang/kawa > and sysutils/rundeck need review and okays. security/tls-attacker > is okay to remove by tb@. After those are committed the only thing > left is math/rstudio which is currently marked broken due to > boost incompatibility so nothing to do there now. > > This removes 1.8 from java.port.mk and updates the guidance regarding > how to use JAVA_HOME in a port. What's there now is overly strict and > should more clearly state how to use JAVA_HOME in a java port. > > Looking for review of this but will not commit until the three > remaining items above are committed. > > ok? devel/jdk/1.8 is ready for removal now. I just need oks on this and the removal. > > Index: java.port.mk > =================================================================== > RCS file: /cvs/ports/devel/jdk/java.port.mk,v > diff -u -p -u -r1.46 java.port.mk > --- java.port.mk 23 Dec 2025 00:41:20 -0000 1.46 > +++ java.port.mk 16 Jan 2026 14:07:55 -0000 > @@ -1,4 +1,4 @@ > -# Set MODJAVA_VER to 1.8, 11, 17, 21 or 25 based on the version of the jdk > +# Set MODJAVA_VER to 11, 17, 21 or 25 based on the version of the jdk > # needed for the port. Append a + (e.g., 11+) if any higher version is > # acceptable. > > @@ -17,19 +17,20 @@ MODJAVA_VER?= > # NOTE: All source built java ports must properly set javac -source and > # -target build arguments. Depending on the architecture an older level > # port may be built by a newer jdk. The JAVA_HOME variable points to the > -# build jdk not the default RUN_DEPEND jdk, so it should not be used to > -# set a default jdk to run with. The javaPathHelper port should be used > -# to set the default JAVA_HOME or JAVACMD vars for a package. > +# build jdk not the default RUN_DEPEND jdk. It should only be used to > +# set the jdk to run with when a port requires a fixed jdk version > +# (e.g. no + in MODJAVA_VER). The javaPathHelper port should be used > +# to set the default JAVA_HOME or JAVACMD vars for ports with > +# MODJAVA_VER containing a +. > # > > -.if ${MODJAVA_VER:S/+//} != "1.8" && ${MODJAVA_VER:S/+//} != "11" && \ > - ${MODJAVA_VER:S/+//} != "17" && ${MODJAVA_VER:S/+//} != "21" && \ > - ${MODJAVA_VER:S/+//} != "25" > - ERRORS+="Fatal: MODJAVA_VER must be one of 1.8, 11, 17, 21 or 25" > +.if ${MODJAVA_VER:S/+//} != "11" && ${MODJAVA_VER:S/+//} != "17" && \ > + ${MODJAVA_VER:S/+//} != "21" && ${MODJAVA_VER:S/+//} != "25" > + ERRORS+="Fatal: MODJAVA_VER must be one of 11, 17, 21 or 25" > ERRORS+="with an optional + suffix." > .endif > > -.if ${MODJAVA_VER:S/+//} == "1.8" || ${MODJAVA_VER:S/+//} == "11" > +.if ${MODJAVA_VER:S/+//} == "11" > ONLY_FOR_ARCHS?= i386 amd64 aarch64 sparc64 > .elif ${MODJAVA_VER:S/+//} == "25" > ONLY_FOR_ARCHS?= amd64 aarch64 > @@ -37,10 +38,7 @@ MODJAVA_VER?= > ONLY_FOR_ARCHS?= i386 amd64 aarch64 > .endif > > -.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/+//} == "11" > JAVA_HOME= ${LOCALBASE}/jdk-11 > MODJAVA_BUILD_DEPENDS+= jdk->=11v0,<12v0:devel/jdk/11 > .elif ${MODJAVA_VER:S/+//} == "17" >