--- a/SConstruct 2012-08-29 16:21:35.107094792 +0200 +++ b/SConstruct 2012-08-29 19:09:16.964893217 +0200 @@ -677,7 +677,6 @@ # -Winvalid-pch Warn if a precompiled header (see Precompiled Headers) is found in the search path but can't be used. env.Append( CCFLAGS=["-fPIC", "-fno-strict-aliasing", - "-ggdb", "-pthread", "-Wall", "-Wsign-compare", @@ -685,14 +684,15 @@ "-Winvalid-pch"] ) # env.Append( " -Wconversion" ) TODO: this doesn't really work yet if linux: - env.Append( CCFLAGS=["-Werror", "-pipe"] ) + # env.Append( CPPDEFINES=["XP_UNIX=1"] ) if not has_option('clang'): env.Append( CCFLAGS=["-fno-builtin-memcmp"] ) # glibc's memcmp is faster than gcc's env.Append( CPPDEFINES=["_FILE_OFFSET_BITS=64"] ) - env.Append( CXXFLAGS=["-Wnon-virtual-dtor", "-Woverloaded-virtual"] ) + env.Append( CXXFLAGS=os.environ['CXXFLAGS']) + env.Append( LINKFLAGS=os.environ['LDFLAGS'] ) env.Append( LINKFLAGS=["-fPIC", "-pthread", "-rdynamic"] ) - env.Append( LIBS=[] ) + env.Append( LIBS=['pcre', 'pcrecpp', 'snappy'] ) #make scons colorgcc friendly for key in ('HOME', 'TERM'): @@ -703,6 +703,7 @@ if linux and has_option( "sharedclient" ): env.Append( LINKFLAGS=" -Wl,--as-needed -Wl,-zdefs " ) + env.Append( SHLINKFLAGS=" -Wl,-soname=libmongoclient.so " ) if linux and has_option( "gcov" ): env.Append( CXXFLAGS=" -fprofile-arcs -ftest-coverage " ) @@ -712,7 +713,7 @@ env.Append( CCFLAGS=["-O0", "-fstack-protector"] ) env['ENV']['GLIBCXX_FORCE_NEW'] = 1; # play nice with valgrind else: - env.Append( CCFLAGS=["-O3"] ) + env.Append( CXXFLAGS=["-O3"] ) if debugLogging: env.Append( CPPDEFINES=["_DEBUG"] );