diff options
author | Yorick van Pelt <yorick@yorickvanpelt.nl> | 2018-04-16 12:27:04 +0200 |
---|---|---|
committer | Yorick van Pelt <yorick@yorickvanpelt.nl> | 2018-04-16 12:31:26 +0200 |
commit | d536542ee4db45c1ccbe0d5448ea072496025043 (patch) | |
tree | 27266a890c082b2ca81b19b97423d4a3d758cd17 /pkgs/development/libraries/jemalloc | |
parent | 911a6da2fe2f3270707e2e9489eec7d4303f19a6 (diff) |
jemalloc: add 4.5.0 version
Diffstat (limited to 'pkgs/development/libraries/jemalloc')
-rw-r--r-- | pkgs/development/libraries/jemalloc/common.nix | 40 | ||||
-rw-r--r-- | pkgs/development/libraries/jemalloc/default.nix | 40 | ||||
-rw-r--r-- | pkgs/development/libraries/jemalloc/jemalloc450.nix | 6 |
3 files changed, 49 insertions, 37 deletions
diff --git a/pkgs/development/libraries/jemalloc/common.nix b/pkgs/development/libraries/jemalloc/common.nix new file mode 100644 index 000000000000..f4bd35ee56ee --- /dev/null +++ b/pkgs/development/libraries/jemalloc/common.nix @@ -0,0 +1,40 @@ +{ stdenv, fetchurl, fetchpatch, version, sha256 }: + +stdenv.mkDerivation rec { + name = "jemalloc-${version}"; + inherit version; + + src = fetchurl { + url = "https://github.com/jemalloc/jemalloc/releases/download/${version}/${name}.tar.bz2"; + inherit sha256; + }; + + # By default, jemalloc puts a je_ prefix onto all its symbols on OSX, which + # then stops downstream builds (mariadb in particular) from detecting it. This + # option should remove the prefix and give us a working jemalloc. + configureFlags = stdenv.lib.optional stdenv.isDarwin "--with-jemalloc-prefix=" + # jemalloc is unable to correctly detect transparent hugepage support on + # ARM (https://github.com/jemalloc/jemalloc/issues/526), and the default + # kernel ARMv6/7 kernel does not enable it, so we explicitly disable support + ++ stdenv.lib.optional stdenv.isArm "--disable-thp"; + doCheck = true; + + patches = stdenv.lib.optional stdenv.isAarch64 (fetchpatch { + url = "https://patch-diff.githubusercontent.com/raw/jemalloc/jemalloc/pull/1035.patch"; + sha256 = "02y0q3dp253bipxv4r954nqipbjbj92p6ww9bx5bk3d8pa81wkqq"; + }); + + enableParallelBuilding = true; + + meta = with stdenv.lib; { + homepage = http://jemalloc.net; + description = "General purpose malloc(3) implementation"; + longDescription = '' + malloc(3)-compatible memory allocator that emphasizes fragmentation + avoidance and scalable concurrency support. + ''; + license = licenses.bsd2; + platforms = platforms.all; + maintainers = with maintainers; [ wkennington ]; + }; +} diff --git a/pkgs/development/libraries/jemalloc/default.nix b/pkgs/development/libraries/jemalloc/default.nix index 0882431cc15b..c507eacbd002 100644 --- a/pkgs/development/libraries/jemalloc/default.nix +++ b/pkgs/development/libraries/jemalloc/default.nix @@ -1,40 +1,6 @@ { stdenv, fetchurl, fetchpatch }: - -stdenv.mkDerivation rec { - name = "jemalloc-${version}"; +import ./common.nix { + inherit stdenv fetchurl fetchpatch; version = "5.0.1"; - - src = fetchurl { - url = "https://github.com/jemalloc/jemalloc/releases/download/${version}/${name}.tar.bz2"; - sha256 = "4814781d395b0ef093b21a08e8e6e0bd3dab8762f9935bbfb71679b0dea7c3e9"; - }; - - # By default, jemalloc puts a je_ prefix onto all its symbols on OSX, which - # then stops downstream builds (mariadb in particular) from detecting it. This - # option should remove the prefix and give us a working jemalloc. - configureFlags = stdenv.lib.optional stdenv.isDarwin "--with-jemalloc-prefix=" - # jemalloc is unable to correctly detect transparent hugepage support on - # ARM (https://github.com/jemalloc/jemalloc/issues/526), and the default - # kernel ARMv6/7 kernel does not enable it, so we explicitly disable support - ++ stdenv.lib.optional stdenv.isArm "--disable-thp"; - doCheck = true; - - patches = stdenv.lib.optional stdenv.isAarch64 (fetchpatch { - url = "https://patch-diff.githubusercontent.com/raw/jemalloc/jemalloc/pull/1035.patch"; - sha256 = "02y0q3dp253bipxv4r954nqipbjbj92p6ww9bx5bk3d8pa81wkqq"; - }); - - enableParallelBuilding = true; - - meta = with stdenv.lib; { - homepage = http://jemalloc.net; - description = "General purpose malloc(3) implementation"; - longDescription = '' - malloc(3)-compatible memory allocator that emphasizes fragmentation - avoidance and scalable concurrency support. - ''; - license = licenses.bsd2; - platforms = platforms.all; - maintainers = with maintainers; [ wkennington ]; - }; + sha256 = "4814781d395b0ef093b21a08e8e6e0bd3dab8762f9935bbfb71679b0dea7c3e9"; } diff --git a/pkgs/development/libraries/jemalloc/jemalloc450.nix b/pkgs/development/libraries/jemalloc/jemalloc450.nix new file mode 100644 index 000000000000..a55270fcd021 --- /dev/null +++ b/pkgs/development/libraries/jemalloc/jemalloc450.nix @@ -0,0 +1,6 @@ +{ stdenv, fetchurl, fetchpatch }: +import ./common.nix { + inherit stdenv fetchurl fetchpatch; + version = "4.5.0"; + sha256 = "10373xhpc10pgmai9fkc1z0rs029qlcb3c0qfnvkbwdlcibdh2cl"; +} |