summaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
authorLouis Dionne <ldionne.2@gmail.com>2022-02-09 12:08:44 -0500
committerLouis Dionne <ldionne.2@gmail.com>2022-02-10 15:05:23 -0500
commit4ae83bb2b1e27628f6bd14d746aef964ed776d52 (patch)
tree09953b95e661e99ecbeef683194ba9ac7d4e01aa /README.md
parenteeb6be144f34158b7f9810f535b7b650390a05e3 (diff)
downloadllvm-4ae83bb2b1e27628f6bd14d746aef964ed776d52.tar.gz
Update all LLVM documentation mentioning runtimes in LLVM_ENABLE_PROJECTS
We are moving away from building the runtimes with LLVM_ENABLE_PROJECTS, however the documentation was largely outdated. This commit updates all the documentation I could find to use LLVM_ENABLE_RUNTIMES instead of LLVM_ENABLE_PROJECTS for building runtimes. Note that in the near future, libcxx, libcxxabi and libunwind will stop supporting being built with LLVM_ENABLE_PROJECTS altogether. I don't know what the plans are for other runtimes like libc, openmp and compiler-rt, so I didn't make any changes to the documentation that would imply something for those projects. Once this lands, I will also cherry-pick this on the release/14.x branch to make sure that LLVM's documentation is up-to-date and reflects what we intend to support in the future. Differential Revision: https://reviews.llvm.org/D119351
Diffstat (limited to 'README.md')
-rw-r--r--README.md20
1 files changed, 14 insertions, 6 deletions
diff --git a/README.md b/README.md
index 27cc755c93d0..15da30276508 100644
--- a/README.md
+++ b/README.md
@@ -63,17 +63,25 @@ This is an example work-flow and configuration to get and build the LLVM source:
Some common options:
- * ``-DLLVM_ENABLE_PROJECTS='...'`` --- semicolon-separated list of the LLVM
- sub-projects you'd like to additionally build. Can include any of: clang,
- clang-tools-extra, compiler-rt,cross-project-tests, flang, libc, libclc,
- libcxx, libcxxabi, libunwind, lld, lldb, mlir, openmp, polly, or pstl.
+ * ``-DLLVM_ENABLE_PROJECTS='...'`` and ``-DLLVM_ENABLE_RUNTIMES='...'`` ---
+ semicolon-separated list of the LLVM sub-projects and runtimes you'd like to
+ additionally build. ``LLVM_ENABLE_PROJECTS`` can include any of: clang,
+ clang-tools-extra, cross-project-tests, flang, libc, libclc, lld, lldb,
+ mlir, openmp, polly, or pstl. ``LLVM_ENABLE_RUNTIMES`` can include any of
+ libcxx, libcxxabi, libunwind, compiler-rt, libc or openmp. Some runtime
+ projects can be specified either in ``LLVM_ENABLE_PROJECTS`` or in
+ ``LLVM_ENABLE_RUNTIMES``.
For example, to build LLVM, Clang, libcxx, and libcxxabi, use
- ``-DLLVM_ENABLE_PROJECTS="clang;libcxx;libcxxabi"``.
+ ``-DLLVM_ENABLE_PROJECTS="clang" -DLLVM_ENABLE_RUNTIMES="libcxx;libcxxabi"``.
* ``-DCMAKE_INSTALL_PREFIX=directory`` --- Specify for *directory* the full
path name of where you want the LLVM tools and libraries to be installed
- (default ``/usr/local``).
+ (default ``/usr/local``). Be careful if you install runtime libraries: if
+ your system uses those provided by LLVM (like libc++ or libc++abi), you
+ must not overwrite your system's copy of those libraries, since that
+ could render your system unusable. In general, using something like
+ ``/usr`` is not advised, but ``/usr/local`` is fine.
* ``-DCMAKE_BUILD_TYPE=type`` --- Valid options for *type* are Debug,
Release, RelWithDebInfo, and MinSizeRel. Default is Debug.