about summary refs log tree commit diff homepage
path: root/test/Makefile
diff options
context:
space:
mode:
authorDaniel Dunbar <daniel@zuster.org>2010-05-02 19:07:56 +0000
committerDaniel Dunbar <daniel@zuster.org>2010-05-02 19:07:56 +0000
commit24f6b3f2c3faeea3405839e015e11dbbadd1a5f9 (patch)
tree50ab3c123169f95b5f77200a13d259d764239db0 /test/Makefile
parentf4cdc443fb86f715ab93f3528aff23452a5bb3a3 (diff)
downloadklee-24f6b3f2c3faeea3405839e015e11dbbadd1a5f9.tar.gz
Sketch support for running KLEE tests using 'lit'.
 - Not working yet.

Also, ditch a bunch of unused substitution variables from the site.exp config
file.

git-svn-id: https://llvm.org/svn/llvm-project/klee/trunk@102872 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/Makefile')
-rw-r--r--test/Makefile34
1 files changed, 26 insertions, 8 deletions
diff --git a/test/Makefile b/test/Makefile
index 46d69d40..75e05dda 100644
--- a/test/Makefile
+++ b/test/Makefile
@@ -22,10 +22,21 @@ include Makefile.tests
 # DejaGNU testing support
 #===------------------------------------------------------------------------===#
 
+# FIXME: Fix test suite so we can run lit in parallel.
+ifdef VERBOSE
+RUNTESTFLAGS := $(VERBOSE)
+LIT_ARGS := -j1 -v
+else
+LIT_ARGS := -j1 -s -v
+endif
+
 ifdef TESTSUITE
+LIT_TESTSUITE := $(TESTSUITE)
 CLEANED_TESTSUITE := $(patsubst %/,%,$(TESTSUITE))
 CLEANED_TESTSUITE := $(patsubst test/%,%,$(CLEANED_TESTSUITE))
 RUNTESTFLAGS := --tool $(CLEANED_TESTSUITE)
+else
+LIT_TESTSUITE := .
 endif
 
 ifneq ($(RUNTEST),)
@@ -39,6 +50,14 @@ check-local:: site.exp
 	@echo "*** dejagnu not found.  Make sure runtest is in your PATH, then reconfigure llvm."
 endif
 
+check-local-lit:: lit.site.cfg
+	( $(ULIMIT) \
+	  $(LLVM_SRC_ROOT)/utils/lit/lit.py $(LIT_ARGS) $(LIT_TESTSUITE) )
+
+check-local-all:: lit.site.cfg
+	( $(ULIMIT) \
+	  $(LLVM_SRC_ROOT)/utils/lit/lit.py $(LIT_ARGS) $(LIT_TESTSUITE) )
+
 ifdef TESTONE
 CLEANED_TESTONE := $(patsubst %/,%,$(TESTONE))
 CLEANED_TESTONE := $(patsubst test/%,%,$(CLEANED_TESTONE))
@@ -77,18 +96,10 @@ site.exp: Makefile $(LEVEL)/Makefile.config
 	@echo 'set ENABLE_UCLIBC "$(ENABLE_UCLIBC)"' >> site.tmp
 	@echo 'set ENABLE_POSIX_RUNTIME "$(ENABLE_POSIX_RUNTIME)"' >> site.tmp
 	@echo 'set TEST_FEATURE_LIST "$(TEST_FEATURE_LIST)"' >> site.tmp
-	@echo 'set prcontext "$(TCLSH) $(LLVM_SRC_ROOT)/test/Scripts/prcontext.tcl"' >> site.tmp
-	@echo 'set llvmtoolsdir "$(ToolDir)"' >>site.tmp
-	@echo 'set llvmlibsdir "$(LibDir)"' >>site.tmp
 	@echo 'set srcroot "$(PROJ_SRC_ROOT)"' >>site.tmp
 	@echo 'set objroot "$(PROJ_OBJ_ROOT)"' >>site.tmp
 	@echo 'set srcdir "$(PROJ_SRC_ROOT)/test"' >>site.tmp
 	@echo 'set objdir "$(PROJ_OBJ_ROOT)/test"' >>site.tmp
-	@echo 'set gccpath "$(CC)"' >>site.tmp
-	@echo 'set gxxpath "$(CXX)"' >>site.tmp
-	@echo 'set compile_c "$(CC) $(CPP.Flags) $(C.Flags) $(CompileCommonOpts) -c "' >>site.tmp
-	@echo 'set compile_cxx "$(CXX) $(CPP.Flags) $(CXX.Flags) $(CompileCommonOpts) - c"' >> site.tmp
-	@echo 'set link "$(CXX) $(CPP.Flags) $(CXX.Flags) $(CompileCommonOpts) $(LD.Flags)"' >>site.tmp
 	@echo 'set llvmgcc "$(LLVMCC) -I$(PROJ_SRC_ROOT)/include"' >> site.tmp
 	@echo 'set llvmgxx "$(LLVMCXX) -I$(PROJ_SRC_ROOT)/include"' >> site.tmp
 	@echo '## All variables above are generated by configure. Do Not Edit ## ' >>site.tmp
@@ -97,3 +108,10 @@ site.exp: Makefile $(LEVEL)/Makefile.config
 	@-rm -f site.bak
 	@test ! -f site.exp || mv site.exp site.bak
 	@mv site.tmp site.exp
+
+lit.site.cfg: site.exp
+	@echo "Making KLEE 'lit.site.cfg' file..."
+	@sed -e "s#@KLEE_SOURCE_DIR@#$(PROJ_SRC_ROOT)#g" \
+	     -e "s#@KLEE_BINARY_DIR@#$(PROJ_OBJ_ROOT)#g" \
+	     -e "s#@KLEE_TOOLS_DIR@#$(ToolDir)#g" \
+	     $(PROJ_SRC_DIR)/lit.site.cfg.in > $@