2014-04-02 17:34:16 +04:00
|
|
|
include(RunCMake)
|
|
|
|
|
|
|
|
run_cmake(NotAFeature)
|
2013-10-22 17:05:49 +04:00
|
|
|
run_cmake(NotAFeatureGenex)
|
2013-10-22 03:40:47 +04:00
|
|
|
run_cmake(NotAFeatureTransitive)
|
|
|
|
run_cmake(NotAFeature_OriginDebug)
|
|
|
|
run_cmake(NotAFeature_OriginDebugGenex)
|
|
|
|
run_cmake(NotAFeature_OriginDebugTransitive)
|
2015-01-25 16:09:10 +03:00
|
|
|
run_cmake(NotAFeature_OriginDebugCommand)
|
2014-04-15 20:09:21 +04:00
|
|
|
|
|
|
|
run_cmake(generate_feature_list)
|
2013-11-04 04:15:43 +04:00
|
|
|
file(READ
|
|
|
|
"${RunCMake_BINARY_DIR}/generate_feature_list-build/c_features.txt"
|
|
|
|
C_FEATURES
|
|
|
|
)
|
2014-04-15 20:09:21 +04:00
|
|
|
file(READ
|
2014-05-10 15:05:46 +04:00
|
|
|
"${RunCMake_BINARY_DIR}/generate_feature_list-build/cxx_features.txt"
|
|
|
|
CXX_FEATURES
|
2014-04-15 20:09:21 +04:00
|
|
|
)
|
2015-01-27 00:42:36 +03:00
|
|
|
include("${RunCMake_BINARY_DIR}/generate_feature_list-build/c_standard_default.cmake")
|
|
|
|
include("${RunCMake_BINARY_DIR}/generate_feature_list-build/cxx_standard_default.cmake")
|
2014-04-15 20:09:21 +04:00
|
|
|
|
2013-11-04 04:15:43 +04:00
|
|
|
if (NOT C_FEATURES)
|
|
|
|
run_cmake(NoSupportedCFeatures)
|
|
|
|
run_cmake(NoSupportedCFeaturesGenex)
|
|
|
|
endif()
|
|
|
|
|
2014-05-10 15:05:46 +04:00
|
|
|
if (NOT CXX_FEATURES)
|
2014-04-15 20:09:21 +04:00
|
|
|
run_cmake(NoSupportedCxxFeatures)
|
|
|
|
run_cmake(NoSupportedCxxFeaturesGenex)
|
2014-05-15 13:32:30 +04:00
|
|
|
else()
|
2015-01-27 00:42:36 +03:00
|
|
|
if(CXX_STANDARD_DEFAULT)
|
|
|
|
run_cmake(LinkImplementationFeatureCycle)
|
|
|
|
endif()
|
2015-01-14 21:35:53 +03:00
|
|
|
run_cmake(LinkImplementationFeatureCycleSolved)
|
2014-05-15 13:32:30 +04:00
|
|
|
|
|
|
|
if (";${CXX_FEATURES};" MATCHES ";cxx_final;")
|
|
|
|
set(RunCMake_TEST_OPTIONS "-DHAVE_FINAL=1")
|
|
|
|
endif()
|
|
|
|
run_cmake(NonValidTarget1)
|
|
|
|
run_cmake(NonValidTarget2)
|
|
|
|
unset(RunCMake_TEST_OPTIONS)
|
2014-04-15 20:09:21 +04:00
|
|
|
endif()
|
2014-04-30 20:07:38 +04:00
|
|
|
|
2015-01-27 00:42:36 +03:00
|
|
|
if(CXX_STANDARD_DEFAULT)
|
2015-02-28 00:48:39 +03:00
|
|
|
run_cmake(NotAStandard)
|
|
|
|
|
2015-01-27 00:42:36 +03:00
|
|
|
foreach(standard 98 11)
|
|
|
|
file(READ
|
|
|
|
"${RunCMake_BINARY_DIR}/generate_feature_list-build/cxx${standard}_flag.txt"
|
|
|
|
CXX${standard}_FLAG
|
|
|
|
)
|
|
|
|
if (CXX${standard}_FLAG STREQUAL NOTFOUND)
|
|
|
|
run_cmake(RequireCXX${standard})
|
|
|
|
run_cmake(RequireCXX${standard}Variable)
|
|
|
|
endif()
|
|
|
|
if (CXX${standard}EXT_FLAG STREQUAL NOTFOUND)
|
|
|
|
run_cmake(RequireCXX${standard}Ext)
|
|
|
|
run_cmake(RequireCXX${standard}ExtVariable)
|
|
|
|
endif()
|
|
|
|
endforeach()
|
|
|
|
endif()
|