From 8d33da1fab53c362d82b9b2fcdcdb02ba4a3a006 Mon Sep 17 00:00:00 2001 From: derrod Date: Sun, 2 Jul 2023 06:09:20 +0200 Subject: [PATCH] cmake: Disable char8_t when using C++20 --- cmake/common/compiler_common.cmake | 4 ++++ cmake/windows/compilerconfig.cmake | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/cmake/common/compiler_common.cmake b/cmake/common/compiler_common.cmake index cc584744d..885b8e5de 100644 --- a/cmake/common/compiler_common.cmake +++ b/cmake/common/compiler_common.cmake @@ -74,6 +74,10 @@ set(_obs_clang_cxx_options -Werror=block-capture-autoreleasing -Wrange-loop-analysis) +if(CMAKE_CXX_STANDARD GREATER_EQUAL 20) + list(APPEND _obs_clang_cxx_options -fno-char8_t) +endif() + if(NOT DEFINED CMAKE_COMPILE_WARNING_AS_ERROR) set(CMAKE_COMPILE_WARNING_AS_ERROR ON) endif() diff --git a/cmake/windows/compilerconfig.cmake b/cmake/windows/compilerconfig.cmake index cd106609e..64f0e107a 100644 --- a/cmake/windows/compilerconfig.cmake +++ b/cmake/windows/compilerconfig.cmake @@ -37,6 +37,10 @@ set(_obs_msvc_c_options /Brepro /MP /permissive- /Zc:__cplusplus /Zc:preprocesso set(_obs_msvc_cpp_options /Brepro /MP /permissive- /Zc:__cplusplus /Zc:preprocessor) +if(CMAKE_CXX_STANDARD GREATER_EQUAL 20) + list(APPEND _obs_msvc_cpp_options /Zc:char8_t-) +endif() + add_compile_options( /W3 /utf-8