提交 1f5538f7 编写于 作者: M Max Bruckner

CMake: Fix several problems with automatic flag detection

上级 9ed90675
......@@ -36,22 +36,18 @@ if (ENABLE_CUSTOM_COMPILER_FLAGS)
-Wundef
-Wswitch-default
-Wconversion
-Wc++-compat
-fstack-protector-strong
)
endif()
# "I am starting to hate CMake" - FSMaxB
# In older versions of CMake, testing for -Wc++-compat
# fails because it cannot compile a regular expression
# This seems to be a bug in the CheckCSourceCompiles module
if (NOT (CMAKE_MAJOR_VERSION EQUAL 2))
list(APPEND custom_compiler_flags "-Wc++-compat")
endif()
# apply custom compiler flags
foreach(compiler_flag ${custom_compiler_flags})
CHECK_C_COMPILER_FLAG(${compiler_flag} "FLAG_SUPPORTED-${compiler_flag}")
if (FLAG_SUPPORTED${compiler_flag})
#remove problematic characters
string(REGEX REPLACE "[^a-zA-Z0-9]" "" current_variable ${compiler_flag})
CHECK_C_COMPILER_FLAG(${compiler_flag} "FLAG_SUPPORTED_${current_variable}")
if (FLAG_SUPPORTED_${current_variable})
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${compiler_flag}")
endif()
endforeach()
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册