]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/matita/Makefile.in
* new binary matitatop
[helm.git] / helm / matita / Makefile.in
index aadfd26ad1e7b8d532a90ff0f7503a9347f511f0..43a62c6f5110d85a2ee4972a4133f58ddf715911 100644 (file)
@@ -1,5 +1,6 @@
 
-OCAMLFIND = @OCAMLFIND@
+OCAMLPATH = ../ocaml/METAS/
+OCAMLFIND = OCAMLPATH=$(OCAMLPATH):$$OCAMLPATH @OCAMLFIND@
 CAMLP4O = @CAMLP4O@
 LABLGLADECC = @LABLGLADECC@
 REQUIRES = @FINDLIB_REQUIRES@
@@ -11,42 +12,48 @@ PKGS = -package "$(REQUIRES)"
 CPKGS = -package "$(CREQUIRES)"
 OCAML_THREADS_FLAGS = -thread
 OCAML_DEBUG_FLAGS = -g
-OCAMLC_FLAGS = $(OCAML_FLAGS) $(OCAML_THREADS_FLAGS) $(OCAML_DEBUG_FLAGS)
-OCAMLC = $(OCAMLFIND) ocamlc $(OCAMLC_FLAGS)
+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)
 # objects for matita (GTK GUI)
 CMOS =                         \
        buildTimeConf.cmo       \
+       matitaLog.cmo           \
+       matitaTypes.cmo         \
        matitaMisc.cmo          \
+       matitaDb.cmo            \
+       matitaSync.cmo          \
+       matitaDisambiguator.cmo \
+       matitaEngine.cmo        \
+       matitaScript.cmo        \
        matitaGeneratedGui.cmo  \
-       matitaTypes.cmo         \
-       matitaCicMisc.cmo       \
        matitaGtkMisc.cmo       \
-       matitaConsole.cmo       \
        matitaGui.cmo           \
-       matitaProof.cmo         \
-       matitaDisambiguator.cmo \
-       matitaMathView.cmo      \
-       matitaInterpreter.cmo
+       matitaMathView.cmo
 # objects for matitac (batch compiler)
 CCMOS =                                \
        buildTimeConf.cmo       \
-       matitaMisc.cmo          \
+       matitaLog.cmo           \
        matitaTypes.cmo         \
-       matitaCicMisc.cmo       \
-       matitaProof.cmo         \
+       matitaMisc.cmo          \
+       matitaDb.cmo            \
+       matitaSync.cmo          \
        matitaDisambiguator.cmo \
-       matitaInterpreter.cmo
+       matitaEngine.cmo        \
+       matitacLib.cmo
+
 
-LIB_DEPS = $(shell $(OCAMLFIND) query -recursive -predicates "byte" -format "%d/%a" $(REQUIRES))
+all: matita matitac matitatop cicbrowser
 
-all: matita matitac cicbrowser
+updater: $(LIB_DEPS)
+       $(OCAMLC) $(PKGS) -linkpkg -o $@ updater.ml
 
 ifeq ($(HAVE_OCAMLOPT),yes)
 CMXS = $(patsubst %.cmo,%.cmx,$(CMOS))
 CCMXS = $(patsubst %.cmo,%.cmx,$(CCMOS))
-LIBX_DEPS = $(shell $(OCAMLFIND) query -recursive -predicates "native" -format "%d/%a" $(REQUIRES))
+LIB_DEPS := $(shell $(OCAMLFIND) query -recursive -predicates "byte" -format "%d/%a" $(REQUIRES))
+LIBX_DEPS := $(shell $(OCAMLFIND) query -recursive -predicates "native" -format "%d/%a" $(REQUIRES))
 opt: matita.opt matitac.opt cicbrowser.opt
 else
 opt:
@@ -54,24 +61,25 @@ opt:
 endif
 
 matita: $(LIB_DEPS) $(CMOS) matita.ml
-       rm -f cicbrowser
        $(OCAMLC) $(PKGS) -linkpkg -o $@ $(CMOS) matita.ml
 matita.opt: $(LIBX_DEPS) $(CMXS) matita.ml
-       rm -f cicbrowser.opt
        $(OCAMLOPT) $(PKGS) -linkpkg -o $@ $(CMXS) matita.ml
 
 matitac: $(LIB_DEPS) $(CCMOS) matitac.ml
        $(OCAMLC) $(CPKGS) -linkpkg -o $@ $(CCMOS) matitac.ml
-matitac.opt: $(LIBX_DEPS) $(CMXS) matitac.ml
+matitac.opt: $(LIBX_DEPS) $(CCMXS) matitac.ml
        $(OCAMLOPT) $(CPKGS) -linkpkg -o $@ $(CCMXS) matitac.ml
 
+matitatop: matitatop.ml $(LIB_DEPS) $(CCMOS)
+       $(OCAMLC) $(CPKGS) -linkpkg -o $@ toplevellib.cma $(CCMOS) $<
+
 cicbrowser: matita
-       test -f $@ || ln -s $< $@
+       @test -f $@ || ln -s $< $@
 cicbrowser.opt: matita.opt
-       test -f $@ || ln -s $< $@
+       @test -f $@ || ln -s $< $@
 
 matitaGeneratedGui.ml matitaGeneratedGui.mli: matita.glade
-       $(LABLGLADECC) $< > matitaGeneratedGui.ml
+       $(LABLGLADECC) -embed $< > matitaGeneratedGui.ml
        $(OCAMLC) $(PKGS) -i matitaGeneratedGui.ml > matitaGeneratedGui.mli
 
 %.cmi: %.mli
@@ -80,6 +88,8 @@ matitaGeneratedGui.ml matitaGeneratedGui.mli: matita.glade
        $(OCAMLC) $(PKGS) -c $<
 %.cmx: %.ml
        $(OCAMLOPT) $(PKGS) -c $<
+%.annot: %.ml
+       $(OCAMLC) -dtypes $(PKGS) -c $<
 
 clean:
        rm -rf *.cma *.cmo *.cmi *.cmx *.cmxa *.a *.o   \
@@ -91,10 +101,34 @@ distclean: clean
        rm -f matita.glade.bak matita.gladep.bak
        rm -rf autom4te.cache/
 
-depend: matitaGeneratedGui.ml matitaGeneratedGui.mli
+tests: matita
+       @scripts/do_tests.sh ./matitac /dev/null tests/*.ma
+tests.opt: matitac.opt
+       @scripts/do_tests.sh ./matitac.opt /dev/null tests/*.ma
+.PHONY: tests tests.opt
+
+tags: TAGS
+.PHONY: TAGS
+TAGS:
+       cd ..; otags -vi -r ocaml/ matita/
+
+#.depend: matitaGeneratedGui.ml matitaGeneratedGui.mli *.ml *.mli
+depend:
        $(OCAMLDEP) *.ml *.mli > .depend
 
 include .depend
 
 .PHONY: all opt clean distclean depend
 
+$(CMOS): $(LIB_DEPS)
+$(CMOS:%.cmo=%.cmx): $(LIBX_DEPS)
+
+ifeq ($(MAKECMDGOALS),all)
+   $(CMOS:%.cmo=%.cmi): $(LIB_DEPS)
+endif
+ifeq ($(MAKECMDGOALS),)
+   $(CMOS:%.cmo=%.cmi): $(LIB_DEPS)
+endif
+ifeq ($(MAKECMDGOALS),opt)
+   $(CMOS:%.cmo=%.cmi): $(LIBX_DEPS)
+endif