[libcxx-commits] [PATCH] D98771: [libcxx][Arm] Move buildbot flags into cmake files

David Spickett via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Fri Mar 19 07:11:23 PDT 2021


DavidSpickett updated this revision to Diff 331864.
DavidSpickett added a comment.

- Move all flags into cmake caches.

One useful thing I found is that you can give cmake multiple cache
files. So you could use the Arm cache and the noexception cache.
Might come in handy later, 1:1 makes sense for the moment.

You're probably wondering where the Arm-noexception configs
are and that's intentional. Building arm only or thumb only isn't
supposed to be 100% coverage, just enough to pick up the obvious issues.

If that proves to be lacking then I can find some more resource
on our side to test those configs.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D98771/new/

https://reviews.llvm.org/D98771

Files:
  libcxx/cmake/caches/Armv7.cmake
  libcxx/cmake/caches/Armv7Arm.cmake
  libcxx/cmake/caches/Armv7Thumb-noexceptions.cmake
  libcxx/cmake/caches/Armv8.cmake
  libcxx/cmake/caches/Armv8Arm.cmake
  libcxx/cmake/caches/Armv8Thumb-noexceptions.cmake
  libcxx/utils/ci/run-buildbot


Index: libcxx/utils/ci/run-buildbot
===================================================================
--- libcxx/utils/ci/run-buildbot
+++ libcxx/utils/ci/run-buildbot
@@ -402,35 +402,23 @@
 # Aka Armv8 32 bit
 armv8)
     clean
-    generate-cmake -C "${MONOREPO_ROOT}/libcxx/cmake/caches/Armv8.cmake" \
-    -DCMAKE_CXX_FLAGS="-marm" \
-    -DCMAKE_C_FLAGS="-marm"
+    generate-cmake -C "${MONOREPO_ROOT}/libcxx/cmake/caches/Armv8Arm.cmake"
     check-cxx-cxxabi
 ;;
 armv8-noexceptions)
     clean
-    generate-cmake -C "${MONOREPO_ROOT}/libcxx/cmake/caches/Armv8.cmake" \
-    -DCMAKE_CXX_FLAGS="-mthumb" \
-    -DCMAKE_C_FLAGS="-mthumb" \
-    -DLIBCXX_ENABLE_EXCEPTIONS=OFF \
-    -DLIBCXXABI_ENABLE_EXCEPTIONS=OFF
+    generate-cmake -C "${MONOREPO_ROOT}/libcxx/cmake/caches/Armv8Thumb-noexceptions.cmake"
     check-cxx-cxxabi
 ;;
 # Armv7 32 bit. One building Arm only one Thumb only code.
 armv7)
     clean
-    generate-cmake -C "${MONOREPO_ROOT}/libcxx/cmake/caches/Armv7.cmake" \
-    -DCMAKE_CXX_FLAGS="-marm" \
-    -DCMAKE_C_FLAGS="-marm"
+    generate-cmake -C "${MONOREPO_ROOT}/libcxx/cmake/caches/Armv7Arm.cmake"
     check-cxx-cxxabi
 ;;
 armv7-noexceptions)
     clean
-    generate-cmake -C "${MONOREPO_ROOT}/libcxx/cmake/caches/Armv7.cmake" \
-    -DCMAKE_CXX_FLAGS="-mthumb" \
-    -DCMAKE_C_FLAGS="-mthumb" \
-    -DLIBCXX_ENABLE_EXCEPTIONS=OFF \
-    -DLIBCXXABI_ENABLE_EXCEPTIONS=OFF
+    generate-cmake -C "${MONOREPO_ROOT}/libcxx/cmake/caches/Armv7Thumb-noexceptions.cmake"
     check-cxx-cxxabi
 ;;
 *)
Index: libcxx/cmake/caches/Armv8Thumb-noexceptions.cmake
===================================================================
--- /dev/null
+++ libcxx/cmake/caches/Armv8Thumb-noexceptions.cmake
@@ -0,0 +1,6 @@
+set(LIBCXXABI_USE_LLVM_UNWINDER ON CACHE BOOL "")
+set(LIBCXX_TARGET_TRIPLE "armv8-linux-gnueabihf" CACHE STRING "")
+set(CMAKE_CXX_FLAGS "-mthumb" CACHE STRING "")
+set(CMAKE_C_FLAGS "-mthumb" CACHE STRING "")
+set(LIBCXX_ENABLE_EXCEPTIONS OFF CACHE BOOL "")
+set(LIBCXXABI_ENABLE_EXCEPTIONS OFF CACHE BOOL "")
Index: libcxx/cmake/caches/Armv8Arm.cmake
===================================================================
--- libcxx/cmake/caches/Armv8Arm.cmake
+++ libcxx/cmake/caches/Armv8Arm.cmake
@@ -1,2 +1,4 @@
 set(LIBCXXABI_USE_LLVM_UNWINDER ON CACHE BOOL "")
 set(LIBCXX_TARGET_TRIPLE "armv8-linux-gnueabihf" CACHE STRING "")
+set(CMAKE_CXX_FLAGS "-marm" CACHE STRING "")
+set(CMAKE_C_FLAGS "-marm" CACHE STRING "")
Index: libcxx/cmake/caches/Armv7Thumb-noexceptions.cmake
===================================================================
--- /dev/null
+++ libcxx/cmake/caches/Armv7Thumb-noexceptions.cmake
@@ -0,0 +1,6 @@
+set(LIBCXXABI_USE_LLVM_UNWINDER ON CACHE BOOL "")
+set(LIBCXX_TARGET_TRIPLE "armv7-linux-gnueabihf" CACHE STRING "")
+set(CMAKE_CXX_FLAGS "-mthumb" CACHE STRING "")
+set(CMAKE_C_FLAGS "-mthumb" CACHE STRING "")
+set(LIBCXX_ENABLE_EXCEPTIONS OFF CACHE BOOL "")
+set(LIBCXXABI_ENABLE_EXCEPTIONS OFF CACHE BOOL "")
Index: libcxx/cmake/caches/Armv7Arm.cmake
===================================================================
--- libcxx/cmake/caches/Armv7Arm.cmake
+++ libcxx/cmake/caches/Armv7Arm.cmake
@@ -1,2 +1,4 @@
 set(LIBCXXABI_USE_LLVM_UNWINDER ON CACHE BOOL "")
 set(LIBCXX_TARGET_TRIPLE "armv7-linux-gnueabihf" CACHE STRING "")
+set(CMAKE_CXX_FLAGS "-marm" CACHE STRING "")
+set(CMAKE_C_FLAGS "-marm" CACHE STRING "")


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D98771.331864.patch
Type: text/x-patch
Size: 3406 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/libcxx-commits/attachments/20210319/b1550e17/attachment.bin>


More information about the libcxx-commits mailing list