METADIR = ../meta
REQUIRES = http threads hbugs-common hbugs-thread-safe
COMMONOPTS = -package "$(REQUIRES)" -pp camlp4o
-OCAMLC = OCAMLPATH="$(METADIR)" ocamlfind ocamlc $(COMMONOPTS)
-OCAMLOPT = OCAMLPATH="$(METADIR)" ocamlfind ocamlopt $(COMMONOPTS)
-OCAMLDEP = OCAMLPATH="$(METADIR)" ocamlfind ocamldep $(COMMONOPTS)
+OCAMLFIND = ocamlfind
+OCAMLC = OCAMLPATH="$(METADIR)" $(OCAMLFIND) ocamlc $(COMMONOPTS)
+OCAMLOPT = OCAMLPATH="$(METADIR)" $(OCAMLFIND) ocamlopt $(COMMONOPTS)
+OCAMLDEP = OCAMLPATH="$(METADIR)" $(OCAMLFIND) ocamldep $(COMMONOPTS)
MODULES = hbugs_broker_registry
+OCAMLDOC = \
+ ocamldoc \
+ $(shell $(OCAMLFIND) query -i-format http) \
+ $(shell $(OCAMLFIND) query -i-format threads) \
+ $(shell $(OCAMLFIND) query -i-format hbugs-common) \
+ $(shell $(OCAMLFIND) query -i-format hbugs-thread-safe) \
+ $(shell $(OCAMLFIND) query -i-format hbugs-thread-safe) \
+ $(shell $(OCAMLFIND) query -i-format pxp-engine) \
+ $(shell $(OCAMLFIND) query -i-format pcre)
+CTL = ./hbugs_broker_ctl.sh
OBJS = $(patsubst %,%.cmo,$(MODULES))
OBJSOPT = $(patsubst %,%.cmx,$(MODULES))
byte: $(NAME)
opt: $(NAME).opt
world: byte opt
+start:
+ $(CTL) start
+stop:
+ $(CTL) stop
include .depend
depend:
$(OCAMLC) -linkpkg -thread -o $@ $^
$(NAME).opt: $(OBJSOPT) $(NAME).ml
$(OCAMLOPT) -linkpkg -thread -o $@ $^
+$(NAME).dot: *.ml *.mli ../common/*.ml ../common/*.mli
+ $(OCAMLDOC) -dot -o $@ $^
distclean: clean
+ rm -f run/*
clean:
rm -f *.cm[aiox] *.o $(NAME){,.opt}
-.PHONY: all byte opt world depend clean
+.PHONY: all byte opt world depend clean start stop