-SRC=$(shell find . -name "*.ma" -a -type f)
+GOALS = all opt clean clean.opt
-MATITA_FLAGS = -I ../..
-NODB=false
-ifeq ($(NODB),true)
- MATITA_FLAGS += -nodb
-endif
+DEVELS = Base-1 LambdaDelta-1 Base-2 Unified-Sub
-MATITAC=../../scripts/do_tests.sh $(DO_TESTS_OPTS) "../../matitac $(MATITA_FLAGS)" "../../matitaclean $(MATITA_FLAGS)" /dev/null OK
-MATITACOPT=../../scripts/do_tests.sh $(DO_TESTS_OPTS) "../../matitac.opt $(MATITA_FLAGS)" "../../matitaclean.opt $(MATITA_FLAGS)" /dev/null OK
-VERBOSEMATITAC=../../matitac $(MATITA_FLAGS)
-VERBOSEMATITACOPT=../../matitac.opt $(MATITA_FLAGS)
+$(GOALS):
+ @$(foreach DEVEL, $(DEVELS), $(MAKE) -k -C $(DEVEL) $@;)
-MATITACLEAN=../../matitaclean $(MATITA_FLAGS)
-MATITACLEANOPT=../../matitaclean.opt $(MATITA_FLAGS)
+.PHONY: (GOALS)
-MATITADEP=../../matitadep $(MATITA_FLAGS)
-MATITADEPOPT=../../matitadep.opt $(MATITA_FLAGS)
-
-DEPEND_NAME=.depend
-
-H=@
-
-all: $(SRC:%.ma=%.mo)
-
-opt:
- $(H)$(MAKE) MATITAC='$(MATITACOPT)' MATITACLEAN='$(MATITACLEANOPT)' MATITADEP='$(MATITADEPOPT)' all
-
-verbose:
- $(H)$(MAKE) MATITAC='$(VERBOSEMATITAC)' MATITACLEAN='$(MATITACLEAN)' MATITADEP='$(MATITADEP)' all
-
-%.opt:
- $(H)$(MAKE) MATITAC='$(MATITACOPT)' MATITACLEAN='$(MATITACLEANOPT)' MATITADEP='$(MATITADEPOPT)' $(@:%.opt=%)
-
-clean_:
- $(H)rm -f __*not_for_matita
-
-clean: clean_
- $(H)$(MATITACLEAN) $(SRC)
-
-cleanall: clean_
- $(H)rm -f $(SRC:%.ma=%.moo)
- $(H)$(MATITACLEAN) all
-
-depend:
- $(H)rm -f $(DEPEND_NAME)
- $(H)$(MAKE) $(DEPEND_NAME)
-.PHONY: depend
-
-%.moo:
- $(H)$(MATITAC) $<
-
-$(DEPEND_NAME): $(SRC)
- $(H)$(MATITADEP) $(SRC) > $@ || rm -f $@
-
-#include $(DEPEND_NAME)
-include .depend
+.SUFFIXES: