nixpkgs/pkgs/os-specific/linux/dmtcp/default.nix
Ryan Mulligan 09da2074dd dmtcp: 2.5.1 -> 2.5.2
Semi-automatic update. These checks were performed:

- built on NixOS
- ran `/nix/store/dpqcx4vr2nzam3c504xg5qc0rmmf1c4k-dmtcp-2.5.2/bin/dmtcp_discover_rm -h` got 0 exit code
- ran `/nix/store/dpqcx4vr2nzam3c504xg5qc0rmmf1c4k-dmtcp-2.5.2/bin/dmtcp_discover_rm --help` got 0 exit code
- ran `/nix/store/dpqcx4vr2nzam3c504xg5qc0rmmf1c4k-dmtcp-2.5.2/bin/dmtcp_discover_rm -V` and found version 2.5.2
- ran `/nix/store/dpqcx4vr2nzam3c504xg5qc0rmmf1c4k-dmtcp-2.5.2/bin/dmtcp_discover_rm -v` and found version 2.5.2
- ran `/nix/store/dpqcx4vr2nzam3c504xg5qc0rmmf1c4k-dmtcp-2.5.2/bin/dmtcp_discover_rm --version` and found version 2.5.2
- ran `/nix/store/dpqcx4vr2nzam3c504xg5qc0rmmf1c4k-dmtcp-2.5.2/bin/dmtcp_discover_rm -h` and found version 2.5.2
- ran `/nix/store/dpqcx4vr2nzam3c504xg5qc0rmmf1c4k-dmtcp-2.5.2/bin/dmtcp_discover_rm --help` and found version 2.5.2
- ran `/nix/store/dpqcx4vr2nzam3c504xg5qc0rmmf1c4k-dmtcp-2.5.2/bin/dmtcp_rm_loclaunch -h` got 0 exit code
- ran `/nix/store/dpqcx4vr2nzam3c504xg5qc0rmmf1c4k-dmtcp-2.5.2/bin/dmtcp_rm_loclaunch --help` got 0 exit code
- ran `/nix/store/dpqcx4vr2nzam3c504xg5qc0rmmf1c4k-dmtcp-2.5.2/bin/dmtcp_rm_loclaunch help` got 0 exit code
- found 2.5.2 with grep in /nix/store/dpqcx4vr2nzam3c504xg5qc0rmmf1c4k-dmtcp-2.5.2
- found 2.5.2 in filename of file in /nix/store/dpqcx4vr2nzam3c504xg5qc0rmmf1c4k-dmtcp-2.5.2
2018-02-25 20:07:55 -08:00

48 lines
1.5 KiB
Nix

{ stdenv, fetchFromGitHub, bash, perl, python }:
stdenv.mkDerivation rec {
name = "dmtcp-${version}";
version = "2.5.2";
src = fetchFromGitHub {
owner = "dmtcp";
repo = "dmtcp";
rev = version;
sha256 = "1sq38in4wk855yhfnzbs9xpnps97fhja93w08xjmx7szzm33g5a8";
};
dontDisableStatic = true;
patches = [ ./ld-linux-so-buffer-size.patch ];
postPatch = ''
patchShebangs .
substituteInPlace configure \
--replace '#define ELF_INTERPRETER "$interp"' \
"#define ELF_INTERPRETER \"$(cat $NIX_CC/nix-support/dynamic-linker)\""
substituteInPlace src/dmtcp_coordinator.cpp \
--replace /bin/bash ${stdenv.shell}
substituteInPlace util/gdb-add-symbol-file \
--replace /bin/bash ${stdenv.shell}
substituteInPlace test/autotest.py \
--replace /bin/bash ${bash}/bin/bash \
--replace /usr/bin/perl ${perl}/bin/perl \
--replace /usr/bin/python ${python}/bin/python \
--replace "os.environ['USER']" "\"nixbld1\"" \
--replace "os.getenv('USER')" "\"nixbld1\""
'';
meta = {
description = "Distributed MultiThreaded Checkpointing";
longDescription = ''
DMTCP (Distributed MultiThreaded Checkpointing) is a tool to
transparently checkpointing the state of an arbitrary group of
programs spread across many machines and connected by sockets. It does
not modify the user's program or the operating system.
'';
homepage = http://dmtcp.sourceforge.net/;
license = stdenv.lib.licenses.lgpl3Plus; # most files seem this or LGPL-2.1+
};
}