.PHONY : c
CC=gcc
CPPFLAGS=-Ic/include -Lc -lbackend
OCAML=ocamlc
INCLUDE=-I ../include
OCAML_FLAGS=$(INCLUDE)
HEADERS=xcommponents.cmi codegen.cmi semantics.cmi
OBJS=semantics.cmo codegen.cmo xdot.cmo
LOCAL_TARGETS=$(HEADERS) $(OBJS) $(CTARGETS) $(BTARGETS)
TARGETS=c $(LOCAL_TARGETS)
CLEAN=clean_c

all: $(TARGETS)

c:
	make -C c

%.cmo: %.ml
	ocamlc $(OCAML_FLAGS) -c $<
%.cmi: %.mli
	$(OCAML) -c $(OCAML_FLAGS) -o $@ $<

clean_c:
	make -C c clean

clean: $(CLEAN)
	rm -f $(LOCAL_TARGETS)
