|
|
|
# Included for one dir up.
|
|
|
|
|
|
|
|
# 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-whitespace: $(BITCOIN_SRC:%=check-whitespace/%) $(BITCOIN_HEADERS:%=check-whitespace/%) check-whitespace/bitcoin/Makefile
|
|
|
|
|
|
|
|
bitcoin-tests: $(BITCOIN_TEST_PROGRAMS:%=unittest/%)
|
|
|
|
|
|
|
|
LIBBASE58_HEADERS := bitcoin/libbase58/libbase58.h
|
|
|
|
|
|
|
|
LIBBASE58_SRC := bitcoin/libbase58/base58.c
|
|
|
|
|
|
|
|
# Can't be inside submodule, as that makes git think it's dirty.
|
|
|
|
LIBBASE58_OBJS := bitcoin/libbase58.o
|
|
|
|
|
|
|
|
# Git submodules are seriously broken.
|
|
|
|
bitcoin/libbase58/libbase58.h:
|
|
|
|
git submodule update bitcoin/libbase58/
|
|
|
|
[ -f $@ ] || git submodule update --init bitcoin/libbase58/
|
|
|
|
|
|
|
|
# If we tell Make that the above builds both, it runs it twice in
|
|
|
|
# parallel. So we lie :(
|
|
|
|
bitcoin/libbase58/base58.c: bitcoin/libbase58/libbase58.h
|
|
|
|
[ -f $@ ]
|
|
|
|
|
|
|
|
bitcoin/libbase58.o: bitcoin/libbase58/base58.c
|
|
|
|
$(COMPILE.c) $(OUTPUT_OPTION) $<
|