X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=test%2FMakefile;h=ad9c6ecbd4783a3a9830f3e6fef1ac5735229761;hb=e07c2aa67cad10d6793c649639fece58dcea6d20;hp=546505fb54b629cb71d0ac47a0671a8a54c7f221;hpb=28e7767640be985520d3213f1c284ede9d5012c7;p=oota-llvm.git diff --git a/test/Makefile b/test/Makefile index 546505fb54b..ad9c6ecbd47 100644 --- a/test/Makefile +++ b/test/Makefile @@ -1,12 +1,17 @@ LEVEL = .. DIRS = Programs -include Makefile.tests # # Make QMTest the default for testing features and regressions +# Do this first to force QMTest to run first # all:: qmtest +# +# Include other test rules +# +include Makefile.tests + # # New QMTest functionality: # The test suite is being transitioned over to QMTest. Eventually, it @@ -14,23 +19,35 @@ all:: qmtest # # QMTest option specifying the location of the QMTest database. -QMDB= -D $(LLVM_SRC_ROOT)/test/QMTestDB -QMCLASSES=$(LLVM_OBJ_ROOT)/test/QMTestDB/QMTest +QMDB= -D $(LLVM_SRC_ROOT)/test +QMCLASSES=$(LLVM_OBJ_ROOT)/test/QMTest + +# +# Determine which expectations file we will use +# +QMEXPECT:=$(LLVM_SRC_ROOT)/test/QMTest/expectations.unknown.qmr +ifeq ($(OS),Linux) +QMEXPECT:=$(LLVM_SRC_ROOT)/test/QMTest/expectations.linux.qmr +endif + +ifeq ($(OS),SunOS) +QMEXPECT:=$(LLVM_SRC_ROOT)/test/QMTest/expectations.sunos.qmr +endif # # This is configuration information used by the test suite. In QM Test, it's # called a 'context.' # -CONTEXT= -c srcroot=$(LLVM_SRC_ROOT) \ - -c buildroot=$(LLVM_OBJ_ROOT) \ - -c buildtype=$(CONFIGURATION) \ - -c tmpdir=$(LLVM_OBJ_ROOT)/test/tmp \ - -c coresize=0 \ - -c cc=$(CC) \ - -c cxx=$(CXX) \ +CONTEXT= -c "srcroot=$(LLVM_SRC_ROOT)" \ + -c "buildroot=$(LLVM_OBJ_ROOT)" \ + -c "buildtype=$(CONFIGURATION)" \ + -c "tmpdir=$(LLVM_OBJ_ROOT)/test/tmp" \ + -c "coresize=0" \ + -c "cc=$(CC)" \ + -c "cxx=$(CXX)" \ -c "llvmgcc=$(LLVMGCC)" \ -c "llvmgxx=$(LLVMGXX)" \ - -c make=$(MAKE) + -c "make=$(MAKE)" # # Location of the QMTest program. @@ -42,10 +59,10 @@ QMTEST= QMTEST_CLASS_PATH=$(QMCLASSES) qmtest $(QMDB) # Execute the tests # qmtest:: $(LLVM_OBJ_ROOT)/test/tmp register - $(QMTEST) run -O $(LLVM_SRC_ROOT)/test/QMTestDB/expectations.qmr $(CONTEXT) + -$(QMTEST) run -O $(QMEXPECT) $(CONTEXT) %.t:: $(LLVM_OBJ_ROOT)/test/tmp register - $(QMTEST) run -O $(LLVM_SRC_ROOT)/test/QMTestDB/expectations.qmr $(CONTEXT) $* + -$(QMTEST) run -O $(QMEXPECT) $(CONTEXT) $* # # Create the temporary directory used by the test suite. @@ -66,19 +83,25 @@ register: $(QMTEST) register test llvm.ConvertToCTest $(QMTEST) register test llvm.LLToCTest $(QMTEST) register test llvm.MachineCodeTest - $(QMTEST) register test llvm.AssemblyCodeTest $(QMTEST) register test llvm.TestOptimizer $(QMTEST) register test llvm.LLITest $(QMTEST) register test llvm.TestRunner $(QMTEST) register test llvm.VerifierTest - $(QMTEST) register test llvm.AnalyzeTest $(QMTEST) register test llvm.CTest $(QMTEST) register test llvm.CXXTest - $(QMTEST) register resource llvm.BytecodeResource + $(QMTEST) register database llvmdb.llvmdb -# # Start up the QMTest GUI -# gui:: $(QMTEST) gui --no-browser --daemon +# Also get rid of qmtest garbage when we 'make clean' in this directory. +clean:: qmtest-clean + +qmtest-clean: + $(RM) -rf $(LLVM_OBJ_ROOT)/test/tmp + $(RM) -f $(LLVM_SRC_ROOT)/test/QMTest/*.pyo \ + $(LLVM_OBJ_ROOT)/test/QMTest/*.pyo + $(RM) -f $(LLVM_SRC_ROOT)/test/results.qmr \ + $(LLVM_OBJ_ROOT)/test/results.qmr +