]> matita.cs.unibo.it Git - helm.git/blob - helm/software/components/syntax_extensions/Makefile
new dependences
[helm.git] / helm / software / components / syntax_extensions / Makefile
1 PACKAGE = utf8_macros
2 PREDICATES =
3 MAKE_TABLE_PACKAGES = helm-xml
4
5 # modules which have both a .ml and a .mli
6 INTERFACE_FILES = utf8Macro.mli 
7 IMPLEMENTATION_FILES = utf8MacroTable.ml $(INTERFACE_FILES:%.mli=%.ml)
8 EXTRA_OBJECTS_TO_INSTALL =
9 EXTRA_OBJECTS_TO_CLEAN =
10
11 all: utf8_macros.cma pa_unicode_macro.cma profiling_macros.cma
12
13 make_table: make_table.ml
14         @echo "  OCAMLC $<"
15         $(H)$(OCAMLFIND) ocamlc -rectypes -package $(MAKE_TABLE_PACKAGES) -linkpkg -o $@ $^
16
17 utf8MacroTable.ml:
18         ./make_table $@ $@.txt
19 utf8MacroTable.cmo: utf8MacroTable.ml
20         @echo "  OCAMLC $<"
21         $(H)@$(OCAMLFIND) ocamlc -c $<
22
23 pa_unicode_macro.cmo: pa_unicode_macro.ml utf8Macro.cmo
24         @echo "  OCAMLC $<"
25         $(H)@$(OCAMLFIND) ocamlc -rectypes -package camlp5 -pp "camlp5o q_MLast.cmo pa_extend.cmo -loc loc" -c $<
26 pa_unicode_macro.cma: utf8MacroTable.cmo utf8Macro.cmo pa_unicode_macro.cmo
27         @echo "  OCAMLC -a $@"
28         $(H)@$(OCAMLFIND) ocamlc -a -o $@ $^
29
30 profiling_macros.cmo: profiling_macros.ml
31         @echo "  OCAMLC $<"
32         $(H)@$(OCAMLFIND) ocamlc -package camlp5 -pp "camlp5o -loc loc" -c $<
33 profiling_macros.cma:profiling_macros.cmo
34         @echo "  OCAMLC -a $@"
35         $(H)@$(OCAMLFIND) ocamlc -a -o $@ $^
36         
37
38 .PHONY: test
39 test: test.ml
40         $(OCAMLFIND) ocamlc -package helm-utf8_macros -syntax camlp5o $< -o $@
41
42 clean:
43 distclean: extra_clean
44 extra_clean:
45         rm -f make_table test
46
47 STATS_EXCLUDE = utf8MacroTable.ml
48
49 include ../../Makefile.defs
50 include ../Makefile.common
51