|
|
@@ -94,18 +94,43 @@ endmacro()
|
|
|
macro(cmake_record_cxx_compile_features)
|
|
|
set(_result 0)
|
|
|
if(_result EQUAL 0 AND DEFINED CMAKE_CXX20_STANDARD_COMPILE_OPTION)
|
|
|
- _record_compiler_features_cxx(20)
|
|
|
+ if(CMAKE_CXX20_STANDARD__HAS_FULL_SUPPORT)
|
|
|
+ _has_compiler_features_cxx(20)
|
|
|
+ else()
|
|
|
+ _record_compiler_features_cxx(20)
|
|
|
+ endif()
|
|
|
+ unset(CMAKE_CXX20_STANDARD__HAS_FULL_SUPPORT)
|
|
|
endif()
|
|
|
if(_result EQUAL 0 AND DEFINED CMAKE_CXX17_STANDARD_COMPILE_OPTION)
|
|
|
- _record_compiler_features_cxx(17)
|
|
|
+ if(CMAKE_CXX17_STANDARD__HAS_FULL_SUPPORT)
|
|
|
+ _has_compiler_features_cxx(17)
|
|
|
+ else()
|
|
|
+ _record_compiler_features_cxx(17)
|
|
|
+ endif()
|
|
|
+ unset(CMAKE_CXX17_STANDARD__HAS_FULL_SUPPORT)
|
|
|
endif()
|
|
|
if(_result EQUAL 0 AND DEFINED CMAKE_CXX14_STANDARD_COMPILE_OPTION)
|
|
|
- _record_compiler_features_cxx(14)
|
|
|
+ if(CMAKE_CXX14_STANDARD__HAS_FULL_SUPPORT)
|
|
|
+ _has_compiler_features_cxx(14)
|
|
|
+ else()
|
|
|
+ _record_compiler_features_cxx(14)
|
|
|
+ endif()
|
|
|
+ unset(CMAKE_CXX14_STANDARD__HAS_FULL_SUPPORT)
|
|
|
endif()
|
|
|
if(_result EQUAL 0 AND DEFINED CMAKE_CXX11_STANDARD_COMPILE_OPTION)
|
|
|
- _record_compiler_features_cxx(11)
|
|
|
+ if(CMAKE_CXX11_STANDARD__HAS_FULL_SUPPORT)
|
|
|
+ _has_compiler_features_cxx(11)
|
|
|
+ else()
|
|
|
+ _record_compiler_features_cxx(11)
|
|
|
+ endif()
|
|
|
+ unset(CMAKE_CXX11_STANDARD__HAS_FULL_SUPPORT)
|
|
|
endif()
|
|
|
if(_result EQUAL 0 AND DEFINED CMAKE_CXX98_STANDARD_COMPILE_OPTION)
|
|
|
- _record_compiler_features_cxx(98)
|
|
|
+ if(CMAKE_CXX98_STANDARD__HAS_FULL_SUPPORT)
|
|
|
+ _has_compiler_features_cxx(98)
|
|
|
+ else()
|
|
|
+ _record_compiler_features_cxx(98)
|
|
|
+ endif()
|
|
|
+ unset(CMAKE_CXX98_STANDARD__HAS_FULL_SUPPORT)
|
|
|
endif()
|
|
|
endmacro()
|