浏览代码

Fix checks for available compiler flags

Adam Hunyadi 4 年之前
父节点
当前提交
cf90b37da9
共有 2 个文件被更改,包括 4 次插入6 次删除
  1. 2 3
      cmake/AddCCompilerFlag.cmake
  2. 2 3
      cmake/AddCXXCompilerFlag.cmake

+ 2 - 3
cmake/AddCCompilerFlag.cmake

@@ -24,9 +24,8 @@ function(add_c_compiler_flag FLAG)
   string(REPLACE "+" "X" SANITIZED_FLAG ${SANITIZED_FLAG})
   string(REGEX REPLACE "[^A-Za-z_0-9]" "_" SANITIZED_FLAG ${SANITIZED_FLAG})
   string(REGEX REPLACE "_+" "_" SANITIZED_FLAG ${SANITIZED_FLAG})
-  set(CMAKE_REQUIRED_FLAGS "${FLAG}")
-  check_c_compiler_flag("" ${SANITIZED_FLAG})
-  if(${SANITIZED_FLAG})
+  check_c_compiler_flag(${SANITIZED_FLAG} NO_DIAGNOSTICS_PRODUCED)
+  if(${NO_DIAGNOSTICS_PRODUCED})
     set(VARIANT ${ARGV1})
     if(ARGV1)
       string(REGEX REPLACE "[^A-Za-z_0-9]" "_" VARIANT "${VARIANT}")

+ 2 - 3
cmake/AddCXXCompilerFlag.cmake

@@ -24,9 +24,8 @@ function(add_cxx_compiler_flag FLAG)
   string(REPLACE "+" "X" SANITIZED_FLAG ${SANITIZED_FLAG})
   string(REGEX REPLACE "[^A-Za-z_0-9]" "_" SANITIZED_FLAG ${SANITIZED_FLAG})
   string(REGEX REPLACE "_+" "_" SANITIZED_FLAG ${SANITIZED_FLAG})
-  set(CMAKE_REQUIRED_FLAGS "${FLAG}")
-  check_cxx_compiler_flag("" ${SANITIZED_FLAG})
-  if(${SANITIZED_FLAG})
+  check_cxx_compiler_flag(${SANITIZED_FLAG} NO_DIAGNOSTICS_PRODUCED)
+  if(${NO_DIAGNOSTICS_PRODUCED})
     set(VARIANT ${ARGV1})
     if(ARGV1)
       string(REGEX REPLACE "[^A-Za-z_0-9]" "_" VARIANT "${VARIANT}")