diff --git a/CMakeLists.txt b/CMakeLists.txt index c3e07c9bf0..c0bb7616bb 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -69,8 +69,8 @@ elseif ((CMAKE_Fortran_COMPILER_ID STREQUAL "NVHPC") OR (CMAKE_Fortran_COMPILER_ message(FATAL_ERROR "ERROR: When using NVHPC, v21.7 or newer is required to build MFC.\n${__err_msg}") endif() - if ((CMAKE_Fortran_COMPILER_VERSION VERSION_LESS 23.11) AND (CMAKE_BUILD_TYPE STREQUAL "Debug") AND MFC_OpenACC) - message(FATAL_ERROR "ERROR: When using NVHPC, MFC with Debug and GPU options requires NVHPC v23.11 or newer.\n${__err_msg}") + if ((CMAKE_Fortran_COMPILER_VERSION VERSION_LESS 24.5) AND (CMAKE_BUILD_TYPE STREQUAL "Debug") AND MFC_OpenACC) + message(FATAL_ERROR "ERROR: When using NVHPC, MFC with Debug and GPU options requires NVHPC v24.5 or newer.\n${__err_msg}") endif() elseif (CMAKE_Fortran_COMPILER_ID STREQUAL "AppleClang" OR CMAKE_C_COMPILER_ID STREQUAL "AppleClang") message(FATAL_ERROR "ERROR: MFC does not support the Apple Clang compilers. Please consult the documentation.\n${__err_msg}") @@ -216,7 +216,9 @@ if (CMAKE_BUILD_TYPE STREQUAL "Release") # Enable LTO/IPO if supported if (CMAKE_Fortran_COMPILER_ID STREQUAL "NVHPC") if (MFC_Unified) - message(STATUS "IPO is not available with NVHPC using Unified Memory") + message(STATUS "LTO/IPO is not available with NVHPC using Unified Memory") + elseif(CMAKE_Fortran_COMPILER_VERSION VERSION_LESS "23.11") + message(STATUS "LTO/IPO is not supported in NVHPC Version < 23.11. Use a newer version of NVHPC for best performance.") else() message(STATUS "Performing IPO using -Mextract followed by -Minline") set(NVHPC_USE_TWO_PASS_IPO TRUE)