[libcxx-commits] [libcxxabi] 949bbd0 - [CMake] Use `LLVM_COMMON_CMAKE_UTILS` in runtimes just for clarity
John Ericson via libcxx-commits
libcxx-commits at lists.llvm.org
Mon Jan 3 12:55:48 PST 2022
Author: John Ericson
Date: 2022-01-03T20:55:44Z
New Revision: 949bbd0a689286d0b2f73ae4f212673bc0bd688c
URL: https://github.com/llvm/llvm-project/commit/949bbd0a689286d0b2f73ae4f212673bc0bd688c
DIFF: https://github.com/llvm/llvm-project/commit/949bbd0a689286d0b2f73ae4f212673bc0bd688c.diff
LOG: [CMake] Use `LLVM_COMMON_CMAKE_UTILS` in runtimes just for clarity
In D116472 we created conditionally defined variables for the tools to
unbreak the legacy build where they are in `llvm/tools`.
The runtimes are not tools, so that flexibility doesn't matter. Still,
it might be nice to define (unconditionally) and use the variable for
the runtimes simply to make the code a bit clearer and document what is
going on.
Also, consistently put project dirs at the beginning, not end of `CMAKE_MODULE_PATH`. This ensures they will properly shadow similarly named stuff that happens to be later on the path.
Reviewed By: mstorsjo, #libunwind, #libc, #libc_abi, ldionne
Differential Revision: https://reviews.llvm.org/D116477
Added:
Modified:
compiler-rt/CMakeLists.txt
compiler-rt/lib/builtins/CMakeLists.txt
libcxx/CMakeLists.txt
libcxxabi/CMakeLists.txt
libunwind/CMakeLists.txt
runtimes/CMakeLists.txt
Removed:
################################################################################
diff --git a/compiler-rt/CMakeLists.txt b/compiler-rt/CMakeLists.txt
index bcab7e0061084..1e721a046a2f0 100644
--- a/compiler-rt/CMakeLists.txt
+++ b/compiler-rt/CMakeLists.txt
@@ -12,12 +12,14 @@ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR OR COMPILER_RT_STANDALONE
set_property(GLOBAL PROPERTY USE_FOLDERS ON)
endif()
+set(LLVM_COMMON_CMAKE_UTILS "${CMAKE_CURRENT_SOURCE_DIR}/../cmake")
+
# Add path for custom compiler-rt modules.
list(INSERT CMAKE_MODULE_PATH 0
"${CMAKE_CURRENT_SOURCE_DIR}/cmake"
"${CMAKE_CURRENT_SOURCE_DIR}/cmake/Modules"
- "${CMAKE_CURRENT_SOURCE_DIR}/../cmake"
- "${CMAKE_CURRENT_SOURCE_DIR}/../cmake/Modules"
+ "${LLVM_COMMON_CMAKE_UTILS}"
+ "${LLVM_COMMON_CMAKE_UTILS}/Modules"
)
if(CMAKE_CONFIGURATION_TYPES)
diff --git a/compiler-rt/lib/builtins/CMakeLists.txt b/compiler-rt/lib/builtins/CMakeLists.txt
index 2c0477f892355..e2489f1a3ed09 100644
--- a/compiler-rt/lib/builtins/CMakeLists.txt
+++ b/compiler-rt/lib/builtins/CMakeLists.txt
@@ -9,11 +9,19 @@ if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
project(CompilerRTBuiltins C ASM)
set(COMPILER_RT_STANDALONE_BUILD TRUE)
set(COMPILER_RT_BUILTINS_STANDALONE_BUILD TRUE)
+
+ set(COMPILER_RT_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../..")
+
+ set(LLVM_COMMON_CMAKE_UTILS "${COMPILER_RT_SOURCE_DIR}/../cmake")
+
+ # Add path for custom modules
list(INSERT CMAKE_MODULE_PATH 0
- "${CMAKE_SOURCE_DIR}/../../cmake"
- "${CMAKE_SOURCE_DIR}/../../cmake/Modules"
- "${CMAKE_SOURCE_DIR}/../../../cmake"
- "${CMAKE_SOURCE_DIR}/../../../cmake/Modules")
+ "${COMPILER_RT_SOURCE_DIR}/cmake"
+ "${COMPILER_RT_SOURCE_DIR}/cmake/Modules"
+ "${LLVM_COMMON_CMAKE_UTILS}"
+ "${LLVM_COMMON_CMAKE_UTILS}/Modules"
+ )
+
include(base-config-ix)
include(CompilerRTUtils)
diff --git a/libcxx/CMakeLists.txt b/libcxx/CMakeLists.txt
index 03a6a0781b5af..b0569a4a54caf 100644
--- a/libcxx/CMakeLists.txt
+++ b/libcxx/CMakeLists.txt
@@ -10,13 +10,14 @@ endif()
#===============================================================================
cmake_minimum_required(VERSION 3.13.4)
+set(LLVM_COMMON_CMAKE_UTILS "${CMAKE_CURRENT_SOURCE_DIR}/../cmake")
+
# Add path for custom modules
-set(CMAKE_MODULE_PATH
+list(INSERT CMAKE_MODULE_PATH 0
"${CMAKE_CURRENT_SOURCE_DIR}/cmake"
"${CMAKE_CURRENT_SOURCE_DIR}/cmake/Modules"
- "${CMAKE_CURRENT_SOURCE_DIR}/../cmake"
- "${CMAKE_CURRENT_SOURCE_DIR}/../cmake/Modules"
- ${CMAKE_MODULE_PATH}
+ "${LLVM_COMMON_CMAKE_UTILS}"
+ "${LLVM_COMMON_CMAKE_UTILS}/Modules"
)
set(CMAKE_FOLDER "libc++")
diff --git a/libcxxabi/CMakeLists.txt b/libcxxabi/CMakeLists.txt
index 12bcd2eee0996..858f5d5cfd7f6 100644
--- a/libcxxabi/CMakeLists.txt
+++ b/libcxxabi/CMakeLists.txt
@@ -10,13 +10,14 @@ endif()
cmake_minimum_required(VERSION 3.13.4)
+set(LLVM_COMMON_CMAKE_UTILS "${CMAKE_CURRENT_SOURCE_DIR}/../cmake")
+
# Add path for custom modules
-set(CMAKE_MODULE_PATH
+list(INSERT CMAKE_MODULE_PATH 0
"${CMAKE_CURRENT_SOURCE_DIR}/cmake"
"${CMAKE_CURRENT_SOURCE_DIR}/cmake/Modules"
- "${CMAKE_CURRENT_SOURCE_DIR}/../cmake"
- "${CMAKE_CURRENT_SOURCE_DIR}/../cmake/Modules"
- ${CMAKE_MODULE_PATH}
+ "${LLVM_COMMON_CMAKE_UTILS}"
+ "${LLVM_COMMON_CMAKE_UTILS}/Modules"
)
set(CMAKE_FOLDER "libc++")
diff --git a/libunwind/CMakeLists.txt b/libunwind/CMakeLists.txt
index eb478e4e7730c..e3cc66dd22267 100644
--- a/libunwind/CMakeLists.txt
+++ b/libunwind/CMakeLists.txt
@@ -8,13 +8,14 @@ endif()
cmake_minimum_required(VERSION 3.13.4)
+set(LLVM_COMMON_CMAKE_UTILS "${CMAKE_CURRENT_SOURCE_DIR}/../cmake")
+
# Add path for custom modules
-set(CMAKE_MODULE_PATH
+list(INSERT CMAKE_MODULE_PATH 0
"${CMAKE_CURRENT_SOURCE_DIR}/cmake"
"${CMAKE_CURRENT_SOURCE_DIR}/cmake/Modules"
- "${CMAKE_CURRENT_SOURCE_DIR}/../cmake"
- "${CMAKE_CURRENT_SOURCE_DIR}/../cmake/Modules"
- ${CMAKE_MODULE_PATH}
+ "${LLVM_COMMON_CMAKE_UTILS}"
+ "${LLVM_COMMON_CMAKE_UTILS}/Modules"
)
set(LIBUNWIND_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR})
diff --git a/runtimes/CMakeLists.txt b/runtimes/CMakeLists.txt
index 8f37d0e59feb2..cedce7b3541e5 100644
--- a/runtimes/CMakeLists.txt
+++ b/runtimes/CMakeLists.txt
@@ -28,12 +28,14 @@ endfunction()
find_package(LLVM PATHS "${LLVM_BINARY_DIR}" NO_DEFAULT_PATH NO_CMAKE_FIND_ROOT_PATH)
find_package(Clang PATHS "${LLVM_BINARY_DIR}" NO_DEFAULT_PATH NO_CMAKE_FIND_ROOT_PATH)
+set(LLVM_COMMON_CMAKE_UTILS "${CMAKE_CURRENT_SOURCE_DIR}/../cmake")
+
# Add path for custom and the LLVM build's modules to the CMake module path.
list(INSERT CMAKE_MODULE_PATH 0
"${CMAKE_CURRENT_SOURCE_DIR}/cmake"
"${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules"
- "${CMAKE_CURRENT_SOURCE_DIR}/../cmake"
- "${CMAKE_CURRENT_SOURCE_DIR}/../cmake/Modules"
+ "${LLVM_COMMON_CMAKE_UTILS}"
+ "${LLVM_COMMON_CMAKE_UTILS}/Modules"
"${CMAKE_CURRENT_SOURCE_DIR}/../llvm/cmake"
"${CMAKE_CURRENT_SOURCE_DIR}/../llvm/cmake/modules"
)
More information about the libcxx-commits
mailing list