summaryrefslogtreecommitdiffstats
path: root/platform/server/detect.py
diff options
context:
space:
mode:
authorRémi Verschelde <remi@verschelde.fr>2021-03-02 18:38:02 +0100
committerGitHub <noreply@github.com>2021-03-02 18:38:02 +0100
commit0c61e9dd081ac5da65276923caaef45f4edbc3a0 (patch)
treed6aac1b2912a62ceca20ffcbb36bf8e20b39f015 /platform/server/detect.py
parent8c45b1d61ca7e29f39dd5cd1a765f81b2780547b (diff)
parentda35cd2f00414f6294483724297046c0c5ea91e8 (diff)
downloadredot-engine-0c61e9dd081ac5da65276923caaef45f4edbc3a0.tar.gz
Merge pull request #43947 from winterpixelgames/PR-allow-msan-sanitizer-build-option
consolidating sanitizers and adding MSAN option on platforms that sup…
Diffstat (limited to 'platform/server/detect.py')
-rw-r--r--platform/server/detect.py7
1 files changed, 6 insertions, 1 deletions
diff --git a/platform/server/detect.py b/platform/server/detect.py
index 5be7e81e7a..c799ce03e1 100644
--- a/platform/server/detect.py
+++ b/platform/server/detect.py
@@ -39,6 +39,7 @@ def get_opts():
BoolVariable("use_lsan", "Use LLVM/GCC compiler leak sanitizer (LSAN))", False),
BoolVariable("use_tsan", "Use LLVM/GCC compiler thread sanitizer (TSAN))", False),
BoolVariable("debug_symbols", "Add debugging symbols to release/release_debug builds", True),
+ BoolVariable("use_msan", "Use LLVM/GCC compiler memory sanitizer (MSAN))", False),
BoolVariable("separate_debug_symbols", "Create a separate file containing debugging symbols", False),
BoolVariable("execinfo", "Use libexecinfo on systems where glibc is not available", False),
]
@@ -99,7 +100,7 @@ def configure(env):
env.Append(CCFLAGS=["-ftest-coverage", "-fprofile-arcs"])
env.Append(LINKFLAGS=["-ftest-coverage", "-fprofile-arcs"])
- if env["use_ubsan"] or env["use_asan"] or env["use_lsan"] or env["use_tsan"]:
+ if env["use_ubsan"] or env["use_asan"] or env["use_lsan"] or env["use_tsan"] or env["use_msan"]:
env.extra_suffix += "s"
if env["use_ubsan"]:
@@ -118,6 +119,10 @@ def configure(env):
env.Append(CCFLAGS=["-fsanitize=thread"])
env.Append(LINKFLAGS=["-fsanitize=thread"])
+ if env["use_msan"]:
+ env.Append(CCFLAGS=["-fsanitize=memory"])
+ env.Append(LINKFLAGS=["-fsanitize=memory"])
+
if env["use_lto"]:
env.Append(CCFLAGS=["-flto"])
if not env["use_llvm"] and env.GetOption("num_jobs") > 1: