From: Don Hinton <hintonda@gmail.com>
Date: Tue, 12 Dec 2017 16:48:35 +0000 (+0000)
Subject: [debuginfo-tests] Add support for moving debuginfo-tests from clang/test to llvm... 
X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=96484578625c26c20ca2c80a3ad85410bcb6c8cb;p=clang

[debuginfo-tests] Add support for moving debuginfo-tests from clang/test to llvm/projects or monorepo.

Summary:
The new version of debuginfo-tests will have it's own
lit.cfg.py file which is incompatible with the one in clang/test.
This change supports both the old and new versions, and can be used
until the bots actually move debuginfo-tests to either clang/test or
the monorepo.

This is a prerequisite for D40971.

Reviewers: zturner, aprantl

Subscribers: mgorny, JDevlieghere, llvm-commits, cfe-commits

Differential Revision: https://reviews.llvm.org/D41055

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@320494 91177308-0d34-0410-b5e6-96231b3b80d8
---

diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
index c1ac9e4f0f..327226fe60 100644
--- a/test/CMakeLists.txt
+++ b/test/CMakeLists.txt
@@ -131,3 +131,12 @@ add_lit_testsuites(CLANG ${CMAKE_CURRENT_SOURCE_DIR}
 add_custom_target(clang-test)
 add_dependencies(clang-test check-clang)
 set_target_properties(clang-test PROPERTIES FOLDER "Clang tests")
+
+# FIXME: This logic can be removed once all buildbots have moved
+# debuginfo-test from clang/test to llvm/projects or monorepo.
+if(EXISTS debuginfo-tests)
+  message(WARNING "Including debuginfo-tests in clang/test is deprecated.  Move to llvm/projects or use monorepo.")
+  if(EXISTS debuginfo-tests/CMakeLists.txt)
+    add_subdirectory(debuginfo-tests)
+  endif()
+endif()
diff --git a/test/lit.cfg.py b/test/lit.cfg.py
index 39bdf36afd..8467eaa82c 100644
--- a/test/lit.cfg.py
+++ b/test/lit.cfg.py
@@ -58,12 +58,20 @@ tool_dirs = [config.clang_tools_dir, config.llvm_tools_dir]
 
 tools = [
     'c-index-test', 'clang-check', 'clang-diff', 'clang-format', 'opt',
-    ToolSubst('%test_debuginfo', command=os.path.join(
-        config.llvm_src_root, 'utils', 'test_debuginfo.pl')),
     ToolSubst('%clang_func_map', command=FindTool(
         'clang-func-mapping'), unresolved='ignore'),
 ]
 
+# FIXME: This logic can be removed once all buildbots have moved
+# debuginfo-test from clang/test to llvm/projects or monorepo.
+if os.path.exists(os.path.join(config.test_source_root, 'debuginfo-tests')):
+  if os.path.isfile(
+      os.path.join(config.test_source_root, 'debuginfo-tests', 'lit.cfg.py')):
+    config.excludes.append('debuginfo-tests')
+  else:
+    tools.append(ToolSubst('%test_debuginfo', command=os.path.join(
+      config.llvm_src_root, 'utils', 'test_debuginfo.pl')))
+
 if config.clang_examples:
     tools.append('clang-interpreter')