Update to 12.0.3 and remove PyGhidra:
* Update to 12.0.3 for moderate security update:
  
https://github.com/NationalSecurityAgency/ghidra/security/advisories/GHSA-m94m-fqr3-x442
* Remove PyGhidra because it requires native built jpype which is
  not ported to OpenBSD yet:
  https://github.com/jpype-project/jpype
* Sync protobuf versions and use new protobuf-java build depend
* Reduce the number of locations PROTOBUF_VER needs to be patched
* Don't install python whl files or source tarballs for unused
  python packages and source
* Fix ERROR (UnixPtyChild) Could not set terminal window size:
  com.sun.jna.LastErrorException: [25] Inappropriate ioctl for device
* Take MAINTAINER
* Remove unneeded /bin/bash substitutions. The scripts were already
  #!/usr/bin/env bash which is portable
* Reroll build_dependencies distfile without protobuf-java in it
* Implement OpenBSDJavaFinder
* Use egdb by default when debugging locally
* Update patch that queries gdb for register list to be done on
  OpenBSD only
* Use ${LOCALBASE} for /usr/local in patches and SUBST back

This update cleans up a lot of minor issues and gets ghidra
ready for upstreaming OpenBSD support. There is interest
upstream in accepting the majority of the patches needed for
OpenBSD support after 7.9 is released and they can more easily
test them.

Tested on amd64 and aarch64. okay?

Index: Makefile
===================================================================
RCS file: /cvs/ports/security/ghidra/Makefile,v
diff -u -p -u -r1.15 Makefile
--- Makefile    10 Feb 2026 15:16:14 -0000      1.15
+++ Makefile    19 Feb 2026 14:00:12 -0000
@@ -2,8 +2,8 @@ ONLY_FOR_ARCHS =        amd64 aarch64
 
 COMMENT =      software reverse engineering (SRE) framework
 
-VERSION =      12.0.2
-GHIDRA_DATE =  20260129
+VERSION =      12.0.3
+GHIDRA_DATE =  20260210
 
 GH_ACCOUNT =   NationalSecurityAgency
 GH_PROJECT =   ghidra
@@ -12,6 +12,8 @@ DISTNAME =    ghidra-${VERSION}
 
 CATEGORIES =   security
 
+MAINTAINER =   Kurt Miller <[email protected]>
+
 HOMEPAGE =     https://www.ghidra-sre.org/
 
 # Apache v2
@@ -21,10 +23,10 @@ WANTLIB +=          c m ${COMPILER_LIBCXX}
 
 SITES.a =              https://www.intricatesoftware.com/distfiles/
 
-# Keep these in sync with java/jna and devel/protobuf
+# sync with java/jna and devel/protobuf when updating VERSION
 JNA_VER =              5.18.1
-PROTOBUF_VER =         6.33.4
-PROTOBUF_JAVA_VER =    4.33.4
+PROTOBUF_VER =         6.33.5
+PROTOBUF_JAVA_VER =    4.33.5
 
 DISTFILES.a +=         
ghidra-Ghidra_${VERSION}_build_dependencies${EXTRACT_SUFX}
 
@@ -34,6 +36,7 @@ MODJAVA_VER =         21+
 BUILD_DEPENDS =                archivers/unzip \
                        devel/bison \
                        devel/protobuf>=${PROTOBUF_VER} \
+                       devel/protobuf-java>=${PROTOBUF_JAVA_VER} \
                        devel/py-pip \
                        java/gradle \
                        java/jna>=${JNA_VER} \
@@ -57,7 +60,7 @@ GHIDRA_ARCH =         openbsd_arm_64
 
 NO_TEST =              Yes
 
-SUBST_VARS +=          CXX GHIDRA_DATE GHIDRA_ARCH VERSION WRKDIR \
+SUBST_VARS +=          GHIDRA_DATE GHIDRA_ARCH VERSION \
                        JNA_VER PROTOBUF_VER PROTOBUF_JAVA_VER
 
 EXTENSIONS =           BSimElasticPlugin GnuDisassembler Lisa \
@@ -65,12 +68,7 @@ EXTENSIONS =         BSimElasticPlugin GnuDisas
                        SymbolicSummaryZ3 bundle_examples sample
 
 post-extract:
-       @perl -pi -e 's,#!/bin/bash,#!${LOCALBASE}/bin/bash,' \
-               ${WRKSRC}/Ghidra/RuntimeScripts/Linux/ghidraRun
-       @perl -pi -e 's,#!/bin/bash,#!${LOCALBASE}/bin/bash,' \
-               ${WRKSRC}/Ghidra/RuntimeScripts/Linux/support/launch.sh
-       @perl -pi -e 's,#!/bin/bash,#!${LOCALBASE}/bin/bash,' \
-               ${WRKSRC}/Ghidra/RuntimeScripts/Linux/support/launch.sh
+       @rm -rf ${WRKSRC}/Ghidra/Features/PyGhidra
        @perl -pi -e 's,(application.version)=.*,\1=${VERSION},' \
                ${WRKSRC}/Ghidra/application.properties
        @mkdir -p 
${WRKSRC}/Ghidra/Framework/Pty/src/main/java/ghidra/pty/openbsd
@@ -82,23 +80,26 @@ post-extract:
                ${WRKSRC}/dependencies/flatRepo/jna-${JNA_VER}.jar
        @cp ${TRUEPREFIX}/share/java/classes/jna-platform.jar \
                ${WRKSRC}/dependencies/flatRepo/jna-platform-${JNA_VER}.jar
+       @cp ${TRUEPREFIX}/share/java/classes/protobuf-java.jar \
+               
${WRKSRC}/dependencies/flatRepo/protobuf-java-${PROTOBUF_JAVA_VER}.jar
 
 pre-configure:
        @${SUBST_CMD} ${WRKSRC}/gradle.properties \
+               ${WRKSRC}/gradle/hasProtobuf.gradle \
+               
${WRKSRC}/Ghidra/Framework/Generic/src/main/java/ghidra/framework/Platform.java 
\
                ${WRKSRC}/Ghidra/Framework/Pty/Module.manifest \
                ${WRKSRC}/Ghidra/Framework/Pty/build.gradle \
                ${WRKSRC}/Ghidra/Debug/ProposedUtils/Module.manifest \
-               ${WRKSRC}/Ghidra/Debug/Debugger-rmi-trace/Module.manifest \
-               ${WRKSRC}/Ghidra/Debug/Debugger-rmi-trace/build.gradle \
                
${WRKSRC}/Ghidra/Test/DebuggerIntegrationTest/src/test.slow/java/agent/dbgeng/rmi/DbgEngConnectorsTest.java
 \
                
${WRKSRC}/Ghidra/Test/DebuggerIntegrationTest/src/test.slow/java/agent/drgn/rmi/DrgnConnectorsTest.java
 \
                
${WRKSRC}/Ghidra/Test/DebuggerIntegrationTest/src/test.slow/java/agent/gdb/rmi/GdbConnectorsTest.java
 \
-               
${WRKSRC}/Ghidra/Test/DebuggerIntegrationTest/src/test.slow/java/agent/lldb/rmi/LldbConnectorsTest.java
+               
${WRKSRC}/Ghidra/Test/DebuggerIntegrationTest/src/test.slow/java/agent/lldb/rmi/LldbConnectorsTest.java
 \
+               
${WRKSRC}/GhidraBuild/LaunchSupport/src/main/java/ghidra/launch/OpenBSDJavaFinder.java
 
 # build-dependencies is a maintainer target intended to be run when upgrading
-# to a new version of ghidra or when protobuf or jna version changes. The
-# process is; bump the VERSION, comment out DISTFILES.a, make makesum and 
finish
-# with make build-dependencies clean
+# to a new version of ghidra. The process is; bump the VERSION, sync jna and
+# protobuf versions, comment out DISTFILES.a, make makesum and finish with
+# make build-dependencies clean
 #
 # Note that build-dependencies is run as a regular user, with access to the
 # network for downloading the build dependencies. It deletes everything under
@@ -121,9 +122,11 @@ build-dependencies: configure
                gradle --no-daemon --stacktrace \
                -g ${WRKSRC}/dependencies/gradle \
                prepDev; \
-           rm -rf dependencies/downloads; \
+           rm -rf dependencies/downloads dependencies/PyGhidra; \
            find dependencies -path '*/.tmp*' -o -name '*.log' -delete; \
-           find dependencies -name net.java.dev.jna | xargs rm -rf
+           find dependencies -path *protobuf-*/${PROTOBUF_JAVA_VER} -o \
+               -name net.java.dev.jna | xargs rm -rf; \
+           find dependencies -type d -a -perm 0700 -exec chmod g+rx {} \;
        cd ${WRKDIR} && \
                tar czf ~/ghidra-Ghidra_${VERSION}_build_dependencies.tar.gz \
                    ghidra-Ghidra_${VERSION}_build/dependencies
@@ -145,6 +148,9 @@ do-install:
                ${WRKSRC}/build/dist/ghidra_${VERSION}_DEV_*_${GHIDRA_ARCH}.zip 
\
                -x *.orig.port
        mv ${PREFIX}/share/java/ghidra_${VERSION}_DEV 
${PREFIX}/share/java/ghidra
+       find ${PREFIX}/share/java/ghidra -name *.whl -a -not -name ghidra* \
+           -delete
+       find ${PREFIX}/share/java/ghidra -name psutil-*.tar.gz -delete
 .for name in ${EXTENSIONS}
        cd ${PREFIX}/share/java/ghidra/Extensions/Ghidra/ && \
                mv ghidra_${VERSION}_DEV_*_${name}.zip \
Index: distinfo
===================================================================
RCS file: /cvs/ports/security/ghidra/distinfo,v
diff -u -p -u -r1.7 distinfo
--- distinfo    10 Feb 2026 03:03:33 -0000      1.7
+++ distinfo    19 Feb 2026 14:00:12 -0000
@@ -1,4 +1,4 @@
-SHA256 (ghidra-12.0.2.tar.gz) = HYA6h966xpCLyKY4uuyx3lPsng5qwf7MemkEksyLE+0=
-SHA256 (ghidra-Ghidra_12.0.2_build_dependencies.tar.gz) = 
1HGKiMhldglqosBfBPSkZptD/jaBAbUcgIM1NLqvXyo=
-SIZE (ghidra-12.0.2.tar.gz) = 78581833
-SIZE (ghidra-Ghidra_12.0.2_build_dependencies.tar.gz) = 411701634
+SHA256 (ghidra-12.0.3.tar.gz) = OeXRYPr6VEyLGFji34aXKNGKo8nFSQ9HotDbd287TU0=
+SHA256 (ghidra-Ghidra_12.0.3_build_dependencies.tar.gz) = 
H2xQZs0zzn9APPIKXXBzvwUzOOIkj9oQNQSWZF0TFwg=
+SIZE (ghidra-12.0.3.tar.gz) = 78589019
+SIZE (ghidra-Ghidra_12.0.3_build_dependencies.tar.gz) = 398398379
Index: patches/patch-GPL_DemanglerGnu_Module_manifest
===================================================================
RCS file: patches/patch-GPL_DemanglerGnu_Module_manifest
diff -N patches/patch-GPL_DemanglerGnu_Module_manifest
--- patches/patch-GPL_DemanglerGnu_Module_manifest      11 Mar 2022 19:53:24 
-0000      1.2
+++ /dev/null   1 Jan 1970 00:00:00 -0000
@@ -1,12 +0,0 @@
-From https://github.com/NationalSecurityAgency/ghidra/pull/490
-
-Index: GPL/DemanglerGnu/Module.manifest
---- GPL/DemanglerGnu/Module.manifest.orig
-+++ GPL/DemanglerGnu/Module.manifest
-@@ -1,3 +1,4 @@
- MODULE FILE LICENSE: os/linux64/demangler_gnu GPL 3
- MODULE FILE LICENSE: os/osx64/demangler_gnu GPL 3
--MODULE FILE LICENSE: os/win64/demangler_gnu.exe GPL 3
-\ No newline at end of file
-+MODULE FILE LICENSE: os/openbsd64/demangler_gnu GPL 3
-+MODULE FILE LICENSE: os/win64/demangler_gnu.exe GPL 3
Index: 
patches/patch-GhidraBuild_LaunchSupport_src_main_java_ghidra_launch_JavaFinder_java
===================================================================
RCS file: 
/cvs/ports/security/ghidra/patches/patch-GhidraBuild_LaunchSupport_src_main_java_ghidra_launch_JavaFinder_java,v
diff -u -p -u -r1.1 
patch-GhidraBuild_LaunchSupport_src_main_java_ghidra_launch_JavaFinder_java
--- 
patches/patch-GhidraBuild_LaunchSupport_src_main_java_ghidra_launch_JavaFinder_java
 10 Feb 2026 03:03:33 -0000      1.1
+++ 
patches/patch-GhidraBuild_LaunchSupport_src_main_java_ghidra_launch_JavaFinder_java
 19 Feb 2026 14:00:12 -0000
@@ -1,4 +1,4 @@
-Add OpenBSD - still need to create OpenBSDFinder.java
+Add OpenBSD
 
 Index: GhidraBuild/LaunchSupport/src/main/java/ghidra/launch/JavaFinder.java
 --- GhidraBuild/LaunchSupport/src/main/java/ghidra/launch/JavaFinder.java.orig
@@ -12,13 +12,22 @@ Index: GhidraBuild/LaunchSupport/src/mai
        }
  
        /**
-@@ -53,6 +53,9 @@ public abstract class JavaFinder {
-                       }
+@@ -54,6 +54,9 @@ public abstract class JavaFinder {
                        if (os.contains("mac")) {
                                return Platform.MACOS;
-+                      }
+                       }
 +                      if (os.contains("openbsd")) {
 +                              return Platform.OPEN_BSD;
-                       }
++                      }
                }
                return Platform.LINUX;
+       }
+@@ -69,6 +72,8 @@ public abstract class JavaFinder {
+                               return new WindowsJavaFinder();
+                       case MACOS:
+                               return new MacJavaFinder();
++                      case OPEN_BSD:
++                              return new OpenBSDJavaFinder();
+                       case LINUX:
+                       default:
+                               return new LinuxJavaFinder();
Index: 
patches/patch-GhidraBuild_LaunchSupport_src_main_java_ghidra_launch_OpenBSDJavaFinder_java
===================================================================
RCS file: 
patches/patch-GhidraBuild_LaunchSupport_src_main_java_ghidra_launch_OpenBSDJavaFinder_java
diff -N 
patches/patch-GhidraBuild_LaunchSupport_src_main_java_ghidra_launch_OpenBSDJavaFinder_java
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ 
patches/patch-GhidraBuild_LaunchSupport_src_main_java_ghidra_launch_OpenBSDJavaFinder_java
  19 Feb 2026 14:00:12 -0000
@@ -0,0 +1,47 @@
+Add OpenBSDJavaFinder implemention
+
+Index: 
GhidraBuild/LaunchSupport/src/main/java/ghidra/launch/OpenBSDJavaFinder.java
+--- 
GhidraBuild/LaunchSupport/src/main/java/ghidra/launch/OpenBSDJavaFinder.java.orig
++++ 
GhidraBuild/LaunchSupport/src/main/java/ghidra/launch/OpenBSDJavaFinder.java
+@@ -0,0 +1,41 @@
++/* ###
++ * IP: GHIDRA
++ *
++ * Licensed under the Apache License, Version 2.0 (the "License");
++ * you may not use this file except in compliance with the License.
++ * You may obtain a copy of the License at
++ * 
++ *      http://www.apache.org/licenses/LICENSE-2.0
++ * 
++ * Unless required by applicable law or agreed to in writing, software
++ * distributed under the License is distributed on an "AS IS" BASIS,
++ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
++ * See the License for the specific language governing permissions and
++ * limitations under the License.
++ */
++package ghidra.launch;
++
++import java.io.File;
++import java.io.FilenameFilter;
++import java.util.ArrayList;
++import java.util.List;
++import java.util.Arrays;
++
++/**
++ * Class responsible for finding Java installations on an OpenBSD system.
++ */
++public class OpenBSDJavaFinder extends LinuxJavaFinder {
++
++      @Override
++      protected List<File> getJavaRootInstallDirs() {
++              File localdir = new File("${LOCALBASE}");
++
++              File[] filteredFiles = localdir.listFiles((dir, name) ->
++                      name.toLowerCase().startsWith("jdk-")
++              );
++
++              return filteredFiles != null
++                      ? new ArrayList<>(Arrays.asList(filteredFiles))
++                      : new ArrayList<>();
++      }
++}
Index: 
patches/patch-Ghidra_Debug_Debugger-agent-gdb_data_debugger-launchers_local-gdb_sh
===================================================================
RCS file: 
patches/patch-Ghidra_Debug_Debugger-agent-gdb_data_debugger-launchers_local-gdb_sh
diff -N 
patches/patch-Ghidra_Debug_Debugger-agent-gdb_data_debugger-launchers_local-gdb_sh
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ 
patches/patch-Ghidra_Debug_Debugger-agent-gdb_data_debugger-launchers_local-gdb_sh
  19 Feb 2026 14:00:12 -0000
@@ -0,0 +1,14 @@
+Use egdb by default when debugging locally
+
+Index: Ghidra/Debug/Debugger-agent-gdb/data/debugger-launchers/local-gdb.sh
+--- Ghidra/Debug/Debugger-agent-gdb/data/debugger-launchers/local-gdb.sh.orig
++++ Ghidra/Debug/Debugger-agent-gdb/data/debugger-launchers/local-gdb.sh
+@@ -31,7 +31,7 @@
+ #@enum Endian:str auto big little
+ #@arg :file "Image" "The target binary executable image, empty for no target"
+ #@args "Arguments" "Command-line arguments to pass to the target"
+-#@env OPT_GDB_PATH:file="gdb" "gdb command" "The path to gdb. Omit the full 
path to resolve using the system PATH."
++#@env OPT_GDB_PATH:file="egdb" "gdb command" "The path to gdb. Omit the full 
path to resolve using the system PATH."
+ #@env OPT_START_CMD:StartCmd="starti" "Run command" "The gdb command to 
actually run the target."
+ #@env OPT_ARCH:str="i386:x86-64" "Architecture" "Target architecture"
+ #@env OPT_ENDIAN:Endian="auto" "Endian" "Target byte order"
Index: 
patches/patch-Ghidra_Debug_Debugger-agent-gdb_src_main_py_src_ghidragdb_util_py
===================================================================
RCS file: 
/cvs/ports/security/ghidra/patches/patch-Ghidra_Debug_Debugger-agent-gdb_src_main_py_src_ghidragdb_util_py,v
diff -u -p -u -r1.1 
patch-Ghidra_Debug_Debugger-agent-gdb_src_main_py_src_ghidragdb_util_py
--- 
patches/patch-Ghidra_Debug_Debugger-agent-gdb_src_main_py_src_ghidragdb_util_py 
    10 Feb 2026 03:03:33 -0000      1.1
+++ 
patches/patch-Ghidra_Debug_Debugger-agent-gdb_src_main_py_src_ghidragdb_util_py 
    19 Feb 2026 14:00:12 -0000
@@ -6,16 +6,24 @@ on OpenBSD/amd64.
 Index: Ghidra/Debug/Debugger-agent-gdb/src/main/py/src/ghidragdb/util.py
 --- Ghidra/Debug/Debugger-agent-gdb/src/main/py/src/ghidragdb/util.py.orig
 +++ Ghidra/Debug/Debugger-agent-gdb/src/main/py/src/ghidragdb/util.py
-@@ -410,7 +410,7 @@ class RegisterDesc:
+@@ -19,6 +19,7 @@ import bisect
+ from dataclasses import dataclass
+ import re
+ from typing import Callable, Dict, List, Optional, Set, Tuple, Union
++import platform
+ 
+ import gdb
+ 
+@@ -410,7 +411,7 @@ class RegisterDesc:
  
  def get_register_descs(arch: gdb.Architecture, group: str = 'all') -> List[
          Union[RegisterDesc, gdb.RegisterDescriptor]]:
 -    if hasattr(arch, "registers"):
-+    if hasattr(arch, "registers") and False:
++    if hasattr(arch, "registers") and platform.system() != "OpenBSD":
          try:
              return list(arch.registers(group))
          except ValueError:  # No such group, or version too old
-@@ -424,7 +424,7 @@ def get_register_descs(arch: gdb.Architecture, group: 
+@@ -424,7 +425,7 @@ def get_register_descs(arch: gdb.Architecture, group: 
              regset = gdb.execute(
                  f"info registers", to_string=True).strip().split('\n')
          for line in regset:
Index: patches/patch-Ghidra_Debug_Debugger-rmi-trace_Module_manifest
===================================================================
RCS file: patches/patch-Ghidra_Debug_Debugger-rmi-trace_Module_manifest
diff -N patches/patch-Ghidra_Debug_Debugger-rmi-trace_Module_manifest
--- patches/patch-Ghidra_Debug_Debugger-rmi-trace_Module_manifest       10 Feb 
2026 03:03:33 -0000      1.1
+++ /dev/null   1 Jan 1970 00:00:00 -0000
@@ -1,11 +0,0 @@
-Use protobuf provided by ports
-
-Index: Ghidra/Debug/Debugger-rmi-trace/Module.manifest
---- Ghidra/Debug/Debugger-rmi-trace/Module.manifest.orig
-+++ Ghidra/Debug/Debugger-rmi-trace/Module.manifest
-@@ -1,4 +1,4 @@
--MODULE FILE LICENSE: pypkg/dist/protobuf-6.31.0-py3-none-any.whl BSD-3-GOOGLE
-+MODULE FILE LICENSE: pypkg/dist/protobuf-${PROTOBUF_VER}-py3-none-any.whl 
BSD-3-GOOGLE
- MODULE FILE LICENSE: pypkg/dist/psutil-5.9.8.tar.gz BSD-3-PSUTIL
- MODULE FILE LICENSE: pypkg/dist/setuptools-80.9.0-py3-none-any.whl MIT
- MODULE FILE LICENSE: pypkg/dist/wheel-0.45.1-py3-none-any.whl MIT
Index: patches/patch-Ghidra_Debug_Debugger-rmi-trace_build_gradle
===================================================================
RCS file: patches/patch-Ghidra_Debug_Debugger-rmi-trace_build_gradle
diff -N patches/patch-Ghidra_Debug_Debugger-rmi-trace_build_gradle
--- patches/patch-Ghidra_Debug_Debugger-rmi-trace_build_gradle  10 Feb 2026 
03:03:33 -0000      1.1
+++ /dev/null   1 Jan 1970 00:00:00 -0000
@@ -1,14 +0,0 @@
-Use protobuf provided by ports
-
-Index: Ghidra/Debug/Debugger-rmi-trace/build.gradle
---- Ghidra/Debug/Debugger-rmi-trace/build.gradle.orig
-+++ Ghidra/Debug/Debugger-rmi-trace/build.gradle
-@@ -73,7 +73,7 @@ tasks.assemblePyPackage {
-       }
- }
- 
--distributePyDep("protobuf-6.31.0-py3-none-any.whl")
-+distributePyDep("protobuf-${PROTOBUF_VER}-py3-none-any.whl")
- distributePyDep("psutil-5.9.8.tar.gz")
- distributePyDep("setuptools-80.9.0-py3-none-any.whl")
- distributePyDep("wheel-0.45.1-py3-none-any.whl")
Index: patches/patch-Ghidra_Debug_ProposedUtils_Module_manifest
===================================================================
RCS file: 
/cvs/ports/security/ghidra/patches/patch-Ghidra_Debug_ProposedUtils_Module_manifest,v
diff -u -p -u -r1.1 patch-Ghidra_Debug_ProposedUtils_Module_manifest
--- patches/patch-Ghidra_Debug_ProposedUtils_Module_manifest    10 Feb 2026 
03:03:33 -0000      1.1
+++ patches/patch-Ghidra_Debug_ProposedUtils_Module_manifest    19 Feb 2026 
14:00:12 -0000
@@ -1,4 +1,4 @@
-Match OpenBSD protobuf s/6/4/
+Use system protobuf-java - copied into dependencies/flatRepo
 
 Index: Ghidra/Debug/ProposedUtils/Module.manifest
 --- Ghidra/Debug/ProposedUtils/Module.manifest.orig
Index: 
patches/patch-Ghidra_Framework_Generic_src_main_java_ghidra_framework_Platform_java
===================================================================
RCS file: 
/cvs/ports/security/ghidra/patches/patch-Ghidra_Framework_Generic_src_main_java_ghidra_framework_Platform_java,v
diff -u -p -u -r1.3 
patch-Ghidra_Framework_Generic_src_main_java_ghidra_framework_Platform_java
--- 
patches/patch-Ghidra_Framework_Generic_src_main_java_ghidra_framework_Platform_java
 10 Feb 2026 03:03:33 -0000      1.3
+++ 
patches/patch-Ghidra_Framework_Generic_src_main_java_ghidra_framework_Platform_java
 19 Feb 2026 14:00:12 -0000
@@ -28,7 +28,7 @@ Index: Ghidra/Framework/Generic/src/main
 +              else if (operatingSystem == OperatingSystem.OPEN_BSD) {
 +                      paths.add("/usr/lib");
 +                      paths.add("/usr/X11R6/lib");
-+                      paths.add("/usr/local/lib");
++                      paths.add("${LOCALBASE}/lib");
                }
                else if (CURRENT_PLATFORM == WIN_X86_64) {
                        String windir = System.getenv("SystemRoot");
Index: 
patches/patch-Ghidra_Framework_Pty_src_main_java_ghidra_pty_openbsd_OpenBSDIoctls_java
===================================================================
RCS file: 
/cvs/ports/security/ghidra/patches/patch-Ghidra_Framework_Pty_src_main_java_ghidra_pty_openbsd_OpenBSDIoctls_java,v
diff -u -p -u -r1.1 
patch-Ghidra_Framework_Pty_src_main_java_ghidra_pty_openbsd_OpenBSDIoctls_java
--- 
patches/patch-Ghidra_Framework_Pty_src_main_java_ghidra_pty_openbsd_OpenBSDIoctls_java
      10 Feb 2026 03:03:33 -0000      1.1
+++ 
patches/patch-Ghidra_Framework_Pty_src_main_java_ghidra_pty_openbsd_OpenBSDIoctls_java
      19 Feb 2026 14:00:12 -0000
@@ -26,12 +26,12 @@ Index: Ghidra/Framework/Pty/src/main/jav
        @Override
        public long TIOCSCTTY() {
 -              return 0x540eL;
-+              return 0x20007461;
++              return 0x20007461L;
        }
  
        @Override
        public long TIOCSWINSZ() {
 -              return 0x5414L;
-+              return 0x80087467;
++              return 0x80087467L;
        }
  }
Index: patches/patch-gradle_hasProtobuf_gradle
===================================================================
RCS file: /cvs/ports/security/ghidra/patches/patch-gradle_hasProtobuf_gradle,v
diff -u -p -u -r1.1 patch-gradle_hasProtobuf_gradle
--- patches/patch-gradle_hasProtobuf_gradle     10 Feb 2026 03:03:33 -0000      
1.1
+++ patches/patch-gradle_hasProtobuf_gradle     19 Feb 2026 14:00:12 -0000
@@ -1,23 +1,15 @@
-Use installed protoc package
+Use installed protobuf package for protoc
 
 Index: gradle/hasProtobuf.gradle
 --- gradle/hasProtobuf.gradle.orig
 +++ gradle/hasProtobuf.gradle
-@@ -33,6 +33,7 @@ dependencies {
-       allProtocArtifacts 
"com.google.protobuf:protoc:${version}:linux-aarch_64@exe"
-       allProtocArtifacts 
"com.google.protobuf:protoc:${version}:osx-x86_64@exe"
-       allProtocArtifacts 
"com.google.protobuf:protoc:${version}:osx-aarch_64@exe"
-+      implementation files('/usr/local/bin/protoc')
- 
-       if (isCurrentWindows()) {
-               protocArtifact 
"com.google.protobuf:protoc:${version}:windows-x86_64@exe"
-@@ -52,6 +53,9 @@ dependencies {
-               else {
+@@ -53,6 +53,9 @@ dependencies {
                        protocArtifact 
"com.google.protobuf:protoc:${version}:osx-aarch_64@exe"
                }
-+      }
-+      if (isCurrentOpenBSD()) {
-+              protocArtifact files('/usr/local/bin/protoc')
        }
++      if (isCurrentOpenBSD()) {
++              protocArtifact files('${LOCALBASE}/bin/protoc')
++      }
  }
  
+ /*protobuf {
Index: patches/patch-gradle_properties
===================================================================
RCS file: /cvs/ports/security/ghidra/patches/patch-gradle_properties,v
diff -u -p -u -r1.1 patch-gradle_properties
--- patches/patch-gradle_properties     10 Feb 2026 03:03:33 -0000      1.1
+++ patches/patch-gradle_properties     19 Feb 2026 14:00:12 -0000
@@ -1,4 +1,4 @@
-Match OpenBSD protbuf version in makefile with s/6/4/
+Use system protobuf-java - copied into dependencies/flatRepo
 
 Index: gradle.properties
 --- gradle.properties.orig
Index: patches/patch-gradle_support_fetchDependencies_gradle
===================================================================
RCS file: patches/patch-gradle_support_fetchDependencies_gradle
diff -N patches/patch-gradle_support_fetchDependencies_gradle
--- patches/patch-gradle_support_fetchDependencies_gradle       10 Feb 2026 
03:03:33 -0000      1.1
+++ /dev/null   1 Jan 1970 00:00:00 -0000
@@ -1,19 +0,0 @@
-Download py3-protobuf to make the build happy, but we have a run depend on
-this too. Keep the version here in sync with PROTOBUF_VER in makefile.
-
-Index: gradle/support/fetchDependencies.gradle
---- gradle/support/fetchDependencies.gradle.orig
-+++ gradle/support/fetchDependencies.gradle
-@@ -212,9 +212,9 @@ ext.deps = [
-               }
-       ],
-       [
--              name: "protobuf-6.31.0-py3-none-any.whl",
--              url: 
"https://files.pythonhosted.org/packages/ee/01/1ed1d482960a5718fd99c82f6d79120181947cfd4667ec3944d448ed44a3/protobuf-6.31.0-py3-none-any.whl";,
--              sha256: 
"6ac2e82556e822c17a8d23aa1190bbc1d06efb9c261981da95c71c9da09e9e23",
-+              name: "protobuf-6.33.4-py3-none-any.whl",
-+              url: 
"https://files.pythonhosted.org/packages/75/b1/1dc83c2c661b4c62d56cc081706ee33a4fc2835bd90f965baa2663ef7676/protobuf-6.33.4-py3-none-any.whl";,
-+              sha256: 
"1fe3730068fcf2e595816a6c34fe66eeedd37d51d0400b72fabc848811fdc1bc",
-               destination: file("${DEPS_DIR}/Debugger-rmi-trace/")
-       ],
-       [
Index: pkg/PLIST
===================================================================
RCS file: /cvs/ports/security/ghidra/pkg/PLIST,v
diff -u -p -u -r1.8 PLIST
--- pkg/PLIST   10 Feb 2026 03:03:33 -0000      1.8
+++ pkg/PLIST   19 Feb 2026 14:00:12 -0000
@@ -318,11 +318,7 @@ share/java/ghidra/Ghidra/Debug/Debugger-
 share/java/ghidra/Ghidra/Debug/Debugger-agent-dbgeng/pypkg/MANIFEST.in
 share/java/ghidra/Ghidra/Debug/Debugger-agent-dbgeng/pypkg/README.md
 share/java/ghidra/Ghidra/Debug/Debugger-agent-dbgeng/pypkg/dist/
-share/java/ghidra/Ghidra/Debug/Debugger-agent-dbgeng/pypkg/dist/Pybag-2.2.12-${MODPY_PY_PREFIX}none-any.whl
-share/java/ghidra/Ghidra/Debug/Debugger-agent-dbgeng/pypkg/dist/capstone-5.0.1-${MODPY_PY_PREFIX}none-win_amd64.whl
-share/java/ghidra/Ghidra/Debug/Debugger-agent-dbgeng/pypkg/dist/comtypes-1.4.1-${MODPY_PY_PREFIX}none-any.whl
 
share/java/ghidra/Ghidra/Debug/Debugger-agent-dbgeng/pypkg/dist/ghidradbg-12.0-${MODPY_PY_PREFIX}none-any.whl
-share/java/ghidra/Ghidra/Debug/Debugger-agent-dbgeng/pypkg/dist/pywin32-306-cp312-cp312-win_amd64.whl
 share/java/ghidra/Ghidra/Debug/Debugger-agent-dbgeng/pypkg/pyproject.toml
 share/java/ghidra/Ghidra/Debug/Debugger-agent-dbgeng/pypkg/src/
 share/java/ghidra/Ghidra/Debug/Debugger-agent-dbgeng/pypkg/src/ghidradbg/
@@ -533,10 +529,6 @@ share/java/ghidra/Ghidra/Debug/Debugger-
 share/java/ghidra/Ghidra/Debug/Debugger-rmi-trace/pypkg/README.md
 share/java/ghidra/Ghidra/Debug/Debugger-rmi-trace/pypkg/dist/
 
share/java/ghidra/Ghidra/Debug/Debugger-rmi-trace/pypkg/dist/ghidratrace-12.0-${MODPY_PY_PREFIX}none-any.whl
-share/java/ghidra/Ghidra/Debug/Debugger-rmi-trace/pypkg/dist/protobuf-${PROTOBUF_VER}-${MODPY_PY_PREFIX}none-any.whl
-share/java/ghidra/Ghidra/Debug/Debugger-rmi-trace/pypkg/dist/psutil-5.9.8.tar.gz
-share/java/ghidra/Ghidra/Debug/Debugger-rmi-trace/pypkg/dist/setuptools-80.9.0-${MODPY_PY_PREFIX}none-any.whl
-share/java/ghidra/Ghidra/Debug/Debugger-rmi-trace/pypkg/dist/wheel-0.45.1-${MODPY_PY_PREFIX}none-any.whl
 share/java/ghidra/Ghidra/Debug/Debugger-rmi-trace/pypkg/pyproject.toml
 share/java/ghidra/Ghidra/Debug/Debugger-rmi-trace/pypkg/src/
 share/java/ghidra/Ghidra/Debug/Debugger-rmi-trace/pypkg/src/ghidratrace/
@@ -2604,8 +2596,6 @@ share/java/ghidra/Ghidra/Features/Jython
 
share/java/ghidra/Ghidra/Features/Jython/data/jython-2.7.4/Lib/ensurepip/__main__$py.class
 
share/java/ghidra/Ghidra/Features/Jython/data/jython-2.7.4/Lib/ensurepip/__main__.py
 
share/java/ghidra/Ghidra/Features/Jython/data/jython-2.7.4/Lib/ensurepip/_bundled/
-share/java/ghidra/Ghidra/Features/Jython/data/jython-2.7.4/Lib/ensurepip/_bundled/pip-19.1-py2.${MODPY_PY_PREFIX}none-any.whl
-share/java/ghidra/Ghidra/Features/Jython/data/jython-2.7.4/Lib/ensurepip/_bundled/setuptools-41.0.1-py2.${MODPY_PY_PREFIX}none-any.whl
 
share/java/ghidra/Ghidra/Features/Jython/data/jython-2.7.4/Lib/ensurepip/_uninstall$py.class
 
share/java/ghidra/Ghidra/Features/Jython/data/jython-2.7.4/Lib/ensurepip/_uninstall.py
 share/java/ghidra/Ghidra/Features/Jython/data/jython-2.7.4/Lib/filecmp$py.class
@@ -3395,88 +3385,6 @@ share/java/ghidra/Ghidra/Features/Progra
 share/java/ghidra/Ghidra/Features/ProgramGraph/lib/
 share/java/ghidra/Ghidra/Features/ProgramGraph/lib/ProgramGraph-src.zip
 share/java/ghidra/Ghidra/Features/ProgramGraph/lib/ProgramGraph.jar
-share/java/ghidra/Ghidra/Features/PyGhidra/
-share/java/ghidra/Ghidra/Features/PyGhidra/LICENSE.txt
-share/java/ghidra/Ghidra/Features/PyGhidra/Module.manifest
-share/java/ghidra/Ghidra/Features/PyGhidra/README.html
-share/java/ghidra/Ghidra/Features/PyGhidra/README.md
-share/java/ghidra/Ghidra/Features/PyGhidra/data/
-share/java/ghidra/Ghidra/Features/PyGhidra/data/python.theme.properties
-share/java/ghidra/Ghidra/Features/PyGhidra/ghidra_scripts/
-share/java/ghidra/Ghidra/Features/PyGhidra/ghidra_scripts/PyGhidraBasics.py
-share/java/ghidra/Ghidra/Features/PyGhidra/lib/
-share/java/ghidra/Ghidra/Features/PyGhidra/lib/PyGhidra-src.zip
-share/java/ghidra/Ghidra/Features/PyGhidra/lib/PyGhidra.jar
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/LICENSE
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/MANIFEST.in
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/README.html
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/README.md
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/dist/
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/dist/jpype1-1.5.2-cp310-cp310-macosx_10_9_universal2.whl
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/dist/jpype1-1.5.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/dist/jpype1-1.5.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/dist/jpype1-1.5.2-cp310-cp310-win_amd64.whl
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/dist/jpype1-1.5.2-cp311-cp311-macosx_10_9_universal2.whl
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/dist/jpype1-1.5.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/dist/jpype1-1.5.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/dist/jpype1-1.5.2-cp311-cp311-win_amd64.whl
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/dist/jpype1-1.5.2-cp312-cp312-macosx_10_9_universal2.whl
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/dist/jpype1-1.5.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/dist/jpype1-1.5.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/dist/jpype1-1.5.2-cp312-cp312-win_amd64.whl
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/dist/jpype1-1.5.2-cp313-cp313-macosx_10_13_universal2.whl
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/dist/jpype1-1.5.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/dist/jpype1-1.5.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/dist/jpype1-1.5.2-cp313-cp313-win_amd64.whl
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/dist/jpype1-1.5.2-cp39-cp39-macosx_10_9_x86_64.whl
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/dist/jpype1-1.5.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/dist/jpype1-1.5.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/dist/jpype1-1.5.2-cp39-cp39-win_amd64.whl
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/dist/jpype1-1.5.2.tar.gz
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/dist/packaging-25.0-${MODPY_PY_PREFIX}none-any.whl
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/dist/pyghidra-3.0.2-${MODPY_PY_PREFIX}none-any.whl
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/dist/pyghidra-3.0.2.tar.gz
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/dist/setuptools-80.9.0-${MODPY_PY_PREFIX}none-any.whl
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/dist/wheel-0.45.1-${MODPY_PY_PREFIX}none-any.whl
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/pyproject.toml
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/setup.py
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/src/
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/src/pyghidra/
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/src/pyghidra/__init__.py
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/src/pyghidra/__main__.py
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/src/pyghidra/api.py
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/src/pyghidra/converters.py
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/src/pyghidra/core.py
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/src/pyghidra/ghidra_launch.py
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/src/pyghidra/ghidradoc.py
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/src/pyghidra/gui.py
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/src/pyghidra/internal/
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/src/pyghidra/internal/__init__.py
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/src/pyghidra/internal/plugin/
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/src/pyghidra/internal/plugin/__init__.py
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/src/pyghidra/internal/plugin/completions.py
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/src/pyghidra/internal/plugin/plugin.py
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/src/pyghidra/javac.py
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/src/pyghidra/launcher.py
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/src/pyghidra/properties.py
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/src/pyghidra/script.py
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/src/pyghidra/version.py
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/tests/
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/tests/data/
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/tests/data/bad_plugin/
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/tests/data/bad_plugin/BadPluginClass.java
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/tests/data/example_script.py
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/tests/data/good_plugin/
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/tests/data/good_plugin/DummyTestRecognizer.java
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/tests/data/import_test_script.py
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/tests/data/programless_script.py
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/tests/data/projectless_script.py
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/tests/test_argparser.py
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/tests/test_core.py
-share/java/ghidra/Ghidra/Features/PyGhidra/pypkg/tests/test_plugin.py
-share/java/ghidra/Ghidra/Features/PyGhidra/support/
-share/java/ghidra/Ghidra/Features/PyGhidra/support/pyghidra_launcher.py
 share/java/ghidra/Ghidra/Features/Recognizers/
 share/java/ghidra/Ghidra/Features/Recognizers/LICENSE.txt
 share/java/ghidra/Ghidra/Features/Recognizers/Module.manifest
@@ -6058,9 +5966,6 @@ share/java/ghidra/docs/ghidra_stubs/pypr
 share/java/ghidra/docs/ghidra_stubs/pypredef/ghidra.pty.unix.pypredef
 share/java/ghidra/docs/ghidra_stubs/pypredef/ghidra.pty.windows.jna.pypredef
 share/java/ghidra/docs/ghidra_stubs/pypredef/ghidra.pty.windows.pypredef
-share/java/ghidra/docs/ghidra_stubs/pypredef/ghidra.pyghidra.interpreter.pypredef
-share/java/ghidra/docs/ghidra_stubs/pypredef/ghidra.pyghidra.property.pypredef
-share/java/ghidra/docs/ghidra_stubs/pypredef/ghidra.pyghidra.pypredef
 share/java/ghidra/docs/ghidra_stubs/pypredef/ghidra.pypredef
 share/java/ghidra/docs/ghidra_stubs/pypredef/ghidra.rmi.trace.pypredef
 share/java/ghidra/docs/ghidra_stubs/pypredef/ghidra.security.pypredef
@@ -7570,12 +7475,6 @@ share/java/ghidra/docs/ghidra_stubs/type
 
share/java/ghidra/docs/ghidra_stubs/typestubs/ghidra-stubs/pty/windows/__init__.pyi
 share/java/ghidra/docs/ghidra_stubs/typestubs/ghidra-stubs/pty/windows/jna/
 
share/java/ghidra/docs/ghidra_stubs/typestubs/ghidra-stubs/pty/windows/jna/__init__.pyi
-share/java/ghidra/docs/ghidra_stubs/typestubs/ghidra-stubs/pyghidra/
-share/java/ghidra/docs/ghidra_stubs/typestubs/ghidra-stubs/pyghidra/__init__.pyi
-share/java/ghidra/docs/ghidra_stubs/typestubs/ghidra-stubs/pyghidra/interpreter/
-share/java/ghidra/docs/ghidra_stubs/typestubs/ghidra-stubs/pyghidra/interpreter/__init__.pyi
-share/java/ghidra/docs/ghidra_stubs/typestubs/ghidra-stubs/pyghidra/property/
-share/java/ghidra/docs/ghidra_stubs/typestubs/ghidra-stubs/pyghidra/property/__init__.pyi
 share/java/ghidra/docs/ghidra_stubs/typestubs/ghidra-stubs/rmi/
 share/java/ghidra/docs/ghidra_stubs/typestubs/ghidra-stubs/rmi/__init__.pyi
 share/java/ghidra/docs/ghidra_stubs/typestubs/ghidra-stubs/rmi/trace/


Reply via email to