git: a775e64d13a6 - main - java/openjdk25: fix build on freebsd 16/aarch64

From: Ronald Klop <ronald_at_FreeBSD.org>
Date: Fri, 19 Jun 2026 13:31:20 UTC
The branch main has been updated by ronald:

URL: https://cgit.FreeBSD.org/ports/commit/?id=a775e64d13a6bb7f4e5133105227f37fdc87a882

commit a775e64d13a6bb7f4e5133105227f37fdc87a882
Author:     Ronald Klop <ronald@FreeBSD.org>
AuthorDate: 2026-06-18 14:39:37 +0000
Commit:     Ronald Klop <ronald@FreeBSD.org>
CommitDate: 2026-06-19 13:30:21 +0000

    java/openjdk25: fix build on freebsd 16/aarch64
    
    === Output from failing command(s) repeated here ===
    * For target hotspot_variant-server_libjvm_objs_os_bsd.o:
    In file included from /wrkdirs/usr/ports/java/openjdk25/work-jdk/openjdk-jdk-25.0.3-9-freebsd-1/src/hotspot/os/bsd/os_bsd.cpp:135:
    In file included from /usr/include/sys/user.h:52:
    In file included from /usr/include/vm/pmap.h:88:
    In file included from /usr/include/machine/pmap.h:46:
    In file included from /usr/include/sys/systm.h:46:
    /usr/include/machine/cpufunc.h:35:1: error: static declaration of 'breakpoint' follows non-static declaration
       35 | breakpoint(void)
          | ^
    /wrkdirs/usr/ports/java/openjdk25/work-jdk/openjdk-jdk-25.0.3-9-freebsd-1/src/hotspot/share/utilities/breakpoint.hpp:31:17: note: previous declaration is here
       31 | extern "C" void breakpoint();
          |                 ^
    1 error generated.
    * For target hotspot_variant-server_libjvm_objs_os_perf_bsd.o:
    In file included from /wrkdirs/usr/ports/java/openjdk25/work-jdk/openjdk-jdk-25.0.3-9-freebsd-1/src/hotspot/os/bsd/os_perf_bsd.cpp:37:
    In file included from /usr/include/sys/user.h:52:
    In file included from /usr/include/vm/pmap.h:88:
    In file included from /usr/include/machine/pmap.h:46:
    In file included from /usr/include/sys/systm.h:46:
    /usr/include/machine/cpufunc.h:35:1: error: static declaration of 'breakpoint' follows non-static declaration
       35 | breakpoint(void)
          | ^
    /wrkdirs/usr/ports/java/openjdk25/work-jdk/openjdk-jdk-25.0.3-9-freebsd-1/src/hotspot/share/utilities/breakpoint.hpp:31:17: note: previous declaration is here
       31 | extern "C" void breakpoint();
          |                 ^
    1 error generated.
    
    * All command lines available in /wrkdirs/usr/ports/java/openjdk25/work-jdk/openjdk-jdk-25.0.3-9-freebsd-1/build/bsd-aarch64-server-release/make-support/failure-logs.
    === End of repeated output ===
    
    I don't know why this does not happen on other architectures or freebsd
    versions.
    
    - changed post-patch to pre-configure, this makes it a lot easier to use "make
    makepatch".
    
    Reported-by:    https://portsfallout.com/fallout?port=java%2Fopenjdk
    Approved-by:    silence on java@ https://lists.freebsd.org/archives/freebsd-java/2026-June/003715.html
---
 java/openjdk25/Makefile                                   |  2 +-
 java/openjdk25/files/patch-src_hotspot_os_bsd_os__bsd.cpp | 15 +++++++++++++--
 .../files/patch-src_hotspot_os_bsd_os__perf__bsd.cpp      | 13 +++++++++++++
 3 files changed, 27 insertions(+), 3 deletions(-)

diff --git a/java/openjdk25/Makefile b/java/openjdk25/Makefile
index 29c9fa48694b..8c1d2f39d0d8 100644
--- a/java/openjdk25/Makefile
+++ b/java/openjdk25/Makefile
@@ -172,7 +172,7 @@ ICONV_LDFLAGS=	-L${LOCALBASE}/lib
 ICONV_LIBS=	${ICONV_LIB}
 .endif
 
-post-patch:
+pre-configure:
 	@${RM} ${WRKSRC}/src/hotspot/os_cpu/bsd_ppc/thread_bsd_ppc.cpp
 	@${MV} ${WRKSRC}/src/hotspot/os_cpu/bsd_ppc/thread_bsd_ppc.hpp \
 		${WRKSRC}/src/hotspot/os_cpu/bsd_ppc/javaThread_bsd_ppc.hpp
diff --git a/java/openjdk25/files/patch-src_hotspot_os_bsd_os__bsd.cpp b/java/openjdk25/files/patch-src_hotspot_os_bsd_os__bsd.cpp
index 402f0f475bc3..d00189abbf2c 100644
--- a/java/openjdk25/files/patch-src_hotspot_os_bsd_os__bsd.cpp
+++ b/java/openjdk25/files/patch-src_hotspot_os_bsd_os__bsd.cpp
@@ -1,6 +1,17 @@
---- src/hotspot/os/bsd/os_bsd.cpp.orig	2021-09-29 21:25:10 UTC
+--- src/hotspot/os/bsd/os_bsd.cpp.orig	2026-04-22 18:05:58 UTC
 +++ src/hotspot/os/bsd/os_bsd.cpp
-@@ -361,7 +361,7 @@
+@@ -132,6 +132,10 @@
+ #define KINFO_PROC_T   kinfo_proc
+ #define KI_RSS         p_vm_rssize
+ #elif defined(__FreeBSD__)
++  #if ( defined(__aarch64__) && __FreeBSD_version >= 160000 )
++    // do not redefine "breakpoint"
++    #define _MACHINE_CPUFUNC_H_
++  #endif
+ #include <sys/user.h>
+ #define KERN_PROC_MIB  KERN_PROC
+ #define KINFO_PROC_T   kinfo_proc
+@@ -480,7 +484,7 @@ void os::init_system_properties_values() {
      #elif defined(__NetBSD__)
        #define DEFAULT_LIBPATH "/usr/lib:/usr/pkg/lib"
      #else
diff --git a/java/openjdk25/files/patch-src_hotspot_os_bsd_os__perf__bsd.cpp b/java/openjdk25/files/patch-src_hotspot_os_bsd_os__perf__bsd.cpp
new file mode 100644
index 000000000000..ca9cd087b470
--- /dev/null
+++ b/java/openjdk25/files/patch-src_hotspot_os_bsd_os__perf__bsd.cpp
@@ -0,0 +1,13 @@
+--- src/hotspot/os/bsd/os_perf_bsd.cpp.orig	2026-04-22 18:05:58 UTC
++++ src/hotspot/os/bsd/os_perf_bsd.cpp
+@@ -34,6 +34,10 @@
+   #include <mach/task_info.h>
+ #else
+ # if !defined(__NetBSD__)
++  #if ( defined(__aarch64__) && __FreeBSD_version >= 160000 )
++    // do not redefine "breakpoint"
++    #define _MACHINE_CPUFUNC_H_
++  #endif
+   #include <sys/user.h>
+ # endif
+   #include <sys/sched.h>