summaryrefslogtreecommitdiff
path: root/utils
diff options
context:
space:
mode:
authorDaniel Dunbar <daniel@zuster.org>2010-08-02 00:39:42 +0000
committerDaniel Dunbar <daniel@zuster.org>2010-08-02 00:39:42 +0000
commitb7698a49c2a9e732fa02c7ebee98ca5c7173b5fc (patch)
tree98e5f48f16faf1ddf8b27f8c0bceaf14ebba4905 /utils
parent6647033565456120ba24d83450bada5bb3096187 (diff)
downloadllvm-b7698a49c2a9e732fa02c7ebee98ca5c7173b5fc.tar.gz
llvm-b7698a49c2a9e732fa02c7ebee98ca5c7173b5fc.tar.bz2
llvm-b7698a49c2a9e732fa02c7ebee98ca5c7173b5fc.tar.xz
tests: Add an 'llvm-lit' tool (script), which gets generated as part of the
build and has the object build directory baked into it. This allows 'llvm-lit' to properly find the information needed to run the test suite in all cases, without requiring the user to have LLVM or 'lit' available in their PATH, for example. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110000 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'utils')
-rw-r--r--utils/Makefile3
-rw-r--r--utils/llvm-lit/Makefile21
-rw-r--r--utils/llvm-lit/llvm-lit.in21
3 files changed, 44 insertions, 1 deletions
diff --git a/utils/Makefile b/utils/Makefile
index 000705ead2..0d5cd28b61 100644
--- a/utils/Makefile
+++ b/utils/Makefile
@@ -8,7 +8,8 @@
##===----------------------------------------------------------------------===##
LEVEL = ..
-PARALLEL_DIRS := TableGen fpcmp PerfectShuffle FileCheck FileUpdate count not unittest
+PARALLEL_DIRS := FileCheck FileUpdate TableGen PerfectShuffle \
+ count fpcmp llvm-lit not unittest
EXTRA_DIST := cgiplotNLT.pl check-each-file codegen-diff countloc.sh cvsupdate \
DSAclean.py DSAextract.py emacs findsym.pl GenLibDeps.pl \
diff --git a/utils/llvm-lit/Makefile b/utils/llvm-lit/Makefile
new file mode 100644
index 0000000000..3b96809c5b
--- /dev/null
+++ b/utils/llvm-lit/Makefile
@@ -0,0 +1,21 @@
+##===- utils/llvm-lit/Makefile -----------------------------*- Makefile -*-===##
+#
+# The LLVM Compiler Infrastructure
+#
+# This file is distributed under the University of Illinois Open Source
+# License. See LICENSE.TXT for details.
+#
+##===----------------------------------------------------------------------===##
+
+LEVEL = ../..
+
+include $(LEVEL)/Makefile.common
+
+all:: $(ToolDir)/llvm-lit
+
+$(ToolDir)/llvm-lit: llvm-lit.in $(ObjDir)/.dir
+ $(Echo) "Creating 'llvm-lit' script..."
+ $(Verb)sed -e "s#@LLVM_SOURCE_DIR@#$(LLVM_SRC_ROOT)#g" \
+ -e "s#@LLVM_BINARY_DIR@#$(LLVM_OBJ_ROOT)#g" \
+ $< > $@
+ $(Verb)chmod +x $@
diff --git a/utils/llvm-lit/llvm-lit.in b/utils/llvm-lit/llvm-lit.in
new file mode 100644
index 0000000000..3ff2c2489c
--- /dev/null
+++ b/utils/llvm-lit/llvm-lit.in
@@ -0,0 +1,21 @@
+#!/usr/bin/env python
+
+import os
+import sys
+
+# Variables configured at build time.
+llvm_source_root = "@LLVM_SOURCE_DIR@"
+llvm_obj_root = "@LLVM_BINARY_DIR@"
+
+# Make sure we can find the lit package.
+sys.path.append(os.path.join(llvm_source_root, 'utils', 'lit'))
+
+# Set up some builtin parameters, so that by default the LLVM test suite
+# configuration file knows how to find the object tree.
+builtin_parameters = {
+ 'llvm_site_config' : os.path.join(llvm_obj_root, 'test', 'lit.site.cfg')
+ }
+
+if __name__=='__main__':
+ import lit
+ lit.main(builtin_parameters)