diff options
author | Louis Dionne <ldionne.2@gmail.com> | 2022-06-30 11:24:43 -0400 |
---|---|---|
committer | Louis Dionne <ldionne.2@gmail.com> | 2022-07-08 16:58:22 -0400 |
commit | bb939931a1adb9a47a2de13c359d6a72aeb277c8 (patch) | |
tree | fac166571d86ae1bf79a5e07ba16cdf6b5f8d614 /clang/cmake | |
parent | c945bd0da652cd05c0a74898ef5122c2b7a496ef (diff) | |
download | llvm-bb939931a1adb9a47a2de13c359d6a72aeb277c8.zip llvm-bb939931a1adb9a47a2de13c359d6a72aeb277c8.tar.gz llvm-bb939931a1adb9a47a2de13c359d6a72aeb277c8.tar.bz2 |
[libc++] Always build c++experimental.a
This is the first part of a plan to ship experimental features
by default while guarding them behind a compiler flag to avoid
users accidentally depending on them. Subsequent patches will
also encompass incomplete features (such as <format> and <ranges>)
in that categorization. Basically, the idea is that we always
build and ship the c++experimental library, however users can't
use what's in it unless they pass the `-funstable` flag to Clang.
Note that this patch intentionally does not start guarding
existing <experimental/FOO> content behind the flag, because
that would merely break users that might be relying on such
content being in the headers unconditionally. Instead, we
should start guarding new TSes behind the flag, and get rid
of the existing TSes we have by shipping their Standard
counterpart.
Also, this patch must jump through a few hoops like defining
_LIBCPP_ENABLE_EXPERIMENTAL because we still support compilers
that do not implement -funstable yet.
Differential Revision: https://reviews.llvm.org/D128927
Diffstat (limited to 'clang/cmake')
-rw-r--r-- | clang/cmake/caches/Fuchsia-stage2.cmake | 1 | ||||
-rw-r--r-- | clang/cmake/caches/Fuchsia.cmake | 1 |
2 files changed, 0 insertions, 2 deletions
diff --git a/clang/cmake/caches/Fuchsia-stage2.cmake b/clang/cmake/caches/Fuchsia-stage2.cmake index 412dbdf..67c88b3 100644 --- a/clang/cmake/caches/Fuchsia-stage2.cmake +++ b/clang/cmake/caches/Fuchsia-stage2.cmake @@ -79,7 +79,6 @@ if(WIN32) set(RUNTIMES_${target}_CMAKE_SYSTEM_NAME Windows CACHE STRING "") set(RUNTIMES_${target}_CMAKE_BUILD_TYPE RelWithDebInfo CACHE STRING "") set(RUNTIMES_${target}_LIBCXX_ABI_VERSION 2 CACHE STRING "") - set(RUNTIMES_${target}_LIBCXX_ENABLE_EXPERIMENTAL_LIBRARY OFF CACHE BOOL "") 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 "") diff --git a/clang/cmake/caches/Fuchsia.cmake b/clang/cmake/caches/Fuchsia.cmake index 7b534e6..53bb78d 100644 --- a/clang/cmake/caches/Fuchsia.cmake +++ b/clang/cmake/caches/Fuchsia.cmake @@ -50,7 +50,6 @@ endif() if(WIN32) set(LIBCXX_ABI_VERSION 2 CACHE STRING "") - set(LIBCXX_ENABLE_EXPERIMENTAL_LIBRARY OFF CACHE BOOL "") set(LIBCXX_ENABLE_FILESYSTEM OFF CACHE BOOL "") set(LIBCXX_ENABLE_ABI_LINKER_SCRIPT OFF CACHE BOOL "") set(LIBCXX_ENABLE_SHARED OFF CACHE BOOL "") |