[libc++][CMake] Add CMake caches for commonly supported configurations
authorLouis Dionne <ldionne@apple.com>
Tue, 16 Apr 2019 21:12:54 +0000 (17:12 -0400)
committerLouis Dionne <ldionne@apple.com>
Tue, 9 Jun 2020 18:52:14 +0000 (14:52 -0400)
This commit adds CMake caches for the various configurations of libc++
that are tested by our build bots.

Differential Revision: https://reviews.llvm.org/D81293

13 files changed:
libcxx/cmake/caches/Generic-32bits.cmake [new file with mode: 0644]
libcxx/cmake/caches/Generic-asan.cmake [new file with mode: 0644]
libcxx/cmake/caches/Generic-cxx03.cmake [new file with mode: 0644]
libcxx/cmake/caches/Generic-cxx11.cmake [new file with mode: 0644]
libcxx/cmake/caches/Generic-cxx14.cmake [new file with mode: 0644]
libcxx/cmake/caches/Generic-cxx17.cmake [new file with mode: 0644]
libcxx/cmake/caches/Generic-cxx2a.cmake [new file with mode: 0644]
libcxx/cmake/caches/Generic-msan.cmake [new file with mode: 0644]
libcxx/cmake/caches/Generic-noexceptions.cmake [new file with mode: 0644]
libcxx/cmake/caches/Generic-singlethreaded.cmake [new file with mode: 0644]
libcxx/cmake/caches/Generic-tsan.cmake [new file with mode: 0644]
libcxx/cmake/caches/Generic-ubsan.cmake [new file with mode: 0644]
libcxx/cmake/caches/README.md [new file with mode: 0644]

diff --git a/libcxx/cmake/caches/Generic-32bits.cmake b/libcxx/cmake/caches/Generic-32bits.cmake
new file mode 100644 (file)
index 0000000..ae7b2ac
--- /dev/null
@@ -0,0 +1 @@
+set(LLVM_BUILD_32_BITS ON CACHE BOOL "")
diff --git a/libcxx/cmake/caches/Generic-asan.cmake b/libcxx/cmake/caches/Generic-asan.cmake
new file mode 100644 (file)
index 0000000..cf91976
--- /dev/null
@@ -0,0 +1 @@
+set(LLVM_USE_SANITIZER "Address" CACHE STRING "")
diff --git a/libcxx/cmake/caches/Generic-cxx03.cmake b/libcxx/cmake/caches/Generic-cxx03.cmake
new file mode 100644 (file)
index 0000000..d1d67d8
--- /dev/null
@@ -0,0 +1 @@
+set(LLVM_LIT_ARGS "--param std=c++03" CACHE STRING "")
diff --git a/libcxx/cmake/caches/Generic-cxx11.cmake b/libcxx/cmake/caches/Generic-cxx11.cmake
new file mode 100644 (file)
index 0000000..e203c6a
--- /dev/null
@@ -0,0 +1 @@
+set(LLVM_LIT_ARGS "--param std=c++11" CACHE STRING "")
diff --git a/libcxx/cmake/caches/Generic-cxx14.cmake b/libcxx/cmake/caches/Generic-cxx14.cmake
new file mode 100644 (file)
index 0000000..b1bf124
--- /dev/null
@@ -0,0 +1 @@
+set(LLVM_LIT_ARGS "--param std=c++14" CACHE STRING "")
diff --git a/libcxx/cmake/caches/Generic-cxx17.cmake b/libcxx/cmake/caches/Generic-cxx17.cmake
new file mode 100644 (file)
index 0000000..b232047
--- /dev/null
@@ -0,0 +1 @@
+set(LLVM_LIT_ARGS "--param std=c++17" CACHE STRING "")
diff --git a/libcxx/cmake/caches/Generic-cxx2a.cmake b/libcxx/cmake/caches/Generic-cxx2a.cmake
new file mode 100644 (file)
index 0000000..31f1b76
--- /dev/null
@@ -0,0 +1 @@
+set(LLVM_LIT_ARGS "--param std=c++2a" CACHE STRING "")
diff --git a/libcxx/cmake/caches/Generic-msan.cmake b/libcxx/cmake/caches/Generic-msan.cmake
new file mode 100644 (file)
index 0000000..7c948f5
--- /dev/null
@@ -0,0 +1 @@
+set(LLVM_USE_SANITIZER "MemoryWithOrigins" CACHE STRING "")
diff --git a/libcxx/cmake/caches/Generic-noexceptions.cmake b/libcxx/cmake/caches/Generic-noexceptions.cmake
new file mode 100644 (file)
index 0000000..f0dffef
--- /dev/null
@@ -0,0 +1,2 @@
+set(LIBCXX_ENABLE_EXCEPTIONS OFF CACHE BOOL "")
+set(LIBCXXABI_ENABLE_EXCEPTIONS OFF CACHE BOOL "")
diff --git a/libcxx/cmake/caches/Generic-singlethreaded.cmake b/libcxx/cmake/caches/Generic-singlethreaded.cmake
new file mode 100644 (file)
index 0000000..616baef
--- /dev/null
@@ -0,0 +1,3 @@
+set(LIBCXX_ENABLE_THREADS OFF CACHE BOOL "")
+set(LIBCXXABI_ENABLE_THREADS OFF CACHE BOOL "")
+set(LIBCXX_ENABLE_MONOTONIC_CLOCK OFF CACHE BOOL "")
diff --git a/libcxx/cmake/caches/Generic-tsan.cmake b/libcxx/cmake/caches/Generic-tsan.cmake
new file mode 100644 (file)
index 0000000..a4b599e
--- /dev/null
@@ -0,0 +1 @@
+set(LLVM_USE_SANITIZER "Thread" CACHE STRING "")
diff --git a/libcxx/cmake/caches/Generic-ubsan.cmake b/libcxx/cmake/caches/Generic-ubsan.cmake
new file mode 100644 (file)
index 0000000..7ad891e
--- /dev/null
@@ -0,0 +1,2 @@
+set(LLVM_USE_SANITIZER "Undefined" CACHE STRING "")
+set(LIBCXX_ABI_UNSTABLE ON CACHE BOOL "")
diff --git a/libcxx/cmake/caches/README.md b/libcxx/cmake/caches/README.md
new file mode 100644 (file)
index 0000000..60837ee
--- /dev/null
@@ -0,0 +1,13 @@
+# libc++ / libc++abi configuration caches
+
+This directory contains CMake caches for the supported configurations of libc++.
+Some of the configurations are specific to a vendor, others are generic and not
+tied to any vendor.
+
+While we won't explicitly work to break configurations not listed here, any
+configuration not listed here is not explicitly supported. If you use or ship
+libc++ under a configuration not listed here, you should work with the libc++
+maintainers to make it into a supported configuration and add it here.
+
+Similarly, adding any new configuration that's not already covered must be
+discussed with the libc++ maintainers as it entails a maintenance burden.