[PATCH] D67194: Add testing infrastructure to check if gdb is available for testing.
Sterling Augustine via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Sep 4 15:18:28 PDT 2019
saugustine created this revision.
saugustine added reviewers: echristo, EricWF.
Herald added subscribers: llvm-commits, christof, mgorny.
Herald added a project: LLVM.
Repository:
rL LLVM
https://reviews.llvm.org/D67194
Files:
libcxx/test/CMakeLists.txt
libcxx/test/lit.site.cfg.in
libcxx/utils/libcxx/test/config.py
Index: libcxx/utils/libcxx/test/config.py
===================================================================
--- libcxx/utils/libcxx/test/config.py
+++ libcxx/utils/libcxx/test/config.py
@@ -490,6 +490,10 @@
self.config.available_features.add('glibc-%s' % maj_v)
self.config.available_features.add('glibc-%s.%s' % (maj_v, min_v))
+ if 'NOTFOUND' not in self.get_lit_conf('libcxx_gdb'):
+ self.config.available_features.add('libcxx_gdb')
+ self.cxx.libcxx_gdb = self.get_lit_conf('libcxx_gdb')
+
# Support Objective-C++ only on MacOS and if the compiler supports it.
if self.target_info.platform() == "darwin" and \
self.target_info.is_host_macosx() and \
@@ -1072,6 +1076,8 @@
not_py = os.path.join(self.libcxx_src_root, 'utils', 'not.py')
not_str = '%s %s ' % (pipes.quote(sys.executable), pipes.quote(not_py))
sub.append(('not ', not_str))
+ if self.get_lit_conf('libcxx_gdb'):
+ sub.append(('%libcxx_gdb', self.get_lit_conf('libcxx_gdb')))
def can_use_deployment(self):
# Check if the host is on an Apple platform using clang.
Index: libcxx/test/lit.site.cfg.in
===================================================================
--- libcxx/test/lit.site.cfg.in
+++ libcxx/test/lit.site.cfg.in
@@ -35,6 +35,7 @@
config.cxx_ext_threads = @LIBCXX_BUILD_EXTERNAL_THREAD_LIBRARY@
config.pstl_src_root = "@ParallelSTL_SOURCE_DIR@" if @LIBCXX_ENABLE_PARALLEL_ALGORITHMS@ else None
config.pstl_obj_root = "@ParallelSTL_BINARY_DIR@" if @LIBCXX_ENABLE_PARALLEL_ALGORITHMS@ else None
+config.libcxx_gdb = "@LIBCXX_GDB@"
# Let the main config do the real work.
config.loaded_site_config = True
Index: libcxx/test/CMakeLists.txt
===================================================================
--- libcxx/test/CMakeLists.txt
+++ libcxx/test/CMakeLists.txt
@@ -60,6 +60,14 @@
message(FATAL_ERROR "Expected LIBCXX_TEST_DEPS to be defined")
endif()
+find_program(LIBCXX_GDB gdb)
+if (LIBCXX_GDB)
+ set(LIBCXX_GDB "${LIBCXX_GDB}")
+ message(STATUS "gdb found: ${LIBCXX_GDB}")
+else()
+ message(STATUS "gdb not found. Disabling dependent tests.")
+endif()
+
if (LIBCXX_INCLUDE_TESTS)
include(AddLLVM) # for configure_lit_site_cfg and add_lit_testsuit
@@ -87,7 +95,6 @@
setup_lcov_test_target_coverage("cxx" "${output_dir}" "${capture_dirs}" "${extract_dirs}")
endif()
-
if (LIBCXX_CONFIGURE_IDE)
# Create dummy targets for each of the tests in the test suite, this allows
# IDE's such as CLion to correctly highlight the tests because it knows
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D67194.218796.patch
Type: text/x-patch
Size: 2662 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190904/7e8b0e18/attachment.bin>
More information about the llvm-commits
mailing list