git: 03b4820d4c5b - main - devel/intervaltree: Minimal C++ interval tree implementation

From: Jason W. Bacon <jwb_at_FreeBSD.org>
Date: Tue, 18 Feb 2025 14:56:31 UTC
The branch main has been updated by jwb:

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

commit 03b4820d4c5b4063fc31cdffaf3efc5365771e73
Author:     Jason W. Bacon <jwb@FreeBSD.org>
AuthorDate: 2025-02-18 14:56:01 +0000
Commit:     Jason W. Bacon <jwb@FreeBSD.org>
CommitDate: 2025-02-18 14:56:30 +0000

    devel/intervaltree: Minimal C++ interval tree implementation
    
    An interval tree can be used to efficiently find a set of numeric
    intervals overlapping or containing another interval.  This library
    provides a basic implementation of an interval tree using C++
    templates, allowing the insertion of arbitrary types into the tree.
    
    Unbundled from biology/freebayes
---
 devel/Makefile               |  1 +
 devel/intervaltree/Makefile  | 26 ++++++++++++++++++++++++++
 devel/intervaltree/distinfo  |  3 +++
 devel/intervaltree/pkg-descr |  4 ++++
 4 files changed, 34 insertions(+)

diff --git a/devel/Makefile b/devel/Makefile
index f46d7bc1a3bd..14ac3babe783 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -1046,6 +1046,7 @@
     SUBDIR += injeqt
     SUBDIR += intel-graphics-compiler
     SUBDIR += interactive_rebase_tool
+    SUBDIR += intervaltree
     SUBDIR += ioncube
     SUBDIR += ipython
     SUBDIR += ireport
diff --git a/devel/intervaltree/Makefile b/devel/intervaltree/Makefile
new file mode 100644
index 000000000000..352838746511
--- /dev/null
+++ b/devel/intervaltree/Makefile
@@ -0,0 +1,26 @@
+PORTNAME=	intervaltree
+DISTVERSION=	0.1-2
+DISTVERSIONSUFFIX=	-gaa59377
+CATEGORIES=	devel
+
+MAINTAINER=	jwb@FreeBSD.org
+COMMENT=	Minimal C++ interval tree implementation
+WWW=		https://github.com/ekg/intervaltree
+
+LICENSE=	MIT
+
+USE_GITHUB=	yes
+GH_ACCOUNT=	ekg
+
+INSTALL_TARGET=	install-strip
+PLIST_FILES=	bin/interval_tree_test include/${PORTNAME}/IntervalTree.h
+
+.include <bsd.port.pre.mk>
+
+.if ${ARCH} == i386
+post-patch:
+	${REINPLACE_CMD} -e 's|<bool, unsigned long>|<bool, unsigned int>|g' \
+		${WRKSRC}/interval_tree_test.cpp
+.endif
+
+.include <bsd.port.post.mk>
diff --git a/devel/intervaltree/distinfo b/devel/intervaltree/distinfo
new file mode 100644
index 000000000000..4ccb2a9b1a4c
--- /dev/null
+++ b/devel/intervaltree/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1739809365
+SHA256 (ekg-intervaltree-0.1-2-gaa59377_GH0.tar.gz) = 4813653eade9572ed39a70e578958ccce845506ef23f609f680040d92c1d8868
+SIZE (ekg-intervaltree-0.1-2-gaa59377_GH0.tar.gz) = 72565
diff --git a/devel/intervaltree/pkg-descr b/devel/intervaltree/pkg-descr
new file mode 100644
index 000000000000..8c2d0f514035
--- /dev/null
+++ b/devel/intervaltree/pkg-descr
@@ -0,0 +1,4 @@
+An interval tree can be used to efficiently find a set of numeric
+intervals overlapping or containing another interval.  This library
+provides a basic implementation of an interval tree using C++
+templates, allowing the insertion of arbitrary types into the tree.