56 lines
1.5 KiB
Nix
56 lines
1.5 KiB
Nix
|
{ stdenv, fetchurl, kernel, perl, makeWrapper, autoconf, automake, libtool }:
|
||
|
|
||
|
assert stdenv.isLinux;
|
||
|
|
||
|
let
|
||
|
version = "0.8.2";
|
||
|
website = https://ftg.lbl.gov/CheckpointRestart;
|
||
|
in
|
||
|
|
||
|
stdenv.mkDerivation {
|
||
|
name = "blcr-${version}-${kernel.version}";
|
||
|
|
||
|
src = fetchurl {
|
||
|
url = "${website}/downloads/blcr-${version}.tar.gz";
|
||
|
sha256 = "1ldvzrajljkm318z5ix1p27n0gmv7gqxij6ck7p5fz4ncdbb01x8";
|
||
|
};
|
||
|
|
||
|
patchFlags = "-p0";
|
||
|
|
||
|
patches = map fetchurl [
|
||
|
{ url = http://upc-bugs.lbl.gov/blcr-dist/blcr-0.8.2+kernel-2.6.31.patch01;
|
||
|
sha256 = "0jnz18kbrm64hahvhk35zakcpylad1khsp5kjxkj19j0lkjv3m4h";
|
||
|
}
|
||
|
{ url = http://upc-bugs.lbl.gov/blcr-dist/blcr-0.8.2+kernel-2.6.32.patch02;
|
||
|
sha256 = "1f5s9c7iiaxd67ki3bmz09mf66shzbl97hvwaq4nmk6miq94k1fw";
|
||
|
}
|
||
|
{ url = http://upc-bugs.lbl.gov/blcr-dist/blcr-0.8.2+kernel-2.6.34.patch03;
|
||
|
sha256 = "09924h83xdwpxjlx3yg5b51fgm6gjywn2rb4nnygz16n87wqvb41";
|
||
|
}
|
||
|
];
|
||
|
|
||
|
buildInputs = [ perl makeWrapper autoconf automake libtool ];
|
||
|
|
||
|
preConfigure = ''
|
||
|
./autogen.sh
|
||
|
configureFlagsArray=(
|
||
|
--with-linux=$(ls -d ${kernel}/lib/modules/*/build)
|
||
|
--with-kmod-dir=$out/lib/modules/$(cd ${kernel}/lib/modules; ls -d 2.6.*)
|
||
|
--with-system-map=${kernel}/System.map
|
||
|
)
|
||
|
'';
|
||
|
|
||
|
postInstall = ''
|
||
|
for prog in "$out/bin/"*
|
||
|
do
|
||
|
wrapProgram "$prog" --prefix LD_LIBRARY_PATH ":" "$out/lib"
|
||
|
done
|
||
|
'';
|
||
|
|
||
|
meta = {
|
||
|
description = "Berkeley Lab Checkpoint/Restart for Linux (BLCR)";
|
||
|
homepage = website;
|
||
|
license = "GPL2";
|
||
|
};
|
||
|
}
|