]> matita.cs.unibo.it Git - helm.git/blob - matita/library/Makefile
Some more implicit coercions here and there.
[helm.git] / matita / library / Makefile
1 SRC=$(shell find . -name "*.ma" -a -type f)
2
3 MATITA_FLAGS =
4 NODB=false
5 ifeq ($(NODB),true)
6         MATITA_FLAGS += -nodb
7 endif
8
9 MATITAC=../scripts/do_tests.sh $(DO_TESTS_OPTS) "../matitac $(MATITA_FLAGS)" "../matitaclean $(MATITA_FLAGS)" /dev/null OK
10 MATITACOPT=../scripts/do_tests.sh $(DO_TESTS_OPTS) "../matitac.opt $(MATITA_FLAGS)" "../matitaclean.opt $(MATITA_FLAGS)" /dev/null OK
11 VERBOSEMATITAC=../matitac $(MATITA_FLAGS)
12 VERBOSEMATITACOPT=../matitac.opt $(MATITA_FLAGS)
13
14 MATITACLEAN=../matitaclean $(MATITA_FLAGS)
15 MATITACLEANOPT=../matitaclean.opt $(MATITA_FLAGS)
16
17 MATITADEP=../matitadep $(MATITA_FLAGS)
18 MATITADEPOPT=../matitadep.opt $(MATITA_FLAGS)
19
20 DEPEND_NAME=.depend
21
22 H=@
23
24 all: $(SRC:%.ma=%.mo)
25
26 opt:
27         $(H)$(MAKE) MATITAC='$(MATITACOPT)' MATITACLEAN='$(MATITACLEANOPT)' MATITADEP='$(MATITADEPOPT)' all
28
29 verbose:
30         $(H)$(MAKE) MATITAC='$(VERBOSEMATITAC)' MATITACLEAN='$(MATITACLEAN)' MATITADEP='$(MATITADEP)' all
31
32 %.opt:
33         $(H)$(MAKE) MATITAC='$(MATITACOPT)' MATITACLEAN='$(MATITACLEANOPT)' MATITADEP='$(MATITADEPOPT)' $(@:%.opt=%)
34
35 clean_:
36         $(H)rm -f __*not_for_matita
37
38 clean: clean_
39         $(H)$(MATITACLEAN) $(SRC)
40
41 cleanall:
42         $(H)rm -f $(SRC:%.ma=%.moo)
43         $(H)$(MATITACLEAN) all
44
45 depend:
46         $(H)rm -f $(DEPEND_NAME)
47         $(H)$(MAKE) $(DEPEND_NAME)
48 .PHONY: depend
49
50 %.moo:
51         $(H)$(MATITAC) $<
52
53 $(DEPEND_NAME): $(SRC)
54         $(H)$(MATITADEP) $(SRC) > $@ || rm -f $@
55
56 #include $(DEPEND_NAME)
57 include .depend