set (CMAKE_CONFIGURATION_TYPES Release Debug RelWithDebInfo CACHE INTERNAL "" FORCE)
# set using C++ standard
-set (BUILD_CPP_STANDARD "C++11" CACHE STRING "Select using c++ standard.")
-set_property(CACHE BUILD_CPP_STANDARD PROPERTY STRINGS "C++11" "C++14" "C++17" "C++20" "C++23")
+set (BUILD_CPP_STANDARD "C++17" CACHE STRING "Select using c++ standard.")
+set_property(CACHE BUILD_CPP_STANDARD PROPERTY STRINGS "C++17" "C++20" "C++23")
# Set desired C++ standard
-if ("${BUILD_CPP_STANDARD}" STREQUAL "C++11")
- set (CMAKE_CXX_STANDARD 11)
-elseif ("${BUILD_CPP_STANDARD}" STREQUAL "C++14")
- set (CMAKE_CXX_STANDARD 14)
-elseif ("${BUILD_CPP_STANDARD}" STREQUAL "C++17")
+if ("${BUILD_CPP_STANDARD}" STREQUAL "C++17")
set (CMAKE_CXX_STANDARD 17)
elseif ("${BUILD_CPP_STANDARD}" STREQUAL "C++20")
set (CMAKE_CXX_STANDARD 20)
elseif ("${BUILD_CPP_STANDARD}" STREQUAL "C++23")
set (CMAKE_CXX_STANDARD 23)
else ()
- message (FATAL_ERROR, "misprint in c++ standard name")
+ set (CMAKE_CXX_STANDARD 17)
+ message (WARNING "misprint in c++ standard name, C++17 is used")
endif()
set (CMAKE_CXX_STANDARD_REQUIRED ON)