[PATCH] D54371: [CMake] Passthrough CFLAGS when checking the compiler-rt path

Petr Hosek via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Nov 9 18:55:03 PST 2018


phosek created this revision.
phosek added a reviewer: beanz.
Herald added subscribers: llvm-commits, christof, mgorny, dberris.

This is needed when cross-compiling for a different target since
CFLAGS may contain additional flags like -resource-dir which
change the location in which compiler-rt builtins are found.


Repository:
  rL LLVM

https://reviews.llvm.org/D54371

Files:
  compiler-rt/cmake/Modules/HandleCompilerRT.cmake
  libcxx/cmake/Modules/HandleCompilerRT.cmake
  libcxxabi/cmake/Modules/HandleCompilerRT.cmake
  libunwind/cmake/Modules/HandleCompilerRT.cmake


Index: libunwind/cmake/Modules/HandleCompilerRT.cmake
===================================================================
--- libunwind/cmake/Modules/HandleCompilerRT.cmake
+++ libunwind/cmake/Modules/HandleCompilerRT.cmake
@@ -8,6 +8,9 @@
   if (CMAKE_CXX_COMPILER_ID MATCHES Clang AND CMAKE_CXX_COMPILER_TARGET)
     list(APPEND CLANG_COMMAND "--target=${CMAKE_CXX_COMPILER_TARGET}")
   endif()
+  get_property(LIBUNWIND_CXX_FLAGS CACHE CMAKE_CXX_FLAGS PROPERTY VALUE)
+  string(REPLACE " " ";" LIBUNWIND_CXX_FLAGS "${LIBUNWIND_CXX_FLAGS}")
+  list(APPEND CLANG_COMMAND ${LIBUNWIND_CXX_FLAGS})
   execute_process(
       COMMAND ${CLANG_COMMAND}
       RESULT_VARIABLE HAD_ERROR
Index: libcxxabi/cmake/Modules/HandleCompilerRT.cmake
===================================================================
--- libcxxabi/cmake/Modules/HandleCompilerRT.cmake
+++ libcxxabi/cmake/Modules/HandleCompilerRT.cmake
@@ -8,6 +8,9 @@
   if (CMAKE_CXX_COMPILER_ID MATCHES Clang AND CMAKE_CXX_COMPILER_TARGET)
     list(APPEND CLANG_COMMAND "--target=${CMAKE_CXX_COMPILER_TARGET}")
   endif()
+  get_property(LIBCXXABI_CXX_FLAGS CACHE CMAKE_CXX_FLAGS PROPERTY VALUE)
+  string(REPLACE " " ";" LIBCXXABI_CXX_FLAGS "${LIBCXXABI_CXX_FLAGS}")
+  list(APPEND CLANG_COMMAND ${LIBCXXABI_CXX_FLAGS})
   execute_process(
       COMMAND ${CLANG_COMMAND}
       RESULT_VARIABLE HAD_ERROR
Index: libcxx/cmake/Modules/HandleCompilerRT.cmake
===================================================================
--- libcxx/cmake/Modules/HandleCompilerRT.cmake
+++ libcxx/cmake/Modules/HandleCompilerRT.cmake
@@ -8,6 +8,9 @@
   if (CMAKE_CXX_COMPILER_ID MATCHES Clang AND CMAKE_CXX_COMPILER_TARGET)
     list(APPEND CLANG_COMMAND "--target=${CMAKE_CXX_COMPILER_TARGET}")
   endif()
+  get_property(LIBCXX_CXX_FLAGS CACHE CMAKE_CXX_FLAGS PROPERTY VALUE)
+  string(REPLACE " " ";" LIBCXX_CXX_FLAGS "${LIBCXX_CXX_FLAGS}")
+  list(APPEND CLANG_COMMAND ${LIBCXX_CXX_FLAGS})
   execute_process(
       COMMAND ${CLANG_COMMAND}
       RESULT_VARIABLE HAD_ERROR
Index: compiler-rt/cmake/Modules/HandleCompilerRT.cmake
===================================================================
--- compiler-rt/cmake/Modules/HandleCompilerRT.cmake
+++ compiler-rt/cmake/Modules/HandleCompilerRT.cmake
@@ -4,6 +4,9 @@
   if (CMAKE_CXX_COMPILER_ID MATCHES Clang AND CMAKE_CXX_COMPILER_TARGET)
     list(APPEND CLANG_COMMAND "--target=${CMAKE_CXX_COMPILER_TARGET}")
   endif()
+  get_property(SANITIZER_CXX_FLAGS CACHE CMAKE_CXX_FLAGS PROPERTY VALUE)
+  string(REPLACE " " ";" SANITIZER_CXX_FLAGS "${SANITIZER_CXX_FLAGS}")
+  list(APPEND CLANG_COMMAND ${SANITIZER_CXX_FLAGS})
   execute_process(
       COMMAND ${CLANG_COMMAND}
       RESULT_VARIABLE HAD_ERROR


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D54371.173488.patch
Type: text/x-patch
Size: 2709 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20181110/53c52921/attachment.bin>


More information about the llvm-commits mailing list