Browse Source

Tests: use cxx_auto_type only if actually available

The presence of CMAKE_CXX_COMPILE_FEATURES doesn't mean cxx_auto_type is always
available.
Rolf Eike Beer 8 years ago
parent
commit
ef47272b07

+ 1 - 1
Tests/CMakeCommands/target_compile_features/CMakeLists.txt

@@ -26,7 +26,7 @@ if (CMAKE_C_COMPILE_FEATURES)
   target_link_libraries(restrict_user lib_restrict)
 endif()
 
-if (CMAKE_CXX_COMPILE_FEATURES)
+if (CMAKE_CXX_COMPILE_FEATURES AND ";${CMAKE_CXX_COMPILE_FEATURES};" MATCHES ";cxx_auto_type;")
   if (CMAKE_C_COMPILE_FEATURES)
     set(target_suffix _cxx)
   endif()

+ 3 - 0
Tests/CompileFeatures/CMakeLists.txt

@@ -275,7 +275,10 @@ if (CMAKE_CXX_COMPILE_FEATURES)
       )
     endif()
   endif()
+endif ()
 
+# these tests only work if at least cxx_auto_type is available
+if (";${CMAKE_CXX_COMPILE_FEATURES};" MATCHES ";cxx_auto_type;")
   add_executable(CompileFeatures main.cpp)
   set_property(TARGET CompileFeatures
     PROPERTY COMPILE_FEATURES "cxx_auto_type"