git: f98a15e4881c - main - devel/kassert: Karlsruhe assertion library for C++

From: Robert Clausecker <fuz_at_FreeBSD.org>
Date: Tue, 18 Feb 2025 14:26:04 UTC
The branch main has been updated by fuz:

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

commit f98a15e4881cc2c27bcd4ee7ada192491e1fa868
Author:     Robert Clausecker <fuz@FreeBSD.org>
AuthorDate: 2025-02-12 11:55:49 +0000
Commit:     Robert Clausecker <fuz@FreeBSD.org>
CommitDate: 2025-02-18 14:16:11 +0000

    devel/kassert: Karlsruhe assertion library for C++
    
    KAssert is the assertion library used by KaMPIng, the Karlsruhe MPI
    Wrapper. However, KAssert does not depend on MPI and can be used in
    non-MPI code.
    
    Features:
    
     - Assertion levels to distinguish between computationally cheap and
       expensive assertions
     - Expression decomposition to give more insights into failed
       assertions
     - Throwing assertions
    
    WWW: https://kamping-site.github.io/kassert/
    
    This port is a dependency for an upcoming port of the KaMPIng library.
    
    The port calls for doxygen>=1.10.0 to build its documentation, but
    the update is currently blocked (bug #279330).  Cross fingers and
    use whatever Doxygen we have.
---
 devel/Makefile          |  1 +
 devel/kassert/Makefile  | 37 +++++++++++++++++++++++++++++++++++++
 devel/kassert/distinfo  |  5 +++++
 devel/kassert/pkg-descr | 11 +++++++++++
 devel/kassert/pkg-plist |  7 +++++++
 5 files changed, 61 insertions(+)

diff --git a/devel/Makefile b/devel/Makefile
index dcda64106651..fcaaa2d4ec7b 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -1096,6 +1096,7 @@
     SUBDIR += jwasm
     SUBDIR += kBuild
     SUBDIR += kapptemplate
+    SUBDIR += kassert
     SUBDIR += kcachegrind
     SUBDIR += kconfig-frontends
     SUBDIR += kcov
diff --git a/devel/kassert/Makefile b/devel/kassert/Makefile
new file mode 100644
index 000000000000..78d38eb15197
--- /dev/null
+++ b/devel/kassert/Makefile
@@ -0,0 +1,37 @@
+PORTNAME=	kassert
+DISTVERSIONPREFIX=	v
+DISTVERSION=	0.2.1
+CATEGORIES=	devel
+
+MAINTAINER=	fuz@FreeBSD.org
+COMMENT=	Karlsruhe assertion library for C++
+WWW=		https://kamping-site.github.io/kassert/
+
+LICENSE=	MIT
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+TEST_DEPENDS=	googletest>0:devel/googletest
+
+USES=		cmake:testing
+USE_GITHUB=	yes
+GH_ACCOUNT=	kamping-site
+GH_TUPLE=	jothepro:doxygen-awesome-css:v2.3.3:awesome
+
+CMAKE_OFF=	KASSERT_BUILD_TESTS \
+		KASSERT_USE_BUNDLED_GTEST
+CMAKE_TESTING_ON=	KASSERT_BUILD_TESTS
+
+NO_ARCH=	yes
+PORTDOCS=	*
+
+OPTIONS_DEFINE=	DOCS
+DOCS_BUILD_DEPENDS=	doxygen>=1.9.0:devel/doxygen
+DOCS_CMAKE_BOOL=	KASSERT_BUILD_DOCS
+DOCS_ALL_TARGET=	all docs
+DOCS_VARS_OFF=	no_build=yes
+
+post-extract:
+	${MKDIR} ${BUILD_WRKSRC}/_deps
+	${RLN} ${WRKSRC_awesome} ${BUILD_WRKSRC}/_deps/doxygen-awesome-css-src
+
+.include <bsd.port.mk>
diff --git a/devel/kassert/distinfo b/devel/kassert/distinfo
new file mode 100644
index 000000000000..d0d57702f5e1
--- /dev/null
+++ b/devel/kassert/distinfo
@@ -0,0 +1,5 @@
+TIMESTAMP = 1739545454
+SHA256 (kamping-site-kassert-v0.2.1_GH0.tar.gz) = 319d0a55868cb0081cbc8b811857f2ef7c19a449fa77af16147a1ab69ba3d9c9
+SIZE (kamping-site-kassert-v0.2.1_GH0.tar.gz) = 65773
+SHA256 (jothepro-doxygen-awesome-css-v2.3.3_GH0.tar.gz) = 9646af5b5a7a40a248198840f43b88eb03b6ec818840d529b940d4f0744f9fc3
+SIZE (jothepro-doxygen-awesome-css-v2.3.3_GH0.tar.gz) = 5959319
diff --git a/devel/kassert/pkg-descr b/devel/kassert/pkg-descr
new file mode 100644
index 000000000000..eafcf03830c3
--- /dev/null
+++ b/devel/kassert/pkg-descr
@@ -0,0 +1,11 @@
+KAssert is the assertion library used by KaMPIng, the Karlsruhe MPI
+Wrapper. However, KAssert does not depend on MPI and can be used in
+non-MPI code.
+
+Features:
+
+ - Assertion levels to distinguish between computationally cheap and
+   expensive assertions
+ - Expression decomposition to give more insights into failed
+   assertions
+ - Throwing assertions
diff --git a/devel/kassert/pkg-plist b/devel/kassert/pkg-plist
new file mode 100644
index 000000000000..b0ebc2d07c79
--- /dev/null
+++ b/devel/kassert/pkg-plist
@@ -0,0 +1,7 @@
+include/kassert/internal/assertion_macros.hpp
+include/kassert/internal/expression_decomposition.hpp
+include/kassert/internal/logger.hpp
+include/kassert/kassert.hpp
+lib/cmake/kassert/kassertConfig.cmake
+lib/cmake/kassert/kassertConfigVersion.cmake
+lib/cmake/kassert/kassertTargets.cmake