[libc++] Add a CMake cache for Apple-specific configuration options
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@371638 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/cmake/caches/Apple.cmake b/cmake/caches/Apple.cmake
new file mode 100644
index 0000000..af4ea2c
--- /dev/null
+++ b/cmake/caches/Apple.cmake
@@ -0,0 +1,15 @@
+set(CMAKE_BUILD_TYPE MinSizeRel CACHE STRING "")
+set(CMAKE_POSITION_INDEPENDENT_CODE OFF CACHE BOOL "")
+
+set(LIBCXX_USE_COMPILER_RT ON CACHE BOOL "")
+set(LIBCXX_ENABLE_ASSERTIONS ON CACHE BOOL "")
+
+set(LIBCXX_ABI_VERSION "1" CACHE STRING "")
+
+set(LIBCXX_ENABLE_EXPERIMENTAL_LIBRARY OFF CACHE BOOL "")
+set(LIBCXX_ENABLE_STATIC OFF CACHE BOOL "")
+
+set(LIBCXX_ENABLE_NEW_DELETE_DEFINITIONS OFF CACHE BOOL "")
+set(LIBCXXABI_ENABLE_NEW_DELETE_DEFINITIONS ON CACHE BOOL "")
+
+set(LIBCXX_HIDE_FROM_ABI_PER_TU_BY_DEFAULT ON CACHE BOOL "")
diff --git a/utils/ci/macos-backdeployment.sh b/utils/ci/macos-backdeployment.sh
index 0580509..6996af9 100755
--- a/utils/ci/macos-backdeployment.sh
+++ b/utils/ci/macos-backdeployment.sh
@@ -103,10 +103,13 @@
echo "@@@ Configuring CMake @@@"
mkdir -p "${LLVM_BUILD_DIR}"
(cd "${LLVM_BUILD_DIR}" &&
- xcrun cmake "${MONOREPO_ROOT}/llvm" -GNinja \
+ xcrun cmake \
+ -C "${MONOREPO_ROOT}/libcxx/cmake/caches/Apple.cmake" \
+ -GNinja \
-DCMAKE_INSTALL_PREFIX="${LLVM_INSTALL_DIR}" \
-DLLVM_ENABLE_PROJECTS="libcxx;libcxxabi" \
- -DCMAKE_OSX_ARCHITECTURES="${CMAKE_ARCH_STRING}"
+ -DCMAKE_OSX_ARCHITECTURES="${CMAKE_ARCH_STRING}" \
+ "${MONOREPO_ROOT}/llvm"
)
echo "@@@@@@"
diff --git a/utils/ci/macos-trunk.sh b/utils/ci/macos-trunk.sh
index 5f8d499..7a5ee75 100755
--- a/utils/ci/macos-trunk.sh
+++ b/utils/ci/macos-trunk.sh
@@ -101,16 +101,17 @@
echo "@@@ Configuring CMake @@@"
mkdir -p "${LLVM_BUILD_DIR}"
(cd "${LLVM_BUILD_DIR}" &&
- xcrun cmake "${MONOREPO_ROOT}/llvm" -GNinja \
+ xcrun cmake \
+ -C "${MONOREPO_ROOT}/libcxx/cmake/caches/Apple.cmake" \
+ -GNinja \
-DCMAKE_INSTALL_PREFIX="${LLVM_INSTALL_DIR}" \
-DLIBCXX_ENABLE_EXCEPTIONS="${LIBCXX_EXCEPTIONS}" \
- -DLIBCXX_ENABLE_NEW_DELETE_DEFINITIONS=OFF \
-DLIBCXXABI_ENABLE_EXCEPTIONS=ON \
- -DLIBCXXABI_ENABLE_NEW_DELETE_DEFINITIONS=ON \
${ADDITIONAL_CMAKE_ARGS} \
-DLLVM_LIT_ARGS="${LIT_FLAGS}" \
-DLLVM_ENABLE_PROJECTS="libcxx;libcxxabi" \
- -DCMAKE_OSX_ARCHITECTURES="i386;x86_64" # Build a universal dylib
+ -DCMAKE_OSX_ARCHITECTURES="i386;x86_64" \
+ "${MONOREPO_ROOT}/llvm"
)
echo "@@@@@@"