summaryrefslogtreecommitdiffstats
path: root/Modules/Internal/CheckCompilerFlag.cmake
diff options
context:
space:
mode:
Diffstat (limited to 'Modules/Internal/CheckCompilerFlag.cmake')
-rw-r--r--Modules/Internal/CheckCompilerFlag.cmake8
1 files changed, 8 insertions, 0 deletions
diff --git a/Modules/Internal/CheckCompilerFlag.cmake b/Modules/Internal/CheckCompilerFlag.cmake
index 3a67691..910f426 100644
--- a/Modules/Internal/CheckCompilerFlag.cmake
+++ b/Modules/Internal/CheckCompilerFlag.cmake
@@ -7,6 +7,9 @@ include(Internal/CheckSourceCompiles)
include(CMakeCheckCompilerFlagCommonPatterns)
function(CMAKE_CHECK_COMPILER_FLAG _lang _flag _var)
+ # Parse extra arguments
+ cmake_parse_arguments(PARSE_ARGV 3 CHECK_COMPILER_FLAG "" "OUTPUT_VARIABLE" "")
+
cmake_check_flag_common_init("check_compiler_flag" ${_lang} _lang_src _lang_fail_regex)
set(CMAKE_REQUIRED_DEFINITIONS ${_flag})
@@ -17,7 +20,12 @@ function(CMAKE_CHECK_COMPILER_FLAG _lang _flag _var)
${_var}
${_lang_fail_regex}
${_common_patterns}
+ OUTPUT_VARIABLE _output
)
+ if (CHECK_COMPILER_FLAG_OUTPUT_VARIABLE)
+ set(${CHECK_COMPILER_FLAG_OUTPUT_VARIABLE} "${_output}" PARENT_SCOPE)
+ endif()
+
cmake_check_flag_common_finish()
endfunction()