]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/hbugs/broker/Makefile
- the mathql interpreter is not helm-dependent any more
[helm.git] / helm / hbugs / broker / Makefile
index 32fce5032a91c653d4d10ace849be44e25ad697a..fe1bf71e95ca0c8db7612101d1f11a81f562061d 100644 (file)
@@ -2,18 +2,35 @@ NAME = hbugs_broker
 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 = $(OCAMLFIND) ocamlc $(COMMONOPTS)
+OCAMLOPT = $(OCAMLFIND) ocamlopt $(COMMONOPTS)
+OCAMLDEP = $(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))
+DEPS = $(shell $(OCAMLFIND) query -recursive -predicates byte -format "%d/%a" $(REQUIRES))
+DEPSOPT = $(shell $(OCAMLFIND) query -recursive -predicates native -format "%d/%a" $(REQUIRES))
 
 all: byte
 byte: $(NAME)
 opt: $(NAME).opt
 world: byte opt
+start:
+       $(CTL) start
+stop:
+       $(CTL) stop
 
 include .depend
 depend:
@@ -26,14 +43,19 @@ depend:
 %.cmx: %.ml %.cmi
        $(OCAMLOPT) -c $<
 include Makefile.overrides
+$(OBJS): $(DEPS)
+$(OBJSOPT): $(DEPSOPT)
 $(NAME): $(OBJS) $(NAME).ml
        $(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