[PATCH] D22987: [lldb][cmake] Remove libclang as an lldbBase dependency (NFCI)

Vedant Kumar via llvm-commits llvm-commits at lists.llvm.org
Tue Aug 2 15:59:38 PDT 2016


vsk updated this revision to Diff 66582.
vsk added a comment.

I'm glad you asked! While I was measuring this I went back to double-check what
I'd done, and found a few build edges in my ninja file that made no sense :(.
I had only partially cleared away my build directory, so the results I posted
in my last comment are bogus.

In this updated diff, I added an include of LLDBDependencies.cmake to make sure
that CLANG_USED_LIBS is visible everywhere we call add_lldb_library(). This is
what was missing from my previous patch.

Here are some less bogus numbers. I've highlighted the number which changed:

| Target                   | Pre-patch # of deps | Pre-patch build time | Post-patch # of deps | Post-patch build time |
| CommandObjectFrame.cpp.o | 1622                | ?                    | **566**              | ?                     |
| lldb                     | 2642                | 19 min               | 2188                 | 12 min                |


https://reviews.llvm.org/D22987

Files:
  CMakeLists.txt
  cmake/modules/AddLLDB.cmake

Index: cmake/modules/AddLLDB.cmake
===================================================================
--- cmake/modules/AddLLDB.cmake
+++ cmake/modules/AddLLDB.cmake
@@ -84,10 +84,9 @@
     endif()
   endif()
 
-  # Hack: only some LLDB libraries depend on the clang autogenerated headers,
-  # but it is simple enough to make all of LLDB depend on some of those
-  # headers without negatively impacting much of anything.
-  add_dependencies(${name} libclang)
+  foreach(clang_dep ${CLANG_USED_LIBS})
+    add_dependencies(${name} ${clang_dep})
+  endforeach(clang_dep)
 
   set_target_properties(${name} PROPERTIES FOLDER "lldb libraries")
 endmacro(add_lldb_library)
Index: CMakeLists.txt
===================================================================
--- CMakeLists.txt
+++ CMakeLists.txt
@@ -1,5 +1,6 @@
 cmake_minimum_required(VERSION 3.4.3)
 
+include(cmake/LLDBDependencies.cmake)
 include(cmake/modules/LLDBStandalone.cmake)
 include(cmake/modules/LLDBConfig.cmake)
 include(cmake/modules/AddLLDB.cmake)


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D22987.66582.patch
Type: text/x-patch
Size: 1019 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160802/026f14fa/attachment.bin>


More information about the llvm-commits mailing list