summary refs log tree commit diff
path: root/pkgs/servers/nosql
diff options
context:
space:
mode:
authorRobin Gloster <mail@glob.in>2016-04-18 13:00:40 +0000
committerRobin Gloster <mail@glob.in>2016-04-18 13:49:22 +0000
commitd020caa5b2eca90ea051403fbb4c52b99ee071b9 (patch)
treeba44ef1e784bca89e0df6b249956fd035b1d86e3 /pkgs/servers/nosql
parent3e68106afd95df012ddb548575f0133681687a90 (diff)
parent0729f606973870c03d21bb2f21b70d91216943ca (diff)
downloadnixlib-d020caa5b2eca90ea051403fbb4c52b99ee071b9.tar
nixlib-d020caa5b2eca90ea051403fbb4c52b99ee071b9.tar.gz
nixlib-d020caa5b2eca90ea051403fbb4c52b99ee071b9.tar.bz2
nixlib-d020caa5b2eca90ea051403fbb4c52b99ee071b9.tar.lz
nixlib-d020caa5b2eca90ea051403fbb4c52b99ee071b9.tar.xz
nixlib-d020caa5b2eca90ea051403fbb4c52b99ee071b9.tar.zst
nixlib-d020caa5b2eca90ea051403fbb4c52b99ee071b9.zip
Merge remote-tracking branch 'upstream/master' into hardened-stdenv
Diffstat (limited to 'pkgs/servers/nosql')
-rw-r--r--pkgs/servers/nosql/arangodb/default.nix3
-rw-r--r--pkgs/servers/nosql/mongodb/2.4.8.nix4
-rw-r--r--pkgs/servers/nosql/mongodb/default.nix20
-rw-r--r--pkgs/servers/nosql/mongodb/forget-build-dependencies.patch17
4 files changed, 34 insertions, 10 deletions
diff --git a/pkgs/servers/nosql/arangodb/default.nix b/pkgs/servers/nosql/arangodb/default.nix
index 7ccd29bc783a..ffcd507653a0 100644
--- a/pkgs/servers/nosql/arangodb/default.nix
+++ b/pkgs/servers/nosql/arangodb/default.nix
@@ -15,9 +15,10 @@ stdenv.mkDerivation rec {
     openssl zlib python gyp go readline
   ];
 
+  configureFlagsArray = [ "--with-openssl-lib=${openssl.out}/lib" ];
+
   NIX_CFLAGS_COMPILE = "-Wno-error=strict-overflow";
 
-  configureFlagsArray = [ "--with-openssl-lib=${openssl}/lib" ];
 
   patchPhase = ''
     substituteInPlace 3rdParty/V8-3.31.74.1/build/gyp/gyp --replace /bin/bash ${bash}/bin/bash
diff --git a/pkgs/servers/nosql/mongodb/2.4.8.nix b/pkgs/servers/nosql/mongodb/2.4.8.nix
index 448d260bdb9d..ccd64da3c6a8 100644
--- a/pkgs/servers/nosql/mongodb/2.4.8.nix
+++ b/pkgs/servers/nosql/mongodb/2.4.8.nix
@@ -2,7 +2,7 @@
 # by elitak for use with the Ubiquiti mFi Controller package, which breaks at
 # runtime on mongodb3+ and jre8+. We will need to pull in sufficiently old
 # versions of boost and v8 to build this, as well.
-{ stdenv, fetchurl, scons, boost155, v8_3_14, gperftools, pcre, snappy }:
+{ stdenv, fetchurl, scons, boost155, v8_3_14, gperftools, pcre-cpp, snappy }:
 with stdenv.lib;
 let
   version = "2.4.8";
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
     sha256 = "1p6gnharypglfp39halp72fig96fqjhakyy7m76a1prxwpjkqw7x";
   };
 
-  nativeBuildInputs = [ scons boost155 v8_3_14 gperftools pcre snappy ];
+  nativeBuildInputs = [ scons boost155 v8_3_14 gperftools pcre-cpp snappy ];
 
   postPatch = ''
     substituteInPlace SConstruct \
diff --git a/pkgs/servers/nosql/mongodb/default.nix b/pkgs/servers/nosql/mongodb/default.nix
index 1ef79f2ebcdc..fd28776909c7 100644
--- a/pkgs/servers/nosql/mongodb/default.nix
+++ b/pkgs/servers/nosql/mongodb/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, fetchpatch, scons, boost, gperftools, pcre, snappy
+{ stdenv, fetchurl, fetchpatch, scons, boost, gperftools, pcre-cpp, snappy
 , zlib, libyamlcpp, sasl, openssl, libpcap, wiredtiger
 }:
 
@@ -21,7 +21,7 @@ let version = "3.2.1";
     ] ++ optionals stdenv.isLinux [ "tcmalloc" ];
 
     buildInputs = [
-      sasl boost gperftools pcre snappy
+      sasl boost gperftools pcre-cpp snappy
       zlib libyamlcpp sasl openssl libpcap
     ]; # ++ optional stdenv.is64bit wiredtiger;
 
@@ -50,12 +50,18 @@ in stdenv.mkDerivation rec {
   nativeBuildInputs = [ scons ];
   inherit buildInputs;
 
-  # 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.
   patches =
-    [ ./valgrind-include.patch
+    [
+      # 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.
+      ./forget-build-dependencies.patch
       (fetchpatch {
         url = https://projects.archlinux.org/svntogit/community.git/plain/trunk/boost160.patch?h=packages/mongodb;
         name = "boost160.patch";
diff --git a/pkgs/servers/nosql/mongodb/forget-build-dependencies.patch b/pkgs/servers/nosql/mongodb/forget-build-dependencies.patch
new file mode 100644
index 000000000000..ca2c043deb2d
--- /dev/null
+++ b/pkgs/servers/nosql/mongodb/forget-build-dependencies.patch
@@ -0,0 +1,17 @@
+--- a/site_scons/mongo_scons_utils.py
++++ b/site_scons/mongo_scons_utils.py
+@@ -84,14 +84,11 @@
+ def default_buildinfo_environment_data():
+     return (
+         ('distmod', '$MONGO_DISTMOD', True, True,),
+         ('distarch', '$MONGO_DISTARCH', True, True,),
+         ('cc', '$CC_VERSION', True, False,),
+-        ('ccflags', '$CCFLAGS', True, False,),
+         ('cxx', '$CXX_VERSION', True, False,),
+-        ('cxxflags', '$CXXFLAGS', True, False,),
+-        ('linkflags', '$LINKFLAGS', True, False,),
+         ('target_arch', '$TARGET_ARCH', True, True,),
+         ('target_os', '$TARGET_OS', True, False,),
+     )
+ 
+ # If you want buildInfo and --version to be relatively empty, set