]> matita.cs.unibo.it Git - helm.git/blob - helm/matita/library/Makefile
No more need for symbolic links: .matita, the configuration file, etc. are
[helm.git] / helm / matita / library / Makefile
1 SRC=$(shell find . -name "*.ma")
2
3 MATITAC=../scripts/do_tests.sh $(DO_TESTS_OPTS) ../matitac ../matitaclean /dev/null
4 MATITACOPT=../scripts/do_tests.sh $(DO_TESTS_OPTS) ../matitac.opt ../matitaclean.opt /dev/null
5 VERBOSEMATITAC=../matitac
6 VERBOSEMATITACOPT=../matitac.opt
7
8 MATITACLEAN=../matitaclean
9 MATITACLEANOPT=../matitaclean.opt
10
11 MATITADEP=../matitadep
12 MATITADEPOPT=../matitadep.opt
13
14 DEPEND_NAME=.depend
15
16 H=@
17
18 all: $(LINKS) $(SRC:%.ma=%.moo)
19
20 opt:
21         $(H)make MATITAC="$(MATITACOPT)" MATITACLEAN="$(MATITACLEANOPT)" MATITADEP="$(MATITADEPOPT)" all
22
23 verbose.opt:
24         $(H)make MATITAC="$(VERBOSEMATITAC)" MATITACLEAN="$(MATITACLEANOPT)" MATITADEP="$(MATITADEPOPT)" all
25
26 verboseopt:
27         $(H)make MATITAC="$(VERBOSEMATITACOPT)" MATITACLEAN="$(MATITACLEANOPT)" MATITADEP="$(MATITADEPOPT)" all
28
29 %.opt:
30         $(H)make MATITAC="$(MATITACOPT)" MATITACLEAN="$(MATITACLEANOPT)" MATITADEP="$(MATITADEPOPT)" $(@:%.opt=%)
31
32 clean: $(LINKS)
33         $(H)$(MATITACLEAN) $(SRC)
34
35 cleanall: $(LINKS)
36         $(H)rm -f $(SRC:%.ma=%.moo)
37         $(MATITACLEAN) all
38
39 depend:
40         rm $(DEPEND_NAME)
41         make $(DEPEND_NAME)
42 .PHONY: depend
43
44 %.moo:%.ma $(LINKS)
45         $(H)[ ! -e $@ ] || $(MATITACLEAN) $< 
46         $(H)$(MATITAC) $< || $(MATITACLEAN) $<
47
48 $(DEPEND_NAME): $(SRC) $(LINKS)
49         $(H)$(MATITADEP) $(SRC) > $@
50
51 include $(DEPEND_NAME)