TOP_DIR = ../.. include $(TOP_DIR)/Makefile.rules ENC = utf8 INPUT = $(TOP_DIR)/src/pxp-lex ML = $(shell echo pxp_ulex_$(ENC)_*.ml) CMO = $(ML:.ml=.cmo) CMX = $(ML:.ml=.cmx) OCAMLC_OPTIONS += -I $(TOP_DIR)/src/pxp-engine -syntax camlp4o OCAMLOPT_OPTIONS += -I $(TOP_DIR)/src/pxp-engine -syntax camlp4o PACKAGES = netstring,ulex .PHONY: all opt generate clean CLEAN distclean install uninstall all: pxp_ulex_$(ENC).cma pxp_ulex_link_$(ENC).cmo opt: pxp_ulex_$(ENC).cmxa pxp_ulex_link_$(ENC).cmx pxp_ulex_$(ENC).cma: $(CMO) $(OCAMLC) -o pxp_ulex_$(ENC).cma -a $(CMO) pxp_ulex_$(ENC).cmxa: $(CMX) $(OCAMLOPT) -o pxp_ulex_$(ENC).cmxa -a $(CMX) generate: gen_done gen_done: $(INPUT)/*.def $(INPUT)/*.src $(LEXPP) -charclasses "$(INPUT)/char_classes_generic.def" \ -lexsrc "$(INPUT)/lex.src" \ -linksrc "$(INPUT)/link_ulex.src" \ -encoding "$(ENC)" \ -outformat ulex \ -outlexprefix "pxp_ulex_$(ENC)" \ -outlinkprefix "pxp_ulex_link_$(ENC)" touch gen_done .PHONY: expand expand: camlp4 -I `ocamlfind query ulex` pa_o.cmo pa_op.cmo pa_ulex.cma pr_o.cmo pxp_ulex_utf8_01.ml clean: rm -f $(CLEAN_LIST) *.ml *.mll gen_done CLEAN: clean # distclean is not clean, because the distribution contains the .ml files # and gen_done distclean: rm -f $(CLEAN_LIST) META install: files=`$(COLLECT_FILES) *.mli *.cmi *.cma *.cmxa *.a pxp_ulex_link_*.cmo pxp_ulex_link_*.cmx pxp_ulex_link_*.o META` && \ $(OCAMLFIND) install pxp-ulex-$(ENC) $$files uninstall: $(OCAMLFIND) remove pxp-ulex-$(ENC)