[Lldb-commits] [PATCH] D65330: [lldb][docs] Update documentation for monorepo and CMake caches

Stefan Gränitz via Phabricator via lldb-commits lldb-commits at lists.llvm.org
Sat Jul 27 06:14:31 PDT 2019


sgraenitz marked an inline comment as done.
sgraenitz added a comment.

Hi Greg, thanks for your feedback.

> Can we add a section for "Building LLDB with Xcode"? We had a shell script patch that was going to be checked in, not sure if it made it. But it did a two part thing where it built LLVM and clang and then generated an Xcode project.

"Build LLDB standalone for development with Xcode" describes it, see http://tiny.cc/i5ncaz#common-configurations-on-macos

> I would rather just produce the Xcode project using cmake, very similar to other instructions.

This means changing the generator from Ninja to Xcode. I added a short note that //other generators like Xcode or Visual Studio may be used as well// (maybe we can avoid calling it "support", because in fact multi-config generators cause a lot of trouble).

> My mac cmake line has:
> 
>   cmake -G Ninja -DLLVM_ENABLE_PROJECTS="clang;libcxx;lldb" -DCMAKE_BUILD_TYPE:STRING=Debug -DLLVM_ENABLE_ASSERTIONS:BOOL=TRUE -DLLDB_BUILD_FRAMEWORK:BOOL=TRUE -DLLDB_USE_SYSTEM_DEBUGSERVER=ON /path/to/llvm-project/llvm

`LLVM_ENABLE_ASSERTIONS` and many other important flags are documented in LLVM (linked from http://tiny.cc/i5ncaz#building-lldb-with-cmake).
`CMAKE_BUILD_TYPE=Debug` is the default
`LLDB_BUILD_FRAMEWORK` and `LLDB_USE_SYSTEM_DEBUGSERVER` are explained in the `macOS` section, see http://tiny.cc/i5ncaz#id2.

> Important bits are the projects being set to "clang;libcxx;lldb" (include libcxx) and building the framework and using the system debugserver

Added an explanation for the test suite libcxx dependency to the `macOS` section too.



================
Comment at: lldb/docs/resources/build.rst:94
+project, it generates the files needed by your build tool. The recommended
+build tool for LLVM is Ninja. Please also read `Building LLVM with CMake
+<http://llvm.org/docs/CMake.html>`_.
----------------
amccarth wrote:
> stella.stamenova wrote:
> > sgraenitz wrote:
> > > stella.stamenova wrote:
> > > > Is Ninja the recommended build tool on Windows as well?
> > > Well it's recommended for LLVM and I used it for LLDB on Windows in the past.
> > > Maybe @zturner knows more about it?
> > LLDB does build with both Ninja and VS on Windows. I don't know that either one is "recommended" though and we usually build with VS.
> I use Ninja exclusively for both LLVM in general and LLDB in particular, regardless of whether I'm building with MSVC or bootstrapping with Clang.
> 
> Having a VS solution is great for finding your way around the repo and debugging.  But Ninja seems to build much faster.
I added a short note that //other generators like Xcode or Visual Studio may be used as well// (please see my answer to Greg).


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D65330/new/

https://reviews.llvm.org/D65330





More information about the lldb-commits mailing list