commit cfd8343: [Minor] Another try to use the proper linker
Vsevolod Stakhov
vsevolod at rspamd.com
Sun Jul 16 21:21:03 UTC 2023
Author: Vsevolod Stakhov
Date: 2023-07-16 22:18:57 +0100
URL: https://github.com/rspamd/rspamd/commit/cfd83431c040ffbd5dd946b4131a566195fe6d89 (HEAD -> master)
[Minor] Another try to use the proper linker
---
CMakeLists.txt | 1 +
cmake/Sanitizer.cmake | 1 -
cmake/Toolset.cmake | 6 ++++--
3 files changed, 5 insertions(+), 3 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index ac2585669..5ea71a060 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -85,6 +85,7 @@ ENDIF()
FIND_PACKAGE(PkgConfig REQUIRED)
FIND_PACKAGE(Perl REQUIRED)
+option (SANITIZE "Enable sanitizer: address, memory, undefined, leak (comma separated list)" "")
INCLUDE(Toolset)
INCLUDE(Sanitizer)
diff --git a/cmake/Sanitizer.cmake b/cmake/Sanitizer.cmake
index b13e418e3..c2587066f 100644
--- a/cmake/Sanitizer.cmake
+++ b/cmake/Sanitizer.cmake
@@ -1,6 +1,5 @@
# Ported from Clickhouse: https://github.com/ClickHouse/ClickHouse/blob/master/cmake/sanitize.cmake
-option (SANITIZE "Enable sanitizer: address, memory, undefined, leak (comma separated list)" "")
set (SAN_FLAGS "${SAN_FLAGS} -g -fno-omit-frame-pointer -DSANITIZER")
# O1 is normally set by clang, and -Og by gcc
if (COMPILER_GCC)
diff --git a/cmake/Toolset.cmake b/cmake/Toolset.cmake
index dfd1d3008..4e7017dfd 100644
--- a/cmake/Toolset.cmake
+++ b/cmake/Toolset.cmake
@@ -80,12 +80,14 @@ if(NOT LINKER_NAME)
if(LLD_PATH)
if (COMPILER_CLANG)
set(LINKER_NAME "lld")
- else()
+ elseif(NOT SANITIZE)
if(GOLD_PATH)
set(LINKER_NAME "gold")
else()
- message(STATUS "Use generic 'ld' as a linker")
+ message(STATUS "Use generic 'ld' as a linker: gold not found")
endif()
+ else()
+ message(STATUS "Use generic 'ld' as a linker: sanitizers are enabled")
endif()
elseif(GOLD_PATH)
set(LINKER_NAME "gold")
More information about the Commits
mailing list