Pass --allocator=tcmalloc (default on Linux) or --allocator=system (default elsewhere) to control which allocator is used, and --use-system-tcmalloc to use the system- installed tcmalloc instead of the one in the mongo source tree if you use --allocator=tcmalloc.
52 lines
2.0 KiB
Python
52 lines
2.0 KiB
Python
# -*- mode: python -*-
|
|
|
|
Import( "env use_system_version_of_library windows" )
|
|
|
|
env.SConscript( [
|
|
"murmurhash3/SConscript",
|
|
] )
|
|
|
|
if use_system_version_of_library("pcre"):
|
|
env.StaticLibrary( "pcrecpp", ['shim_pcrecpp.cc'],
|
|
SYSLIBDEPS=[ 'pcre' , 'pcrecpp' ] )
|
|
else:
|
|
env.SConscript('pcre-${PCRE_VERSION}/SConscript')
|
|
env.StaticLibrary( "pcrecpp", ['shim_pcrecpp.cc'],
|
|
LIBDEPS=[ 'pcre-${PCRE_VERSION}/pcrecpp' ] )
|
|
|
|
if use_system_version_of_library("boost"):
|
|
env.StaticLibrary("shim_boost", ['shim_boost.cpp'])
|
|
else:
|
|
env.SConscript('boost/SConscript')
|
|
env.StaticLibrary( "shim_boost", ['shim_boost.cpp'],
|
|
LIBDEPS=[ 'boost/boost_program_options',
|
|
'boost/boost_filesystem',
|
|
'boost/boost_thread',
|
|
'boost/boost_system',
|
|
] )
|
|
if use_system_version_of_library("snappy"):
|
|
env.StaticLibrary("shim_snappy", ['shim_snappy.cpp'],
|
|
SYSLIBDEPS=['snappy'])
|
|
else:
|
|
env.Append(CPPPATH='$BUILD_DIR/third_party/snappy')
|
|
env.SConscript('snappy/SConscript')
|
|
env.StaticLibrary('shim_snappy', ['shim_snappy.cpp'], LIBDEPS=['snappy/snappy'])
|
|
|
|
if use_system_version_of_library("sm"):
|
|
env.StaticLibrary("shim_spidermonkey", ['shim_spidermonkey.cpp'], SYSLIBDEPS=['js'])
|
|
else:
|
|
if windows:
|
|
env.Append(CPPDEFINES=['XP_WIN'])
|
|
else:
|
|
env.Append(CPPDEFINES=['XP_UNIX'])
|
|
env.Append(CPPPATH='$BUILD_DIR/third_party/js-1.7')
|
|
env.SConscript('js-1.7/SConscript')
|
|
env.StaticLibrary('shim_spidermonkey', ['shim_spidermonkey.cpp'], LIBDEPS=['js-1.7/js'])
|
|
|
|
if (GetOption("allocator") != "tcmalloc") or use_system_version_of_library("tcmalloc"):
|
|
env.StaticLibrary("shim_allocator", "shim_allocator.cpp")
|
|
else:
|
|
env.SConscript('gperftools-2.0/SConscript')
|
|
env.StaticLibrary('shim_allocator', 'shim_allocator.cpp',
|
|
LIBDEPS=['gperftools-2.0/tcmalloc_minimal'])
|