diff --git a/pkgs/servers/nosql/mongodb/default.nix b/pkgs/servers/nosql/mongodb/default.nix index ee373878cb62..11720fb154fb 100644 --- a/pkgs/servers/nosql/mongodb/default.nix +++ b/pkgs/servers/nosql/mongodb/default.nix @@ -7,7 +7,7 @@ with stdenv.lib; -let version = "3.2.9"; +let version = "3.4.2"; system-libraries = [ "pcre" #"asio" -- XXX use package? @@ -43,8 +43,8 @@ in stdenv.mkDerivation rec { name = "mongodb-${version}"; src = fetchurl { - url = "http://downloads.mongodb.org/src/mongodb-src-r${version}.tar.gz"; - sha256 = "06q6j2bjy31pjwqws53wdpmn2x8w2hafzsnv1s3wx15pc9vq3y15"; + url = "https://fastdl.mongodb.org/src/mongodb-src-r${version}.tar.gz"; + sha256 = "0n8vspccrpd2z9xk3yjpz4gprd730dfacw914ksjzz9iadn0zdi9"; }; nativeBuildInputs = [ scons ]; @@ -52,12 +52,6 @@ in stdenv.mkDerivation rec { patches = [ - # When not building with the system valgrind, the build should use the - # vendored header file - regardless of whether or not we're using the system - # tcmalloc - so we need to lift the include path manipulation out of the - # conditional. - ./valgrind-include.patch - # MongoDB keeps track of its build parameters, which tricks nix into # keeping dependencies to build inputs in the final output. # We remove the build flags from buildInfo data. @@ -87,6 +81,8 @@ in stdenv.mkDerivation rec { --replace 'engine("wiredTiger")' 'engine("mmapv1")' ''; + NIX_CFLAGS_COMPILE = stdenv.lib.optional stdenv.cc.isClang "-Wno-unused-command-line-argument"; + buildPhase = '' scons -j $NIX_BUILD_CORES core --release ${other-args} ''; diff --git a/pkgs/servers/nosql/mongodb/valgrind-include.patch b/pkgs/servers/nosql/mongodb/valgrind-include.patch deleted file mode 100644 index 6b401525c080..000000000000 --- a/pkgs/servers/nosql/mongodb/valgrind-include.patch +++ /dev/null @@ -1,25 +0,0 @@ -diff --git a/src/mongo/util/SConscript b/src/mongo/util/SConscript -index 6add602..6e232d8 100644 ---- a/src/mongo/util/SConscript -+++ b/src/mongo/util/SConscript -@@ -241,9 +241,6 @@ if get_option('allocator') == 'tcmalloc': - # Add in the include path for our vendored tcmalloc. - tcmspEnv.InjectThirdPartyIncludePaths('gperftools') - -- # Include valgrind since tcmalloc disables itself while running under valgrind -- tcmspEnv.InjectThirdPartyIncludePaths('valgrind') -- - # If our changes to tcmalloc are ever upstreamed, this should become set based on a top - # level configure check, though its effects should still be scoped just to these files. - tcmspEnv.Append( -@@ -252,6 +249,10 @@ if get_option('allocator') == 'tcmalloc': - ] - ) - -+ # Include valgrind since tcmalloc disables itself while running under valgrind -+ if not use_system_version_of_library('valgrind'): -+ tcmspEnv.InjectThirdPartyIncludePaths('valgrind') -+ - tcmspEnv.Library( - target='tcmalloc_set_parameter', - source=[