From e612c2674ddedf4efde07bf2d24be2dc1a69ef85 Mon Sep 17 00:00:00 2001 From: "Igor S. Gerasimov" Date: Wed, 26 Nov 2025 13:32:02 +0100 Subject: [PATCH 1/3] Use std::string instead of std::format: Apple Clang 15 does not support it --- profiler/helpers/embed.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/profiler/helpers/embed.cpp b/profiler/helpers/embed.cpp index 7c926c68..1e84a10a 100644 --- a/profiler/helpers/embed.cpp +++ b/profiler/helpers/embed.cpp @@ -1,6 +1,6 @@ -#include #include #include +#include #include "../../public/common/tracy_lz4hc.hpp" @@ -43,7 +43,7 @@ int main( int argc, char** argv ) const auto lz4sz = tracy::LZ4_compress_HC( (const char*)data, (char*)lz4data, sz, lz4szMax, 6 ); delete[] data; - FILE* hdr = fopen( std::format( "{}.hpp", destination ).c_str(), "wb" ); + FILE* hdr = fopen( ( std::string(destination) + ".hpp" ).c_str(), "wb" ); fprintf( hdr, "// This file is generated by embed tool, do not modify\n" ); fprintf( hdr, "// Source: %s\n\n", source ); fprintf( hdr, "#pragma once\n\n" ); @@ -56,7 +56,7 @@ int main( int argc, char** argv ) fprintf( hdr, "}\n" ); fclose( hdr ); - FILE* cpp = fopen( std::format( "{}.cpp", destination ).c_str(), "wb" ); + FILE* cpp = fopen( ( std::string(destination) + ".cpp" ).c_str(), "wb" ); fprintf( cpp, "// This file is generated by embed tool, do not modify\n" ); fprintf( cpp, "// Source: %s\n\n", source ); fprintf( cpp, "#include \"%s.hpp\"\n\n", destination ); From de3cca3b971f31e254d4e93269e056225473a448 Mon Sep 17 00:00:00 2001 From: "Igor S. Gerasimov" Date: Wed, 26 Nov 2025 13:34:17 +0100 Subject: [PATCH 2/3] Construct full type: std::vector::emplace_back is not available --- profiler/src/profiler/TracyLlmTools.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/profiler/src/profiler/TracyLlmTools.cpp b/profiler/src/profiler/TracyLlmTools.cpp index 55983abb..db51d6a7 100644 --- a/profiler/src/profiler/TracyLlmTools.cpp +++ b/profiler/src/profiler/TracyLlmTools.cpp @@ -196,7 +196,7 @@ TracyLlmTools::TracyLlmTools( Worker& worker ) for( size_t i=1; i Date: Wed, 26 Nov 2025 14:14:08 +0100 Subject: [PATCH 3/3] Tracy can not be compiled for too old target --- cmake/config.cmake | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/cmake/config.cmake b/cmake/config.cmake index d563c225..611506fc 100644 --- a/cmake/config.cmake +++ b/cmake/config.cmake @@ -24,6 +24,12 @@ endif() if(CMAKE_SYSTEM_NAME STREQUAL "Darwin") if(CMAKE_CXX_COMPILER_ID STREQUAL "AppleClang") + if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS "15") + message(FATAL_ERROR "Apple Clang 15 or newer is required.") + elseif(NOT CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL "16") + # AppleClang 15 has issues with to_chars in if target is too old + add_compile_options($<$:-mmacosx-version-min=13.3>) + endif() add_compile_options($<$:-fexperimental-library>) endif() endif()