about summary refs log tree commit diff
path: root/pkgs/servers/nosql/mongodb/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/servers/nosql/mongodb/default.nix')
-rw-r--r--pkgs/servers/nosql/mongodb/default.nix33
1 files changed, 22 insertions, 11 deletions
diff --git a/pkgs/servers/nosql/mongodb/default.nix b/pkgs/servers/nosql/mongodb/default.nix
index 11dff3244208..aa9da965d172 100644
--- a/pkgs/servers/nosql/mongodb/default.nix
+++ b/pkgs/servers/nosql/mongodb/default.nix
@@ -1,35 +1,46 @@
-{ stdenv, fetchurl, scons, boost, v8, gperftools, pcre, snappy }:
-
-let version = "2.4.5"; in stdenv.mkDerivation rec {
+{ stdenv, fetchurl, scons, boost, gperftools, pcre, snappy }:
+
+let version = "2.6.0";
+    system-libraries = [
+      "tcmalloc"
+      "pcre"
+      "boost"
+      "snappy"
+      # "v8"      -- mongo still bundles 3.12 and does not work with 3.15+
+      # "stemmer" -- not nice to package yet (no versioning, no makefile, no shared libs)
+      # "yaml"    -- it seems nixpkgs' yamlcpp (0.5.1) is problematic for mongo
+    ];
+    system-lib-args = stdenv.lib.concatStringsSep " "
+                          (map (lib: "--use-system-${lib}") system-libraries);
+
+in stdenv.mkDerivation rec {
   name = "mongodb-${version}";
 
   src = fetchurl {
     url = "http://downloads.mongodb.org/src/mongodb-src-r${version}.tar.gz";
-    sha256 = "01c7lb3jdr51gy7459vg5rg002xxg0mj79vlhy54n50kr31cnxmm";
+    sha256 = "066kppjdmdpadjr09ildla3aw42anzsc9pa55iwp3wa4rgqd2i33";
   };
 
-  nativeBuildInputs = [ scons boost v8 gperftools pcre snappy ];
+  nativeBuildInputs = [ scons boost gperftools pcre snappy ];
 
   postPatch = ''
     substituteInPlace SConstruct \
-        --replace "Environment( BUILD_DIR" "Environment( ENV = os.environ, BUILD_DIR" \
-        --replace 'CCFLAGS=["-Werror", "-pipe"]' 'CCFLAGS=["-pipe"]'
+        --replace "Environment( BUILD_DIR" "Environment( ENV = os.environ, BUILD_DIR"
   '';
 
   buildPhase = ''
-    export SCONSFLAGS="-j$NIX_BUILD_CORES"
-    scons all --use-system-all
+    scons all --release ${system-lib-args}
   '';
 
   installPhase = ''
     mkdir -p $out/lib
-    scons install --use-system-all --full --prefix=$out
+    scons install --release --prefix=$out ${system-lib-args}
   '';
 
   meta = {
     description = "a scalable, high-performance, open source NoSQL database";
     homepage = http://www.mongodb.org;
-    license = "AGPLv3";
+    license = stdenv.lib.licenses.agpl3;
 
     maintainers = [ stdenv.lib.maintainers.bluescreen303 ];
     platforms = stdenv.lib.platforms.linux;