OCAMLC_FLAGS = $(OCAML_FLAGS) $(OCAML_THREADS_FLAGS)
OCAMLC = $(OCAMLFIND) ocamlc$(OCAML_PROF) $(OCAMLC_FLAGS) $(OCAML_DEBUG_FLAGS) $(SYNTAXOPTIONS)
OCAMLTOP = $(OCAMLFIND) ocamlmktop$(OCAML_PROF) $(OCAMLC_FLAGS) $(OCAML_DEBUG_FLAGS) $(SYNTAXOPTIONS)
-OCAMLOPT = $(OCAMLFIND) opt $(OCAMLC_FLAGS) $(OCAMLOPT_DEBUG_FLAGS)
+OCAMLOPT = $(OCAMLFIND) opt $(OCAMLC_FLAGS) $(OCAMLOPT_DEBUG_FLAGS) $(SYNTAXOPTIONS)
OCAMLDEP = $(OCAMLFIND) ocamldep $(OCAMLDEP_FLAGS)
INSTALL_PROGRAMS= matita matitac
INSTALL_PROGRAMS_LINKS_MATITA=
INSTALL_PROGRAMS_LINKS_MATITAC= matitaclean
+MY_SYNTAXOPTIONS = -pp "camlp5o -I $(UTF8DIR) -I $(ULEXDIR) pa_extend.cmo pa_ulex.cma pa_unicode_macro.cma -loc loc"
+
MATITA_FLAGS = -noprofile
NODB=false
predefined_virtuals.mli \
matitaMathView.mli \
matitaScript.mli \
- matitaGui.mli \
$(NULL)
CMLI = \
matitaTypes.mli \
matitaExcPp.mli \
matitaInit.mli \
$(NULL)
+WMLI = \
+ matitaTypes.mli \
+ matitaMisc.mli \
+ applyTransformation.mli \
+ matitaEngine.mli \
+ matitaExcPp.mli \
+ matitaInit.mli \
+ matitaFilesystem.mli \
+ matitaAuthentication.mli \
+ $(NULL)
MAINCMLI = \
matitaclean.mli \
$(NULL)
ML = buildTimeConf.ml matitaGeneratedGui.ml $(MLI:%.mli=%.ml)
# objects for matitac (batch compiler)
CML = buildTimeConf.ml $(CMLI:%.mli=%.ml)
-WML = matitaAuthentication.ml $(CML)
+WML = buildTimeConf.ml $(WMLI:%.mli=%.ml)
MAINCML = $(MAINCMLI:%.mli=%.ml)
+ALL_NORMAL_ML = \
+ applyTransformation.ml \
+ matitaclean.ml \
+ matitaFilesystem.ml \
+ matitaMathView.ml \
+ matitaTypes.ml \
+ buildTimeConf.ml \
+ matitac.ml \
+ matitaGeneratedGui.ml \
+ matitaMisc.ml \
+ predefined_virtuals.ml \
+ cicMathView.ml \
+ matitadaemon.ml \
+ matitaGtkMisc.ml \
+ virtuals.ml \
+ lablGraphviz.ml \
+ matitaEngine.ml \
+ matitaGui.ml \
+ matitaAuthentication.ml \
+ matitaExcPp.ml \
+ matitaInit.ml \
+ matitaScript.ml
+
+ALL_NORMAL_MLI = \
+ applyTransformation.mli \
+ matitaclean.mli \
+ matitaFilesystem.mli \
+ matitaMathView.mli \
+ matitaTypes.mli \
+ matitaMisc.mli \
+ predefined_virtuals.mli \
+ cicMathView.mli \
+ matitaGtkMisc.mli \
+ virtuals.mli \
+ lablGraphviz.mli \
+ matitaEngine.mli \
+ matitaGui.mli \
+ matitaGuiTypes.mli \
+ matitaScriptLexer.mli \
+ matitaAuthentication.mli \
+ matitaExcPp.mli \
+ matitaInit.mli \
+ matitaScript.mli
+
+ALL_SYNTAX_ML = matitaScriptLexer.ml
+ALL_SYNTAX_MLI = matitaScriptLexer.mli
+
PROGRAMS_BYTE = \
- matita matitac matitadaemon matitaclean
+ matitac matitadaemon matitaclean
PROGRAMS = $(PROGRAMS_BYTE)
PROGRAMS_OPT = $(patsubst %,%.opt,$(PROGRAMS_BYTE))
NOINST_PROGRAMS =
UTF8DIR := $(shell $(OCAMLFIND) query helm-syntax_extensions)
ULEXDIR := $(shell $(OCAMLFIND) query ulex08)
-matitaScriptLexer.cmo: SYNTAXOPTIONS = -pp "camlp5o -I $(UTF8DIR) -I $(ULEXDIR) pa_extend.cmo pa_ulex.cma pa_unicode_macro.cma -loc loc"
+matitaScriptLexer.cmo: SYNTAXOPTIONS = $(MY_SYNTAXOPTIONS)
+matitaScriptLexer.cmx: SYNTAXOPTIONS = $(MY_SYNTAXOPTIONS)
+
+matitaFilesystem.cmi: matitaFilesystem.mli
+ $(H)echo " OCAMLC $<"
+ $(H)$(OCAMLC) $(WPKGS) -c $<
+matitaFilesystem.cmo: matitaFilesystem.ml
+ $(H)echo " OCAMLC $<"
+ $(H)$(OCAMLC) $(WPKGS) -c $<
matitaAuthentication.cmi: matitaAuthentication.mli
$(H)echo " OCAMLC $<"
matitaAuthentication.cmo: matitaAuthentication.ml
$(H)echo " OCAMLC $<"
$(H)$(OCAMLC) $(WPKGS) -c $<
+matitaAuthentication.cmx: matitaAuthentication.ml
+ $(H)echo " OCAMLOPT $<"
+ $(H)$(OCAMLOPT) $(WPKGS) -c $<
CMOS = $(ML:%.ml=%.cmo)
CCMOS = $(CML:%.ml=%.cmo)
$(H)ln -sf matitac.opt matitac
linkonly:
- $(H)echo " OCAMLC matita.ml"
- $(H)$(OCAMLC) $(PKGS) -linkpkg -o matita $(CMOS) $(OCAML_DEBUG_FLAGS) matita.ml
$(H)echo " OCAMLC matitac.ml"
$(H)$(OCAMLC) $(CPKGS) -linkpkg -o matitac $(CCMOS) $(MAINCMOS) $(OCAML_DEBUG_FLAGS) matitac.ml
$(H)echo " OCAMLC matitadaemon.ml"
$(H)echo " OCAMLOPT $<"
$(H)$(OCAMLOPT) $(WPKGS) -linkpkg -o $@ $(WCMXS) $(MAINCMXS) matitadaemon.ml
+webdb_convert: webdb_convert.ml $(WLIB_DEPS) $(WCMOS) $(MAINCMOS)
+ $(H)echo " OCAMLC $<"
+ $(H)$(OCAMLC) $(WPKGS) -linkpkg -o $@ $(WCMOS) $(MAINCMOS) webdb_convert.ml
+
rottener: rottener.ml $(CLIB_DEPS) $(CCMOS) $(MAINCMOS)
$(H)echo " OCAMLC $<"
$(H)$(OCAMLC) $(CPKGS) -package lablgtk2 -linkpkg -o $@ $(CCMOS) $(MAINCMOS) rottener.ml
depend:
$(H)echo " OCAMLDEP"
- $(H)$(OCAMLDEP) *.ml *.mli > .depend
+ $(H)$(OCAMLDEP) $(ALL_NORMAL_ML) $(ALL_NORMAL_MLI) > .depend
+ $(H)$(OCAMLDEP) $(MY_SYNTAXOPTIONS) $(ALL_SYNTAX_ML) $(ALL_SYNTAX_MLI) >> .depend
depend.opt:
$(H)echo " OCAMLDEP -native"
- $(H)$(OCAMLDEP) -native *.ml *.mli > .depend.opt
+ $(H)$(OCAMLDEP) -native $(ALL_NORMAL_ML) $(ALL_NORMAL_MLI) > .depend.opt
+ $(H)$(OCAMLDEP) $(MY_SYNTAXOPTIONS) -native $(ALL_SYNTAX_ML) $(ALL_SYNTAX_MLI) >> .depend.opt
# this should be sligtly better, since should work with 'make all opt'
MAKECMDGOALS_DELIM=$(addprefix _x_,$(addsuffix _x_,$(MAKECMDGOALS)))
# }}} End of deps and automatic rules
+
# vim: set foldmethod=marker: