git: ac28bd03143a - main - net-p2p/c-lightning: Upgrade from 0.11.2 to 23.05.1

From: Vasil Dimov <vd_at_FreeBSD.org>
Date: Fri, 23 Jun 2023 10:04:17 UTC
The branch main has been updated by vd:

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

commit ac28bd03143a3fdee07377cfd66c3b81b1084eba
Author:     Vasil Dimov <vd@FreeBSD.org>
AuthorDate: 2023-06-23 10:00:00 +0000
Commit:     Vasil Dimov <vd@FreeBSD.org>
CommitDate: 2023-06-23 10:02:02 +0000

    net-p2p/c-lightning: Upgrade from 0.11.2 to 23.05.1
---
 net-p2p/c-lightning/Makefile              | 56 ++++++++++++++++++++++++++-----
 net-p2p/c-lightning/distinfo              | 16 +++++----
 net-p2p/c-lightning/files/patch-Makefile  | 28 ++++++++--------
 net-p2p/c-lightning/files/patch-configure | 11 ++++++
 net-p2p/c-lightning/pkg-plist             | 41 +++++++++++++++++++---
 5 files changed, 119 insertions(+), 33 deletions(-)

diff --git a/net-p2p/c-lightning/Makefile b/net-p2p/c-lightning/Makefile
index d51c2ef8e09b..706f9be2a74b 100644
--- a/net-p2p/c-lightning/Makefile
+++ b/net-p2p/c-lightning/Makefile
@@ -1,6 +1,6 @@
 PORTNAME=	c-lightning
 # To build from an arbitrary git commit comment PORTVERSION and PORTREVISION (if present)
-PORTVERSION=	0.11.2
+PORTVERSION=	23.05.1
 DISTVERSIONPREFIX=	v
 # and uncomment the following two lines (use for example -git-HEAD or -git-f8d8348c)
 #PORTVERSION=	0
@@ -14,20 +14,29 @@ WWW=		https://github.com/ElementsProject/lightning
 LICENSE=	MIT
 
 BUILD_DEPENDS=	bash:shells/bash \
+		lowdown:textproc/lowdown \
 		${PYTHON_PKGNAMEPREFIX}mako>=1.0.14:textproc/py-mako@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}mrkd>=0.2.0_1:devel/py-mrkd@${PY_FLAVOR}
 LIB_DEPENDS=	libgmp.so:math/gmp \
-		libsodium.so:security/libsodium \
-		libsqlite3.so:databases/sqlite3
+		libsodium.so:security/libsodium
 RUN_DEPENDS=	bitcoin-cli:net-p2p/bitcoin-utils
 
-USES=		autoreconf:build compiler:c11 cpe gettext gmake libtool \
-		python:3.5+,build
+USES=		autoreconf:build \
+		compiler:c11 \
+		cpe \
+		gettext \
+		gmake \
+		libtool \
+		python:3.5+,build \
+		shebangfix
 CPE_VENDOR=	elementsproject
 BINARY_ALIAS=	python=${PYTHON_CMD} python3=${PYTHON_CMD}
 ALL_TARGET=	default
+SHEBANG_FILES=	tools/reckless
 
 OPTIONS_DEFINE=		COMPATIBILITY DEVELOPER EXPERIMENTAL
+OPTIONS_MULTI=		STORAGE
+OPTIONS_MULTI_STORAGE=	POSTGRESQL SQLITE
 OPTIONS_RADIO=		TESTING
 OPTIONS_RADIO_TESTING=	ASAN VALGRIND
 
@@ -37,12 +46,17 @@ DEVELOPER_CONFIGURE_ENABLE=	developer
 DEVELOPER_DESC=			Developer mode, good for testing
 EXPERIMENTAL_CONFIGURE_ENABLE=	experimental-features
 EXPERIMENTAL_DESC=		Enable experimental features
+POSTGRESQL_DESC=		Use PostgreSQL for storage
+POSTGRESQL_USES=		pgsql
+WANT_PGSQL=			client
+SQLITE_DESC=			Use SQLite for storage
+SQLITE_USES=			sqlite:3
 ASAN_CONFIGURE_ENABLE=		address-sanitizer
 ASAN_DESC=			Compile with address-sanitizer
 VALGRIND_CONFIGURE_ENABLE=	valgrind
 VALGRIND_DESC=			Run tests with Valgrind
 
-OPTIONS_DEFAULT=COMPATIBILITY
+OPTIONS_DEFAULT=COMPATIBILITY SQLITE
 
 HAS_CONFIGURE=	yes
 
@@ -53,8 +67,8 @@ GIT_COMMIT=	${PKGNAMESUFFIX:C/-git-//}
 GIT_COMMIT=	${DISTVERSIONPREFIX}${PORTVERSION}
 .endif
 GH_TUPLE=	ElementsProject:lightning:${GIT_COMMIT} \
-		ElementsProject:libwally-core:f7c0824e56a06:ext1/external/libwally-core \
-		ElementsProject:secp256k1-zkp:6c0aecf72b1f4:ext2/external/libwally-core/src/secp256k1 \
+		ElementsProject:libwally-core:9f2f42df357f5:ext1/external/libwally-core \
+		ElementsProject:secp256k1-zkp:6ec1ff6040164:ext2/external/libwally-core/src/secp256k1 \
 		ianlancetaylor:libbacktrace:2446c66076480ce:ext3/external/libbacktrace \
 		zserge:jsmn:18e9fe42cbfe21d65076f5c77ae2be3:ext4/external/jsmn \
 		valyala:gheap:67fc83bc953324f4759e52951921d:ext5/external/gheap
@@ -75,6 +89,32 @@ CPPFLAGS+=       -Wno-error=unused-but-set-variable
 .endif
 
 post-install:
+	${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/lightning-cli
+	${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/lightning-hsmtool
+	${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/lightningd
+	${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/c-lightning/lightning_channeld
+	${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/c-lightning/lightning_closingd
+	${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/c-lightning/lightning_connectd
+	${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/c-lightning/lightning_dualopend
+	${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/c-lightning/lightning_gossipd
+	${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/c-lightning/lightning_hsmd
+	${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/c-lightning/lightning_onchaind
+	${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/c-lightning/lightning_openingd
+	${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/c-lightning/lightning_websocketd
+	${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/c-lightning/plugins/autoclean
+	${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/c-lightning/plugins/bcli
+	${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/c-lightning/plugins/bookkeeper
+	${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/c-lightning/plugins/chanbackup
+	${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/c-lightning/plugins/commando
+	${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/c-lightning/plugins/fetchinvoice
+	${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/c-lightning/plugins/funder
+	${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/c-lightning/plugins/keysend
+	${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/c-lightning/plugins/offers
+	${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/c-lightning/plugins/pay
+	${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/c-lightning/plugins/spenderp
+	${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/c-lightning/plugins/sql
+	${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/c-lightning/plugins/topology
+	${STRIP_CMD} ${STAGEDIR}${PREFIX}/libexec/c-lightning/plugins/txprepare
 	${INSTALL_DATA} \
 		${WRKDIR}/lightningd-bitcoin.conf.sample \
 		${STAGEDIR}${PREFIX}/etc/lightningd-bitcoin.conf.sample
diff --git a/net-p2p/c-lightning/distinfo b/net-p2p/c-lightning/distinfo
index db4c630b0d86..221c207d8ae5 100644
--- a/net-p2p/c-lightning/distinfo
+++ b/net-p2p/c-lightning/distinfo
@@ -1,13 +1,15 @@
-TIMESTAMP = 1656488666
-SHA256 (ElementsProject-lightning-v0.11.2_GH0.tar.gz) = eaefcc4a5a28d411093a4c9e1ca782f2f66aaf2119f663c5b3174b2f4b839d5a
-SIZE (ElementsProject-lightning-v0.11.2_GH0.tar.gz) = 3895320
-SHA256 (ElementsProject-libwally-core-f7c0824e56a06_GH0.tar.gz) = dc96d982e01622f56bc0841ed1a2f4eb1bf0434a6d678a3e8a838ed207392535
-SIZE (ElementsProject-libwally-core-f7c0824e56a06_GH0.tar.gz) = 828418
-SHA256 (ElementsProject-secp256k1-zkp-6c0aecf72b1f4_GH0.tar.gz) = 8e9f226a9cc80298d8773ffe3145d763c5c595091ba39b7ba0630be360a8e976
-SIZE (ElementsProject-secp256k1-zkp-6c0aecf72b1f4_GH0.tar.gz) = 2574677
+TIMESTAMP = 1687349662
+SHA256 (ElementsProject-lightning-v23.05.1_GH0.tar.gz) = 2b0697f1fc079acc2401c862089e8141e9b3289713a432c978332605ef3cc3c8
+SIZE (ElementsProject-lightning-v23.05.1_GH0.tar.gz) = 4509537
+SHA256 (ElementsProject-libwally-core-9f2f42df357f5_GH0.tar.gz) = 95dbd7609fe78b6b7ce1d8d5085a2fb8ace22b0e8c577f2f0edac6885d4ac9ba
+SIZE (ElementsProject-libwally-core-9f2f42df357f5_GH0.tar.gz) = 989859
+SHA256 (ElementsProject-secp256k1-zkp-6ec1ff6040164_GH0.tar.gz) = 8ee65e032075e86c4894f0e215b333eb60e98d167c56586aebd790de5c0ddac2
+SIZE (ElementsProject-secp256k1-zkp-6ec1ff6040164_GH0.tar.gz) = 2605673
 SHA256 (ianlancetaylor-libbacktrace-2446c66076480ce_GH0.tar.gz) = 3be5fde76f559cdaef40386c1f2e85e35cc2c8df6fbf0ae98134f80a1c037cf0
 SIZE (ianlancetaylor-libbacktrace-2446c66076480ce_GH0.tar.gz) = 665689
 SHA256 (zserge-jsmn-18e9fe42cbfe21d65076f5c77ae2be3_GH0.tar.gz) = 2e90b8b42876f384ba229097cd9f8534250683abb135256843b538cb45dd907f
 SIZE (zserge-jsmn-18e9fe42cbfe21d65076f5c77ae2be3_GH0.tar.gz) = 11047
 SHA256 (valyala-gheap-67fc83bc953324f4759e52951921d_GH0.tar.gz) = b6f7a700cc2224ce04827d72cf78f7b2420b37b36b1f5ea7f9cfc98513cbf449
 SIZE (valyala-gheap-67fc83bc953324f4759e52951921d_GH0.tar.gz) = 25470
+SHA256 (kristapsdz-lowdown-edca6ce6d5336efb147321a4_GH0.tar.gz) = 6d79e3c24b079047ff916d30170e18430790e546eea19aebe0f88cd78ec4fbfa
+SIZE (kristapsdz-lowdown-edca6ce6d5336efb147321a4_GH0.tar.gz) = 576213
diff --git a/net-p2p/c-lightning/files/patch-Makefile b/net-p2p/c-lightning/files/patch-Makefile
index e5d8b2dd677e..0e6bf5da2c8a 100644
--- a/net-p2p/c-lightning/files/patch-Makefile
+++ b/net-p2p/c-lightning/files/patch-Makefile
@@ -1,6 +1,18 @@
---- Makefile.orig	2020-02-17 08:37:09 UTC
+--- Makefile.orig	2023-06-06 02:31:42 UTC
 +++ Makefile
-@@ -457,7 +458,7 @@ pkglibexecdir = $(libexecdir)/$(PKGNAME)
+@@ -260,9 +260,9 @@ ifeq ($(STATIC),1)
+ # For MacOS, Jacob Rapoport <jacob@rumblemonkey.com> changed this to:
+ #  -L/usr/local/lib -Wl,-lgmp -lsqlite3 -lz -Wl,-lm -lpthread -ldl $(COVFLAGS)
+ # But that doesn't static link.
+-LDLIBS = -L$(CPATH) -Wl,-dn -lgmp $(SQLITE3_LDLIBS) -lz -Wl,-dy -lm -lpthread -ldl $(COVFLAGS)
++LDLIBS = -L$(LIBRARY_PATH) -Wl,-dn -lgmp $(SQLITE3_LDLIBS) -lz -Wl,-dy -lm -lpthread -ldl $(COVFLAGS)
+ else
+-LDLIBS = -L$(CPATH) -lm -lgmp $(SQLITE3_LDLIBS) -lz $(COVFLAGS)
++LDLIBS = -L$(LIBRARY_PATH) -lm -lgmp $(SQLITE3_LDLIBS) -lz $(COVFLAGS)
+ endif
+ 
+ # If we have the postgres client library we need to link against it as well
+@@ -750,7 +750,7 @@ docdir = $(datadir)/doc/$(PKGNAME)
  plugindir = $(pkglibexecdir)/plugins
  datadir = $(PREFIX)/share
  docdir = $(datadir)/doc/$(PKGNAME)
@@ -9,15 +21,3 @@
  man1dir = $(mandir)/man1
  man5dir = $(mandir)/man5
  man7dir = $(mandir)/man7
-@@ -466,7 +467,11 @@ man8dir = $(mandir)/man8
- # Commands
- MKDIR_P = mkdir -p
- INSTALL = install
-+ifeq ($(DEVELOPER),1)
- INSTALL_PROGRAM = $(INSTALL)
-+else
-+INSTALL_PROGRAM = $(INSTALL) -s
-+endif
- INSTALL_DATA = $(INSTALL) -m 644
- 
- # Tags needed by some package systems.
diff --git a/net-p2p/c-lightning/files/patch-configure b/net-p2p/c-lightning/files/patch-configure
new file mode 100644
index 000000000000..8479216ba0ec
--- /dev/null
+++ b/net-p2p/c-lightning/files/patch-configure
@@ -0,0 +1,11 @@
+--- configure.orig	2023-06-22 13:48:20 UTC
++++ configure
+@@ -15,7 +15,7 @@ else
+ LIBRARY_PATH=/opt/homebrew/lib
+ export PKG_CONFIG_PATH=/opt/homebrew/opt/sqlite/lib/pkgconfig
+ else
+-CPATH=/usr/local/lib
++CPATH=/usr/local/include
+ LIBRARY_PATH=/usr/local/lib
+ export PKG_CONFIG_PATH=/usr/local/opt/sqlite/lib/pkgconfig
+ fi
diff --git a/net-p2p/c-lightning/pkg-plist b/net-p2p/c-lightning/pkg-plist
index 7a848ccadf6a..4e6501d361e4 100644
--- a/net-p2p/c-lightning/pkg-plist
+++ b/net-p2p/c-lightning/pkg-plist
@@ -2,6 +2,7 @@
 bin/lightning-cli
 bin/lightning-hsmtool
 bin/lightningd
+bin/reckless
 libexec/c-lightning/lightning_channeld
 libexec/c-lightning/lightning_closingd
 libexec/c-lightning/lightning_connectd
@@ -13,21 +14,37 @@ libexec/c-lightning/lightning_openingd
 libexec/c-lightning/lightning_websocketd
 libexec/c-lightning/plugins/autoclean
 libexec/c-lightning/plugins/bcli
+libexec/c-lightning/plugins/bookkeeper
+libexec/c-lightning/plugins/chanbackup
+libexec/c-lightning/plugins/commando
 libexec/c-lightning/plugins/fetchinvoice
 libexec/c-lightning/plugins/funder
 libexec/c-lightning/plugins/keysend
 libexec/c-lightning/plugins/offers
 libexec/c-lightning/plugins/pay
 libexec/c-lightning/plugins/spenderp
+libexec/c-lightning/plugins/sql
 libexec/c-lightning/plugins/topology
 libexec/c-lightning/plugins/txprepare
 man/man1/lightning-cli.1.gz
 man/man5/lightningd-config.5.gz
 man/man7/lightning-addgossip.7.gz
-man/man7/lightning-autocleaninvoice.7.gz
+man/man7/lightning-autoclean-once.7.gz
+man/man7/lightning-autoclean-status.7.gz
+man/man7/lightning-batching.7.gz
+man/man7/lightning-bkpr-channelsapy.7.gz
+man/man7/lightning-bkpr-dumpincomecsv.7.gz
+man/man7/lightning-bkpr-inspect.7.gz
+man/man7/lightning-bkpr-listaccountevents.7.gz
+man/man7/lightning-bkpr-listbalances.7.gz
+man/man7/lightning-bkpr-listincome.7.gz
 man/man7/lightning-check.7.gz
 man/man7/lightning-checkmessage.7.gz
 man/man7/lightning-close.7.gz
+man/man7/lightning-commando-blacklist.7.gz
+man/man7/lightning-commando-listrunes.7.gz
+man/man7/lightning-commando-rune.7.gz
+man/man7/lightning-commando.7.gz
 man/man7/lightning-connect.7.gz
 man/man7/lightning-createinvoice.7.gz
 man/man7/lightning-createonion.7.gz
@@ -36,10 +53,13 @@ man/man7/lightning-decode.7.gz
 man/man7/lightning-decodepay.7.gz
 man/man7/lightning-deldatastore.7.gz
 man/man7/lightning-delexpiredinvoice.7.gz
+man/man7/lightning-delforward.7.gz
 man/man7/lightning-delinvoice.7.gz
 man/man7/lightning-delpay.7.gz
+man/man7/lightning-disableinvoicerequest.7.gz
 man/man7/lightning-disableoffer.7.gz
 man/man7/lightning-disconnect.7.gz
+man/man7/lightning-emergencyrecover.7.gz
 man/man7/lightning-feerates.7.gz
 man/man7/lightning-fetchinvoice.7.gz
 man/man7/lightning-fundchannel.7.gz
@@ -51,28 +71,33 @@ man/man7/lightning-fundpsbt.7.gz
 man/man7/lightning-getinfo.7.gz
 man/man7/lightning-getlog.7.gz
 man/man7/lightning-getroute.7.gz
-man/man7/lightning-getsharedsecret.7.gz
 man/man7/lightning-help.7.gz
 man/man7/lightning-invoice.7.gz
+man/man7/lightning-invoicerequest.7.gz
 man/man7/lightning-keysend.7.gz
 man/man7/lightning-listchannels.7.gz
+man/man7/lightning-listclosedchannels.7.gz
 man/man7/lightning-listconfigs.7.gz
 man/man7/lightning-listdatastore.7.gz
 man/man7/lightning-listforwards.7.gz
 man/man7/lightning-listfunds.7.gz
+man/man7/lightning-listhtlcs.7.gz
+man/man7/lightning-listinvoicerequests.7.gz
 man/man7/lightning-listinvoices.7.gz
 man/man7/lightning-listnodes.7.gz
 man/man7/lightning-listoffers.7.gz
 man/man7/lightning-listpays.7.gz
+man/man7/lightning-listpeerchannels.7.gz
 man/man7/lightning-listpeers.7.gz
 man/man7/lightning-listsendpays.7.gz
+man/man7/lightning-listsqlschemas.7.gz
 man/man7/lightning-listtransactions.7.gz
+man/man7/lightning-makesecret.7.gz
 man/man7/lightning-multifundchannel.7.gz
 man/man7/lightning-multiwithdraw.7.gz
 man/man7/lightning-newaddr.7.gz
 man/man7/lightning-notifications.7.gz
 man/man7/lightning-offer.7.gz
-man/man7/lightning-offerout.7.gz
 man/man7/lightning-openchannel_abort.7.gz
 man/man7/lightning-openchannel_bump.7.gz
 man/man7/lightning-openchannel_init.7.gz
@@ -82,6 +107,9 @@ man/man7/lightning-parsefeerate.7.gz
 man/man7/lightning-pay.7.gz
 man/man7/lightning-ping.7.gz
 man/man7/lightning-plugin.7.gz
+man/man7/lightning-preapproveinvoice.7.gz
+man/man7/lightning-preapprovekeysend.7.gz
+man/man7/lightning-recoverchannel.7.gz
 man/man7/lightning-reserveinputs.7.gz
 man/man7/lightning-sendcustommsg.7.gz
 man/man7/lightning-sendinvoice.7.gz
@@ -90,9 +118,12 @@ man/man7/lightning-sendonionmessage.7.gz
 man/man7/lightning-sendpay.7.gz
 man/man7/lightning-sendpsbt.7.gz
 man/man7/lightning-setchannel.7.gz
-man/man7/lightning-setchannelfee.7.gz
+man/man7/lightning-setpsbtversion.7.gz
+man/man7/lightning-signinvoice.7.gz
 man/man7/lightning-signmessage.7.gz
 man/man7/lightning-signpsbt.7.gz
+man/man7/lightning-sql.7.gz
+man/man7/lightning-staticbackup.7.gz
 man/man7/lightning-stop.7.gz
 man/man7/lightning-txdiscard.7.gz
 man/man7/lightning-txprepare.7.gz
@@ -104,6 +135,8 @@ man/man7/lightning-waitblockheight.7.gz
 man/man7/lightning-waitinvoice.7.gz
 man/man7/lightning-waitsendpay.7.gz
 man/man7/lightning-withdraw.7.gz
+man/man7/lightningd-rpc.7.gz
+man/man7/reckless.7.gz
 man/man8/lightning-hsmtool.8.gz
 man/man8/lightningd.8.gz
 share/doc/c-lightning/HACKING.md