[PATCH] D158878: [runtimes][cmake] Propagate cmake arguments.

Mark de Wever via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Aug 25 12:34:14 PDT 2023


Mordante created this revision.
Herald added subscribers: ekilmer, pengfei.
Herald added a project: All.
Mordante requested review of this revision.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.

The documentation [1] has an example

$ cmake -G Ninja -S runtimes -B build       \

  -DLLVM_ENABLE_RUNTIMES="libcxx"           \
  -DLIBCXX_CXX_ABI=libstdc++                \
  -DLIBCXX_CXX_ABI_INCLUDE_PATHS="/usr/include/c++/4.7/;/usr/include/c++/4.7/x86_64-linux-gnu/"

Unfortunately the LIBCXX_ cmake arguments aren't forwarded to the CMake
for libc++. This was discovered while working on enabling modules in the
libc++ bootstrap CI build.

[1] https://libcxx.llvm.org/BuildingLibcxx.html#using-libsupc-on-linux

Depends on D158860 <https://reviews.llvm.org/D158860>


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D158878

Files:
  llvm/runtimes/CMakeLists.txt


Index: llvm/runtimes/CMakeLists.txt
===================================================================
--- llvm/runtimes/CMakeLists.txt
+++ llvm/runtimes/CMakeLists.txt
@@ -13,6 +13,7 @@
   endif()
   string(TOUPPER "${proj}" canon_name)
   STRING(REGEX REPLACE "-" "_" canon_name ${canon_name})
+  list(APPEND RUNTIMES_CMAKE_PREFIXES "${canon_name}_")
   set(LLVM_EXTERNAL_${canon_name}_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../../${proj}")
 endforeach()
 
@@ -349,6 +350,7 @@
                                       -DLLVM_RUNTIMES_TARGET=${name}
                                       ${COMMON_CMAKE_ARGS}
                                       ${${name}_extra_args}
+                           PASSTHROUGH_PREFIXES ${RUNTIMES_CMAKE_PREFIXES}
                            EXTRA_TARGETS ${${name}_extra_targets}
                                          ${${name}_test_targets}
                            USE_TOOLCHAIN


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D158878.553577.patch
Type: text/x-patch
Size: 923 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20230825/85f8d748/attachment-0001.bin>


More information about the llvm-commits mailing list