diff options
author | Stephen Kelly <steveire@gmail.com> | 2014-11-11 21:59:16 (GMT) |
---|---|---|
committer | Stephen Kelly <steveire@gmail.com> | 2014-11-11 22:01:07 (GMT) |
commit | e68d5c6000e25d837079c673316d9deeba3b8913 (patch) | |
tree | ba0e010019c9448ec34c20ed4fb4c225d03a8979 /Modules/Compiler/Clang-CXX-FeatureTests.cmake | |
parent | f476b41fd8a92c7784a84059f615fdf8155d687e (diff) | |
download | CMake-e68d5c6000e25d837079c673316d9deeba3b8913.zip CMake-e68d5c6000e25d837079c673316d9deeba3b8913.tar.gz CMake-e68d5c6000e25d837079c673316d9deeba3b8913.tar.bz2 |
Features: Split the Clang testable features to a separate file.
These tests can be shared with the AppleClang compile feature tests.
Diffstat (limited to 'Modules/Compiler/Clang-CXX-FeatureTests.cmake')
-rw-r--r-- | Modules/Compiler/Clang-CXX-FeatureTests.cmake | 54 |
1 files changed, 1 insertions, 53 deletions
diff --git a/Modules/Compiler/Clang-CXX-FeatureTests.cmake b/Modules/Compiler/Clang-CXX-FeatureTests.cmake index 4c532fb..df2e1a8 100644 --- a/Modules/Compiler/Clang-CXX-FeatureTests.cmake +++ b/Modules/Compiler/Clang-CXX-FeatureTests.cmake @@ -2,61 +2,9 @@ # Reference: http://clang.llvm.org/cxx_status.html # http://clang.llvm.org/docs/LanguageExtensions.html -set(testable_features - cxx_alias_templates - cxx_alignas - cxx_attributes - cxx_auto_type - cxx_binary_literals - cxx_constexpr - cxx_contextual_conversions - cxx_decltype - cxx_decltype_incomplete_return_types - cxx_default_function_template_args - cxx_defaulted_functions - cxx_delegating_constructors - cxx_deleted_functions - cxx_explicit_conversions - cxx_generalized_initializers - cxx_inheriting_constructors - cxx_lambdas - cxx_local_type_template_args - cxx_noexcept - cxx_nonstatic_member_init - cxx_nullptr - cxx_range_for - cxx_raw_string_literals - cxx_reference_qualified_functions - cxx_relaxed_constexpr - cxx_return_type_deduction - cxx_rvalue_references - cxx_static_assert - cxx_strong_enums - cxx_thread_local - cxx_unicode_literals - cxx_unrestricted_unions - cxx_user_literals - cxx_variable_templates - cxx_variadic_templates -) - set(_cmake_oldestSupported "((__clang_major__ * 100) + __clang_minor__) >= 304") -foreach(feature ${testable_features}) - set(_cmake_feature_test_${feature} "${_cmake_oldestSupported} && __has_feature(${feature})") -endforeach() - -unset(testable_features) - -set(_cmake_feature_test_cxx_aggregate_default_initializers "${_cmake_oldestSupported} && __has_feature(cxx_aggregate_nsdmi)") - -set(_cmake_feature_test_cxx_trailing_return_types "${_cmake_oldestSupported} && __has_feature(cxx_trailing_return)") -set(_cmake_feature_test_cxx_alignof "${_cmake_oldestSupported} && __has_feature(cxx_alignas)") -set(_cmake_feature_test_cxx_final "${_cmake_oldestSupported} && __has_feature(cxx_override_control)") -set(_cmake_feature_test_cxx_override "${_cmake_oldestSupported} && __has_feature(cxx_override_control)") -set(_cmake_feature_test_cxx_uniform_initialization "${_cmake_oldestSupported} && __has_feature(cxx_generalized_initializers)") -set(_cmake_feature_test_cxx_defaulted_move_initializers "${_cmake_oldestSupported} && __has_feature(cxx_defaulted_functions)") -set(_cmake_feature_test_cxx_lambda_init_captures "${_cmake_oldestSupported} && __has_feature(cxx_init_captures)") +include("${CMAKE_CURRENT_LIST_DIR}/Clang-CXX-TestableFeatures.cmake") set(Clang34_CXX14 "((__clang_major__ * 100) + __clang_minor__) >= 304 && __cplusplus > 201103L") # http://llvm.org/bugs/show_bug.cgi?id=19242 |