summaryrefslogtreecommitdiffstats
path: root/clang
diff options
context:
space:
mode:
authorDaniel Dunbar <daniel@zuster.org>2009-09-16 01:40:13 +0000
committerDaniel Dunbar <daniel@zuster.org>2009-09-16 01:40:13 +0000
commitbe657e5b28ba27d4bc353021275f363de374d843 (patch)
tree6442d59d32d3f3631b7bc28d8d15e38305229b75 /clang
parentf47fd584768c7e9b6bb6f2c18b4fc924ac701e8c (diff)
downloadbcm5719-llvm-be657e5b28ba27d4bc353021275f363de374d843.tar.gz
bcm5719-llvm-be657e5b28ba27d4bc353021275f363de374d843.zip
A toy for Doug: Add some 'lit' tests which just run clang++ -fsyntax-only over all the files in a directory.
- 'lit utils/C++Tests' to run, you may need to fix the stdc++ include path, and your mileage may vary. - A handful of the LLVM headers are XFAIL because they don't include the right headers. llvm-svn: 81990
Diffstat (limited to 'clang')
-rw-r--r--clang/utils/C++Tests/LLVM-Syntax/lit.local.cfg22
-rw-r--r--clang/utils/C++Tests/lit.cfg18
-rw-r--r--clang/utils/C++Tests/stdc++-Syntax/lit.local.cfg17
3 files changed, 57 insertions, 0 deletions
diff --git a/clang/utils/C++Tests/LLVM-Syntax/lit.local.cfg b/clang/utils/C++Tests/LLVM-Syntax/lit.local.cfg
new file mode 100644
index 00000000000..69f010ef335
--- /dev/null
+++ b/clang/utils/C++Tests/LLVM-Syntax/lit.local.cfg
@@ -0,0 +1,22 @@
+# -*- Python -*-
+
+# Configuration file for the 'lit' test runner.
+
+def getRoot(config):
+ if not config.parent:
+ return config
+ return getRoot(config.parent)
+
+root = getRoot(config)
+
+# testFormat: The test format to use to interpret tests.
+config.test_format = lit.formats.SyntaxCheckTest(compiler=root.clang,
+ dir='%s/include/llvm' % root.llvm_src_root,
+ recursive=False,
+ pattern='^(.*\\.h|[^.]*)$',
+ extra_cxx_args=['-D__STDC_LIMIT_MACROS',
+ '-D__STDC_CONSTANT_MACROS',
+ '-I%s/include' % root.llvm_src_root,
+ '-I%s/include' % root.llvm_obj_root])
+
+config.excludes = ['AbstractTypeUser.h']
diff --git a/clang/utils/C++Tests/lit.cfg b/clang/utils/C++Tests/lit.cfg
new file mode 100644
index 00000000000..a7276220209
--- /dev/null
+++ b/clang/utils/C++Tests/lit.cfg
@@ -0,0 +1,18 @@
+# -*- Python -*-
+
+# Configuration file for the 'lit' test runner.
+
+# Load the main clang test config so we can leech its clang finding logic.
+lit.load_config(config, os.path.join(os.path.dirname(__file__),
+ '..', '..', 'test', 'lit.cfg'))
+assert config.clang, "Failed to set clang!?"
+
+# name: The name of this test suite.
+config.name = 'Clang++'
+
+# suffixes: A list of file extensions to treat as test files, this is actually
+# set by on_clone().
+config.suffixes = []
+
+# Reset these from the Clang config.
+config.test_source_root = config.test_exec_root = None
diff --git a/clang/utils/C++Tests/stdc++-Syntax/lit.local.cfg b/clang/utils/C++Tests/stdc++-Syntax/lit.local.cfg
new file mode 100644
index 00000000000..eb04866e340
--- /dev/null
+++ b/clang/utils/C++Tests/stdc++-Syntax/lit.local.cfg
@@ -0,0 +1,17 @@
+# -*- Python -*-
+
+# Configuration file for the 'lit' test runner.
+
+def getRoot(config):
+ if not config.parent:
+ return config
+ return getRoot(config.parent)
+
+root = getRoot(config)
+
+# testFormat: The test format to use to interpret tests.
+config.test_format = lit.formats.SyntaxCheckTest(compiler=root.clang,
+ dir='/usr/include/c++/4.2.1',
+ recursive=False,
+ pattern='^(.*\\.h|[^.]*)$')
+
OpenPOWER on IntegriCloud