blob: 8162f816e7159de1f85e4b13607100214f85cbf1 [file] [log] [blame]
Gabor Greif021e9702008-03-15 07:26:41 +00001LEVEL = ../../..
2include $(LEVEL)/Makefile.common
3
4AWK = awk
5
6TESTDIRS = CodeGen Lexer Preprocessor Parser Sema Analysis Serialization
7
8# Only run rewriter tests on darwin.
9ifeq ($(OS),Darwin)
10TESTDIRS += Rewriter
11endif
12
13
14Makefile.tests:
15 @ echo '%.testresults: %' > $@
Gabor Greif8fb64e82008-03-15 08:11:35 +000016 @ echo "^@ printf '.'" | tr "^" "\t" >> $@
17 @ echo "^@ PATH=$$PATH:$(ToolDir):$(LLVM_SRC_ROOT)/test/Scripts ./TestRunner.sh &< > &@ || echo $$^" | tr "^&" '\t$$' >> $@
Gabor Greif021e9702008-03-15 07:26:41 +000018 @ echo >> $@
19 @ echo "TESTS =" \\ >> $@
20 @ find $(TESTDIRS) \
21 \( -name '*.c' -or -name '*.cpp' -or -name '*.m' \) \
22 | $(AWK) '{print " " $$0 ".testresults \\"}' >> $@
23 @ echo ' ' >> $@
24 @ echo >> $@
25 @ echo "all:: &(TESTS)" | tr "&" '$$' >> $@
26 @ echo >> $@
27 @ echo "report: &(TESTS)" | tr "&" '$$' >> $@
28 @ echo "^@ cat $$<" | tr "^&<" "\t$$^" >> $@
29 @ echo >> $@
30 @ echo "clean:" | tr "&" '$$' >> $@
31 @ echo "^@ rm -f &(TESTS)" | tr "^&<" "\t$$^" >> $@
32 @ echo >> $@
33 @ echo ".PHONY: all report clean" >> $@
34
Gabor Greif021e9702008-03-15 07:26:41 +000035all:: Makefile.tests
36 @ $(MAKE) -f $< clean
37 @ $(MAKE) -f $< all report
38 @ $(MAKE) -f $< clean
39 @ rm $<
40
41.PHONY: all
42
43.NOTPARALLEL:
44