From e84714e9d6ec724dca889531e11fb963cadc2dba Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Mon, 27 May 2019 17:50:56 -0400 Subject: CMakeLists.txt - new macros for C and C++ compiler flag checking Issue#386 --- cmake/modules/LibIcalMacrosInternal.cmake | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 cmake/modules/LibIcalMacrosInternal.cmake (limited to 'cmake') diff --git a/cmake/modules/LibIcalMacrosInternal.cmake b/cmake/modules/LibIcalMacrosInternal.cmake new file mode 100644 index 00000000..618a8279 --- /dev/null +++ b/cmake/modules/LibIcalMacrosInternal.cmake @@ -0,0 +1,22 @@ +# CMake support macros and functions for the libical project + +include(CheckCCompilerFlag) +include(CheckCXXCompilerFlag) + +function(libical_append_if condition value) + if(${condition}) + foreach(variable ${ARGN}) + set(${variable} "${${variable}} ${value}" PARENT_SCOPE) + endforeach() + endif() +endfunction() + +macro(libical_add_cflag flag name) + check_c_compiler_flag("${flag}" "C_SUPPORTS_${name}") + libical_append_if("C_SUPPORTS_${name}" "${flag}" CMAKE_C_FLAGS) +endmacro() + +macro(libical_add_cxxflag flag name) + check_cxx_compiler_flag("${flag}" "CXX_SUPPORTS_${name}") + libical_append_if("CXX_SUPPORTS_${name}" "${flag}" CMAKE_CXX_FLAGS) +endmacro() -- cgit v1.2.1