-SRC=\
- bool.ma\
- compare.ma\
- equality.ma\
- logic.ma\
- nat.ma \
- Z.ma
+SRC=$(shell find . -name "*.ma" -a -type f)
+
+MATITAC=../scripts/do_tests.sh $(DO_TESTS_OPTS) ../matitac ../matitaclean /dev/null
+MATITACOPT=../scripts/do_tests.sh $(DO_TESTS_OPTS) ../matitac.opt ../matitaclean.opt /dev/null
+VERBOSEMATITAC=../matitac
+VERBOSEMATITACOPT=../matitac.opt
+
+MATITACLEAN=../matitaclean
+MATITACLEANOPT=../matitaclean.opt
+
+MATITADEP=../matitadep
+MATITADEPOPT=../matitadep.opt
DEPEND_NAME=.depend
-LINKS=.matita matita.lang matita.conf.xml
-all: $(LINKS) $(SRC:%.ma=%.moo)
+H=@
+
+all: $(SRC:%.ma=%.mo)
+
+opt:
+ $(H)make MATITAC="$(MATITACOPT)" MATITACLEAN="$(MATITACLEANOPT)" MATITADEP="$(MATITADEPOPT)" all
-clean: $(LINKS)
- rm -f $(SRC:%.ma=%.moo)
- ../matitaclean all
+verbose:
+ $(H)make MATITAC="$(VERBOSEMATITAC)" MATITACLEAN="$(MATITACLEAN)" MATITADEP="$(MATITADEP)" all
-depend: $(DEPEND_NAME)
+%.opt:
+ $(H)make MATITAC="$(MATITACOPT)" MATITACLEAN="$(MATITACLEANOPT)" MATITADEP="$(MATITADEPOPT)" $(@:%.opt=%)
-%.moo:%.ma depend $(LINKS)
- [ ! -e $@ ] || ../matitaclean $<
- ../matitac $< || ../matitaclean $<
+clean:
+ $(H)$(MATITACLEAN) $(SRC)
-$(DEPEND_NAME): $(SRC) $(LINKS)
- ../matitadep $(SRC) > $@
+cleanall:
+ $(H)rm -f $(SRC:%.ma=%.moo)
+ $(MATITACLEAN) all
-# Let's prepare the environment
-.matita:
- ln -s ../.matita .
+depend:
+ rm -f $(DEPEND_NAME)
+ make $(DEPEND_NAME)
+.PHONY: depend
-matita.lang:
- ln -s ../matita.lang .
+%.moo:
+ $(H)$(MATITAC) $<
-matita.conf.xml:
- ln -s ../matita.conf.xml .
-#done
+$(DEPEND_NAME): $(SRC)
+ $(H)$(MATITADEP) $(SRC) > $@ || rm -f $@
-include $(DEPEND_NAME)
+#include $(DEPEND_NAME)
+include .depend