[Bug 263483] [PATCH] Mk/bsd.java.mk: Fix JAVA_VERSION matching

From: <bugzilla-noreply_at_freebsd.org>
Date: Sat, 23 Apr 2022 04:09:53 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=263483

            Bug ID: 263483
           Summary: [PATCH] Mk/bsd.java.mk: Fix JAVA_VERSION matching
           Product: Ports & Packages
           Version: Latest
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: Ports Framework
          Assignee: portmgr@FreeBSD.org
          Reporter: ashish@FreeBSD.org
                CC: ports-bugs@FreeBSD.org

Created attachment 233411
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=233411&action=edit
Fix

As reported to me by jrm, JDK versions matched by JAVA_VERSION=17+ is broken.


At the moment:

==========================================================================================
❯ make -C net-im/signal-cli PORTSDIR=$(pwd) JAVA_VERSION=17+ java-debug
# User specified parameters:
JAVA_VERSION=                   17+     (17 8 11 12 13 14 15 16 17 18)
JAVA_OS=                                (native linux)
JAVA_VENDOR=                            (openjdk oracle)
JAVA_BUILD=
JAVA_RUN=                       jre
JAVA_EXTRACT=
JAVA_DEFAULT=                   8

# JDK port dependency selection process:
_JAVA_PORTS_POSSIBLE=           JAVA_PORT_NATIVE_OPENJDK_JDK_8
JAVA_PORT_NATIVE_OPENJDK_JDK_8 JAVA_PORT_NATIVE_OPENJDK_JDK_11
JAVA_PORT_NATIVE_OPENJDK_JDK_17 JAVA_PORT_NATIVE_OPENJDK_JDK_12
JAVA_PORT_NATIVE_OPENJDK_JDK_13 JAVA_PORT_NATIVE_OPENJDK_JDK_14
JAVA_PORT_NATIVE_OPENJDK_JDK_15 JAVA_PORT_NATIVE_OPENJDK_JDK_16
JAVA_PORT_NATIVE_OPENJDK_JDK_18 JAVA_PORT_LINUX_ORACLE_JDK_8
_JAVA_PORTS_INSTALLED=          JAVA_PORT_NATIVE_OPENJDK_JDK_8
JAVA_PORT_NATIVE_OPENJDK_JDK_8 JAVA_PORT_NATIVE_OPENJDK_JDK_11
JAVA_PORT_NATIVE_OPENJDK_JDK_16
_JAVA_PORTS_INSTALLED_POSSIBLE= JAVA_PORT_NATIVE_OPENJDK_JDK_8
JAVA_PORT_NATIVE_OPENJDK_JDK_8 JAVA_PORT_NATIVE_OPENJDK_JDK_8
JAVA_PORT_NATIVE_OPENJDK_JDK_8 JAVA_PORT_NATIVE_OPENJDK_JDK_11
JAVA_PORT_NATIVE_OPENJDK_JDK_16
_JAVA_PORT=                     JAVA_PORT_NATIVE_OPENJDK_JDK_8
_JAVA_PORT_INFO=                PORT=java/openjdk8 HOME=/usr/local/openjdk8
VERSION=8 OS=native VENDOR=openjdk

# Selected JDK port:
JAVA_PORT=                      java/openjdk8
JAVA_HOME=                      /usr/local/openjdk8
JAVA_PORT_VERSION=              8
JAVA_PORT_OS=                   native  (Native)
JAVA_PORT_VENDOR=               openjdk (OpenJDK BSD Porting Team)

# Additional variables:
JAVAC=
JAVA_CLASSES=                   /usr/local/openjdk8/jre/lib/rt.jar
==========================================================================================


Applying the fix:

==========================================================================================
❯ patch -p1 </tmp/java.diff
Hmm...  Looks like a unified diff to me...
The text leading up to this was:
--------------------------
|diff --git a/Mk/bsd.java.mk b/Mk/bsd.java.mk
|index f7eb3fe6192b..34f6522b295a 100644
|--- a/Mk/bsd.java.mk
|+++ b/Mk/bsd.java.mk
--------------------------
Patching file Mk/bsd.java.mk using Plan A...
Hunk #1 succeeded at 285.
done
==========================================================================================

After applying the patch:

==========================================================================================
❯ make -C net-im/signal-cli PORTSDIR=$(pwd) JAVA_VERSION=17+ java-debug
# User specified parameters:
JAVA_VERSION=                   17+     (17 18)
JAVA_OS=                                (native linux)
JAVA_VENDOR=                            (openjdk oracle)
JAVA_BUILD=
JAVA_RUN=                       jre
JAVA_EXTRACT=
JAVA_DEFAULT=                   8

# JDK port dependency selection process:
_JAVA_PORTS_POSSIBLE=           JAVA_PORT_NATIVE_OPENJDK_JDK_17
JAVA_PORT_NATIVE_OPENJDK_JDK_18
_JAVA_PORTS_INSTALLED=          JAVA_PORT_NATIVE_OPENJDK_JDK_8
JAVA_PORT_NATIVE_OPENJDK_JDK_8 JAVA_PORT_NATIVE_OPENJDK_JDK_11
JAVA_PORT_NATIVE_OPENJDK_JDK_16
_JAVA_PORTS_INSTALLED_POSSIBLE=
_JAVA_PORT=                     JAVA_PORT_NATIVE_OPENJDK_JDK_17
_JAVA_PORT_INFO=                PORT=java/openjdk17 HOME=/usr/local/openjdk17
VERSION=17 OS=native VENDOR=openjdk

# Selected JDK port:
JAVA_PORT=                      java/openjdk17
JAVA_HOME=                      /usr/local/openjdk17
JAVA_PORT_VERSION=              17
JAVA_PORT_OS=                   native  (Native)
JAVA_PORT_VENDOR=               openjdk (OpenJDK BSD Porting Team)

# Additional variables:
JAVAC=
JAVA_CLASSES=                   /usr/local/openjdk17/jre/lib/rt.jar
==========================================================================================


The attached patch anchors the matching at the beginning of word.

Thanks!

-- 
You are receiving this mail because:
You are on the CC list for the bug.