From c456625ef2a7d4df173f43789e9cce3d04335aa9 Mon Sep 17 00:00:00 2001 From: Leonid Yuriev Date: Sun, 7 Nov 2021 02:17:26 +0300 Subject: [PATCH] mdbx-cmake: initial support for C++23. --- CMakeLists.txt | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index cf57d4bb..8a32f08e 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -334,12 +334,16 @@ list(FIND CMAKE_CXX_COMPILE_FEATURES cxx_std_11 HAS_CXX11) list(FIND CMAKE_CXX_COMPILE_FEATURES cxx_std_14 HAS_CXX14) list(FIND CMAKE_CXX_COMPILE_FEATURES cxx_std_17 HAS_CXX17) list(FIND CMAKE_CXX_COMPILE_FEATURES cxx_std_20 HAS_CXX20) +list(FIND CMAKE_CXX_COMPILE_FEATURES cxx_std_23 HAS_CXX23) if(NOT DEFINED MDBX_CXX_STANDARD) if(DEFINED ENV{CMAKE_CXX_STANDARD}) set(CMAKE_CXX_STANDARD $ENV{CMAKE_CXX_STANDARD}) endif() if(DEFINED CMAKE_CXX_STANDARD) set(MDBX_CXX_STANDARD ${CMAKE_CXX_STANDARD}) + elseif(NOT HAS_CXX23 LESS 0 + AND NOT (CMAKE_COMPILER_IS_CLANG AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 12)) + set(MDBX_CXX_STANDARD 23) elseif(NOT HAS_CXX20 LESS 0 AND NOT (CMAKE_COMPILER_IS_CLANG AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 9)) set(MDBX_CXX_STANDARD 20)