]> https://gitweb.dealii.org/ - dealii.git/commitdiff
Update minimum compiler versions for C++17 15665/head
authorDaniel Arndt <arndtd@ornl.gov>
Thu, 6 Jul 2023 12:34:17 +0000 (08:34 -0400)
committerDaniel Arndt <arndtd@ornl.gov>
Thu, 6 Jul 2023 12:34:17 +0000 (08:34 -0400)
cmake/checks/check_01_cxx_features.cmake
cmake/setup_compiler_flags.cmake
cmake/setup_compiler_flags_gnu.cmake
cmake/setup_compiler_flags_intel.cmake
cmake/setup_compiler_flags_msvc.cmake

index da8701b5c8b9363772a98759ae59286f4273f781..6b15b29b93fe37bd088d2ef1ce1ac43f261c63f3 100644 (file)
@@ -327,7 +327,7 @@ if(NOT DEAL_II_HAVE_CXX17)
   message(FATAL_ERROR
     "\nThe current version of deal.II requires a compiler with enabled "
     "C++17 support. Make sure to use a modern enough compiler (GCC version "
-    "8 onwards, Clang version 8 onwards, or Microsoft MS VS 2019 onwards) "
+    "9 onwards, Clang version 10 onwards, or Microsoft MS VS 2019 onwards) "
     "and check that the compiler flag \"-std=\" is either unset, or set to "
     "at least c++17. Similarly, please make sure that the CMake variable "
     "CMAKE_CXX_STANDARD is either unset, or set at least to 17.\n\n"
index 39799f0eef59419fb9af2e6e4472321fac495904..b2acd57492a1772d1739c9a7bd68f0d63637de03 100644 (file)
@@ -42,7 +42,7 @@
 #   enable_if_supported(DEAL_II_CXX_FLAGS "-fpic")
 #   enable_if_links(DEAL_II_LINKER_FLAGS "-Wl,--as-needed")
 #
-# Checks for compiler features (such as C++14 support) and compiler
+# Checks for compiler features (such as C++17 support) and compiler
 # specific bugs that
 #   - usually set up further configuration (such as preprocessor
 #     definitions)
index aeed104ec6015b593c46ce5e4c299d6bcc550846..08eca34883e5000a1dcef238e6c225e8cba11a72 100644 (file)
 #
 
 if( CMAKE_CXX_COMPILER_ID MATCHES "GNU" AND
-    CMAKE_CXX_COMPILER_VERSION VERSION_LESS "5.0" )
+    CMAKE_CXX_COMPILER_VERSION VERSION_LESS "9.0" )
   message(FATAL_ERROR "\n"
-    "deal.II requires support for features of C++14 that are not present in\n"
-    "versions of GCC prior to 5.0."
+    "deal.II requires support for features of C++17 that are not present in\n"
+    "versions of GCC prior to 9.0."
     )
 endif()
 
 if( CMAKE_CXX_COMPILER_ID MATCHES "Clang" AND
-    CMAKE_CXX_COMPILER_VERSION VERSION_LESS "4.0" )
+    CMAKE_CXX_COMPILER_VERSION VERSION_LESS "9.0" )
   message(FATAL_ERROR "\n"
-    "deal.II requires support for features of C++14 that are not present in\n"
-    "versions of Clang prior to 4.0."
+    "deal.II requires support for features of C++17 that are not present in\n"
+    "versions of Clang prior to 10.0."
     )
 endif()
 
@@ -40,10 +40,10 @@ endif()
 # https://en.wikipedia.org/wiki/Xcode#Xcode_7.0_-_11.x_(since_Free_On-Device_Development)
 if (POLICY CMP0025)
   if( CMAKE_CXX_COMPILER_ID MATCHES "AppleClang" AND
-      CMAKE_CXX_COMPILER_VERSION VERSION_LESS "9.0" )
+      CMAKE_CXX_COMPILER_VERSION VERSION_LESS "12.0" )
     message(FATAL_ERROR "\n"
-      "deal.II requires support for features of C++14 that are not present in\n"
-      "versions of AppleClang prior to 9.0."
+      "deal.II requires support for features of C++17 that are not present in\n"
+      "versions of AppleClang prior to 12.0."
       )
   endif()
 endif()
index 845664505fbb74380b0f8535747496e3180ac797..061f14d2f358ffe3c639ffea8c3d752a80e5aa39 100644 (file)
 # editing this file.
 #
 
-if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS "15.0" )
+if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS "19.0" )
   message(WARNING "\n"
     "You're using an old version of the Intel C++ Compiler (icc/icpc)!\n"
-    "It is strongly recommended to use at least version 15.\n"
+    "It is strongly recommended to use at least version 19.\n"
     )
 endif()
 
index d4b4022215e4740bc2069afdf2c27c0dae206cfd..60454ae910230c2d87d8ba39b1fa67b6e86fc185 100644 (file)
 #                      #
 ########################
 
-# Notice how intelligent the version numbering of "Microsoft Visual Studio 2017
-# version 15.0" is, the c++ compiler is advertised as "MSVC++ 14.1" but the
-# version information is 19.10.x (this is the numbering used by CMake), see
+# Notice how intelligent the version numbering of "Microsoft Visual Studio 2019
+# version 16.0" is, the c++ compiler is advertised as "MSVC++ 14.20" but the
+# version information is 19.20.x (this is the numbering used by CMake), see
 # https://en.wikipedia.org/wiki/Microsoft_Visual_C%2B%2B#Internal_version_numbering
-if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS "19.10" )
+if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS "19.20" )
   message(FATAL_ERROR "\n"
     "You're using an old version of the Visual Studio C++ Compiler!\n"
-    "You need at least version Visual Studio 2017.\n"
+    "You need at least version Visual Studio 2019.\n"
     )
 endif()
 

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.

Douglas Adams


Typeset in Trocchi and Trocchi Bold Sans Serif.