diff --git a/SConstruct b/SConstruct index bb14ca1091162..0868846dba855 100644 --- a/SConstruct +++ b/SConstruct @@ -1114,17 +1114,21 @@ if link_model.startswith("dynamic"): env['LIBDEPS_TAG_EXPANSIONS'].append(libdeps_tags_expand_incomplete) else: env.AppendUnique(SHLINKFLAGS=["-Wl,--no-as-needed"]) - if link_model == "dynamic-strict": - env.AppendUnique(SHLINKFLAGS=["-Wl,-z,defs"]) - else: - # On BFD/gold linker environments, which are not strict by - # default, we need to add a flag when libraries are not - # tagged incomplete. - def libdeps_tags_expand_incomplete(source, target, env, for_signature): - if 'incomplete' not in target[0].get_env().get("LIBDEPS_TAGS", []): - return ["-Wl,-z,defs"] - return [] - env['LIBDEPS_TAG_EXPANSIONS'].append(libdeps_tags_expand_incomplete) + + # Using zdefs doesn't work at all with the sanitizers + if not has_option('sanitize'): + + if link_model == "dynamic-strict": + env.AppendUnique(SHLINKFLAGS=["-Wl,-z,defs"]) + else: + # On BFD/gold linker environments, which are not strict by + # default, we need to add a flag when libraries are not + # tagged incomplete. + def libdeps_tags_expand_incomplete(source, target, env, for_signature): + if 'incomplete' not in target[0].get_env().get("LIBDEPS_TAGS", []): + return ["-Wl,-z,defs"] + return [] + env['LIBDEPS_TAG_EXPANSIONS'].append(libdeps_tags_expand_incomplete) if optBuild: env.SetConfigHeaderDefine("MONGO_CONFIG_OPTIMIZED_BUILD") diff --git a/etc/ubsan.blacklist b/etc/ubsan.blacklist index abd687e156426..40791da4bfe51 100644 --- a/etc/ubsan.blacklist +++ b/etc/ubsan.blacklist @@ -1 +1,16 @@ -src:src/third_party/* +# Don't UBSAN most of third_party, but do ubsan WT +src:src/third_party/IntelRDFPMathLib20U1/* +src:src/third_party/asio-asio-1-11-0/* +src:src/third_party/boost-1.56.0/* +src:src/third_party/gperftools-2.2/* +src:src/third_party/libstemmer_c/* +src:src/third_party/mozjs-38/* +src:src/third_party/murmurhash3/* +src:src/third_party/pcre-8.36/* +src:src/third_party/pcre-8.37/* +src:src/third_party/s2/* +src:src/third_party/snappy-1.1.2/* +src:src/third_party/tz/* +src:src/third_party/unicode-8.0.0/* +src:src/third_party/yaml-cpp-0.5.1/* +src:src/third_party/zlib-1.2.8/* diff --git a/src/mongo/s/catalog/legacy/SConscript b/src/mongo/s/catalog/legacy/SConscript index 01f04d22bf1da..dfca5d3b84fab 100644 --- a/src/mongo/s/catalog/legacy/SConscript +++ b/src/mongo/s/catalog/legacy/SConscript @@ -15,6 +15,7 @@ env.Library( 'legacy_dist_lock_pinger.cpp', ], LIBDEPS=[ + '$BUILD_DIR/mongo/executor/network_interface', '$BUILD_DIR/mongo/s/catalog/catalog_manager', '$BUILD_DIR/mongo/s/catalog/dist_lock_manager', ],