Files

53 lines
1.4 KiB
Makefile
Raw Permalink Normal View History

#! /usr/bin/make
BOOKKEEPER_PLUGIN_SRC := \
2022-07-19 14:39:26 +09:30
plugins/bkpr/account.c \
plugins/bkpr/account_entry.c \
plugins/bkpr/blockheights.c \
plugins/bkpr/bookkeeper.c \
plugins/bkpr/chain_event.c \
plugins/bkpr/channel_event.c \
bkpr: command to calculate some APYs/stats on channel routing fees Computes some stats from the net routed fees etc ``` { "channel_apys": [ { "account": "7de277250f8003c35378c1eb20aacf8fa6a69dd4bb22077266329a9ad812cd5d", "routed_out": "2000msat", "routed_in": "125100101msat", "lease_fee_paid": "0msat", "lease_fee_earned": "670000msat", "pushed_out": "0msat", "pushed_in": "0msat", "our_start_balance": "100670000msat", "channel_start_balance": "1100670000msat", "fees_out": "0msat", "fees_in": "10100101msat", "utilization_out": "0.0002%", "utilization_out_initial": "0.0020%", "utilization_in": "11.3658%", "utilization_in_initial": "12.5100%", "apy_out": "0.0000%", "apy_out_initial": "0.0000%", "apy_in": "3203.3924%", "apy_in_initial": "3525.8779%", "apy_total": "3203.3924%", "apy_total_initial": "3203.3924%", "apy_lease": "8.7014%" }, { "account": "b71937a02eb7694d946c311297ca2da454057c5c3e97ac67500739cc2afbc0c5", "routed_out": "110000000msat", "routed_in": "0msat", "lease_fee_paid": "670000msat", "lease_fee_earned": "0msat", "pushed_out": "0msat", "pushed_in": "0msat", "our_start_balance": "4000000000msat", "channel_start_balance": "4100670000msat", "fees_out": "10100101msat", "fees_in": "0msat", "utilization_out": "2.6825%", "utilization_out_initial": "2.7500%", "utilization_in": "0.0000%", "utilization_in_initial": "0.0000%", "apy_out": "2579.4892%", "apy_out_initial": "2644.4084%", "apy_in": "0.0000%", "apy_in_initial": "0.0000%", "apy_total": "2579.4892%", "apy_total_initial": "2579.4892%" }, { "account": "net", "routed_out": "110002000msat", "routed_in": "125100101msat", "lease_fee_paid": "670000msat", "lease_fee_earned": "670000msat", "pushed_out": "0msat", "pushed_in": "0msat", "our_start_balance": "4100670000msat", "channel_start_balance": "5201340000msat", "fees_out": "10100101msat", "fees_in": "10100101msat", "utilization_out": "2.1149%", "utilization_out_initial": "2.6825%", "utilization_in": "2.4052%", "utilization_in_initial": "11.3658%", "apy_out": "677.8788%", "apy_out_initial": "859.8297%", "apy_in": "677.8788%", "apy_in_initial": "3203.3924%", "apy_total": "1355.7575%", "apy_total_initial": "1355.7575%", "apy_lease": "0.2122%" } ] } ```
2022-07-19 17:04:37 +09:30
plugins/bkpr/channelsapy.c \
plugins/bkpr/descriptions.c \
plugins/bkpr/incomestmt.c \
plugins/bkpr/onchain_fee.c \
plugins/bkpr/rebalances.c \
plugins/bkpr/recorder.c \
plugins/bkpr/sql.c
BOOKKEEPER_SRC := $(BOOKKEEPER_PLUGIN_SRC) $(BOOKKEEPER_DB_QUERIES)
2022-07-19 14:39:26 +09:30
BOOKKEEPER_HEADER := \
plugins/bkpr/account.h \
plugins/bkpr/account_entry.h \
plugins/bkpr/blockheights.h \
plugins/bkpr/bookkeeper.h \
2022-07-19 14:39:26 +09:30
plugins/bkpr/chain_event.h \
plugins/bkpr/channel_event.h \
bkpr: command to calculate some APYs/stats on channel routing fees Computes some stats from the net routed fees etc ``` { "channel_apys": [ { "account": "7de277250f8003c35378c1eb20aacf8fa6a69dd4bb22077266329a9ad812cd5d", "routed_out": "2000msat", "routed_in": "125100101msat", "lease_fee_paid": "0msat", "lease_fee_earned": "670000msat", "pushed_out": "0msat", "pushed_in": "0msat", "our_start_balance": "100670000msat", "channel_start_balance": "1100670000msat", "fees_out": "0msat", "fees_in": "10100101msat", "utilization_out": "0.0002%", "utilization_out_initial": "0.0020%", "utilization_in": "11.3658%", "utilization_in_initial": "12.5100%", "apy_out": "0.0000%", "apy_out_initial": "0.0000%", "apy_in": "3203.3924%", "apy_in_initial": "3525.8779%", "apy_total": "3203.3924%", "apy_total_initial": "3203.3924%", "apy_lease": "8.7014%" }, { "account": "b71937a02eb7694d946c311297ca2da454057c5c3e97ac67500739cc2afbc0c5", "routed_out": "110000000msat", "routed_in": "0msat", "lease_fee_paid": "670000msat", "lease_fee_earned": "0msat", "pushed_out": "0msat", "pushed_in": "0msat", "our_start_balance": "4000000000msat", "channel_start_balance": "4100670000msat", "fees_out": "10100101msat", "fees_in": "0msat", "utilization_out": "2.6825%", "utilization_out_initial": "2.7500%", "utilization_in": "0.0000%", "utilization_in_initial": "0.0000%", "apy_out": "2579.4892%", "apy_out_initial": "2644.4084%", "apy_in": "0.0000%", "apy_in_initial": "0.0000%", "apy_total": "2579.4892%", "apy_total_initial": "2579.4892%" }, { "account": "net", "routed_out": "110002000msat", "routed_in": "125100101msat", "lease_fee_paid": "670000msat", "lease_fee_earned": "670000msat", "pushed_out": "0msat", "pushed_in": "0msat", "our_start_balance": "4100670000msat", "channel_start_balance": "5201340000msat", "fees_out": "10100101msat", "fees_in": "10100101msat", "utilization_out": "2.1149%", "utilization_out_initial": "2.6825%", "utilization_in": "2.4052%", "utilization_in_initial": "11.3658%", "apy_out": "677.8788%", "apy_out_initial": "859.8297%", "apy_in": "677.8788%", "apy_in_initial": "3203.3924%", "apy_total": "1355.7575%", "apy_total_initial": "1355.7575%", "apy_lease": "0.2122%" } ] } ```
2022-07-19 17:04:37 +09:30
plugins/bkpr/channelsapy.h \
plugins/bkpr/descriptions.h \
plugins/bkpr/incomestmt.h \
2022-07-19 14:39:26 +09:30
plugins/bkpr/onchain_fee.h \
plugins/bkpr/rebalances.h \
plugins/bkpr/recorder.h \
plugins/bkpr/sql.h
2022-07-19 14:39:26 +09:30
BOOKKEEPER_OBJS := $(BOOKKEEPER_SRC:.c=.o)
$(BOOKKEEPER_OBJS): $(PLUGIN_LIB_HEADER) $(BOOKKEEPER_HEADER)
PLUGIN_ALL_SRC += $(BOOKKEEPER_SRC)
PLUGIN_ALL_HEADER += $(BOOKKEEPER_HEADER)
C_PLUGINS += plugins/bookkeeper
PLUGINS += plugins/bookkeeper
Makefile: create a library containing common, wire and bitcoin objects. This means we don't have to manually choose what to link against, which is much of the complexity of our Makefiles: the compiler will automatically use any object files it needs to link. We already do this for ccan as libccan.a, now we have libcommon.a. We don't link against it for *everything*, as some tests require their own versions. Notes: 1. I get rid of the weird plugins/test/Makefile2 (accidental commit?) 2. Many tests change due to update-mocks. 3. In some places I added the missing dependency on the Makefile itself, though most are in the next patch. Before: Total program size: 221366528 Total tests size: 364243856 After: Total program size: 190733656 Total tests size: 337880888 Build time from make clean (RUST=0) (includes building external libs): Before: real 0m38.227000-44.245000(41.8222+/-1.6)s user 3m2.105000-33.696000(23.1442+/-8.4)s sys 0m35.054000-42.269000(39.7231+/-2)s After: real 0m38.944000-40.416000(40.1131+/-0.4)s user 3m6.790000-17.159000(15.0571+/-2.8)s sys 0m35.304000-37.336000(36.8942+/-0.57)s Build time after touch config.vars (RUST=0): Before: real 0m18.928000-22.776000(21.5084+/-1.1)s user 2m8.613000-36.567000(27.7281+/-7.7)s sys 0m20.458000-23.436000(22.3963+/-0.77)s After: real 0m19.831000-21.862000(21.5528+/-0.58)s user 2m15.361000-30.731000(28.4798+/-4.4)s sys 0m21.056000-22.339000(22.0346+/-0.35)s Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> rusty@rusty-Framework:~/devel/cvs/lightni
2025-10-22 19:44:26 +10:30
plugins/bookkeeper: $(BOOKKEEPER_OBJS) $(PLUGIN_LIB_OBJS) libcommon.a
maintainer-clean: clean
clean: bkpr-maintainer-clean
bkpr-maintainer-clean:
$(RM) plugins/bkpr/statements.po
$(RM) plugins/bkpr/statements_gettextgen.po
$(RM) $(BOOKKEEPER_DB_QUERIES)
include plugins/bkpr/test/Makefile