[llvm] r284581 - [cmake] Declare LLVM_CMAKE_PATH for use in subprojects

Michal Gorny via llvm-commits llvm-commits at lists.llvm.org
Wed Oct 19 05:18:34 PDT 2016

Author: mgorny
Date: Wed Oct 19 07:18:34 2016
New Revision: 284581

URL: http://llvm.org/viewvc/llvm-project?rev=284581&view=rev
[cmake] Declare LLVM_CMAKE_PATH for use in subprojects

Declare the LLVM_CMAKE_PATH to the source directory location of CMake
files, in order to make it possible to easily use them in subprojects.
Such a variable is already declared in most of LLVM projects
(and inconsistently mixed with direct source tree references), including
Clang, LLDB, compiler-rt, libcxx... Declaring it inside main LLVM tree
makes it possible to avoid having to declare fallback values or use
conditionals in those projects.

It should be noted that in some of the subprojects LLVM_CMAKE_PATH is
used to reference generated LLVMConfig.cmake file. However, these
references are conditional to stand-alone builds and explicitly
including this file is unnecessary in combined builds.

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


Modified: llvm/trunk/CMakeLists.txt
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/CMakeLists.txt?rev=284581&r1=284580&r2=284581&view=diff
--- llvm/trunk/CMakeLists.txt (original)
+++ llvm/trunk/CMakeLists.txt Wed Oct 19 07:18:34 2016
@@ -263,6 +263,8 @@ set(LLVM_MAIN_SRC_DIR     ${CMAKE_CURREN
 set(LLVM_MAIN_INCLUDE_DIR ${LLVM_MAIN_SRC_DIR}/include ) # --includedir
 set(LLVM_BINARY_DIR       ${CMAKE_CURRENT_BINARY_DIR}  ) # --prefix
+# Note: LLVM_CMAKE_PATH does not include generated files
+set(LLVM_CMAKE_PATH ${LLVM_MAIN_SRC_DIR}/cmake/modules)

Modified: llvm/trunk/lib/LTO/CMakeLists.txt
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/LTO/CMakeLists.txt?rev=284581&r1=284580&r2=284581&view=diff
--- llvm/trunk/lib/LTO/CMakeLists.txt (original)
+++ llvm/trunk/lib/LTO/CMakeLists.txt Wed Oct 19 07:18:34 2016
@@ -21,7 +21,7 @@ find_first_existing_vc_file(llvm_vc "${L
 # The VC revision include that we want to generate.
 set(version_inc "${CMAKE_CURRENT_BINARY_DIR}/LLVMLTORevision.h")
-set(get_svn_script "${LLVM_MAIN_SRC_DIR}/cmake/modules/GenerateVersionFromCVS.cmake")
+set(get_svn_script "${LLVM_CMAKE_PATH}/GenerateVersionFromCVS.cmake")
 if(DEFINED llvm_vc)
   # Create custom target to generate the VC revision include.

More information about the llvm-commits mailing list