X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fsoftware%2Flambda-delta%2FMakefile.common;h=80019a80056682998c979964787d03002d6fad9c;hb=fefe8d334012230f8e8b9d90976d9411a58d4ba8;hp=0adedde842b7d0a8c60e1db26cf312cae2d7aff6;hpb=973b0b1fd5f44b96a3c367a9756f28b75b9fa30b;p=helm.git diff --git a/helm/software/lambda-delta/Makefile.common b/helm/software/lambda-delta/Makefile.common index 0adedde84..80019a800 100644 --- a/helm/software/lambda-delta/Makefile.common +++ b/helm/software/lambda-delta/Makefile.common @@ -1,12 +1,29 @@ H=@ +ifeq ($(origin OCAMLPATH), undefined) + OCAMLFIND = OCAMLPATH=$(HOME)/svn/software/components/METAS ocamlfind +else + OCAMLFIND = ocamlfind +endif + +RELISE = $(MAIN:%=%_$(shell cat MakeVersion)) + +LDDLURL = http://lambda-delta.info/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 +LOCALLDDLDIR = $(HOME)/public_html/lddl + +DIRECTORIES = $(addprefix $(SRC)/,$(shell cat $(SRC)/Make)) INCLUDES = $(DIRECTORIES:%=-I %) -OCAMLDEP = ocamlfind ocamldep -native $(INCLUDES) -OCAMLOPT = ocamlfind opt -linkpkg -package "$(REQUIRES)" $(INCLUDES) -OCAMLLEX = ocamllex +OCAMLDEP = $(OCAMLFIND) ocamldep -native $(INCLUDES) +OCAMLOPT = $(OCAMLFIND) opt $(OCAMLOPTIONS) -linkpkg -package "$(REQUIRES)" $(INCLUDES) +OCAMLLEX = ocamllex.opt OCAMLYACC = ocamlyacc -v -TAR = tar -czf $(MAIN:%=%.tgz) +XMLLINT = xmllint --noout +XSLT = xsltproc +TAR = tar -czf etc/$(MAIN:%=%.tgz) define DIR_TEMPLATE MODULES += $$(addprefix $(1)/,$$(shell cat $(1)/Make)) @@ -25,8 +42,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 @@ -43,9 +66,20 @@ $(MAIN).opt: $(OBJECTS) $(H)$(OCAMLDEP) $^ > .depend.opt clean: - @echo " CLEAN . $(DIRECTORIES)" + @echo " CLEAN . $(SRC)" $(H)find -name "*~" | xargs $(RM) $(CLEAN) +lint-xml: $(XMLS) + @echo XMLLINT --valid + $(H)$(XMLLINT) --valid $^ + +relise: clean + @echo " RELISE $(RELISE)" + $(H)mkdir -p $(RELISE) + $(H)$(foreach FILE, $(shell cat Make), cp --parents $(FILE) $(RELISE);) + $(H)tar -czf etc/$(RELISE).tar.gz $(RELISE) + $(H)scp etc/$(RELISE).tar.gz $(DOWNDIR) + tgz: clean @echo " TAR -czf $(MAIN:%=%.tgz) . $(DIRECTORIES)" $(H)find -name "Make*" | xargs $(TAR) $(KEEP) @@ -63,6 +97,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))))