4317f7ab26
Apparently, without this patch `NT_PRSTATUS` is not found. So the patch adds the include apparently necessary. `NT_PRSTATUS` is also defined in `<linux/ptrace.h>`, which would likely have been a better name, were it not in the `linux/` directory, which is a priori not stable. The need to do that is kind of weird (the change was introduced in [1], and fedora apparently didn't need this additional import), but I'll try to upstream it. [1] https://github.com/SimonKagstrom/kcov/pull/239
40 lines
1.2 KiB
Nix
40 lines
1.2 KiB
Nix
{stdenv, fetchFromGitHub, cmake, pkgconfig, zlib, curl, elfutils, python, libiberty, libopcodes}:
|
|
|
|
stdenv.mkDerivation rec {
|
|
name = "kcov-${version}";
|
|
version = "35";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "SimonKagstrom";
|
|
repo = "kcov";
|
|
rev = "v${version}";
|
|
sha256 = "1da9vm87pi5m9ika0q1f1ai85w3vwlap8yln147yr9sc37jp5jcw";
|
|
};
|
|
|
|
preConfigure = "patchShebangs src/bin-to-c-source.py";
|
|
nativeBuildInputs = [ cmake pkgconfig ];
|
|
|
|
buildInputs = [ zlib curl elfutils python libiberty libopcodes ];
|
|
|
|
patches = [ ./aarch64_nt_prstatus.patch ];
|
|
|
|
enableParallelBuilding = true;
|
|
|
|
meta = with stdenv.lib; {
|
|
description = "Code coverage tester for compiled programs, Python scripts and shell scripts";
|
|
|
|
longDescription = ''
|
|
Kcov is a code coverage tester for compiled programs, Python
|
|
scripts and shell scripts. It allows collecting code coverage
|
|
information from executables without special command-line
|
|
arguments, and continuosly produces output from long-running
|
|
applications.
|
|
'';
|
|
|
|
homepage = http://simonkagstrom.github.io/kcov/index.html;
|
|
license = licenses.gpl2;
|
|
|
|
maintainers = with maintainers; [ gal_bolle ekleog ];
|
|
platforms = platforms.linux;
|
|
};
|
|
}
|