# Warning: the modules must be in compilation order
-MODULES = xml urimanager getter pxp cic cic_annotations cic_annotations_cache \
- cic_cache cic_proof_checking cic_textual_parser
+MODULES = \
+ xml \
+ urimanager \
+ getter \
+ pxp \
+ cic \
+ cic_annotations \
+ cic_annotations_cache \
+ cic_cache \
+ cic_proof_checking \
+ cic_textual_parser \
+ tex_cic_textual_parser \
+ cic_unification \
+ mathql \
+ mathql_generator \
+ mathql_interpreter \
+ cic_omdoc \
+ tactics \
+ cic_transformations \
+ logger \
+ cic_textual_parser2
OCAMLFIND_DEST_DIR = @OCAMLFIND_DEST_DIR@
OCAMLFIND_META_DIR = @OCAMLFIND_META_DIR@
-METAS = $(MODULES:%=META.helm-%)
+METAS = $(MODULES:%=METAS/META.helm-%)
CWD=`pwd`
-all: $(METAS) $(MODULES:%=%.all)
-opt: $(METAS) $(MODULES:%=%.opt)
+all: metas $(MODULES:%=%.all)
+opt: metas $(MODULES:%=%.opt)
+metas: $(METAS)
depend: $(MODULES:%=%.depend)
install: $(MODULES:%=%.install)
uninstall: $(MODULES:%=%.uninstall)
-clean: $(MODULES:%=%.clean)
+clean: $(MODULES:%=%.clean) clean_metas
+clean_metas:
rm -f $(METAS)
dist-clean: clean
rm -f $(OCAMLFIND_META_DIR)/$(@:%.uninstall=META.helm-%)
$(MODULES:%=%.clean):
cd $(@:%.clean=%) && make clean
-META.helm-%: META.helm-%.src
- cp $< $@ && echo "directory=\"$(CWD)/$(@:META.helm-%=%)\"" >> $@
+METAS/META.helm-%: METAS/meta.helm-%.src
+ cp $< $@ && echo "directory=\"$(CWD)/$*\"" >> $@
+
+.PHONY: .dep.dot
+.dep.dot:
+ echo "digraph G {" > $@
+ echo " rankdir = TB ;" >> $@
+ for i in $(MODULES); do ocamlfind query helm-$$i -recursive -p-format | grep helm | sed "s/^helm-/ \"$$i\" -> \"/g" | sed "s/$$/\";/g" >> $@ ; done
+ mv $@ $@.old ; ./simplify_deps/simplify_deps.opt < $@.old > $@ ; rm $@.old
+ echo "}" >> $@
+
+libraries.ps: .dep.dot
+ dot -Tps -o $@ $<