f39eca214a
Let's get serious. The full index of operations is not sustainable in the production code. We now only keep the index of operations not yet in the chain (i.e. the mempool/prevalidation). Operations from the chain are now only accesible through a block. For instance, see the RPC: /blocks/<hash>/proto/operations
118 lines
3.7 KiB
Makefile
118 lines
3.7 KiB
Makefile
|
|
ifeq ($(strip ${SRCDIR}),)
|
|
$(error "Undefined value for $${SRCDIR}")
|
|
endif
|
|
|
|
.PHONY: build run
|
|
|
|
all:
|
|
@${MAKE} --no-print-directory build
|
|
@${MAKE} --no-print-directory run
|
|
|
|
build: ${addprefix test-,${TESTS}}
|
|
|
|
run:
|
|
@$(patsubst %,${MAKE} --no-print-directory run-test-% && , ${TESTS}) \
|
|
echo && echo "Success" && echo
|
|
|
|
############################################################################
|
|
|
|
-include ${SRCDIR}/Makefile.local
|
|
include ${SRCDIR}/Makefile.config
|
|
include ${SRCDIR}/Makefile.files
|
|
|
|
COVERAGESRCDIR=$(patsubst %, -I %, $(SOURCE_DIRECTORIES))
|
|
|
|
############################################################################
|
|
## External packages
|
|
############################################################################
|
|
|
|
TESTLIB := ${SRCDIR}/../test/lib/testlib.cmxa
|
|
|
|
${TESTLIB}: $(shell find ${SRCDIR}/../test/lib -name \*.ml -or -name \*.mli)
|
|
${MAKE} -C ${SRCDIR}/../test/lib testlib.cmxa
|
|
|
|
############################################################################
|
|
## External packages
|
|
############################################################################
|
|
|
|
MINUTILSLIB := ${SRCDIR}/minutils.cmxa
|
|
UTILSLIB := ${SRCDIR}/utils.cmxa
|
|
COMPILERLIB := ${SRCDIR}/compiler.cmxa
|
|
NODELIB := ${SRCDIR}/node.cmxa
|
|
|
|
CLIENTLIB := ${SRCDIR}/client.cmxa \
|
|
$(patsubst ${SRCDIR}/client/embedded/%/, \
|
|
${SRCDIR}/proto/client_embedded_proto_%.cmxa, \
|
|
$(shell ls -d ${SRCDIR}/client/embedded/*/)) \
|
|
$(patsubst ${SRCDIR}/client/embedded/%/, \
|
|
${SRCDIR}/client/embedded/client_%.cmx, \
|
|
$(shell ls -d ${SRCDIR}/client/embedded/*/))
|
|
|
|
${MINUTILSLIB} ${UTILSLIB} ${COMPILERLIB} ${NODELIB} ${CLIENTLIB}:
|
|
${MAKE} -C ${SRCDIR} $@
|
|
|
|
${SRCDIR}/minutils/%.cmi: ${SRCDIR}/minutils/%.mli
|
|
${MAKE} -C ${SRCDIR} minutils.cmxa
|
|
${SRCDIR}/minutils/%.cmx : ${SRCDIR}/minutils/%.ml
|
|
${MAKE} -C ${SRCDIR} minutils.cmxa
|
|
${SRCDIR}/utils/%.cmi: ${SRCDIR}/utils/%.mli
|
|
${MAKE} -C ${SRCDIR} utils.cmxa
|
|
${SRCDIR}/utils/%.cmx : ${SRCDIR}/utils/%.ml
|
|
${MAKE} -C ${SRCDIR} utils.cmxa
|
|
${SRCDIR}/compiler/%.cmi: ${SRCDIR}/compiler/%.mli
|
|
${MAKE} -C ${SRCDIR} compiler.cmxa
|
|
${SRCDIR}/compiler/%.cmx : ${SRCDIR}/compiler/%.ml
|
|
${MAKE} -C ${SRCDIR} compiler.cmxa
|
|
${SRCDIR}/node/db/%.cmi: ${SRCDIR}/node/db/%.mli
|
|
${MAKE} -C ${SRCDIR} node.cmxa
|
|
${SRCDIR}/node/db/%.cmx : ${SRCDIR}/node/db/%.ml
|
|
${MAKE} -C ${SRCDIR} node.cmxa
|
|
${SRCDIR}/node/net/%.cmi: ${SRCDIR}/node/net/%.mli
|
|
${MAKE} -C ${SRCDIR} node.cmxa
|
|
${SRCDIR}/node/net/%.cmx : ${SRCDIR}/node/net/%.ml
|
|
${MAKE} -C ${SRCDIR} node.cmxa
|
|
${SRCDIR}/node/shell/%.cmi: ${SRCDIR}/node/shell/%.mli
|
|
${MAKE} -C ${SRCDIR} node.cmxa
|
|
${SRCDIR}/node/shell/%.cmx : ${SRCDIR}/node/shell/%.ml
|
|
${MAKE} -C ${SRCDIR} node.cmxa
|
|
${SRCDIR}/node/updater/%.cmi: ${SRCDIR}/node/updater/%.mli
|
|
${MAKE} -C ${SRCDIR} node.cmxa
|
|
${SRCDIR}/node/updater/%.cmx : ${SRCDIR}/node/updater/%.ml
|
|
${MAKE} -C ${SRCDIR} node.cmxa
|
|
${SRCDIR}/client/%.cmi: ${SRCDIR}/client/%.mli
|
|
${MAKE} -C ${SRCDIR} client.cmxa
|
|
${SRCDIR}/client/%.cmx : ${SRCDIR}/client/%.ml
|
|
${MAKE} -C ${SRCDIR} client.cmxa
|
|
|
|
############################################################################
|
|
## Generic rules
|
|
############################################################################
|
|
|
|
%.cmx: %.ml
|
|
@echo OCAMLOPT ${TARGET} $(notdir $@)
|
|
@$(OCAMLOPT) ${OCAMLFLAGS} -c $<
|
|
|
|
%.cmo: %.ml
|
|
@echo OCAMLC ${TARGET} $(notdir $@)
|
|
@$(OCAMLC) ${OCAMLFLAGS} -c $<
|
|
|
|
%.cmi: %.mli
|
|
@echo OCAMLOPT ${TARGET} $(notdir $@)
|
|
@$(OCAMLOPT) ${OCAMLFLAGS} -c $<
|
|
|
|
## Cleaning
|
|
|
|
.PHONY: clean partial-clean
|
|
clean:: partial-clean
|
|
partial-clean::
|
|
-find . \( -name \*.cm\* -or -name \*.cmp -or -name \*.out -or -name \*~ -or -name \*.o -or -name \*.a \) -delete
|
|
|
|
-include .depend
|
|
.depend: $(shell find . -name \*.mli -or -name \*.ml)
|
|
@echo OCAMLDEP "(test/$(notdir $(shell echo $$PWD)))"
|
|
@$(OCAMLDEP) -native $(INCLUDES) $^ > .depend
|
|
|
|
clean::
|
|
-rm .depend
|