[libcxx] Allow use of ShTest in libc++ tests along with other changes.
authorEric Fiselier <eric@efcs.ca>
Thu, 22 Jan 2015 18:05:58 +0000 (18:05 +0000)
committerEric Fiselier <eric@efcs.ca>
Thu, 22 Jan 2015 18:05:58 +0000 (18:05 +0000)
commit74e82fa4f3c07aa388dfe41ebc300aeeaeb5a9cb
tree72d89e61214dc603baa8166dc2aa8005889dd62b
parentd4255baedecbcf2fd95bff327fe761b656fdc1ca
[libcxx] Allow use of ShTest in libc++ tests along with other changes.

Summary:
This patch allows the use of LIT's ShTest format in the libc++ test suite. ShTests have the suffix '.sh.cpp'. It also introduces a series of other changes. These changes are:

- More functionality including parsing test metadata has been moved into LIT.
- LibcxxTestFormat now supports multi-part suffixes.
- the `CXXCompiler` functionality has been used to shrink the size of LibcxxTestFormat.
- The recursive loading of the site config has been turned into `libcxx.test.config.loadSiteConfig` so it can be used with libc++abi.
- Temporary files are now created in the build directory of libc++. This follows how it is down in ShTest.
- `not.py` was added as a utility executable that mirrors the functionality of LLVM's `not` executable.
- The first ShTest test was added under test/libcxx/double_include.sh.cpp

Reviewers: jroelofs, danalbert

Reviewed By: danalbert

Subscribers: cfe-commits

Differential Revision: http://reviews.llvm.org/D7073

llvm-svn: 226844
12 files changed:
libcxx/test/libcxx/compiler.py
libcxx/test/libcxx/double_include.sh.cpp [new file with mode: 0644]
libcxx/test/libcxx/selftest/not_test.sh.cpp [new file with mode: 0644]
libcxx/test/libcxx/selftest/test.fail.cpp [new file with mode: 0644]
libcxx/test/libcxx/selftest/test.pass.cpp [new file with mode: 0644]
libcxx/test/libcxx/selftest/test.sh.cpp [new file with mode: 0644]
libcxx/test/libcxx/test/config.py
libcxx/test/libcxx/test/format.py
libcxx/test/libcxx/util.py [new file with mode: 0644]
libcxx/test/lit.cfg
libcxx/utils/not/not.py [new file with mode: 0644]
libcxx/www/lit_usage.html