summaryrefslogtreecommitdiff
path: root/lldb
diff options
context:
space:
mode:
authorStefan Granitz <stefan.graenitz@gmail.com>2019-01-09 16:25:31 +0000
committerStefan Granitz <stefan.graenitz@gmail.com>2019-01-09 16:25:31 +0000
commit345a9c90e3ad7b5654f9c7d93c5ff33d646d0f93 (patch)
treef20054e5bbd77912125b95ec6810eff9b1018c3f /lldb
parent602162655d05f9dff88359d32475d89586623a19 (diff)
[CMake] Fix standalone builds: workaround the cxx target not getting imported yet (unlike clang target)
Summary: Handle standalone builds separately and print a warning if we have no libcxx. Reviewers: aprantl, JDevlieghere Reviewed By: JDevlieghere Subscribers: mgorny, lldb-commits, #lldb Differential Revision: https://reviews.llvm.org/D56399
Diffstat (limited to 'lldb')
-rw-r--r--lldb/CMakeLists.txt14
-rwxr-xr-xlldb/www/build.html2
2 files changed, 14 insertions, 2 deletions
diff --git a/lldb/CMakeLists.txt b/lldb/CMakeLists.txt
index a7536d6e292..13032d4f585 100644
--- a/lldb/CMakeLists.txt
+++ b/lldb/CMakeLists.txt
@@ -101,10 +101,22 @@ if(LLDB_INCLUDE_TESTS)
list(APPEND LLDB_TEST_DEPS liblldb)
endif()
+ # Add dependencies if we test with the in-tree clang.
+ # This works with standalone builds as they import the clang target.
if(TARGET clang)
list(APPEND LLDB_TEST_DEPS clang)
if(APPLE)
- list(APPEND LLDB_TEST_DEPS cxx)
+ # If we build clang, we should build libcxx.
+ # FIXME: Standalone builds should import the cxx target as well.
+ if(LLDB_BUILT_STANDALONE)
+ # For now check that the include directory exists.
+ set(cxx_dir "${LLVM_DIR}/../../../include/c++")
+ if(NOT EXISTS ${cxx_dir})
+ message(WARNING "LLDB test suite requires libc++ in llvm/projects/libcxx or an existing build symlinked to ${cxx_dir}")
+ endif()
+ else()
+ list(APPEND LLDB_TEST_DEPS cxx)
+ endif()
endif()
endif()
diff --git a/lldb/www/build.html b/lldb/www/build.html
index 62a758f7b6a..381e17c4af1 100755
--- a/lldb/www/build.html
+++ b/lldb/www/build.html
@@ -160,7 +160,7 @@
<li>In Xcode 4.x: <b>lldb/lldb.xcworkspace</b>, select the <b>lldb-tool</b> scheme, and build.</li>
</ul>
<h2>Building LLDB with CMake</h2>
- <p> First download the LLVM, Clang, and LLDB sources. Refer to <a href="source.html">this page</a> for precise instructions on this step.</p>
+ <p> First download the LLVM, Clang, libc++ and LLDB sources. Refer to <a href="source.html">this page</a> for precise instructions on this step.</p>
<p> Refer to the code signing instructions in <b>lldb/docs/code-signing.txt</b> for info on codesigning debugserver during the build.</p>
<p> Using CMake is documented on the <a href="http://llvm.org/docs/CMake.html">Building LLVM with CMake</a> page.
Ninja is the recommended generator to use when building LLDB with CMake.</p>