ad628ab557
mongodb is supposed to work on most unixes but its build system is quite picky and fragile. As it hasn't worked for non-linux platforms on NixOS yet, this change won't affect anyone and will remove the illusion that other platforms are currently supported.
50 lines
1.5 KiB
Nix
50 lines
1.5 KiB
Nix
{ stdenv, fetchurl, scons, which, v8, useV8 ? false}:
|
|
|
|
with stdenv.lib;
|
|
|
|
let installerPatch = fetchurl {
|
|
url = "https://jira.mongodb.org/secure/attachment/18160/SConscript.client.patch";
|
|
sha256 = "0n60fh2r8i7m6g113k0iw4adc8jv2by4ahrd780kxg47kzfgw06a";
|
|
};
|
|
|
|
in
|
|
stdenv.mkDerivation rec {
|
|
name = "mongodb-2.2.0";
|
|
|
|
src = fetchurl {
|
|
url = http://downloads.mongodb.org/src/mongodb-src-r2.2.0.tar.gz;
|
|
sha256 = "12v0cpq9j2gmagr9pbw08karqwqgl4j9r223w7x7sx5cfvj2cih8";
|
|
};
|
|
|
|
buildNativeInputs = [ scons which ];
|
|
|
|
patches = [ installerPatch ];
|
|
|
|
enableParallelBuilding = true;
|
|
|
|
postPatch = ''
|
|
substituteInPlace SConstruct --replace "Environment( BUILD_DIR" "Environment( ENV = os.environ, BUILD_DIR"
|
|
'' + optionalString useV8 ''
|
|
substituteInPlace SConstruct --replace "#/../v8" "${v8}" \
|
|
--replace "[\"${v8}/\"]" "[\"${v8}/lib\"]"
|
|
'';
|
|
|
|
buildPhase = ''
|
|
echo $PATH
|
|
scons all --cc=`which gcc` --cxx=`which g++` ${optionalString useV8 "--usev8"}
|
|
'';
|
|
|
|
installPhase = ''
|
|
scons install --cc=`which gcc` --cxx=`which g++` ${optionalString useV8 "--usev8"} --full --prefix=$out
|
|
rm -rf $out/lib64 # exact same files as installed in $out/lib
|
|
'';
|
|
|
|
meta = {
|
|
description = "a scalable, high-performance, open source NoSQL database";
|
|
homepage = http://www.mongodb.org;
|
|
license = "AGPLv3";
|
|
|
|
maintainers = [ stdenv.lib.maintainers.bluescreen303 ];
|
|
platforms = stdenv.lib.platforms.linux;
|
|
};
|
|
}
|