git: ffe345fd461f - main - net-p2p/clboss: add new port, The Core Lightning Node Manager

From: Vasil Dimov <vd_at_FreeBSD.org>
Date: Wed, 28 Feb 2024 10:52:33 UTC
The branch main has been updated by vd:

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

commit ffe345fd461ffabdc5a2f307cd92afc13bbf58fa
Author:     Vasil Dimov <vd@FreeBSD.org>
AuthorDate: 2024-02-13 11:25:56 +0000
Commit:     Vasil Dimov <vd@FreeBSD.org>
CommitDate: 2024-02-28 10:51:18 +0000

    net-p2p/clboss: add new port, The Core Lightning Node Manager
---
 net-p2p/Makefile                             |  1 +
 net-p2p/clboss/Makefile                      | 43 ++++++++++++++++++++++++++++
 net-p2p/clboss/distinfo                      |  3 ++
 net-p2p/clboss/files/patch-Util_Compiler.hpp | 11 +++++++
 net-p2p/clboss/files/pkg-message.in          | 11 +++++++
 net-p2p/clboss/pkg-descr                     |  3 ++
 6 files changed, 72 insertions(+)

diff --git a/net-p2p/Makefile b/net-p2p/Makefile
index 35e1957b13bb..b858c6bcaec9 100644
--- a/net-p2p/Makefile
+++ b/net-p2p/Makefile
@@ -17,6 +17,7 @@
     SUBDIR += c-lightning
     SUBDIR += cardano-db-sync
     SUBDIR += cardano-node
+    SUBDIR += clboss
     SUBDIR += cncli
     SUBDIR += cpuminer
     SUBDIR += createtorrent
diff --git a/net-p2p/clboss/Makefile b/net-p2p/clboss/Makefile
new file mode 100644
index 000000000000..da42b6bf238c
--- /dev/null
+++ b/net-p2p/clboss/Makefile
@@ -0,0 +1,43 @@
+PORTNAME=	clboss
+# To build from an arbitrary git commit comment PORTVERSION and PORTREVISION (if present)
+PORTVERSION=	0.13
+DISTVERSIONPREFIX=	v
+# and uncomment the following two lines (use for example -git-HEAD or -git-f8d8348c)
+#PORTVERSION=	0
+#PKGNAMESUFFIX=	-git-0673c50e7
+CATEGORIES=	net-p2p finance
+
+MAINTAINER=	vd@FreeBSD.org
+COMMENT=	The Core Lightning Node Manager
+WWW=		https://github.com/ZmnSCPxj/clboss
+
+LICENSE=	MIT
+
+BUILD_DEPENDS=	autoconf-archive>=0:devel/autoconf-archive
+LIB_DEPENDS=	libcurl.so:ftp/curl \
+		libev.so:devel/libev
+RUN_DEPENDS=	lightningd:net-p2p/c-lightning
+
+USES=		autoreconf \
+		compiler:c11 \
+		gmake \
+		libtool \
+		pkgconfig \
+		sqlite:3
+
+CXXFLAGS=	-Wno-deprecated-declarations
+
+GNU_CONFIGURE=	yes
+
+USE_GITHUB=	yes
+.if defined(PKGNAMESUFFIX)
+GIT_COMMIT=	${PKGNAMESUFFIX:C/-git-//}
+.else
+GIT_COMMIT=	${DISTVERSIONPREFIX}${PORTVERSION}
+.endif
+GH_TUPLE=	ZmnSCPxj:clboss:${GIT_COMMIT}
+
+SUB_FILES=	pkg-message
+PLIST_FILES=	bin/clboss
+
+.include <bsd.port.mk>
diff --git a/net-p2p/clboss/distinfo b/net-p2p/clboss/distinfo
new file mode 100644
index 000000000000..851bbb3aff8a
--- /dev/null
+++ b/net-p2p/clboss/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1707722279
+SHA256 (ZmnSCPxj-clboss-v0.13_GH0.tar.gz) = 5eec4df9116159e56c86beeb80933a997afc5bc46eb18057f9fd670c81830ff4
+SIZE (ZmnSCPxj-clboss-v0.13_GH0.tar.gz) = 2947305
diff --git a/net-p2p/clboss/files/patch-Util_Compiler.hpp b/net-p2p/clboss/files/patch-Util_Compiler.hpp
new file mode 100644
index 000000000000..85e99d369ba9
--- /dev/null
+++ b/net-p2p/clboss/files/patch-Util_Compiler.hpp
@@ -0,0 +1,11 @@
+--- Util/Compiler.hpp.orig	2024-02-12 08:08:33 UTC
++++ Util/Compiler.hpp
+@@ -1,7 +1,7 @@
+ #ifndef COMPILER_H_
+ #define COMPILER_H_
+ 
+-#ifdef __GNUC__
++#if defined(__GNUC__) && !defined(__clang__)
+ #include <features.h>
+ // We need a GCC patch here due the following bug
+ // <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107134>
diff --git a/net-p2p/clboss/files/pkg-message.in b/net-p2p/clboss/files/pkg-message.in
new file mode 100644
index 000000000000..1b0c704b7b7e
--- /dev/null
+++ b/net-p2p/clboss/files/pkg-message.in
@@ -0,0 +1,11 @@
+[
+{ type: install
+  message: <<EOM
+To enable CLBOSS in lightningd add the following line to %%PREFIX%%/etc/lightningd-bitcoin.conf:
+
+important-plugin=%%PREFIX%%/bin/clboss
+
+See https://github.com/ZmnSCPxj/clboss#operating for more information.
+EOM
+}
+]
diff --git a/net-p2p/clboss/pkg-descr b/net-p2p/clboss/pkg-descr
new file mode 100644
index 000000000000..c1b3b0b24e0a
--- /dev/null
+++ b/net-p2p/clboss/pkg-descr
@@ -0,0 +1,3 @@
+CLBOSS is an automated manager for Core Lightning forwarding nodes.
+CLBOSS is effectively a bunch of heuristics modules wired together to a
+regular clock to continuously monitor your node.