diff --git a/cmake/Modules/OpmInit.cmake b/cmake/Modules/OpmInit.cmake index 0bdc2e51f..0aa725767 100644 --- a/cmake/Modules/OpmInit.cmake +++ b/cmake/Modules/OpmInit.cmake @@ -135,6 +135,18 @@ if (NOT USE_MPI) set (CMAKE_DISABLE_FIND_PACKAGE_MPI TRUE) endif () +# Compiler standard version needs to be requested here as prereqs is included +# before OpmLibMain and some tests need/use CXX_STANDARD_VERSION (e.g. pybind11) +# Languages and global compiler settings +if(CMAKE_VERSION VERSION_LESS 3.8) + message(WARNING "CMake version does not support c++17, guessing -std=c++17") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++17") +else() + set(CMAKE_CXX_STANDARD 17) + set(CMAKE_CXX_STANDARD_REQUIRED ON) + set(CMAKE_CXX_EXTENSIONS OFF) +endif() + # quadmath must be explicitly enabled # This needs to be in OpmInit as prereqs is called before OpmLibMain is included. option (USE_QUADMATH "Use high precision floating point library (slow)" OFF) diff --git a/cmake/Modules/OpmLibMain.cmake b/cmake/Modules/OpmLibMain.cmake index 84bb55e00..c87050c32 100644 --- a/cmake/Modules/OpmLibMain.cmake +++ b/cmake/Modules/OpmLibMain.cmake @@ -20,16 +20,6 @@ include (AddOptions) no_default_options () -# Languages and global compiler settings -if(CMAKE_VERSION VERSION_LESS 3.8) - message(WARNING "CMake version does not support c++17, guessing -std=c++17") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++17") -else() - set(CMAKE_CXX_STANDARD 17) - set(CMAKE_CXX_STANDARD_REQUIRED ON) - set(CMAKE_CXX_EXTENSIONS OFF) -endif() - # Various compiler extension checks include(OpmCompilerChecks)