Skip to content

Commit

Permalink
[CMake] Add first CMake cache files
Browse files Browse the repository at this point in the history
Summary:
CMake cache scripts pre-populate the CMakeCache in a build directory with commonly used settings.
The CMake invocation from D61952 could look like this:

```
cmake -G Ninja -C /path/to/llvm-project/lldb/cmake/caches/Apple-lldb-osx.cmake -DLLVM_ENABLE_PROJECTS="clang;libcxx;libcxxabi;lldb" ../llvm-project/llvm
```

Options specified on the command line will override options in the cache files (as long as caches don't use `FORCE`).
What do you think? (This is a first proposal and not set in stone.)

Reviewers: xiaobai, compnerd, JDevlieghere, aprantl, labath

Subscribers: mgorny, lldb-commits, #lldb

Tags: #lldb

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

llvm-svn: 361069
  • Loading branch information
weliveindetail committed May 17, 2019
1 parent dcc477e commit fd07791
Show file tree
Hide file tree
Showing 2 changed files with 30 additions and 0 deletions.
8 changes: 8 additions & 0 deletions lldb/cmake/caches/Apple-lldb-base.cmake
@@ -0,0 +1,8 @@
set(LLVM_TARGETS_TO_BUILD X86;ARM;AArch64 CACHE STRING "")
set(LLVM_INSTALL_TOOLCHAIN_ONLY ON CACHE BOOL "")

# Release builds set these explicitly:
#set(LLDB_VERSION_MAJOR 9999 CACHE STRING "")
#set(LLDB_VERSION_MINOR 9 CACHE STRING "")
#set(LLDB_VERSION_PATCH 9 CACHE STRING "")
#set(LLDB_VERSION_SUFFIX git CACHE STRING "")
22 changes: 22 additions & 0 deletions lldb/cmake/caches/Apple-lldb-macOS.cmake
@@ -0,0 +1,22 @@
include(${CMAKE_CURRENT_LIST_DIR}/Apple-lldb-base.cmake)

set(LLDB_BUILD_FRAMEWORK ON CACHE BOOL "")
set(LLDB_NO_INSTALL_DEFAULT_RPATH ON CACHE BOOL "")

# Set the install prefix to the default install location on the enduser machine.
# If the location is not writeable on the build machine, specify another prefix
# in the DESTDIR environment variable, e.g.: DESTDIR=/tmp ninja install
set(CMAKE_INSTALL_PREFIX /Applications/Xcode.app/Contents/Developer/usr CACHE STRING "")

# Choose the install location for LLDB.framework so that it matches the
# INSTALL_RPATH of the lldb driver. It's either absolute or relative to
# CMAKE_INSTALL_PREFIX. In any case, DESTDIR will be an extra prefix.
set(LLDB_FRAMEWORK_INSTALL_DIR /Applications/Xcode.app/Contents/SharedFrameworks CACHE STRING "")

# Release builds may change these:
set(CMAKE_OSX_DEPLOYMENT_TARGET 10.11 CACHE STRING "")
set(LLDB_USE_SYSTEM_DEBUGSERVER ON CACHE BOOL "")
set(LLVM_EXTERNALIZE_DEBUGINFO OFF CACHE BOOL "")

set(CMAKE_BUILD_TYPE RelWithDebInfo CACHE STRING "")
set(LLVM_ENABLE_MODULES ON CACHE BOOL "")

0 comments on commit fd07791

Please sign in to comment.