)
endef
-$(foreach DIR,$(DIRECTORIES),$(eval $(call DIR_TEMPLATE, $(DIR))))
-$(foreach MOD,$(MODULES),$(eval $(call MOD_TEMPLATE, $(MOD))))
+define INCLUDE_TEMPLATE
+ ifeq ($(MAKECMDGOALS), $(1))
+ include .depend.opt
+ endif
+endef
+
+$(foreach DIR, $(DIRECTORIES), $(eval $(call DIR_TEMPLATE, $(DIR))))
+$(foreach MOD, $(MODULES), $(eval $(call MOD_TEMPLATE, $(MOD))))
OBJECTS = $(patsubst %.ml,%.cmx,$(SOURCES:%.mli=%.cmi))
CLEAN += $(MAIN).opt
@echo " OCAMLOPT $<"
$(H)$(OCAMLOPT) -c $<
-ifeq ($(MAKECMDGOALS), $(MAIN).opt)
- include .depend.opt
-endif
+TAGS += $(MAIN).opt
+
+$(foreach TAG, $(TAGS), $(eval $(call INCLUDE_TEMPLATE, $(TAG))))