X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=matita%2FMakefile;h=ad5a18892524466da938e2e6f8e9d0714adb3ee1;hb=a957099550619f87a58be467b9b11f2ad6501378;hp=395ede8758f370652694f1ed18f482c1143b8710;hpb=c31e50505b5afd8fb53236bd5d500c225471eb9a;p=helm.git diff --git a/matita/Makefile b/matita/Makefile index 395ede875..ad5a18892 100644 --- a/matita/Makefile +++ b/matita/Makefile @@ -5,15 +5,18 @@ include ../Makefile.defs NULL = H=@ -OCAML_FLAGS = -pp $(CAMLP4O) +OCAML_FLAGS = -pp $(CAMLP5O) -rectypes +OCAMLDEP_FLAGS = -pp $(CAMLP5O) PKGS = -package "$(MATITA_REQUIRES)" CPKGS = -package "$(MATITA_CREQUIRES)" OCAML_THREADS_FLAGS = -thread OCAML_DEBUG_FLAGS = -g +#OCAML_PROF=p -p a +#OCAMLOPT_DEBUG_FLAGS = -p OCAMLC_FLAGS = $(OCAML_FLAGS) $(OCAML_THREADS_FLAGS) -OCAMLC = $(OCAMLFIND) ocamlc $(OCAMLC_FLAGS) $(OCAML_DEBUG_FLAGS) -OCAMLOPT = $(OCAMLFIND) opt $(OCAMLC_FLAGS) -OCAMLDEP = $(OCAMLFIND) ocamldep $(OCAML_FLAGS) +OCAMLC = $(OCAMLFIND) ocamlc$(OCAML_PROF) $(OCAMLC_FLAGS) $(OCAML_DEBUG_FLAGS) +OCAMLOPT = $(OCAMLFIND) opt $(OCAMLC_FLAGS) $(OCAMLOPT_DEBUG_FLAGS) +OCAMLDEP = $(OCAMLFIND) ocamldep $(OCAMLDEP_FLAGS) INSTALL_PROGRAMS= matita matitac INSTALL_PROGRAMS_LINKS_MATITA= cicbrowser INSTALL_PROGRAMS_LINKS_MATITAC= matitadep matitamake matitaclean matitaprover matitawiki @@ -29,24 +32,24 @@ MLI = \ matitaTypes.mli \ matitaMisc.mli \ matitamakeLib.mli \ - matitaInit.mli \ matitaExcPp.mli \ + matitaInit.mli \ matitaEngine.mli \ applyTransformation.mli \ + matitaAutoGui.mli \ matitacLib.mli \ matitaprover.mli \ matitaGtkMisc.mli \ matitaScript.mli \ matitaMathView.mli \ matitaGui.mli \ - matitaAutoGui.cmo \ $(NULL) CMLI = \ matitaTypes.mli \ matitaMisc.mli \ matitamakeLib.mli \ - matitaInit.mli \ matitaExcPp.mli \ + matitaInit.mli \ matitaEngine.mli \ applyTransformation.mli \ matitacLib.mli \ @@ -82,7 +85,7 @@ MAINCMOS = $(MAINCML:%.ml=%.cmo) CMXS = $(patsubst %.cmo,%.cmx,$(CMOS)) CCMXS = $(patsubst %.cmo,%.cmx,$(CCMOS)) MAINCMXS = $(patsubst %.cmo,%.cmx,$(MAINCMOS)) -$(CMOS): $(LIB_DEPS) +$(CMOS) : $(LIB_DEPS) $(CMXOS): $(LIBX_DEPS) LIB_DEPS := $(shell $(OCAMLFIND) query -recursive -predicates "byte" -format "%d/%a" $(MATITA_REQUIRES)) @@ -203,6 +206,7 @@ TEST_DIRS = \ dama \ contribs/CoRN \ contribs/RELATIONAL \ + contribs/LOGIC \ contribs/LAMBDA-TYPES \ contribs/PREDICATIVE-TOPOLOGY \ $(NULL) @@ -232,8 +236,6 @@ cleantests.opt: $(foreach d,$(TEST_DIRS_OPT),$(d)-cleantests-opt) ifeq ($(DISTRIBUTED),yes) -MATITA_CFLAGS = #-nodb - dist_library: install_preliminaries dist_library@standard-library dist_library@%: $(H)echo "MATITAMAKE init $*" @@ -295,7 +297,7 @@ endif ln -fs matita $(WHERE)/$$p;\ done $(H)cp -a library/ $(WHERE)/ma/standard-library - $(H)cp -a contribs/ $(WHERE)/ma/ + #$(H)cp -a contribs/ $(WHERE)/ma/ $(H)touch install_preliminaries.stamp uninstall: @@ -392,25 +394,45 @@ TAGS: depend: $(H)echo " OCAMLDEP" - $(H)$(OCAMLDEP) > .depend + $(H)$(OCAMLDEP) *.ml *.mli > .depend depend.opt: $(H)echo " OCAMLDEP -native" $(H)$(OCAMLDEP) -native *.ml *.mli > .depend.opt -ifeq ($(MAKECMDGOALS),) - include .depend +# this should be sligtly better, since should work with 'make all opt' +MAKECMDGOALS_DELIM=$(addprefix _x_,$(addsuffix _x_,$(MAKECMDGOALS))) +ifneq (,$(findstring _x_all_x_,$(MAKECMDGOALS_DELIM))) + # if we 'make all opt' the deps for 'all' should be fine also for opt + # if we 'make opt all' it should not work... + INCLUDE_MANDATORY=yes + TO_INCLUDE+=.depend + TO_DEPEND_ON=$(LIB_DEPS) +else ifneq (,$(findstring _x_opt_x_,$(MAKECMDGOALS_DELIM))) + INCLUDE_MANDATORY=yes + TO_INCLUDE+=.depend.opt + TO_DEPEND_ON=$(LIBX_DEPS) +else ifneq (,$(findstring _x_world_x_,$(MAKECMDGOALS_DELIM))) + ifeq ($(HAVE_OCAMLOPT),yes) + INCLUDE_MANDATORY=yes + TO_INCLUDE+=.depend.opt + TO_DEPEND_ON=$(LIBX_DEPS) + else + INCLUDE_MANDATORY=yes + TO_INCLUDE+=.depend + TO_DEPEND_ON=$(LIB_DEPS) + endif +else + TO_INCLUDE+=.depend + INCLUDE_MANDATORY=no + TO_DEPEND_ON=$(LIB_DEPS) endif -ifeq ($(MAKECMDGOALS), all) - include .depend -endif +$(MLI:%.mli=%.cmi) $(ML:%.ml=%.cmo) $(ML:%.ml=%.cmx): $(TO_DEPEND_ON) -ifeq ($(MAKECMDGOALS), opt) - include .depend.opt -endif - -ifeq ($(MAKECMDGOALS), world) - include .depend.opt +ifeq (no,$(INCLUDE_MANDATORY)) + -include $(TO_INCLUDE) +else + include $(TO_INCLUDE) endif %.cmi: %.mli