From a0897d557dfc8c2b8a84b2cf575c56fdefa5cea4 Mon Sep 17 00:00:00 2001 From: kindsenior Date: Sun, 12 Jun 2022 16:02:59 +0900 Subject: [PATCH] [CMakeLists.txt] add address sanitizer option --- CMakeLists.txt | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index 6bf71b0752d..d00e9a7d0a6 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -17,6 +17,21 @@ option(ENABLE_INSTALL_RPATH "Enable RPATH setting for installed binary files" OF set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib") set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE) +option(USE_SANITIZER "Enable address sanitizer" OFF) +message(STATUS "USE_SANITIZER: ${USE_SANITIZER}") +if(USE_SANITIZER) + message(STATUS "Enable Sanitizer") + set(SANITIZE_FLAGS "-fsanitize=address") + set(CMAKE_CXX_FLAGS "${SANITIZE_FLAGS}") + set(CMAKE_C_FLAGS "${SANITIZE_FLAGS}") + set(CMAKE_CXX_FLAGS_DEBUG "${SANITIZE_FLAGS}") + set(CMAKE_C_FLAGS_DEBUG "${SANITIZE_FLAGS}") + set(CMAKE_CXX_FLAGS_RELEASE "${SANITIZE_FLAGS}") + set(CMAKE_C_FLAGS_RELEASE "${SANITIZE_FLAGS}") + set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${SANITIZE_FLAGS}") + set(CMAKE_C_FLAGS_RELWITHDEBINFO "${SANITIZE_FLAGS}") +endif() + # commands if(UNIX) set(RMDIR rm -fr)