]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/software/matita/contribs/LAMBDA-TYPES/Makefile
more work, but russell too slow
[helm.git] / helm / software / matita / contribs / LAMBDA-TYPES / Makefile
index 5b2b2fa40e0f0b5776abb2572b03b98c854bd733..9608434b6afc4f115a1e431456bada8527380578 100644 (file)
@@ -1,57 +1,65 @@
-SRC=$(shell find . -name "*.ma" -a -type f)
+include ../Makefile.defs
 
-MATITA_FLAGS = -I ../..
-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 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)
+H=@
 
-MATITACLEAN=../../matitaclean $(MATITA_FLAGS)
-MATITACLEANOPT=../../matitaclean.opt $(MATITA_FLAGS)
+MATITAOPTIONS=$(MATITAUSEROPTIONS) -onepass
 
-MATITADEP=../../matitadep $(MATITA_FLAGS)
-MATITADEPOPT=../../matitadep.opt $(MATITA_FLAGS)
+DIR=$(shell basename $$PWD)
 
-DEPEND_NAME=.depend
+LOG = log.txt
 
-H=@
+MMAS = $(shell find Legacy-2 Base-2 -name "*.mma") 
+MAS = $(MMAS:%.mma=%.ma)
+XMAS = Legacy-2/theory.ma Base-2/theory.ma LambdaDelta-2/theory.ma
 
-all: $(SRC:%.ma=%.mo)
+$(DIR) all: depends
+       $(H)$(RM) $(LOG)
+       $(H)$(MAKE) H=$(H) --no-print-directory build
 
-opt:
-       $(H)$(MAKE) MATITAC='$(MATITACOPT)' MATITACLEAN='$(MATITACLEANOPT)' MATITADEP='$(MATITADEPOPT)' all
+$(DIR).opt opt all.opt: depends
+       $(H)$(RM) $(LOG)
+       $(H)$(MAKE) H=$(H) --no-print-directory build.opt
 
-verbose:
-       $(H)$(MAKE) MATITAC='$(VERBOSEMATITAC)' MATITACLEAN='$(MATITACLEAN)' MATITADEP='$(MATITADEP)' all
+build: $(MAS)
+       $(H)echo Legacy-2/theory.ma `$(BIN)matitadep.opt -stdout Legacy-2/theory.ma` >> depends
+       $(H)echo Base-2/theory.ma `$(BIN)matitadep.opt -stdout Base-2/theory.ma` >> depends
+       $(H)$(BIN)matitac $(MATITAOPTIONS) 2>> $(LOG)
+       $(H)$(RM) depends
 
-%.opt:
-       $(H)$(MAKE) MATITAC='$(MATITACOPT)' MATITACLEAN='$(MATITACLEANOPT)' MATITADEP='$(MATITADEPOPT)' $(@:%.opt=%)
+build.opt: $(MAS)
+       $(H)echo Legacy-2/theory.ma `$(BIN)matitadep.opt -stdout Legacy-2/theory.ma` >> depends
+       $(H)echo Base-2/theory.ma `$(BIN)matitadep.opt -stdout Base-2/theory.ma` >> depends
+       $(H)$(BIN)matitac.opt $(MATITAOPTIONS) 2>> $(LOG)
+       $(H)$(RM) depends
 
-clean_:
-       $(H)rm -f __*not_for_matita
+clean:
+       $(H)$(BIN)matitaclean $(MATITAOPTIONS)
+       $(H)rm -f $(MAS) depends
 
-clean: clean_
-       $(H)$(MATITACLEAN) $(SRC)
+clean.opt:
+       $(H)$(BIN)matitaclean.opt $(MATITAOPTIONS)
+       $(H)rm -f $(MAS) depends
 
-cleanall: clean_
-       $(H)rm -f $(SRC:%.ma=%.moo)
-       $(H)$(MATITACLEAN) all
+clean.ma:
+       $(H)$(BIN)matitaclean.opt $(MATITAOPTIONS) $(MAS)
+       $(H)rm -f $(MAS) depends
 
 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
+       @echo matitadep
+       $(H)$(BIN)matitadep $(foreach FILE,$(XMAS),-exclude $(FILE))
+       $(H)cat Legacy-2/depends Base-2/depends >> depends
+       
+depend.opt:
+       @echo matitadep.opt
+       $(H)$(BIN)matitadep.opt $(foreach FILE,$(XMAS),-exclude $(FILE))
+       $(H)cat Legacy-2/depends Base-2/depends >> depends
+
+depends: depend.opt
+
+%.ma: %.mma
+       $(H)$(BIN)matitac.opt $(MATITAOPTIONS) $(word 3,$(shell grep -h $< */depends)) `$(BIN)matitadep.opt -stdout $<` 2>> $(LOG)
+       $(H)$(BIN)matitac.opt $(MATITAOPTIONS) -dump $@ $< 2>> $(LOG)
+       $(H)echo $@ `$(BIN)matitadep.opt -stdout $@` >> depends
+
+include Legacy-2/.depend
+include Base-2/.depend