blob: 82f376f96e069fc478708f44e1b1860914fade6c [file] [log] [blame]
Chris Lattnerf57999d2007-07-16 04:35:521LEVEL = ../../..
2include $(LEVEL)/Makefile.common
Chris Lattner31eef322006-06-18 05:42:023
Daniel Dunbar5888e602008-08-28 23:28:164# Test in all immediate subdirectories if unset.
5TESTDIRS ?= $(shell echo $(PROJ_SRC_DIR)/*/)
Chris Lattner41142192008-03-10 19:32:316
7# Only run rewriter tests on darwin.
8ifeq ($(OS),Darwin)
Ted Kremenek6bed7d62008-06-16 21:21:489TESTDIRS +=
Chris Lattner41142192008-03-10 19:32:3110endif
11
Chris Lattner56a7bf52008-04-06 22:32:0112ifdef VERBOSE
Mike Stump39eaa7b2009-03-13 00:21:4913ifeq ($(VERBOSE),0)
14PROGRESS = :
Mike Stumpa1e61932009-03-13 00:41:2415REPORTFAIL = echo 'FAIL: clang' $(TARGET_TRIPLE) $(subst $(LLVM_SRC_ROOT)/tools/clang/,,$<)
Mike Stump0bb5f762009-03-18 20:25:1816DONE = $(LLVMToolDir)/clang-driver -v
Mike Stump39eaa7b2009-03-13 00:21:4917else
Chris Lattner56a7bf52008-04-06 22:32:0118PROGRESS = echo $<
19REPORTFAIL = cat $@
20DONE = true
Mike Stump0bb5f762009-03-18 20:25:1821endif
Chris Lattner56a7bf52008-04-06 22:32:0122else
23PROGRESS = printf '.'
24REPORTFAIL = (echo; echo '----' $< 'failed ----')
25DONE = echo
26endif
27
Daniel Dunbar0132cdc42008-12-01 19:23:4728TESTS := $(addprefix Output/, $(addsuffix .testresults, $(shell find $(TESTDIRS) \( -name '*.c' -or -name '*.cpp' -or -name '*.m' -or -name '*.mm' -or -name '*.S' \) | grep -v "Output/")))
Chris Lattner56a7bf52008-04-06 22:32:0129Output/%.testresults: %
30 @ $(PROGRESS)
Daniel Dunbar746d1042008-08-21 03:03:4431 @ PATH=$(ToolDir):$(LLVM_SRC_ROOT)/test/Scripts:$$PATH VG=$(VG) $(PROJ_SRC_DIR)/TestRunner.sh $< > $@ || $(REPORTFAIL)
Chris Lattner56a7bf52008-04-06 22:32:0132
Chris Lattnerf57999d2007-07-16 04:35:5233all::
Chris Lattner56a7bf52008-04-06 22:32:0134 @ mkdir -p $(addprefix Output/, $(TESTDIRS))
35 @ rm -f $(TESTS)
Mike Stumpa1e61932009-03-13 00:41:2436 @ echo '--- Running clang tests for $(TARGET_TRIPLE) ---'
Chris Lattner56a7bf52008-04-06 22:32:0137 @ $(MAKE) $(TESTS)
38 @ $(DONE)
Daniel Dunbar6ff95302008-09-17 18:08:0739 @ !(cat $(TESTS) | grep -q " FAILED! ")
Chris Lattner56a7bf52008-04-06 22:32:0140
41report: $(TESTS)
42 @ cat $^
Gabor Greif831c7c52008-03-18 07:03:0043
44clean::
Gabor Greiff5eb2862008-03-20 14:28:2245 @ rm -rf Output/
Gabor Greif831c7c52008-03-18 07:03:0046
Chris Lattner56a7bf52008-04-06 22:32:0147.PHONY: all report clean