X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fmatita%2FMakefile.in;h=c1e1c094e95ea938a6476d348ede3261201b62a6;hb=82d56e6d22560ffb111c63cfdf0e200c8fa6fd3d;hp=8714fafe1466d0f58d3fb9916de0c06265804e5c;hpb=e790d1d45f9b4dd4855918cde1a0b381c9a7e839;p=helm.git diff --git a/helm/matita/Makefile.in b/helm/matita/Makefile.in index 8714fafe1..c1e1c094e 100644 --- a/helm/matita/Makefile.in +++ b/helm/matita/Makefile.in @@ -1,3 +1,7 @@ +export SHELL=/bin/bash + +NULL = + MAKEFLAGS+=--no-print-directory OCAMLPATH = ../ocaml/METAS/ OCAMLFIND = OCAMLPATH=$(OCAMLPATH):$$OCAMLPATH @OCAMLFIND@ @@ -20,21 +24,41 @@ 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) + +STATIC_LINK = dist/static_link/static_link +STATIC_LIBS = \ + t1 t1x \ + gtkmathview_gmetadom mathview mathview_backend_gtk mathview_frontend_gmetadom \ + gtksourceview-1.0 \ + gdome gmetadom_gdome_cpp_smart \ + stdc++ \ + mysqlclient \ + expat \ + $(NULL) +STATIC_EXTRA_LIBS = -cclib -lt1x -cclib -lstdc++ -cclib -lart_lgpl_2 + +MATITA_FLAGS = +NODB=false +ifeq ($(NODB),true) + MATITA_FLAGS += -nodb +endif + # objects for matita (GTK GUI) -NULL = CMOS = \ buildTimeConf.cmo \ matitaLog.cmo \ matitaTypes.cmo \ + matitaMoo.cmo \ matitaExcPp.cmo \ matitaMisc.cmo \ matitaDb.cmo \ + matitamakeLib.cmo \ + matitaInit.cmo \ matitaSync.cmo \ matitacleanLib.cmo \ matitaDisambiguator.cmo \ matitaEngine.cmo \ matitacLib.cmo \ - matitamakeLib.cmo \ matitaScript.cmo \ matitaGeneratedGui.cmo \ matitaGtkMisc.cmo \ @@ -46,9 +70,12 @@ CCMOS = \ buildTimeConf.cmo \ matitaLog.cmo \ matitaTypes.cmo \ + matitaMoo.cmo \ matitaExcPp.cmo \ matitaMisc.cmo \ matitaDb.cmo \ + matitamakeLib.cmo \ + matitaInit.cmo \ matitaSync.cmo \ matitaDisambiguator.cmo \ matitacleanLib.cmo \ @@ -56,9 +83,13 @@ CCMOS = \ matitacLib.cmo \ $(NULL) CLEANCMOS = $(CCMOS) -MAKECMOS = $(CCMOS) matitamakeLib.cmo +MAKECMOS = $(CCMOS) +PROGRAMS_BYTE = matita matitac cicbrowser matitadep matitaclean matitamake dump_moo +PROGRAMS = $(PROGRAMS_BYTE) matitatop +PROGRAMS_OPT = $(patsubst %,%.opt,$(PROGRAMS_BYTE)) +PROGRAMS_STATIC = $(patsubst %,%.static,$(PROGRAMS_OPT)) -all: matita.conf.xml matita matitac matitatop cicbrowser matitadep matitaclean matitamake +all: matita.conf.xml $(PROGRAMS) coq.moo matita.conf.xml: matita.conf.xml.sample @if diff matita.conf.xml.sample matita.conf.xml 1>/dev/null 2>/dev/null; then\ @@ -80,6 +111,11 @@ matita.conf.xml.sample: matita.conf.xml.sample.in @echo "WARNING: The configuration sample file has changed!" @echo +coq.moo: coq.ma matitac + ./matitac $(MATITA_FLAGS) coq.ma +coq.moo.opt: coq.ma matitac.opt + ./matitac.opt $(MATITA_FLAGS) coq.ma + ifeq ($(HAVE_OCAMLOPT),yes) CMXS = $(patsubst %.cmo,%.cmx,$(CMOS)) CCMXS = $(patsubst %.cmo,%.cmx,$(CCMOS)) @@ -95,21 +131,42 @@ CLEANLIB_DEPS := $(shell $(OCAMLFIND) query -recursive -predicates "byte" -forma CLEANLIBX_DEPS := $(shell $(OCAMLFIND) query -recursive -predicates "native" -format "%d/%a" $(CLEANREQUIRES)) MAKELIB_DEPS := $(shell $(OCAMLFIND) query -recursive -predicates "byte" -format "%d/%a" $(MAKEREQUIRES)) MAKELIBX_DEPS := $(shell $(OCAMLFIND) query -recursive -predicates "native" -format "%d/%a" $(MAKEREQUIRES)) -opt: matita.opt matitac.opt cicbrowser.opt matitadep.opt matitaclean.opt matitamake.opt +opt: $(PROGRAMS_OPT) coq.moo.opt +static: $(PROGRAMS_STATIC) coq.moo.opt + strip *.static else opt: @echo "Native code compilation is disabled" +static: + @echo "Native code compilation is disabled" endif matita: $(LIB_DEPS) $(CMOS) matita.ml $(OCAMLC) $(PKGS) -linkpkg -o $@ $(CMOS) matita.ml matita.opt: $(LIBX_DEPS) $(CMXS) matita.ml $(OCAMLOPT) $(PKGS) -linkpkg -o $@ $(CMXS) matita.ml +matita.opt.static: $(LIBX_DEPS) $(CMXS) matita.ml + $(STATIC_LINK) $(STATIC_LIBS) -- \ + $(OCAMLOPT) $(PKGS) -linkpkg -o $@ $(CMXS) matita.ml \ + $(STATIC_EXTRA_LIBS) + +dump_moo: buildTimeConf.cmo matitaLog.cmo matitaMoo.cmo dump_moo.ml + $(OCAMLC) $(PKGS) -linkpkg -o $@ $^ +dump_moo.opt: buildTimeConf.cmx matitaLog.cmx matitaMoo.cmx dump_moo.ml + $(OCAMLOPT) $(PKGS) -linkpkg -o $@ $^ +dump_moo.opt.static: buildTimeConf.cmx matitaLog.cmx matitaMoo.cmx dump_moo.ml + $(STATIC_LINK) $(STATIC_LIBS) -- \ + $(OCAMLOPT) $(PKGS) -linkpkg -o $@ $^ \ + $(STATIC_EXTRA_LIBS) matitac: $(CLIB_DEPS) $(CCMOS) matitac.ml $(OCAMLC) $(CPKGS) -linkpkg -o $@ $(CCMOS) matitac.ml matitac.opt: $(CLIBX_DEPS) $(CCMXS) matitac.ml $(OCAMLOPT) $(CPKGS) -linkpkg -o $@ $(CCMXS) matitac.ml +matitac.opt.static: $(CLIBX_DEPS) $(CCMXS) matitac.ml + $(STATIC_LINK) $(STATIC_LIBS) -- \ + $(OCAMLOPT) $(CPKGS) -linkpkg -o $@ $(CCMXS) matitac.ml \ + $(STATIC_EXTRA_LIBS) matitatop: matitatop.ml $(CLIB_DEPS) $(CCMOS) $(OCAMLC) $(CPKGS) -linkpkg -o $@ toplevellib.cma $(CCMOS) $< @@ -118,21 +175,35 @@ matitadep: matitadep.ml $(DEPLIB_DEPS) $(CCMOS) $(OCAMLC) $(DEPPKGS) -linkpkg -o $@ $(CCMOS) $< matitadep.opt: matitadep.ml $(DEPLIB_DEPS) $(CCMXS) $(OCAMLOPT) $(DEPPKGS) -linkpkg -o $@ $(CCMXS) $< +matitadep.opt.static: matitadep.ml $(DEPLIB_DEPS) $(CCMXS) + $(STATIC_LINK) $(STATIC_LIBS) -- \ + $(OCAMLOPT) $(DEPPKGS) -linkpkg -o $@ $(CCMXS) $< \ + $(STATIC_EXTRA_LIBS) matitaclean: matitaclean.ml $(CLEANLIB_DEPS) $(CLEANCMOS) $(OCAMLC) $(CLEANPKGS) -linkpkg -o $@ $(CLEANCMOS) $< matitaclean.opt: matitaclean.ml $(CLEANLIB_DEPS) $(CLEANCMXS) $(OCAMLOPT) $(CLEANPKGS) -linkpkg -o $@ $(CLEANCMXS) $< +matitaclean.opt.static: matitaclean.ml $(CLEANLIB_DEPS) $(CLEANCMXS) + $(STATIC_LINK) $(STATIC_LIBS) -- \ + $(OCAMLOPT) $(CLEANPKGS) -linkpkg -o $@ $(CLEANCMXS) $< \ + $(STATIC_EXTRA_LIBS) matitamake: matitamake.ml $(MAKECMOS) $(OCAMLC) $(PKGS) -linkpkg -o $@ $(MAKECMOS) $< matitamake.opt: matitamake.ml $(MAKECMXS) $(OCAMLOPT) $(PKGS) -linkpkg -o $@ $(MAKECMXS) $< +matitamake.opt.static: matitamake.ml $(MAKECMXS) + $(STATIC_LINK) $(STATIC_LIBS) -- \ + $(OCAMLOPT) $(PKGS) -linkpkg -o $@ $(MAKECMXS) $< \ + $(STATIC_EXTRA_LIBS) cicbrowser: matita @test -f $@ || ln -s $< $@ cicbrowser.opt: matita.opt @test -f $@ || ln -s $< $@ +cicbrowser.opt.static: matita.opt.static + @test -f $@ || ln -s $< $@ matitaGeneratedGui.ml matitaGeneratedGui.mli: matita.glade $(LABLGLADECC) -embed $< > matitaGeneratedGui.ml @@ -148,12 +219,11 @@ matitaGeneratedGui.ml matitaGeneratedGui.mli: matita.glade $(OCAMLC) -dtypes $(PKGS) -c $< clean: - rm -rf *.cma *.cmo *.cmi *.cmx *.cmxa *.a *.o \ - matita matita.opt matitac matitac.opt \ - cicbrowser cicbrowser.opt \ - matitadep matitadep.opt \ - matitaclean matitaclean.opt \ - matitatop matitatop.opt + rm -rf *.cma *.cmo *.cmi *.cmx *.cmxa *.a *.o \ + $(PROGRAMS) \ + $(PROGRAMS_OPT) \ + $(PROGRAMS_STATIC) \ + $(NULL) distclean: clean rm -f matitaGeneratedGui.ml matitaGeneratedGui.mli rm -f config.log config.status Makefile buildTimeConf.ml