diff --git a/pkgs/development/tools/analysis/jacoco/default.nix b/pkgs/development/tools/analysis/jacoco/default.nix new file mode 100644 index 000000000000..7382933fa3c6 --- /dev/null +++ b/pkgs/development/tools/analysis/jacoco/default.nix @@ -0,0 +1,43 @@ +{ lib +, stdenv +, fetchzip +, makeWrapper +, jre +}: + +stdenv.mkDerivation rec { + pname = "jacoco"; + version = "0.8.8"; + + src = fetchzip { + url = "https://search.maven.org/remotecontent?filepath=org/jacoco/jacoco/${version}/jacoco-${version}.zip"; + stripRoot = false; + sha256 = "sha256-NfXkMAFG1yMj1o06Hlhg9+B4RzL0I36fAGjZx3IC+NQ="; + }; + + outputs = [ "out" "doc" ]; + + nativeBuildInputs = [ makeWrapper ]; + + installPhase = '' + runHook preInstall + + mkdir -p $doc/share/doc $out/bin + + cp -r doc $doc/share/doc/jacoco + install -Dm444 lib/* -t $out/share/java + + makeWrapper ${jre}/bin/java $out/bin/jacoco \ + --add-flags "-jar $out/share/java/jacococli.jar" + + runHook postInstall + ''; + + meta = with lib; { + description = "A free code coverage library for Java"; + homepage = "https://jacoco.org/jacoco"; + license = licenses.epl20; + platforms = platforms.all; + maintainers = with maintainers; [ figsoda ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index cf9717b760e6..bcf6cc9ba4f1 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -17214,6 +17214,8 @@ with pkgs; itstool = callPackage ../development/tools/misc/itstool { }; + jacoco = callPackage ../development/tools/analysis/jacoco { }; + inherit (callPackage ../development/tools/build-managers/jam { }) jam ftjam;