diff --git a/bitcoin/Makefile b/bitcoin/Makefile index 2250b20d3..b6500b3ee 100644 --- a/bitcoin/Makefile +++ b/bitcoin/Makefile @@ -38,19 +38,6 @@ check-source: $(BITCOIN_SRC:%=check-src-include-order/%) \ # Bitcoin objects depends on bitcoin/ external/ and ccan $(BITCOIN_OBJS): $(CCAN_HEADERS) $(BITCOIN_HEADERS) $(EXTERNAL_HEADERS) -# Note that these actually #include everything they need, except ccan/. -# That allows for unit testing of statics, and special effects. - -BITCOIN_TEST_SRC := $(wildcard bitcoin/test/run-*.c) -BITCOIN_TEST_OBJS := $(BITCOIN_TEST_SRC:.c=.o) -BITCOIN_TEST_PROGRAMS := $(BITCOIN_TEST_OBJS:.o=) - -$(BITCOIN_TEST_PROGRAMS): $(CCAN_OBJS) - -$(BITCOIN_TEST_OBJS): $(CCAN_HEADERS) $(BITCOIN_HEADERS) $(BITCOIN_SRC) - -check: bitcoin-tests - check-source-bolt: $(BITCOIN_SRC:%=bolt-check/%) $(BITCOIN_HEADERS:%=bolt-check/%) check-makefile: check-bitcoin-makefile @@ -60,9 +47,9 @@ check-bitcoin-makefile: check-whitespace: $(BITCOIN_SRC:%=check-whitespace/%) $(BITCOIN_HEADERS:%=check-whitespace/%) check-whitespace/bitcoin/Makefile -bitcoin-tests: $(BITCOIN_TEST_PROGRAMS:%=unittest/%) - clean: bitcoin-clean bitcoin-clean: $(RM) $(BITCOIN_OBJS) $(BITCOIN_TEST_PROGRAMS) $(BITCOIN_TEST_OBJS) + +include bitcoin/test/Makefile diff --git a/bitcoin/test/Makefile b/bitcoin/test/Makefile new file mode 100644 index 000000000..935e1da88 --- /dev/null +++ b/bitcoin/test/Makefile @@ -0,0 +1,15 @@ +BITCOIN_TEST_SRC := $(wildcard bitcoin/test/run-*.c) +BITCOIN_TEST_OBJS := $(BITCOIN_TEST_SRC:.c=.o) +BITCOIN_TEST_PROGRAMS := $(BITCOIN_TEST_OBJS:.o=) + +BITCOIN_TEST_COMMON_OBJS := + +$(BITCOIN_TEST_PROGRAMS): $(CCAN_OBJS) $(BITCOIN_TEST_COMMON_OBJS) +$(BITCOIN_TEST_OBJS): $(CCAN_HEADERS) $(BITCOIN_HEADERS) $(BITCOIN_SRC) + +ALL_TEST_PROGRAMS += $(BITCOIN_TEST_PROGRAMS) +ALL_OBJS += $(BITCOIN_TEST_PROGRAMS:=.o) + +update-mocks: $(BITCOIN_TEST_SRC:%=update-mocks/%) + +check: $(BITCOIN_TEST_PROGRAMS:%=unittest/%)