libpfm & rr: Add packages.

This commit is contained in:
Nicolas Pierron 2014-05-26 01:25:28 +02:00 committed by Nicolas B. Pierron
parent df19564f8b
commit 1b294105d7
3 changed files with 59 additions and 0 deletions

View File

@ -0,0 +1,26 @@
{ stdenv, fetchurl }:
stdenv.mkDerivation rec {
version = "4.5.0";
name = "libpfm-${version}";
src = fetchurl {
url = "mirror://sourceforge/perfmon2/libpfm4/${name}.tar.gz";
sha1 = "857eb066724e2a5b723d6802d217c8eddff79082";
};
installFlags = "DESTDIR=\${out} PREFIX= LDCONFIG=true";
meta = {
description = "Helper library to program the performance monitoring events";
longDescription = ''
This package provides a library, called libpfm4 which is used to
develop monitoring tools exploiting the performance monitoring
events such as those provided by the Performance Monitoring Unit
(PMU) of modern processors.
'';
licence = stdenv.lib.licenses.gpl2;
maintainers = [ stdenv.lib.maintainers.pierron ];
platforms = stdenv.lib.platforms.all;
};
}

View File

@ -0,0 +1,29 @@
{ stdenv, fetchurl, unzip, cmake, libpfm }:
stdenv.mkDerivation rec {
version = "1.3.0";
name = "rr-${version}";
src = fetchurl {
url = "https://github.com/mozilla/rr/archive/${version}.zip";
sha256 = "c7b7efac77f00805a26b0530e0bca4076b4b058374e5501328ec17cf0fa27021";
};
buildInputs = [ unzip cmake libpfm ];
cmakeFlags = "-DCMAKE_C_FLAGS_RELEASE:STRING= -DCMAKE_CXX_FLAGS_RELEASE:STRING=";
meta = {
homepage = http://rr-project.org/;
description = "Records nondeterministic executions and debugs them deterministically";
longDescription = ''
rr aspires to be your primary debugging tool, replacing -- well,
enhancing -- gdb. You record a failure once, then debug the
recording, deterministically, as many times as you want. Every
time the same execution is replayed.
'';
license = "custom";
maintainers = [ stdenv.lib.maintainers.pierron ];
platforms = [ "i686-linux" ];
};
}

View File

@ -4686,6 +4686,8 @@ let
remake = callPackage ../development/tools/build-managers/remake { };
rr = callPackage_i686 ../development/tools/analysis/rr { };
saleae-logic = callPackage ../development/tools/misc/saleae-logic { };
# couldn't find the source yet
@ -6101,6 +6103,8 @@ let
libpaper = callPackage ../development/libraries/libpaper { };
libpfm = callPackage ../development/libraries/libpfm { };
libproxy = callPackage ../development/libraries/libproxy {
stdenv = if stdenv.isDarwin
then overrideGCC stdenv gcc