ligo/src/client/embedded/Makefile.shared

98 lines
2.4 KiB
Makefile
Raw Normal View History

2016-09-08 19:13:10 +02:00
2016-12-01 23:20:23 +01:00
all: \
2017-09-13 15:06:48 +02:00
../client_$(PROTO_VERSION).cmx
2016-09-08 19:13:10 +02:00
2017-01-02 14:02:55 +01:00
-include ../../../Makefile.local
2016-09-08 19:13:10 +02:00
include ../../../Makefile.config
NODE_DIRECTORIES = \
$(addprefix ../../../, \
minutils \
2016-09-08 19:13:10 +02:00
utils \
node/updater \
node/db \
node/net \
node/shell \
client \
)
SOURCE_DIRECTORIES += \
${NODE_DIRECTORIES} \
../../../proto
OPENED_MODULES := \
Client_embedded_proto_${PROTO_VERSION} \
Register_client_embedded_proto_${PROTO_VERSION} \
Error_monad \
Hash \
Tezos_data \
2016-09-08 19:13:10 +02:00
${OPENED_MODULES}
OBJS := \
2016-12-01 23:20:23 +01:00
${CLIENT_IMPLS:.ml=.cmx} ${CLIENT_INTFS:.mli=.cmi}
OBJS_DEPS := \
${CLIENT_IMPLS:.ml=.ml.deps} ${CLIENT_INTFS:.mli=.mli.deps}
${OBJS} ${OBJS_DEPS}: TARGET="(client_$(PROTO_VERSION).cmx)"
${OBJS}: EXTRA_OCAMLFLAGS = -for-pack Client_$(PROTO_VERSION)
../client_$(PROTO_VERSION).cmx: EXTRA_OCAMLFLAGS =
${OBJS} ${OBJS_DEPS} ../client_$(PROTO_VERSION).cmx: \
PACKAGES=lwt ocplib-json-typed sodium ocplib-ocamlres uutf
2016-12-01 23:20:23 +01:00
${OBJS} ${OBJS_DEPS} ../client_$(PROTO_VERSION).cmx: \
../../../proto/client_embedded_proto_${PROTO_VERSION}.cmxa
../client_$(PROTO_VERSION).cmx: $(patsubst %.ml, %.cmx, ${CLIENT_IMPLS})
2016-09-08 19:13:10 +02:00
@echo LINK $(notdir $@)
@$(OCAMLOPT) -linkall ${OCAMLFLAGS} -pack -o $@ \
2016-12-01 23:20:23 +01:00
$(patsubst %.ml, %.cmx, ${CLIENT_IMPLS})
2016-09-08 19:13:10 +02:00
%.cmx: %.ml
@echo OCAMLOPT ${TARGET} $(notdir $@)
2016-12-01 23:20:23 +01:00
@$(OCAMLOPT) ${OCAMLFLAGS} -c $<
%.cmo: %.ml
@echo OCAMLC ${TARGET} $(notdir $@)
@$(OCAMLC) ${OCAMLFLAGS} -c $<
2016-09-08 19:13:10 +02:00
%.cmi: %.mli
@echo OCAMLOPT ${TARGET} $(notdir $@)
2016-12-01 23:20:23 +01:00
@$(OCAMLOPT) ${OCAMLFLAGS} -c $<
2016-09-08 19:13:10 +02:00
.PHONY: clean
clean::
-rm -f ../client_$(PROTO_VERSION).cm* ../client_$(PROTO_VERSION).o
2016-12-01 23:20:23 +01:00
-rm -f *.cm* *~ *.o *.a *.deps *.deps.byte
2016-09-08 19:13:10 +02:00
-rm -rf _tzbuild
-rm -f .depend
ifneq ($(MAKECMDGOALS),clean)
2016-12-01 23:20:23 +01:00
include .depend
2016-09-08 19:13:10 +02:00
endif
predepend:
2016-12-01 23:20:23 +01:00
DEPENDS += \
2017-09-13 15:06:48 +02:00
$(patsubst %,%.deps,${CLIENT_INTFS} ${CLIENT_IMPLS})
2016-12-01 23:20:23 +01:00
DEPENDS := $(filter-out ${NODEPENDS}, ${DEPENDS})
.SECONDARY: ${DEPENDS}
.depend: ${DEPENDS}
2016-09-08 19:13:10 +02:00
@cat $^ > .depend
2016-12-01 23:20:23 +01:00
2016-09-08 19:13:10 +02:00
%.ml.deps: %.ml | predepend
@echo OCAMLDEP ${TARGET} $(notdir $<)
2016-12-01 23:20:23 +01:00
@$(OCAMLDEP) -native $(INCLUDES) ${EXTRA_OCAMLFLAGS} $< > $@
2016-09-08 19:13:10 +02:00
%.mli.deps: %.mli | predepend
@echo OCAMLDEP ${TARGET} $(notdir $<)
2016-12-01 23:20:23 +01:00
@$(OCAMLDEP) -native $(INCLUDES) ${EXTRA_OCAMLFLAGS} $< > $@
%.ml.deps.byte: %.ml | predepend
@echo OCAMLDEP ${TARGET} $(notdir $<)
@$(OCAMLDEP) $(INCLUDES) ${EXTRA_OCAMLFLAGS} $< > $@
%.mli.deps.byte: %.mli | predepend
@echo OCAMLDEP ${TARGET} $(notdir $<)
@$(OCAMLDEP) $(INCLUDES) ${EXTRA_OCAMLFLAGS} $< > $@