summaryrefslogtreecommitdiff
path: root/src/third_party
diff options
context:
space:
mode:
authorAndrew Morrow <acm@mongodb.com>2016-04-20 11:47:33 -0400
committerAndrew Morrow <acm@mongodb.com>2016-04-20 15:52:49 -0400
commitc60dea0181a621169f5130bd2fc291185421001a (patch)
treea4d2332ce4656a29bd1e28ded7d6bb6e43b5480d /src/third_party
parent52a64459cc444522f2fdf68538ce5787f4e2c5d7 (diff)
downloadmongo-c60dea0181a621169f5130bd2fc291185421001a.tar.gz
SERVER-23826 Run the dbtests under UBSAN
Also cleans up some handling around how undefined behavior sanitizer finds the symbolizer, and suppresses some undefined behavior in mozjs that prevented the dbtests from passing. In addition, it was recognized that we can reduce the scope where we inhibit UBSANs checks for misaligned access to only wiredtiger, so do that too.
Diffstat (limited to 'src/third_party')
-rw-r--r--src/third_party/wiredtiger/SConscript6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/third_party/wiredtiger/SConscript b/src/third_party/wiredtiger/SConscript
index e1712895ce1..4b765261fc2 100644
--- a/src/third_party/wiredtiger/SConscript
+++ b/src/third_party/wiredtiger/SConscript
@@ -12,6 +12,12 @@ env.InjectThirdPartyIncludePaths(libraries=['snappy', 'zlib'])
if endian == "big":
env.Append(CPPDEFINES=[('WORDS_BIGENDIAN', 1)])
+# WiredTiger is not currently alignment clean; see
+# https://jira.mongodb.org/browse/WT-2402.
+sanitizer_list = get_option('sanitize')
+if sanitizer_list and ('undefined' in sanitizer_list.split(',')):
+ env.Append(CCFLAGS=["-fno-sanitize=alignment"])
+
env.Append(CPPPATH=[
"src/include",
])