From ee25547576cc8ed8696a7829e5ad286ff0f79b13 Mon Sep 17 00:00:00 2001 From: Christian Decker Date: Fri, 15 Dec 2017 14:26:06 +0100 Subject: [PATCH] Re-enable builds with DEVELOPER=0 Two changes: - Fixed the function signature of noleak_ to match in both configurations - Added memleak.o to linker for tests Generating the stubs for the unit tests doesn't really work since the stubs are checked in an differ between the two configurations, so adding memleak to the linker fixes that, by not requiring stubs to be generated in the first place. Signed-off-by: Christian Decker --- common/memleak.c | 1 - common/memleak.h | 5 +++-- lightningd/memdump.c | 2 +- lightningd/test/Makefile | 1 + lightningd/test/run-find_my_path.c | 6 ------ wallet/test/Makefile | 1 + wallet/test/run-db.c | 6 ------ wallet/test/run-wallet.c | 6 ------ 8 files changed, 6 insertions(+), 22 deletions(-) diff --git a/common/memleak.c b/common/memleak.c index d6d6d7d8d..a0bfb1160 100644 --- a/common/memleak.c +++ b/common/memleak.c @@ -1,6 +1,5 @@ #include #include -#include #include #include #include diff --git a/common/memleak.h b/common/memleak.h index a06e17612..b7c70dce3 100644 --- a/common/memleak.h +++ b/common/memleak.h @@ -1,6 +1,7 @@ #ifndef LIGHTNING_COMMON_MEMLEAK_H #define LIGHTNING_COMMON_MEMLEAK_H #include "config.h" +#include #include #include @@ -43,9 +44,9 @@ void memleak_scan_region(struct htable *memtable, const void *p); const void *memleak_get(struct htable *memtable, const uintptr_t **backtrace); #else /* ... !DEVELOPER */ -static inline void *notleak_(const void *ptr) +static inline void *notleak_(const void *ptr, bool plus_children UNNEEDED) { - return ptr; + return cast_const(void *, ptr); } #endif /* !DEVELOPER */ diff --git a/lightningd/memdump.c b/lightningd/memdump.c index 05acb71db..9f2434f1c 100644 --- a/lightningd/memdump.c +++ b/lightningd/memdump.c @@ -1,5 +1,5 @@ /* Only possible if we're in developer mode. */ -#ifdef DEVELOPER +#if DEVELOPER #include #include #include diff --git a/lightningd/test/Makefile b/lightningd/test/Makefile index c5c371fc4..9f4999639 100644 --- a/lightningd/test/Makefile +++ b/lightningd/test/Makefile @@ -11,6 +11,7 @@ LIGHTNINGD_TEST_COMMON_OBJS := \ common/daemon_conn.o \ common/htlc_state.o \ common/pseudorand.o \ + common/memleak.o \ common/msg_queue.o \ common/utils.o \ common/type_to_string.o \ diff --git a/lightningd/test/run-find_my_path.c b/lightningd/test/run-find_my_path.c index c6b83e842..d76d90987 100644 --- a/lightningd/test/run-find_my_path.c +++ b/lightningd/test/run-find_my_path.c @@ -44,12 +44,6 @@ struct invoices *invoices_init(const tal_t *ctx UNNEEDED) void log_(struct log *log UNNEEDED, enum log_level level UNNEEDED, const char *fmt UNNEEDED, ...) { fprintf(stderr, "log_ called!\n"); abort(); } -/* Generated stub for memleak_cleanup */ -void memleak_cleanup(void) -{ fprintf(stderr, "memleak_cleanup called!\n"); abort(); } -/* Generated stub for memleak_init */ -void memleak_init(const tal_t *root UNNEEDED, struct backtrace_state *bstate UNNEEDED) -{ fprintf(stderr, "memleak_init called!\n"); abort(); } /* Generated stub for new_log */ struct log *new_log(const tal_t *ctx UNNEEDED, struct log_book *record UNNEEDED, const char *fmt UNNEEDED, ...) { fprintf(stderr, "new_log called!\n"); abort(); } diff --git a/wallet/test/Makefile b/wallet/test/Makefile index bde8a35b6..d4d2b3813 100644 --- a/wallet/test/Makefile +++ b/wallet/test/Makefile @@ -5,6 +5,7 @@ WALLET_TEST_PROGRAMS := $(WALLET_TEST_OBJS:.o=) WALLET_TEST_COMMON_OBJS := \ common/htlc_state.o \ common/type_to_string.o \ + common/memleak.o \ common/pseudorand.o \ common/utils.o \ lightningd/htlc_end.o \ diff --git a/wallet/test/run-db.c b/wallet/test/run-db.c index 88673fc1b..22d6ca4ea 100644 --- a/wallet/test/run-db.c +++ b/wallet/test/run-db.c @@ -12,12 +12,6 @@ static void db_fatal(const char *fmt, ...); #include /* AUTOGENERATED MOCKS START */ -/* Generated stub for memleak_scan_region */ -void memleak_scan_region(struct htable *memtable UNNEEDED, const void *p UNNEEDED) -{ fprintf(stderr, "memleak_scan_region called!\n"); abort(); } -/* Generated stub for notleak_ */ -void *notleak_(const void *ptr UNNEEDED, bool plus_children UNNEEDED) -{ fprintf(stderr, "notleak_ called!\n"); abort(); } /* AUTOGENERATED MOCKS END */ static char *db_err; diff --git a/wallet/test/run-wallet.c b/wallet/test/run-wallet.c index 39e57ecc9..cbae8ae87 100644 --- a/wallet/test/run-wallet.c +++ b/wallet/test/run-wallet.c @@ -16,12 +16,6 @@ static void wallet_fatal(const char *fmt, ...); #include /* AUTOGENERATED MOCKS START */ -/* Generated stub for memleak_scan_region */ -void memleak_scan_region(struct htable *memtable UNNEEDED, const void *p UNNEEDED) -{ fprintf(stderr, "memleak_scan_region called!\n"); abort(); } -/* Generated stub for notleak_ */ -void *notleak_(const void *ptr UNNEEDED, bool plus_children UNNEEDED) -{ fprintf(stderr, "notleak_ called!\n"); abort(); } /* AUTOGENERATED MOCKS END */ static char *wallet_err;