SRC=$(shell find . -name "*.ma" -a -type f) MATITA_FLAGS = NODB=false ifeq ($(NODB),true) MATITA_FLAGS += -nodb endif MATITAC=../scripts/do_tests.sh $(DO_TESTS_OPTS) "../matitac $(MATITA_FLAGS)" "../matitaclean $(MATITA_FLAGS)" /dev/null MATITACOPT=../scripts/do_tests.sh $(DO_TESTS_OPTS) "../matitac.opt $(MATITA_FLAGS)" "../matitaclean.opt $(MATITA_FLAGS)" /dev/null VERBOSEMATITAC=../matitac $(MATITA_FLAGS) VERBOSEMATITACOPT=../matitac.opt $(MATITA_FLAGS) MATITACLEAN=../matitaclean $(MATITA_FLAGS) MATITACLEANOPT=../matitaclean.opt $(MATITA_FLAGS) 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)$(MATITACLEAN) $(SRC) cleanall: $(H)rm -f $(SRC:%.ma=%.moo) $(MATITACLEAN) all depend: rm -f $(DEPEND_NAME) make $(DEPEND_NAME) .PHONY: depend %.moo: $(H)$(MATITAC) $< $(DEPEND_NAME): $(SRC) $(H)$(MATITADEP) $(SRC) > $@ || rm -f $@ #include $(DEPEND_NAME) include .depend