diff options
author | Andrew Morrow <acm@10gen.com> | 2013-10-14 00:43:24 -0400 |
---|---|---|
committer | Andrew Morrow <acm@10gen.com> | 2013-10-14 12:03:29 -0400 |
commit | 486efd8f13fcfc433821451f13844c8071aa5b62 (patch) | |
tree | 16be5d9aef69f0c5a08699edb0bde55a891e86df /src | |
parent | a428f58a6fd4f9497b60b10fa749e5cf2eec7b7c (diff) | |
download | mongo-486efd8f13fcfc433821451f13844c8071aa5b62.tar.gz |
SERVER-11169 Always link boost symbols into dll on windows
Diffstat (limited to 'src')
-rw-r--r-- | src/SConscript.client | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/SConscript.client b/src/SConscript.client index 79e765d80a4..68bab4da92c 100644 --- a/src/SConscript.client +++ b/src/SConscript.client @@ -221,9 +221,13 @@ if buildShared: sharedLibEnv = env.Clone() sharedLibEnv.AppendUnique(LIBS=mongoClientSysLibDeps) - # Attach the shim only if we are using the external libraries so that we pick up what - # configure found for us. - if use_system_version_of_library("boost"): + # On windows, we always want to attach the shim, since independently of whether we are + # using the system or the vendored boost, the DLL must have complete symbols. For unix like + # systems, attach the shim only if we are using the external libraries so that we pick up + # what configure found for us. Otherwise, produce a dynamic object in which the boost + # symbols are undefined, ensuring that we pass any necessary OS flags to produce such a + # library. + if windows or use_system_version_of_library("boost"): sharedLibEnv.AppendUnique(LIBDEPS=mongoClientLibDeps) if linux: sharedLibEnv.AppendUnique(SHLINKFLAGS=["-Wl,--as-needed", "-Wl,-zdefs"]) |