git: 77ba24128177 - main - devel/hivex: Add hivex 1.3.24

From: Po-Chuan Hsieh <sunpoet_at_FreeBSD.org>
Date: Mon, 06 Oct 2025 13:52:46 UTC
The branch main has been updated by sunpoet:

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

commit 77ba24128177c9f54d2852d606e3f2451fec7d56
Author:     Po-Chuan Hsieh <sunpoet@FreeBSD.org>
AuthorDate: 2025-10-06 13:51:48 +0000
Commit:     Po-Chuan Hsieh <sunpoet@FreeBSD.org>
CommitDate: 2025-10-06 13:51:48 +0000

    devel/hivex: Add hivex 1.3.24
    
    This is a self-contained library for reading and writing Windows Registry "hive"
    binary files.
    
    Unlike many other tools in this area, it doesn't use the textual .REG format for
    output, because parsing that is as much trouble as parsing the original binary
    format. Instead it makes the file available through a C API, or there is a
    separate program to export the hive as XML.
---
 devel/Makefile        |  1 +
 devel/hivex/Makefile  | 44 ++++++++++++++++++++++++++++++++++++++++++++
 devel/hivex/distinfo  |  3 +++
 devel/hivex/pkg-descr |  7 +++++++
 devel/hivex/pkg-plist | 23 +++++++++++++++++++++++
 5 files changed, 78 insertions(+)

diff --git a/devel/Makefile b/devel/Makefile
index f753525b102c..f47cc02e0e25 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -983,6 +983,7 @@
     SUBDIR += hgsvn
     SUBDIR += highlighterkit
     SUBDIR += highway
+    SUBDIR += hivex
     SUBDIR += hoel
     SUBDIR += hotspot
     SUBDIR += hp48cc
diff --git a/devel/hivex/Makefile b/devel/hivex/Makefile
new file mode 100644
index 000000000000..4c0ba4ed03b9
--- /dev/null
+++ b/devel/hivex/Makefile
@@ -0,0 +1,44 @@
+PORTNAME=	hivex
+PORTVERSION=	1.3.24
+CATEGORIES=	devel
+MASTER_SITES=	https://download.libguestfs.org/hivex/
+
+MAINTAINER=	sunpoet@FreeBSD.org
+COMMENT=	Library for reading and writing Windows Registry hive files
+WWW=		https://libguestfs.org/hivex.3.html \
+		https://github.com/libguestfs/hivex
+
+LICENSE=	LGPL21
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+USES=		gettext-runtime gmake gnome iconv libtool perl5 pkgconfig readline shebangfix
+USE_GNOME=	libxml2
+USE_PERL5=	build
+
+CONFIGURE_ARGS=	--disable-nls \
+		--disable-ocaml \
+		--disable-ruby \
+		--with-readline \
+		${CONFIGURE_ARGS_${ARCH}}
+CONFIGURE_ARGS_amd64=	--enable-year2038
+GNU_CONFIGURE=	yes
+INSTALL_TARGET=	install-strip
+
+SHEBANG_FILES=	sh/hivexget
+bash_CMD=	/bin/sh
+
+OPTIONS_DEFINE=	PERL PYTHON
+OPTIONS_DEFAULT=PERL PYTHON
+OPTIONS_SUB=	yes
+
+PERL_BUILD_DEPENDS=	p5-IO-Stringy>=0:devel/p5-IO-Stringy
+PERL_CONFIGURE_ENABLE=	perl
+PERL_RUN_DEPENDS=	p5-IO-Stringy>=0:devel/p5-IO-Stringy
+PERL_USE=		PERL5=run
+PYTHON_CONFIGURE_ENABLE=python
+PYTHON_USES=		python
+
+post-install-PERL-on:
+	${STRIP_CMD} ${STAGEDIR}${PREFIX}/${SITE_ARCH_REL}/auto/Win/Hivex/Hivex.so
+
+.include <bsd.port.mk>
diff --git a/devel/hivex/distinfo b/devel/hivex/distinfo
new file mode 100644
index 000000000000..74ca27adba55
--- /dev/null
+++ b/devel/hivex/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1759693104
+SHA256 (hivex-1.3.24.tar.gz) = a52fa45cecc9a78adb2d28605d68261e4f1fd4514a778a5473013d2ccc8a193c
+SIZE (hivex-1.3.24.tar.gz) = 741279
diff --git a/devel/hivex/pkg-descr b/devel/hivex/pkg-descr
new file mode 100644
index 000000000000..ed4a1c1172d0
--- /dev/null
+++ b/devel/hivex/pkg-descr
@@ -0,0 +1,7 @@
+This is a self-contained library for reading and writing Windows Registry "hive"
+binary files.
+
+Unlike many other tools in this area, it doesn't use the textual .REG format for
+output, because parsing that is as much trouble as parsing the original binary
+format. Instead it makes the file available through a C API, or there is a
+separate program to export the hive as XML.
diff --git a/devel/hivex/pkg-plist b/devel/hivex/pkg-plist
new file mode 100644
index 000000000000..4a8e8eef086f
--- /dev/null
+++ b/devel/hivex/pkg-plist
@@ -0,0 +1,23 @@
+bin/hivexget
+bin/hivexml
+%%PERL%%bin/hivexregedit
+bin/hivexsh
+include/hivex.h
+lib/libhivex.a
+lib/libhivex.so
+lib/libhivex.so.0
+lib/libhivex.so.0.0.0
+%%PERL%%%%SITE_ARCH%%/Win/Hivex.pm
+%%PERL%%%%SITE_ARCH%%/Win/Hivex/Regedit.pm
+%%PERL%%%%SITE_ARCH%%/auto/Win/Hivex/Hivex.so
+%%PERL%%%%PERL5_MAN3%%/Win::Hivex.3.gz
+%%PERL%%%%PERL5_MAN3%%/Win::Hivex::Regedit.3.gz
+%%PYTHON%%%%PYTHON_SITELIBDIR%%/hivex/__init__.py
+%%PYTHON%%%%PYTHON_SITELIBDIR%%/hivex/hive_types.py
+%%PYTHON%%%%PYTHON_SITELIBDIR%%/libhivexmod%%PYTHON_TAG%%.so
+libdata/pkgconfig/hivex.pc
+share/man/man1/hivexget.1.gz
+share/man/man1/hivexml.1.gz
+%%PERL%%share/man/man1/hivexregedit.1.gz
+share/man/man1/hivexsh.1.gz
+share/man/man3/hivex.3.gz