diff options
author | Alyssa Ross <hi@alyssa.is> | 2019-06-12 09:59:45 +0000 |
---|---|---|
committer | Alyssa Ross <hi@alyssa.is> | 2019-06-18 18:14:17 +0000 |
commit | c5571a126859eb658ffd7340cb580f7d91f12bb6 (patch) | |
tree | 577573c3bf14d9849246d52daece719a10eaf138 /nixpkgs/pkgs/development/tools/misc/igprof | |
parent | 828bd4e8ddcbcd354ddfd99f55af69ee8ff5d9e7 (diff) | |
parent | 98e3b90b6c8f400ae5438ef868eb992a64b75ce5 (diff) | |
download | nixlib-c5571a126859eb658ffd7340cb580f7d91f12bb6.tar nixlib-c5571a126859eb658ffd7340cb580f7d91f12bb6.tar.gz nixlib-c5571a126859eb658ffd7340cb580f7d91f12bb6.tar.bz2 nixlib-c5571a126859eb658ffd7340cb580f7d91f12bb6.tar.lz nixlib-c5571a126859eb658ffd7340cb580f7d91f12bb6.tar.xz nixlib-c5571a126859eb658ffd7340cb580f7d91f12bb6.tar.zst nixlib-c5571a126859eb658ffd7340cb580f7d91f12bb6.zip |
Merge commit '98e3b90b6c8f400ae5438ef868eb992a64b75ce5'
Diffstat (limited to 'nixpkgs/pkgs/development/tools/misc/igprof')
-rw-r--r-- | nixpkgs/pkgs/development/tools/misc/igprof/default.nix | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/tools/misc/igprof/default.nix b/nixpkgs/pkgs/development/tools/misc/igprof/default.nix new file mode 100644 index 000000000000..294d1fa10dde --- /dev/null +++ b/nixpkgs/pkgs/development/tools/misc/igprof/default.nix @@ -0,0 +1,43 @@ +{stdenv, fetchFromGitHub, libunwind, cmake, pcre, gdb}: + +stdenv.mkDerivation rec { + version = "5.9.16"; + name = "igprof-${version}"; + + src = fetchFromGitHub { + owner = "igprof"; + repo = "igprof"; + rev = "v${version}"; + sha256 = "0rx3mv8zdh9bmcpfbzkib3d52skzfr8600gh5gv21wcsh50jnifx"; + }; + + postPatch = '' + substituteInPlace src/igprof --replace libigprof.so $out/lib/libigprof.so + ''; + + buildInputs = [libunwind gdb pcre]; + nativeBuildInputs = [cmake]; + CXXFLAGS = ["-fPIC" "-O2" "-w" "-fpermissive"]; + + meta = { + description = "The Ignominous Profiler"; + + longDescription = '' + IgProf is a fast and light weight profiler. It correctly handles + dynamically loaded shared libraries, threads and sub-processes started by + the application. We have used it routinely with large C++ applications + consisting of many hundreds of shared libraries and thousands of symbols + from millions of source lines of code. It requires no special privileges + to run. The performance reports provide full navigable call stacks and + can be customised by applying filters. Results from any number of + profiling runs can be included. This means you can both dig into the + details and see the big picture from combined workloads. + ''; + + license = stdenv.lib.licenses.gpl2; + + homepage = https://igprof.org/; + platforms = stdenv.lib.platforms.linux; + maintainers = with stdenv.lib.maintainers; [ ktf ]; + }; +} |