X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;ds=sidebyside;f=helm%2Fsoftware%2Fmatita%2FMakefile;h=6f62f254652c8ed9a7b1515d920e1deb896af131;hb=effab341df3fb2bfe403e51d360e81c8b0455e1a;hp=7c54333cd5c8f4757950914f7f31cf7c124f3fa2;hpb=aef659e5893b4bf8c8544d0c54714e10f5b5493a;p=helm.git diff --git a/helm/software/matita/Makefile b/helm/software/matita/Makefile index 7c54333cd..6f62f2546 100644 --- a/helm/software/matita/Makefile +++ b/helm/software/matita/Makefile @@ -14,6 +14,9 @@ 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) +INSTALL_PROGRAMS= matita matitac +INSTALL_PROGRAMS_LINKS_MATITA= cicbrowser +INSTALL_PROGRAMS_LINKS_MATITAC= matitadep matitamake matitaclean matitaprover matitawiki MATITA_FLAGS = -noprofile NODB=false @@ -24,17 +27,19 @@ 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 \ $(NULL) @@ -47,7 +52,10 @@ CCMOS = \ matitaInit.cmo \ matitaExcPp.cmo \ matitaEngine.cmo \ + applyTransformation.cmo \ matitacLib.cmo \ + matitaWiki.cmo \ + matitaprover.cmo \ $(NULL) MAINCMOS = \ matitadep.cmo \ @@ -56,7 +64,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 @@ -96,11 +104,26 @@ upx: $(PROGRAMS_UPX) .PHONY: opt upx ifeq ($(HAVE_OCAMLOPT),yes) -world: depend.opt opt +world: depend.opt opt links else world: depend all endif +#links %.opt -> % +links: + $(H)for X in $(INSTALL_PROGRAMS_LINKS_MATITAC) \ + $(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 @@ -126,11 +149,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 @@ -153,6 +186,7 @@ cicbrowser.opt: matita.opt matitaGeneratedGui.ml matitaGeneratedGui.mli: matita.glade $(H)$(LABLGLADECC) -embed $< > matitaGeneratedGui.ml + $(H)rm -f matitaGeneratedGui.mli $(H)#$(OCAMLC) $(PKGS) -i matitaGeneratedGui.ml > matitaGeneratedGui.mli .PHONY: clean @@ -174,9 +208,13 @@ distclean: clean $(H)rm -rf .matita TEST_DIRS = \ + legacy \ library \ + library_auto \ tests \ - tests/bad_tests \ + dama \ + contribs/CoRN \ + contribs/RELATIONAL \ contribs/LAMBDA-TYPES \ contribs/PREDICATIVE-TOPOLOGY \ $(NULL) @@ -212,6 +250,9 @@ dist_library@%: endif +dist_pre: matitaGeneratedGui.ml matitaGeneratedGui.mli + $(MAKE) -C dist/ dist_pre + DESTDIR = $(RT_BASE_DIR) INSTALL_STUFF = \ icons/ \ @@ -228,9 +269,6 @@ INSTALL_STUFF = \ LICENSE \ $(NULL) -INSTALL_PROGRAMS= matita matitac -INSTALL_PROGRAMS_LINKS_MATITA= cicbrowser -INSTALL_PROGRAMS_LINKS_MATITAC= matitadep matitamake matitaclean ifeq ($(HAVE_OCAMLOPT),yes) INSTALL_STUFF_BIN = $(INSTALL_PROGRAMS:%=%.opt) else @@ -279,6 +317,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)) @@ -310,10 +356,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 @@ -342,12 +395,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 + +ifeq ($(MAKECMDGOALS),) + include .depend +endif -ifneq ($(MAKECMDGOALS), depend) - ifneq ($(MAKECMDGOALS), depend.opt) - include .depend - endif +ifeq ($(MAKECMDGOALS), all) + include .depend +endif + +ifeq ($(MAKECMDGOALS), opt) + include .depend.opt endif %.cmi: %.mli @@ -366,6 +425,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