From 254feb0acd0d8db95fbb2e435c0a1086ebf8cd35 Mon Sep 17 00:00:00 2001 From: iphydf Date: Fri, 26 Aug 2016 15:43:29 +0100 Subject: Add address sanitizer option to cmake file. --- CMakeLists.txt | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index 52c8b10f..7e560198 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -26,6 +26,18 @@ if(ASSOC_DHT) add_definitions(-DENABLE_ASSOC_DHT=1) endif() +option(ASAN "Enable address-sanitizer to detect invalid memory accesses" OFF) +if(ASAN) + include(CheckCCompilerFlag) + set(SAFE_CMAKE_REQUIRED_LIBRARIES "${CMAKE_REQUIRED_LIBRARIES}") + set(CMAKE_REQUIRED_LIBRARIES "-fsanitize=address") + check_c_compiler_flag("-fsanitize=address" HAVE_ASAN) + if(HAVE_ASAN) + set(CMAKE_C_FLAGS "-fsanitize=address") + endif() + set(CMAKE_REQUIRED_LIBRARIES "${SAFE_CMAKE_REQUIRED_LIBRARIES}") +endif() + find_package(PkgConfig REQUIRED) find_package(Threads REQUIRED) -- cgit v1.2.3