# DEAL_II_HAVE_CXX17
#
# DEAL_II_HAVE_ATTRIBUTE_FALLTHROUGH
-# DEAL_II_HAVE_CXX11_IS_TRIVIALLY_COPYABLE
# DEAL_II_HAVE_CXX14_CONSTEXPR
# DEAL_II_HAVE_FP_EXCEPTIONS
# DEAL_II_HAVE_COMPLEX_OPERATOR_OVERLOADS
UNSET_IF_CHANGED(CHECK_CXX_FEATURES_FLAGS_SAVED
"${CMAKE_REQUIRED_FLAGS}"
DEAL_II_HAVE_ATTRIBUTE_FALLTHROUGH
- DEAL_II_HAVE_CXX11_IS_TRIVIALLY_COPYABLE
DEAL_II_HAVE_CXX14_CONSTEXPR
DEAL_II_HAVE_FP_EXCEPTIONS
DEAL_II_HAVE_COMPLEX_OPERATOR_OVERLOADS
ADD_FLAGS(CMAKE_REQUIRED_FLAGS "${DEAL_II_CXX_VERSION_FLAG}")
-CHECK_CXX_SOURCE_COMPILES(
- "
- #include <type_traits>
- int main(){ std::is_trivially_copyable<int> bob; }
- "
- DEAL_II_HAVE_CXX11_IS_TRIVIALLY_COPYABLE)
-
RESET_CMAKE_REQUIRED()
#
ENDIF()
ENDIF()
- #
- # Workaround for an issue with C++11 mode, non gcc-compilers and missing
- # template<typename T> std::is_trivially_copyable<T>
- #
- IF( NOT DEAL_II_HAVE_CXX11_IS_TRIVIALLY_COPYABLE AND
- NOT CMAKE_CXX_COMPILER_ID MATCHES "GNU" )
- LIST(APPEND THREADS_DEFINITIONS "TBB_IMPLEMENT_CPP0X=1")
- LIST(APPEND THREADS_USER_DEFINITIONS "TBB_IMPLEMENT_CPP0X=1")
- ENDIF()
-
SETUP_THREADING()
LIST(APPEND THREADS_LIBRARIES ${TBB_LIBRARIES})
#cmakedefine DEAL_II_HAVE_CXX17
-#cmakedefine DEAL_II_HAVE_CXX11_IS_TRIVIALLY_COPYABLE
#cmakedefine DEAL_II_HAVE_CXX14_CONSTEXPR
#cmakedefine DEAL_II_HAVE_FP_EXCEPTIONS
#cmakedefine DEAL_II_HAVE_COMPLEX_OPERATOR_OVERLOADS