# 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_cache cic_proof_checking cic_textual_parser \
+ tex_cic_textual_parser cic_unification mathql mathql_interpreter \
+ mathql_generator tactics cic_transformations
+
+OCAMLFIND_DEST_DIR = @OCAMLFIND_DEST_DIR@
+OCAMLFIND_META_DIR = @OCAMLFIND_META_DIR@
METAS = $(MODULES:%=META.helm-%)
CWD=`pwd`
rm -f $(METAS)
dist-clean: clean
- rm -f Makefile configure config.log config.cache config.status
+ rm -f Makefile Makefile.common configure config.log config.cache config.status
$(MODULES:%=%.all):
- export OCAMLPATH=$(CWD):$$OCAMLPATH ; cd $(@:%.all=%) ; make all
+ export OCAMLPATH=$(CWD):$$OCAMLPATH ; cd $(@:%.all=%) && make all
$(MODULES:%=%.opt):
- export OCAMLPATH=$(CWD):$$OCAMLPATH ; cd $(@:%.opt=%) ; make opt
+ export OCAMLPATH=$(CWD):$$OCAMLPATH ; cd $(@:%.opt=%) && make opt
$(MODULES:%=%.depend):
- export OCAMLPATH=$(CWD):$$OCAMLPATH ; cd $(@:%.depend=%) ; make depend
+ export OCAMLPATH=$(CWD):$$OCAMLPATH ; cd $(@:%.depend=%) && make depend
$(MODULES:%=%.install):
- cd $(@:%.install=%) ; make install
+ cd $(@:%.install=%) && make install
+ export TARGET=$(OCAMLFIND_META_DIR)/$(@:%.install=META.helm-%) ; \
+ cp $(@:%.install=META.helm-%.src) $$TARGET && \
+ echo "directory=\"$(OCAMLFIND_DEST_DIR)/$(@:%.install=%)\"" >> $$TARGET
$(MODULES:%=%.uninstall):
- cd $(@:%.uninstall=%) ; make uninstall
+ cd $(@:%.uninstall=%) && make uninstall
+ rm -f $(OCAMLFIND_META_DIR)/$(@:%.uninstall=META.helm-%)
$(MODULES:%=%.clean):
- cd $(@:%.clean=%) ; make clean
+ cd $(@:%.clean=%) && make clean
META.helm-%: META.helm-%.src
- cp $< $@ ; echo "directory=\"$(CWD)/$(@:META.helm-%=%)\"" >> $@
+ cp $< $@ && echo "directory=\"$(CWD)/$(@:META.helm-%=%)\"" >> $@
+
+.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 $@ $<