1From 1a3bb66608b2f96407d14fe13b782626990060f1 Mon Sep 17 00:00:00 2001
2From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
3Date: Tue, 20 Nov 2018 08:20:13 +0100
4Subject: [PATCH] CMakeLists.txt: conditionally use -fsanitize=address
5
6Check that compiler supports -fsanitize=address before using it
7
8Fixes:
9 - http://autobuild.buildroot.net/results/221d6a418e75b39fe645c3a56cee676518d2cff6
10
11Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
12---
13 CMakeLists.txt | 6 +++++-
14 1 file changed, 5 insertions(+), 1 deletion(-)
15
16diff --git a/CMakeLists.txt b/CMakeLists.txt
17index 2e8e07e..c3f71ce 100644
18--- a/CMakeLists.txt
19+++ b/CMakeLists.txt
20@@ -17,7 +17,11 @@ if(COMPILER_SUPPORTS_WPEDANTIC)
21 set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wpedantic")
22 endif()
23 if(CMAKE_BUILD_TYPE STREQUAL "Debug")
24-    set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g3 -O0 -fsanitize=address")
25+    set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g3 -O0")
26+    check_c_compiler_flag("-fsanitize=address -Werror" COMPILER_SUPPORTS_SANITIZE_ADDRESS)
27+    if(COMPILER_SUPPORTS_SANITIZE_ADDRESS)
28+        set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fsanitize=address")
29+    endif()
30     set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,-no_pie,")
31 else()
32   if("${CMAKE_C_COMPILER_ID}" STREQUAL "Clang")
33--
342.14.1
35
36