[libcxx-commits] [PATCH] D144734: [libcxx] Enable support for static and debug Windows runtimes

Andrew Ng via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Fri Feb 24 07:08:27 PST 2023


andrewng created this revision.
Herald added a subscriber: arichardson.
Herald added a project: All.
andrewng requested review of this revision.
Herald added a project: libc++.
Herald added a subscriber: libcxx-commits.
Herald added a reviewer: libc++.

Add initial support to enable use of /MT, /MTd and /MDd when building
and testing libc++ on Windows. For the shared DLL version of libc++
always use the DLL runtime because this is the only sensible choice.

libc++ now depends on c++experimental and therefore the libc++ DLL
requires a c++experimental DLL. Because of the cyclic dependencies
between these, a "stub" c++experimental DLL is built to create an import
lib which enables the libc++ DLL to be built first.

Testing on Windows requires compiler-rt builtins.

For testing with the debug runtimes, the CRT debug report mode must be
set to output to stderr to avoid the interactive pop-up dialog.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D144734

Files:
  libcxx/CMakeLists.txt
  libcxx/include/__format/format_error.h
  libcxx/src/CMakeLists.txt
  libcxx/src/format.cpp
  libcxx/test/configs/llvm-libc++-shared-clangcl.cfg.in
  libcxx/test/configs/llvm-libc++-static-clangcl.cfg.in
  libcxx/test/std/experimental/memory/memory.resource.global/new_delete_resource.pass.cpp
  libcxx/test/support/set_windows_crt_report_mode.h
  libcxx/utils/libcxx/test/features.py
  libcxx/utils/libcxx/test/params.py

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D144734.500193.patch
Type: text/x-patch
Size: 19713 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/libcxx-commits/attachments/20230224/62cb0186/attachment-0001.bin>


More information about the libcxx-commits mailing list