about summary refs log tree commit diff
path: root/pkgs/os-specific/linux/dmtcp/default.nix
diff options
context:
space:
mode:
authorMarco Maggesi <maggesi@math.unifi.it>2010-09-08 11:40:32 +0000
committerMarco Maggesi <maggesi@math.unifi.it>2010-09-08 11:40:32 +0000
commita280a31f56b34235678fcdc19ab304d142136d5a (patch)
treeb85d59b6bc93e96a6f00ff889a27e4bd0c7ab7b4 /pkgs/os-specific/linux/dmtcp/default.nix
parentf802a70d8780a76a31bc5a74b1e71c6db1f181ce (diff)
Add a patch to dmtcp to allow the restart of checkpointed programs with a different uid.
(This is required in order to generate hol_light_binaries).

Also do a bit of cleanup.

svn path=/nixpkgs/trunk/; revision=23684
Diffstat (limited to 'pkgs/os-specific/linux/dmtcp/default.nix')
-rw-r--r--pkgs/os-specific/linux/dmtcp/default.nix20
1 files changed, 9 insertions, 11 deletions
diff --git a/pkgs/os-specific/linux/dmtcp/default.nix b/pkgs/os-specific/linux/dmtcp/default.nix
index ee32654cf8a57..39759b03496cc 100644
--- a/pkgs/os-specific/linux/dmtcp/default.nix
+++ b/pkgs/os-specific/linux/dmtcp/default.nix
@@ -1,25 +1,21 @@
 {stdenv, fetchurl, perl, python}:
+# Perl and Python required by the test suite.
 
-# Perl and python are needed in order to run the test suite.
+stdenv.mkDerivation rec {
+  name = "dmtcp-${version}";
 
-let
-  pname = "dmtcp";
   version = "1.1.8";
-in
 
-stdenv.mkDerivation {
-  name = "${pname}-${version}";
+  buildInputs = [ perl python ];
 
   src = fetchurl {
-    url = "mirror://sourceforge/${pname}/${pname}_${version}.tar.gz";
+    url = "mirror://sourceforge/dmtcp/dmtcp_${version}.tar.gz";
     sha256 = "05klyml5maw3f5rxl3i20fqyvpmx69bh09h7a48y19q3r4nqd8f2";
   };
 
-  buildInputs = [ perl python ];
-
-  doCheck = true;
+  patches = [ ./dont_check_uid.patch ];
 
-  preCheck = ''
+  postPatch = ''
     substituteInPlace dmtcp/src/dmtcp_coordinator.cpp \
       --replace /bin/bash /bin/sh
     substituteInPlace utils/gdb-add-symbol-file \
@@ -31,6 +27,8 @@ stdenv.mkDerivation {
       --replace /usr/bin/python $(type -p python)
   '';
 
+  doCheck = true;
+
   meta = {
     description = "Distributed MultiThreaded Checkpointing";
     longDescription = ''