diff --git a/CMakeLists.txt b/CMakeLists.txt index 43d6f61f..2cf15c31 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -13,10 +13,14 @@ if(APPLE) enable_language(OBJC) endif() +set(SANITIZERS FALSE) set(CMAKE_CXX_STANDARD 23) set(CMAKE_CXX_STANDARD_REQUIRED ON) if(${CMAKE_BUILD_TYPE} MATCHES Release OR ${CMAKE_BUILD_TYPE} MATCHES RelWithDebInfo) - set(CMAKE_INTERPROCEDURAL_OPTIMIZATION TRUE) + if(NOT SANITIZERS) + message("LTO ON") + set(CMAKE_INTERPROCEDURAL_OPTIMIZATION TRUE) + endif() endif() include_directories( @@ -147,7 +151,7 @@ endif() target_link_libraries(kaizen PUBLIC imgui SDL3::SDL3 SDL3::SDL3-static cflags::cflags ${MIO_LIB} parallel-rdp capstone backend) target_compile_definitions(kaizen PUBLIC SDL_MAIN_HANDLED) -if (${CMAKE_BUILD_TYPE} MATCHES Debug) +if (SANITIZERS) target_compile_options(kaizen PUBLIC -fsanitize=undefined -fsanitize=address) target_link_options(kaizen PUBLIC -fsanitize=undefined -fsanitize=address) endif ()