summaryrefslogtreecommitdiffstats
path: root/Modules/Compiler/MSVC-C.cmake
diff options
context:
space:
mode:
Diffstat (limited to 'Modules/Compiler/MSVC-C.cmake')
-rw-r--r--Modules/Compiler/MSVC-C.cmake14
1 files changed, 11 insertions, 3 deletions
diff --git a/Modules/Compiler/MSVC-C.cmake b/Modules/Compiler/MSVC-C.cmake
index 22c34f8..f56227b 100644
--- a/Modules/Compiler/MSVC-C.cmake
+++ b/Modules/Compiler/MSVC-C.cmake
@@ -11,8 +11,8 @@ set(CMAKE_C11_EXTENSION_COMPILE_OPTION "")
# There is no meaningful default for this
set(CMAKE_C_STANDARD_DEFAULT "")
-# There are no C compiler modes so we only need to test features once.
-# Override the default macro for this special case. Pretend that
+# There are no C compiler modes so we hard-code the known compiler supported
+# features. Override the default macro for this special case. Pretend that
# all language standards are available so that at least compilation
# can be attempted.
macro(cmake_record_c_compile_features)
@@ -20,6 +20,14 @@ macro(cmake_record_c_compile_features)
c_std_90
c_std_99
c_std_11
+ c_function_prototypes
)
- _record_compiler_features(C "" CMAKE_C_COMPILE_FEATURES)
+ list(APPEND CMAKE_C90_COMPILE_FEATURES c_std_90 c_function_prototypes)
+ list(APPEND CMAKE_C99_COMPILE_FEATURES c_std_99)
+ list(APPEND CMAKE_C11_COMPILE_FEATURES c_std_11)
+ if (CMAKE_C_COMPILER_VERSION VERSION_GREATER_EQUAL 14.0)
+ list(APPEND CMAKE_C_COMPILE_FEATURES c_variadic_macros)
+ list(APPEND CMAKE_C99_COMPILE_FEATURES c_variadic_macros)
+ endif()
+ set(_result 0) # expected by cmake_determine_compile_features
endmacro()