@@ -1,18 +1,42 @@
|
||||
{lib, stdenv, fetchFromGitHub, perl, perlPackages, makeWrapper }:
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
perl,
|
||||
python3,
|
||||
perlPackages,
|
||||
makeWrapper,
|
||||
}:
|
||||
|
||||
let
|
||||
perlDeps = [
|
||||
perlPackages.CaptureTiny
|
||||
perlPackages.DateTime
|
||||
perlPackages.DateTimeFormatW3CDTF
|
||||
perlPackages.DevelCover
|
||||
perlPackages.GD
|
||||
perlPackages.JSONXS
|
||||
perlPackages.MemoryProcess
|
||||
perlPackages.PathTools
|
||||
];
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "lcov";
|
||||
version = "1.16";
|
||||
version = "2.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "linux-test-project";
|
||||
repo = "lcov";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-X1T5OqR6NgTNGedH1on3+XZ7369007By6tRJK8xtmbk=";
|
||||
hash = "sha256-QfA+mzLfpi2fuhcPvCKO7YnPef1GMhCbgBWdXFTXPzE=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
buildInputs = [ perl ];
|
||||
|
||||
buildInputs = [
|
||||
perl
|
||||
python3
|
||||
];
|
||||
|
||||
preBuild = ''
|
||||
patchShebangs bin/
|
||||
@@ -20,26 +44,27 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
wrapProgram $out/bin/lcov --set PERL5LIB ${perlPackages.makeFullPerlPath [ perlPackages.PerlIOgzip perlPackages.JSON ]}
|
||||
wrapProgram $out/bin/genpng --set PERL5LIB ${perlPackages.makeFullPerlPath [ perlPackages.GD ]}
|
||||
for f in "$out"/bin/{gen*,lcov,perl2lcov}; do
|
||||
wrapProgram "$f" --set PERL5LIB ${perlPackages.makeFullPerlPath perlDeps}
|
||||
done
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
meta = {
|
||||
description = "Code coverage tool that enhances GNU gcov";
|
||||
|
||||
longDescription =
|
||||
'' LCOV is an extension of GCOV, a GNU tool which provides information
|
||||
about what parts of a program are actually executed (i.e.,
|
||||
"covered") while running a particular test case. The extension
|
||||
consists of a set of PERL scripts which build on the textual GCOV
|
||||
output to implement the following enhanced functionality such as
|
||||
HTML output.
|
||||
'';
|
||||
longDescription = ''
|
||||
LCOV is an extension of GCOV, a GNU tool which provides information
|
||||
about what parts of a program are actually executed (i.e.,
|
||||
"covered") while running a particular test case. The extension
|
||||
consists of a set of PERL scripts which build on the textual GCOV
|
||||
output to implement the following enhanced functionality such as
|
||||
HTML output.
|
||||
'';
|
||||
|
||||
homepage = "https://ltp.sourceforge.net/coverage/lcov.php";
|
||||
homepage = "https://github.com/linux-test-project/lcov";
|
||||
license = lib.licenses.gpl2Plus;
|
||||
|
||||
maintainers = with maintainers; [ dezgeg ];
|
||||
platforms = platforms.all;
|
||||
maintainers = with lib.maintainers; [ dezgeg ];
|
||||
platforms = lib.platforms.all;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -6966,6 +6966,22 @@ with self; {
|
||||
};
|
||||
};
|
||||
|
||||
DevelCover = buildPerlPackage {
|
||||
pname = "Devel-Cover";
|
||||
version = "1.44";
|
||||
src = fetchurl {
|
||||
url = "mirror://cpan/authors/id/P/PJ/PJCJ/Devel-Cover-1.44.tar.gz";
|
||||
hash = "sha256-9AwVQ5kuXWWm94AD1GLVms15rm0w04BHscadmZ0rH9g=";
|
||||
};
|
||||
propagatedBuildInputs = [ HTMLParser ];
|
||||
doCheck = false;
|
||||
meta = {
|
||||
description = "Code coverage metrics for Perl";
|
||||
homepage = "http://www.pjcj.net/perl.html";
|
||||
license = with lib.licenses; [ artistic1 gpl1Plus ];
|
||||
};
|
||||
};
|
||||
|
||||
DevelDeprecationsEnvironmental = buildPerlPackage {
|
||||
pname = "Devel-Deprecations-Environmental";
|
||||
version = "1.101";
|
||||
@@ -15650,6 +15666,36 @@ with self; {
|
||||
};
|
||||
};
|
||||
|
||||
MemoryProcess = buildPerlPackage {
|
||||
pname = "Memory-Process";
|
||||
version = "0.06";
|
||||
src = fetchurl {
|
||||
url = "mirror://cpan/authors/id/S/SK/SKIM/Memory-Process-0.06.tar.gz";
|
||||
hash = "sha256-NYFEiP/SnJdiFiXqOz1wCvv6YO0FW9dZ1OWNnI/UTk4=";
|
||||
};
|
||||
buildInputs = [ CaptureTiny TestNoWarnings ];
|
||||
propagatedBuildInputs = [ MemoryUsage Readonly ];
|
||||
meta = {
|
||||
description = "Memory process reporting";
|
||||
homepage = "https://github.com/michal-josef-spacek/Memory-Process";
|
||||
license = lib.licenses.bsd3;
|
||||
platforms = lib.platforms.linux;
|
||||
};
|
||||
};
|
||||
|
||||
MemoryUsage = buildPerlPackage {
|
||||
pname = "Memory-Usage";
|
||||
version = "0.201";
|
||||
src = fetchurl {
|
||||
url = "mirror://cpan/authors/id/D/DO/DONEILL/Memory-Usage-0.201.tar.gz";
|
||||
hash = "sha256-jyr60h5Ap0joHIwPPkDKcYwU3bn7LYgL+9KK6RPOU0k=";
|
||||
};
|
||||
meta = {
|
||||
description = "Tools to determine actual memory usage";
|
||||
license = with lib.licenses; [ artistic1 gpl1Plus ];
|
||||
};
|
||||
};
|
||||
|
||||
Menlo = buildPerlPackage {
|
||||
pname = "Menlo";
|
||||
version = "1.9019";
|
||||
|
||||
Reference in New Issue
Block a user