From: Sylvestre Ledru Date: Wed, 17 Oct 2018 06:35:10 +0000 (+0000) Subject: Document the behavior of option passing when using -DCLANG_ENABLE_BOOTSTRAP=On X-Git-Tag: llvmorg-8.0.0-rc1~6377 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=c5f1d215a266710e6cec204bf45a1d77183f2390;p=platform%2Fupstream%2Fllvm.git Document the behavior of option passing when using -DCLANG_ENABLE_BOOTSTRAP=On Also document -DCLANG_BOOTSTRAP_PASSTHROUGH Reviewers: ecbeckmann Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D53018 llvm-svn: 344669 --- diff --git a/llvm/docs/AdvancedBuilds.rst b/llvm/docs/AdvancedBuilds.rst index c559bde..d2a2ef5 100644 --- a/llvm/docs/AdvancedBuilds.rst +++ b/llvm/docs/AdvancedBuilds.rst @@ -41,6 +41,16 @@ This command itself isn't terribly useful because it assumes default configurations for each stage. The next series of examples utilize CMake cache scripts to provide more complex options. +By default, only a few CMake options will be passed between stages. +The list, called _BOOTSTRAP_DEFAULT_PASSTHROUGH, is defined in clang/CMakeLists.txt. +To force the passing of the variables between stages, use the -DCLANG_BOOTSTRAP_PASSTHROUGH +CMake option, each variable separated by a ";". As example: + +.. code-block:: console + + $ cmake -G Ninja -DCLANG_ENABLE_BOOTSTRAP=On -DCLANG_BOOTSTRAP_PASSTHROUGH="CMAKE_INSTALL_PREFIX;CMAKE_VERBOSE_MAKEFILE" + $ ninja stage2 + The clang build system refers to builds as stages. A stage1 build is a standard build using the compiler installed on the host, and a stage2 build is built using the stage1 compiler. This nomenclature holds up to more stages too. In