mirror of
https://github.com/FreeRDP/FreeRDP.git
synced 2025-06-03 00:00:20 +00:00
32 lines
783 B
CMake
32 lines
783 B
CMake
include(CheckCCompilerFlag)
|
|
include(CheckCXXCompilerFlag)
|
|
|
|
macro(RemoveFlag FLAG)
|
|
string(REPLACE "${FLAG}" "" CMAKE_C_FLAGS "${CMAKE_C_FLAGS}")
|
|
string(REPLACE "${FLAG}" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
|
|
endmacro()
|
|
|
|
macro(CheckAndSetFlag FLAG)
|
|
get_property(languages GLOBAL PROPERTY ENABLED_LANGUAGES)
|
|
|
|
unset(C_FLAG)
|
|
unset(CXX_FLAG)
|
|
if("C" IN_LIST languages)
|
|
check_c_compiler_flag("${FLAG}" C_FLAG)
|
|
if(C_FLAG)
|
|
string(APPEND CMAKE_C_FLAGS " ${FLAG}")
|
|
endif()
|
|
endif()
|
|
|
|
if("CXX" IN_LIST languages)
|
|
check_cxx_compiler_flag("${FLAG}" CXX_FLAG)
|
|
if(CXX_FLAG)
|
|
string(APPEND CMAKE_CXX_FLAGS " ${FLAG}")
|
|
endif()
|
|
endif()
|
|
|
|
if(NOT C_FLAG AND NOT CXX_FLAG)
|
|
message(WARNING "compiler does not support ${FLAG}")
|
|
endif()
|
|
endmacro()
|