Source

ocaml-lib / dcg / makefile

Full commit
OCAMLC=ocamlc
INCLUDES=                # all relevant -I options here
OCAMLFLAGS= $(INCLUDES)    # add other options for ocamlc here
OCAMLDOCFLAGS= -d doc $(INCLUDES)

# The list of object files
OBJ = msg.cmo dcg.cmo matcher.cmo

all: dcg.cma pa_dcg.cmo
	echo

dcg.cma: $(OBJ)
	ocamlc $(OCAMLFLAGS) -a -o dcg.cma $(OBJ)
	ocamlopt $(OCAMLFLAGS) -a -o dcg.cmxa $(OBJ:.cmo=.cmx)

pa_dcg.cmo: pa_dcg.ml
	ocamlc -I +camlp4 camlp4lib.cma -pp camlp4orf -c pa_dcg.ml

essai.exe: essai.ml
	ocamlc -o essai.exe -pp "camlp4o -I . pa_dcg.cmo" str.cma dcg.cma essai.ml

# Common rules
.SUFFIXES: .ml .mli .cmo .cmi

%.cmo: %.ml
	ocamlc $(OCAMLFLAGS) -c $<
	ocamlopt $(OCAMLFLAGS) -c $<

# Documentationg
html:
	ocamldoc $(OCAMLDOCFLAGS) -html $(ALL:.cmo=.ml)

# Clean up
clean:
	rm -f *.cm[ioax]
	rm -f *.cmxa
	rm -f *.[oa]