1 # Warning: the modules must be in compilation order
31 OCAMLFIND_DEST_DIR = @OCAMLFIND_DEST_DIR@
32 OCAMLPATH = @OCAMLFIND_META_DIR@
33 OCAMLFIND = OCAMLPATH=$(OCAMLPATH):$$OCAMLPATH @OCAMLFIND@
35 METAS = $(MODULES:%=METAS/META.helm-%) METAS/META.helm-cic_disambiguation
37 all: metas $(MODULES:%=%.all)
38 opt: metas $(MODULES:%=%.opt)
41 depend: $(MODULES:%=%.depend)
42 install: $(MODULES:%=%.install)
43 uninstall: $(MODULES:%=%.uninstall)
44 clean: $(MODULES:%=%.clean)
47 distclean: clean clean_metas
48 rm -f Makefile Makefile.common configure config.log config.cache config.status
50 .PHONY: all opt world metas depend install uninstall clean clean_metas distclean
53 OCAMLPATH=$(OCAMLPATH):$$OCAMLPATH $(MAKE) -C $* all
55 OCAMLPATH=$(OCAMLPATH):$$OCAMLPATH $(MAKE) -C $* opt
57 OCAMLPATH=$(OCAMLPATH):$$OCAMLPATH $(MAKE) -C $* clean
59 OCAMLPATH=$(OCAMLPATH):$$OCAMLPATH $(MAKE) -C $* depend
61 $(MODULES:%=%.install):
62 cd $(@:%.install=%) && make install
63 export TARGET=$(OCAMLFIND_META_DIR)/$(@:%.install=META.helm-%) ; \
64 cp METAS/$(@:%.install=meta.helm-%.src) $$TARGET && \
65 echo "directory=\"$(OCAMLFIND_DEST_DIR)/$(@:%.install=%)\"" >> $$TARGET
66 $(MODULES:%=%.uninstall):
67 cd $(@:%.uninstall=%) && make uninstall
68 rm -f $(OCAMLFIND_META_DIR)/$(@:%.uninstall=META.helm-%)
69 METAS/META.helm-%: METAS/meta.helm-%.src
70 cp $< $@ && echo "directory=\"$(shell pwd)/$*\"" >> $@
74 echo "digraph G {" > $@
75 echo " rankdir = TB ;" >> $@
76 for i in $(MODULES); do $(OCAMLFIND) query helm-$$i -recursive -p-format | grep helm | sed "s/^helm-/ \"$$i\" -> \"/g" | sed "s/$$/\";/g" >> $@ ; done
77 mv $@ $@.old ; ./simplify_deps/simplify_deps.opt < $@.old > $@ ; rm $@.old
82 echo "digraph G {" > $@
83 echo " rankdir = TB ;" >> $@
84 for i in $(MODULES); do $(OCAMLFIND) query helm-$$i -recursive -p-format | grep -v "pxp-" | sed "s/^pxp/pxp[-*]/g" | sed "s/^/ \"helm-$$i\" -> \"/g" | sed "s/$$/\";/g" >> $@ ; done
85 mv $@ $@.old ; ./simplify_deps/simplify_deps.opt < $@.old > $@ ; rm $@.old
86 for i in $(MODULES); do echo "\"helm-$$i\" [shape=box,style=filled,fillcolor=yellow];" >> $@ ; done
91 .clustersdep.dot: .dep.dot
92 USE_CLUSTERS=yes ./patch_deps.sh $< $@
94 libraries.ps: .dep.dot
96 libraries-ext.ps: .extdep.dot
98 libraries-clusters.ps: .clustersdep.dot
100 libraries-complete.ps: .alldep.dot
103 ps: libraries.ps libraries-ext.ps libraries-clusters.ps