X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fsoftware%2Flambda-delta%2FMakefile.common;h=7ab5447b6fdd6fc556ff1a4f23c7593f5848ef17;hb=f57c2060459d2b55567447b70590bc5a26933cc7;hp=e4489040d2d83d0e7adcb7f55e29aca7dfcf02b6;hpb=75620ca64e3038fcbebb51559fdc31b2e8a00f93;p=helm.git diff --git a/helm/software/lambda-delta/Makefile.common b/helm/software/lambda-delta/Makefile.common index e4489040d..7ab5447b6 100644 --- a/helm/software/lambda-delta/Makefile.common +++ b/helm/software/lambda-delta/Makefile.common @@ -1,13 +1,26 @@ H=@ +ifeq ($(origin OCAMLPATH), undefined) + OCAMLFIND = OCAMLPATH=../components/METAS ocamlfind +else + OCAMLFIND = ocamlfind +endif + +LDDLURL = http://helm.cs.unibo.it/lambda-delta/static/lddl +LDDLDIR = mowgli:/projects/helm/public_html/lambda-delta/static/lddl +DOWNDIR = mowgli:/projects/helm/public_html/lambda-delta/download +XMLDIR = mowgli:/projects/helm/public_html/lambda-delta/xml + +DIRECTORIES = $(addprefix $(SRC)/,$(shell cat $(SRC)/Make)) INCLUDES = $(DIRECTORIES:%=-I %) -OCAMLDEP = ocamlfind ocamldep -native $(INCLUDES) -OCAMLOPT = ocamlfind opt -linkpkg -package "$(REQUIRES)" $(INCLUDES) +OCAMLDEP = $(OCAMLFIND) ocamldep -native $(INCLUDES) +OCAMLOPT = $(OCAMLFIND) opt $(OCAMLOPTIONS) -linkpkg -package "$(REQUIRES)" $(INCLUDES) OCAMLLEX = ocamllex.opt OCAMLYACC = ocamlyacc -v -TAR = tar -czf $(MAIN:%=%.tgz) -GZIP = gzip +XMLLINT = xmllint --noout +XSLT = xsltproc +#TAR = tar -czf etc/$(MAIN:%=%.tgz) define DIR_TEMPLATE MODULES += $$(addprefix $(1)/,$$(shell cat $(1)/Make)) @@ -26,8 +39,14 @@ define MOD_TEMPLATE ) 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 @@ -44,12 +63,16 @@ $(MAIN).opt: $(OBJECTS) $(H)$(OCAMLDEP) $^ > .depend.opt clean: - @echo " CLEAN . $(DIRECTORIES)" + @echo " CLEAN . $(SRC)" $(H)find -name "*~" | xargs $(RM) $(CLEAN) -tgz: clean - @echo " TAR -czf $(MAIN:%=%.tgz) . $(DIRECTORIES)" - $(H)find -name "Make*" | xargs $(TAR) $(KEEP) +lint: $(XMLS) + @echo XMLLINT --valid + $(H)$(XMLLINT) --valid $^ + +#tgz: clean +# @echo " TAR -czf $(MAIN:%=%.tgz) . $(DIRECTORIES)" +# $(H)find -name "Make*" | xargs $(TAR) $(KEEP) %.ml %.mli: %.mly @echo " OCAMLYACC $<" @@ -64,6 +87,6 @@ tgz: clean @echo " OCAMLOPT $<" $(H)$(OCAMLOPT) -c $< -ifeq ($(MAKECMDGOALS), $(MAIN).opt) - include .depend.opt -endif +TAGS += $(MAIN).opt + +$(foreach TAG, $(TAGS), $(eval $(call INCLUDE_TEMPLATE, $(TAG))))