diff options
Diffstat (limited to 'pkgs/servers/nosql/mongodb/mongodb.nix')
-rw-r--r-- | pkgs/servers/nosql/mongodb/mongodb.nix | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/pkgs/servers/nosql/mongodb/mongodb.nix b/pkgs/servers/nosql/mongodb/mongodb.nix index 801ee28303f07..2b304aa212eef 100644 --- a/pkgs/servers/nosql/mongodb/mongodb.nix +++ b/pkgs/servers/nosql/mongodb/mongodb.nix @@ -1,6 +1,6 @@ { lib , stdenv -, fetchurl +, fetchFromGitHub , buildPackages , boost , gperftools @@ -29,6 +29,7 @@ with lib; { version, sha256, patches ? [] , license ? lib.licenses.sspl +, avxSupport ? stdenv.hostPlatform.avxSupport }: let @@ -63,8 +64,10 @@ in stdenv.mkDerivation rec { inherit version; pname = "mongodb"; - src = fetchurl { - url = "https://fastdl.mongodb.org/src/mongodb-src-r${version}.tar.gz"; + src = fetchFromGitHub { + owner = "mongodb"; + repo = "mongo"; + rev = "r${version}"; inherit sha256; }; @@ -112,6 +115,9 @@ in stdenv.mkDerivation rec { # don't fail by default on i686 substituteInPlace src/mongo/db/storage/storage_options.h \ --replace 'engine("wiredTiger")' 'engine("mmapv1")' + '' + lib.optionalString (!avxSupport) '' + substituteInPlace SConstruct \ + --replace-fail "default=['+sandybridge']," 'default=[],' ''; env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isClang @@ -127,6 +133,7 @@ in stdenv.mkDerivation rec { "--disable-warnings-as-errors" "VARIANT_DIR=nixos" # Needed so we don't produce argument lists that are too long for gcc / ld "--link-model=static" + "MONGO_VERSION=${version}" ] ++ map (lib: "--use-system-${lib}") system-libraries; @@ -168,7 +175,7 @@ in stdenv.mkDerivation rec { hardeningEnable = [ "pie" ]; meta = { - description = "A scalable, high-performance, open source NoSQL database"; + description = "Scalable, high-performance, open source NoSQL database"; homepage = "http://www.mongodb.org"; inherit license; |