DIRS_OPT = $(patsubst %,%.opt,$(DIRS))
DIRS_CLEAN = $(patsubst %,%.clean,$(DIRS))
all: byte
-byte: $(DIRS_BYTE)
-opt: $(DIRS_OPT)
+meta:
+ $(MAKE) -C meta/
+byte: meta $(DIRS_BYTE)
+opt: meta $(DIRS_OPT)
world: byte opt
clean: $(DIRS_CLEAN)
+ $(MAKE) -C meta/ clean
%.byte:
$(MAKE) -C $*/ all
%.opt:
$(MAKE) -C $*/ opt
%.clean:
$(MAKE) -C $*/ clean
-.PHONY: all byte opt world clean
+.PHONY: all byte opt world clean meta
NAME = hbugs_broker
-REQUIRES = http threads hbugs-common
-COMMONDIR = ../common
+METADIR = ../meta
+REQUIRES = http threads hbugs-common hbugs-thread-safe
COMMONOPTS = -package "$(REQUIRES)" -pp camlp4o
-OCAMLC = ocamlfind ocamlc -I $(COMMONDIR) $(COMMONOPTS)
-OCAMLOPT = ocamlfind ocamlopt -I $(COMMONDIR) $(COMMONOPTS)
-OCAMLDEP = ocamlfind ocamldep $(COMMONOPTS)
+OCAMLC = OCAMLPATH="$(METADIR)" ocamlfind ocamlc $(COMMONOPTS)
+OCAMLOPT = OCAMLPATH="$(METADIR)" ocamlfind ocamlopt $(COMMONOPTS)
+OCAMLDEP = OCAMLPATH="$(METADIR)" ocamlfind ocamldep $(COMMONOPTS)
MODULES = hbugs_broker_registry
-COMMON_MODULES = \
- hbugs_types threadSafe hbugs_misc hbugs_id_generator hbugs_messages
OBJS = $(patsubst %,%.cmo,$(MODULES))
OBJSOPT = $(patsubst %,%.cmx,$(MODULES))
-COMMON_OBJS = $(patsubst %,$(COMMONDIR)/%.cmo,$(COMMON_MODULES))
-COMMON_OBJSOPT = $(patsubst %,$(COMMONDIR)/%.cmx,$(COMMON_MODULES))
all: byte
byte: $(NAME)
$(OCAMLDEP) *.ml *.mli > .depend
%.cmi: %.mli
- OCAMLPATH=".." $(OCAMLC) -c $<
+ $(OCAMLC) -c $<
%.cmo: %.ml %.cmi
- OCAMLPATH=".." $(OCAMLC) -c $<
+ $(OCAMLC) -c $<
%.cmx: %.ml %.cmi
- OCAMLPATH=".." $(OCAMLOPT) -c $<
+ $(OCAMLOPT) -c $<
include Makefile.overrides
$(NAME): $(OBJS) $(NAME).ml
- OCAMLPATH=".." $(OCAMLC) -linkpkg -thread -o $@ $(COMMON_OBJS) $^
+ $(OCAMLC) -linkpkg -thread -o $@ $^
$(NAME).opt: $(OBJSOPT) $(NAME).ml
- OCAMLPATH=".." $(OCAMLOPT) -linkpkg -thread -o $@ $(COMMON_OBJSOPT) $^
+ $(OCAMLOPT) -linkpkg -thread -o $@ $^
distclean: clean
clean: