2008-06-03 13:56:12 -07:00
|
|
|
{ stdenv, fetchurl, perl, gdb }:
|
2004-01-21 06:50:18 -08:00
|
|
|
|
2009-03-03 01:19:50 -08:00
|
|
|
stdenv.mkDerivation rec {
|
|
|
|
name = "valgrind-3.4.1";
|
2008-06-03 13:56:12 -07:00
|
|
|
|
2004-01-21 06:50:18 -08:00
|
|
|
src = fetchurl {
|
2009-03-03 01:19:50 -08:00
|
|
|
url = "http://valgrind.org/downloads/${name}.tar.bz2";
|
|
|
|
sha256 = "1ac465lh0b61q46xjrvs9ld1x4fk6nzdgdjr0590bad3p2mfg7k6";
|
2004-01-21 06:50:18 -08:00
|
|
|
};
|
2006-10-11 09:45:55 -07:00
|
|
|
|
2008-06-03 13:56:12 -07:00
|
|
|
# Perl is needed for `cg_annotate'.
|
|
|
|
# GDB is needed to provide a sane default for `--db-command'.
|
|
|
|
buildInputs = [ perl gdb ];
|
|
|
|
|
2007-02-27 02:40:15 -08:00
|
|
|
configureFlags =
|
|
|
|
if stdenv.system == "x86_64-linux" then ["--enable-only64bit"] else [];
|
|
|
|
|
2008-08-19 06:03:08 -07:00
|
|
|
postInstall = ''
|
|
|
|
for i in $out/lib/valgrind/*.supp; do
|
|
|
|
substituteInPlace $i \
|
|
|
|
--replace 'obj:/lib' 'obj:*/lib' \
|
|
|
|
--replace 'obj:/usr/X11R6/lib' 'obj:*/lib' \
|
|
|
|
--replace 'obj:/usr/lib' 'obj:*/lib'
|
|
|
|
done
|
|
|
|
'';
|
|
|
|
|
2006-10-11 09:45:55 -07:00
|
|
|
meta = {
|
2007-12-12 03:12:26 -08:00
|
|
|
homepage = http://www.valgrind.org/;
|
2008-06-03 13:56:12 -07:00
|
|
|
description = "Valgrind, a debugging and profiling tool suite";
|
|
|
|
|
|
|
|
longDescription = ''
|
|
|
|
Valgrind is an award-winning instrumentation framework for
|
|
|
|
building dynamic analysis tools. There are Valgrind tools that
|
|
|
|
can automatically detect many memory management and threading
|
|
|
|
bugs, and profile your programs in detail. You can also use
|
|
|
|
Valgrind to build new tools.
|
|
|
|
'';
|
|
|
|
|
|
|
|
license = "GPLv2+";
|
2006-10-11 09:45:55 -07:00
|
|
|
};
|
2004-01-21 06:50:18 -08:00
|
|
|
}
|