[PATCH] D122931: [CMake][compiler-rt] Support for using in-tree libc++
Louis Dionne via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Mon Apr 11 08:52:38 PDT 2022
ldionne added a comment.
I like this, however IMO it would be better to instead have something like
COMPILER_RT_CXX_LIBRARY="libc++|system-libc++|libstdc++|..."
That way, this can be extended to support other C++ libraries without having to add new boolean options, and without forcing folks to use ad-hoc `CMAKE_CXX_FLAGS` in their builds. WDYT?
================
Comment at: compiler-rt/CMakeLists.txt:513-515
+ # Don't use libcxx if LLVM_ENABLE_PROJECTS does not enable it.
+ set(COMPILER_RT_LIBCXX_PATH ${LLVM_EXTERNAL_LIBCXX_SOURCE_DIR})
+ set(COMPILER_RT_LIBCXXABI_PATH ${LLVM_EXTERNAL_LIBCXXABI_SOURCE_DIR})
----------------
I'm not sure I follow here -- we don't support using `LLVM_ENABLE_PROJECTS=libcxx` anymore.
================
Comment at: compiler-rt/CMakeLists.txt:517-534
+ foreach(path IN ITEMS ${LLVM_MAIN_SRC_DIR}/projects/libcxx
+ ${LLVM_MAIN_SRC_DIR}/runtimes/libcxx
+ ${LLVM_MAIN_SRC_DIR}/../libcxx
+ ${LLVM_EXTERNAL_LIBCXX_SOURCE_DIR})
+ if(IS_DIRECTORY ${path})
+ set(COMPILER_RT_LIBCXX_PATH ${path})
+ break()
----------------
Is there any reason why this can't be hardcoded to `${LLVM_MAIN_SRC_DIR}/.../libcxx`? Why do we need to handle the other layouts?
Edit: Oh, I see, this was only moved around. I assume you prefer making these other changes in separate patches.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D122931/new/
https://reviews.llvm.org/D122931
More information about the cfe-commits
mailing list