Remove -arm-enable-ehabi from Android build rules. It's enabled by default.
[oota-llvm.git] / cmake / modules / HandleLLVMOptions.cmake
index 89122eee0b7dd9a1b605ed562de44e1b64fa99d9..487b2e45808fe53fb67f3e4b2e49b510083c44bf 100644 (file)
@@ -356,6 +356,14 @@ endif()
 # flags instead if LLVM_NO_DEAD_STRIP is set.
 if(NOT CYGWIN AND NOT WIN32)
   if(NOT ${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
-    append("-ffunction-sections -fdata-sections" CMAKE_CXX_FLAGS)
+    append("-ffunction-sections -fdata-sections" CMAKE_C_FLAGS CMAKE_CXX_FLAGS)
   endif()
 endif()
+
+if(MSVC)
+  # Remove flags here, for exceptions and RTTI.
+  # Each target property of source proerty should be responsible to control them.
+  # CL.EXE complains to override flags like "/GR /GR-".
+  string(REGEX REPLACE "(^| ) */EH[-cs]+ *( |$)" "\\1 \\2" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
+  string(REGEX REPLACE "(^| ) */GR-? *( |$)" "\\1 \\2" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
+endif()