OCAMLC ?= ocamlc .PHONY: all test clean all: fieldglass.cma rewrite rewrite: rewrite.ml $(OCAMLC) -I +compiler-libs ocamlcommon.cma $< -o $@ fieldglass.cmi: fieldglass.mli $(OCAMLC) -c $< fieldglass.cmo: fieldglass.ml fieldglass.cmi $(OCAMLC) -c $< fieldglass.cma: fieldglass.cmo $(OCAMLC) -a $< -o $@ test: all $(OCAMLC) fieldglass.cma runtime.ml -o runtime.byte ./runtime.byte $(OCAMLC) -ppx ./rewrite fieldglass.cma record.ml -o record.byte ./record.byte $(OCAMLC) -ppx ./rewrite fieldglass.cma case.ml -o case.byte ./case.byte OCAMLC=$(OCAMLC) sh error.sh OCAMLC=$(OCAMLC) sh smoke.sh ./rewrite . clean: rm -f *.cmi *.cmo *.cma *.byte rewrite