]> matita.cs.unibo.it Git - helm.git/blobdiff - matita/Makefile
OPT tests restored
[helm.git] / matita / Makefile
index 27febffb70b43d580f955618dd5a3b60f12fecf6..48d4e8af8c17d389aed8bbc8f32b91a85b7f765c 100644 (file)
@@ -16,7 +16,7 @@ OCAMLOPT = $(OCAMLFIND) opt $(OCAMLC_FLAGS)
 OCAMLDEP = $(OCAMLFIND) ocamldep $(OCAML_FLAGS)
 INSTALL_PROGRAMS= matita matitac
 INSTALL_PROGRAMS_LINKS_MATITA= cicbrowser 
-INSTALL_PROGRAMS_LINKS_MATITAC= matitadep matitamake matitaclean
+INSTALL_PROGRAMS_LINKS_MATITAC= matitadep matitamake matitaclean matitaprover matitawiki
 
 MATITA_FLAGS = -noprofile
 NODB=false
@@ -27,19 +27,22 @@ endif
 # objects for matita (GTK GUI)
 CMOS =                         \
        buildTimeConf.cmo       \
+       lablGraphviz.cmo        \
        matitaTypes.cmo         \
        matitaMisc.cmo          \
        matitamakeLib.cmo       \
        matitaInit.cmo          \
        matitaExcPp.cmo         \
        matitaEngine.cmo        \
+       applyTransformation.cmo \
        matitacLib.cmo          \
+       matitaprover.cmo        \
+       matitaGtkMisc.cmo       \
        matitaScript.cmo        \
        matitaGeneratedGui.cmo  \
-       matitaGtkMisc.cmo       \
-       applyTransformation.cmo \
        matitaMathView.cmo      \
        matitaGui.cmo           \
+       matitaAutoGui.cmo               \
        $(NULL)
 # objects for matitac (batch compiler)
 CCMOS =                                \
@@ -50,7 +53,10 @@ CCMOS =                              \
        matitaInit.cmo          \
        matitaExcPp.cmo         \
        matitaEngine.cmo        \
+       applyTransformation.cmo \
        matitacLib.cmo          \
+       matitaWiki.cmo          \
+       matitaprover.cmo        \
        $(NULL)
 MAINCMOS =                     \
        matitadep.cmo           \
@@ -59,7 +65,7 @@ MAINCMOS =                    \
        gragrep.cmo             \
        $(NULL)
 PROGRAMS_BYTE = \
-       matita matitac cicbrowser matitadep matitaclean matitamake
+       matita matitac cicbrowser matitadep matitaclean matitamake matitaprover matitawiki
 PROGRAMS = $(PROGRAMS_BYTE) matitatop
 PROGRAMS_OPT = $(patsubst %,%.opt,$(PROGRAMS_BYTE))
 NOINST_PROGRAMS = dump_moo gragrep
@@ -110,7 +116,15 @@ links:
                        $(INSTALL_PROGRAMS_LINKS_MATITA); do\
                ln -sf $$X.opt $$X;\
        done
-
+       $(H)ln -sf matita.opt matita
+       $(H)ln -sf matitac.opt matitac
+
+linkonly:
+       $(H)echo "  OCAMLC matita.ml"
+       $(H)$(OCAMLC) $(PKGS) -linkpkg -o matita $(CMOS) matita.ml
+       $(H)echo "  OCAMLC matitac.ml"
+       $(H)$(OCAMLC) $(CPKGS) -linkpkg -o matitac $(CCMOS) $(MAINCMOS) matitac.ml
+.PHONY: linkonly
 matita: matita.ml $(LIB_DEPS) $(CMOS)
        $(H)echo "  OCAMLC $<"
        $(H)$(OCAMLC) $(PKGS) -linkpkg -o $@ $(CMOS) matita.ml
@@ -136,11 +150,21 @@ matitatop: matitatop.ml $(CLIB_DEPS) $(CCMOS)
        $(H)echo "  OCAMLC $<"
        $(H)$(OCAMLC) $(CPKGS) -linkpkg -o $@ toplevellib.cma $(CCMOS) $<
 
+matitaprover: matitac
+       $(H)test -f $@ || ln -s $< $@
+matitaprover.opt: matitac.opt
+       $(H)test -f $@ || ln -s $< $@
+
 matitadep: matitac
        $(H)test -f $@ || ln -s $< $@
 matitadep.opt: matitac.opt
        $(H)test -f $@ || ln -s $< $@
 
+matitawiki: matitac
+       $(H)test -f $@ || ln -s $< $@
+matitawiki.opt: matitac.opt
+       $(H)test -f $@ || ln -s $< $@
+
 matitaclean: matitac
        $(H)test -f $@ || ln -s $< $@
 matitaclean.opt: matitac.opt
@@ -185,17 +209,26 @@ distclean: clean
        $(H)rm -rf .matita
 
 TEST_DIRS =                            \
+       legacy                          \
        library                         \
        tests                           \
+       dama                            \
+       contribs/CoRN                   \
+       contribs/RELATIONAL             \
        contribs/LAMBDA-TYPES           \
        contribs/PREDICATIVE-TOPOLOGY   \
        $(NULL)
 
+#      library_auto                    
+TEST_DIRS_OPT =                        \
+       $(TEST_DIRS)        \
+       $(NULL)
+
 .PHONY: tests tests.opt cleantests cleantests.opt
 tests: $(foreach d,$(TEST_DIRS),$(d)-test)
-tests.opt: $(foreach d,$(TEST_DIRS),$(d)-test-opt)
+tests.opt: $(foreach d,$(TEST_DIRS_OPT),$(d)-test-opt)
 cleantests: $(foreach d,$(TEST_DIRS),$(d)-cleantests)
-cleantests.opt: $(foreach d,$(TEST_DIRS),$(d)-cleantests-opt)
+cleantests.opt: $(foreach d,$(TEST_DIRS_OPT),$(d)-cleantests-opt)
 
 %-test: matitac matitadep matitaclean 
        -cd $* && make -k clean all
@@ -222,6 +255,9 @@ dist_library@%:
 
 endif
 
+dist_pre: matitaGeneratedGui.ml matitaGeneratedGui.mli
+       $(MAKE) -C dist/ dist_pre
+
 DESTDIR = $(RT_BASE_DIR)
 INSTALL_STUFF =                        \
        icons/                          \
@@ -286,6 +322,14 @@ STATIC_CLIBS = \
        gdome \
        mysqlclient \
        $(NULL)
+STATIC_CLIBS_PROVER = \
+        $(STATIC_CLIBS) \
+       z \
+       pcre \
+       expat \
+       xml2 \
+       glib-2.0 \
+       $(NULL)
 STATIC_EXTRA_CLIBS =
 PROGRAMS_STATIC = $(patsubst %,%.static,$(PROGRAMS_OPT))
 PROGRAMS_UPX = $(patsubst %,%.upx,$(PROGRAMS_STATIC))
@@ -317,10 +361,17 @@ matitac.opt.static: $(STATIC_LINK) $(CLIBX_DEPS) $(CCMXS) $(MAINCMXS) matitac.ml
                $(OCAMLOPT) $(CPKGS) -linkpkg -o $@ $(CCMXS) $(MAINCMXS) matitac.ml \
                $(STATIC_EXTRA_CLIBS)
        strip $@
+matitaprover.opt.static: $(STATIC_LINK) $(CLIBX_DEPS) $(CCMXS) $(MAINCMXS) matitac.ml
+       $(STATIC_LINK) $(STATIC_CLIBS_PROVER) -- \
+               $(OCAMLOPT) $(CPKGS) -linkpkg -o $@ $(CCMXS) $(MAINCMXS) matitac.ml \
+               $(STATIC_EXTRA_CLIBS);
+       strip $@
 matitadep.opt.static: matitac.opt.static
        $(H)test -f $@ || ln -s $< $@
 matitaclean.opt.static: matitac.opt.static
        $(H)test -f $@ || ln -s $< $@
+matitawiki.opt.static: matitac.opt.static
+       $(H)test -f $@ || ln -s $< $@
 matitamake.opt.static: matitac.opt.static
        $(H)test -f $@ || ln -s $< $@
 cicbrowser.opt.static: matita.opt.static
@@ -349,12 +400,18 @@ depend:
        $(H)$(OCAMLDEP) *.ml *.mli > .depend
 depend.opt:
        $(H)echo "  OCAMLDEP -native"
-       $(H)$(OCAMLDEP) -native *.ml *.mli > .depend
+       $(H)$(OCAMLDEP) -native *.ml *.mli > .depend.opt
 
-ifneq ($(MAKECMDGOALS), depend)
- ifneq ($(MAKECMDGOALS), depend.opt)
-   include .depend   
- endif
+ifeq ($(MAKECMDGOALS),)
+  include .depend   
+endif
+
+ifeq ($(MAKECMDGOALS), all)
+  include .depend   
+endif
+
+ifeq ($(MAKECMDGOALS), opt)
+  include .depend.opt   
 endif
 
 %.cmi: %.mli
@@ -373,6 +430,11 @@ endif
 $(CMOS): $(LIB_DEPS)
 $(CMOS:%.cmo=%.cmx): $(LIBX_DEPS)
 
+deps.ps: deps.dot
+       dot -Tps -o $@ $<
+deps.dot: .depend
+       ./dep2dot.rb < $< | tred > $@
+
 ifeq ($(MAKECMDGOALS),all)
    $(CMOS:%.cmo=%.cmi): $(LIB_DEPS)
 endif