[PATCH] D103941: [CMake] Don't use libc++ by default on Windows yet

Petr Hosek via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Tue Jun 8 22:47:06 PDT 2021


phosek created this revision.
phosek added reviewers: haowei, leonardchan.
Herald added a subscriber: mgorny.
phosek requested review of this revision.
Herald added a project: clang.
Herald added a subscriber: cfe-commits.

libc++ has issues when used with -fno-exceptions and vcruntime,
don't use it on Windows by default until we address those issues.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D103941

Files:
  clang/cmake/caches/Fuchsia-stage2.cmake
  clang/cmake/caches/Fuchsia.cmake


Index: clang/cmake/caches/Fuchsia.cmake
===================================================================
--- clang/cmake/caches/Fuchsia.cmake
+++ clang/cmake/caches/Fuchsia.cmake
@@ -21,7 +21,9 @@
   set(LLVM_USE_CRT_RELEASE "MT" CACHE STRING "")
 endif()
 
-set(CLANG_DEFAULT_CXX_STDLIB libc++ CACHE STRING "")
+if(NOT WIN32)
+  set(CLANG_DEFAULT_CXX_STDLIB libc++ CACHE STRING "")
+endif()
 if(NOT APPLE)
   # TODO: Remove this once we switch to ld64.lld.
   set(CLANG_DEFAULT_LINKER lld CACHE STRING "")
@@ -66,7 +68,6 @@
   set(LIBCXX_ENABLE_FILESYSTEM OFF CACHE BOOL "")
   set(LIBCXX_ENABLE_ABI_LINKER_SCRIPT OFF CACHE BOOL "")
   set(LIBCXX_ENABLE_STATIC_ABI_LIBRARY OFF CACHE BOOL "")
-  set(LIBCXX_NO_VCRUNTIME ON CACHE BOOL "")
   set(BUILTINS_CMAKE_ARGS -DCMAKE_SYSTEM_NAME=Windows CACHE STRING "")
   set(RUNTIMES_CMAKE_ARGS -DCMAKE_SYSTEM_NAME=Windows CACHE STRING "")
   set(LLVM_ENABLE_RUNTIMES "compiler-rt;libcxx" CACHE STRING "")
Index: clang/cmake/caches/Fuchsia-stage2.cmake
===================================================================
--- clang/cmake/caches/Fuchsia-stage2.cmake
+++ clang/cmake/caches/Fuchsia-stage2.cmake
@@ -30,7 +30,9 @@
   set(LLVM_USE_CRT_RELEASE "MT" CACHE STRING "")
 endif()
 
-set(CLANG_DEFAULT_CXX_STDLIB libc++ CACHE STRING "")
+if(NOT WIN32)
+  set(CLANG_DEFAULT_CXX_STDLIB libc++ CACHE STRING "")
+endif()
 if(NOT APPLE)
   # TODO: Remove this once we switch to ld64.lld.
   set(CLANG_DEFAULT_LINKER lld CACHE STRING "")
@@ -93,7 +95,6 @@
   set(RUNTIMES_${target}_LIBCXX_ENABLE_FILESYSTEM OFF CACHE BOOL "")
   set(RUNTIMES_${target}_LIBCXX_ENABLE_ABI_LINKER_SCRIPT OFF CACHE BOOL "")
   set(RUNTIMES_${target}_LIBCXX_ENABLE_SHARED OFF CACHE BOOL "")
-  set(RUNTIMES_${target}_LIBCXX_NO_VCRUNTIME ON CACHE BOOL "")
   set(RUNTIMES_${target}_LLVM_ENABLE_RUNTIMES "compiler-rt;libcxx" CACHE STRING "")
 endif()
 


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D103941.350781.patch
Type: text/x-patch
Size: 1873 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20210609/15a85d7c/attachment.bin>


More information about the cfe-commits mailing list