[libc++] Add a CMake cache for Apple-specific configuration options
authorLouis Dionne <ldionne@apple.com>
Wed, 11 Sep 2019 16:57:19 +0000 (16:57 +0000)
committerLouis Dionne <ldionne@apple.com>
Wed, 11 Sep 2019 16:57:19 +0000 (16:57 +0000)
llvm-svn: 371638

libcxx/cmake/caches/Apple.cmake [new file with mode: 0644]
libcxx/utils/ci/macos-backdeployment.sh
libcxx/utils/ci/macos-trunk.sh

diff --git a/libcxx/cmake/caches/Apple.cmake b/libcxx/cmake/caches/Apple.cmake
new file mode 100644 (file)
index 0000000..af4ea2c
--- /dev/null
@@ -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 "")
index 0580509..6996af9 100755 (executable)
@@ -103,10 +103,13 @@ echo "@@@@@@"
 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 "@@@@@@"
 
index 5f8d499..7a5ee75 100755 (executable)
@@ -101,16 +101,17 @@ echo "@@@@@@"
 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 "@@@@@@"