diff options
author | Nick Cao <nickcao@nichi.co> | 2024-03-16 21:05:26 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-03-16 21:05:26 -0700 |
commit | 6a4db7015c3ef0e02e19cded789fdcabbc7edd3c (patch) | |
tree | 41de76d36c3a322e2bf5e46133bbc5e4032d937d /pkgs/by-name/pe | |
parent | ba5492f3b7a484e156f0546d5cb5ca3c359f94fc (diff) | |
parent | 07224e8649edbf81c147c4ab5fa5a324642d04a0 (diff) |
Merge pull request #296072 from hzeller/feature-20240312-add-perf-to-profile
perf_data_converter: init at unstable-2024-03-12
Diffstat (limited to 'pkgs/by-name/pe')
-rw-r--r-- | pkgs/by-name/pe/perf_data_converter/package.nix | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/pkgs/by-name/pe/perf_data_converter/package.nix b/pkgs/by-name/pe/perf_data_converter/package.nix new file mode 100644 index 0000000000000..18b6704877ec1 --- /dev/null +++ b/pkgs/by-name/pe/perf_data_converter/package.nix @@ -0,0 +1,63 @@ +{ + lib, + stdenv, + buildBazelPackage, + fetchFromGitHub, + fetchpatch, + bazel_6, + jdk, + elfutils, + libcap, +}: + +buildBazelPackage rec { + pname = "perf_data_converter"; + version = "0-unstable-2024-03-12"; + + src = fetchFromGitHub { + owner = "google"; + repo = "perf_data_converter"; + rev = "e1cfe1e7e5d8cf3b728a166bf02d4227c82801eb"; + hash = "sha256-Y3tBLH2jf1f28o6RK2inq9FulKc66qcqwKmxYdFC5tA="; + }; + + bazel = bazel_6; + bazelFlags = [ + "--java_runtime_version=local_jdk" + "--tool_java_runtime_version=local_jdk" + ]; + + fetchAttrs = { + sha256 = "sha256-IauQ4zEn9YHppLgW+4XjPv4N5IZlEkp//tE/Dy7k28s="; + }; + + nativeBuildInputs = [ jdk ]; + + buildInputs = [ + elfutils + libcap + ]; + + removeRulesCC = false; + + bazelBuildFlags = [ "-c opt" ]; + bazelTargets = [ "src:perf_to_profile" ]; + + bazelTestTargets = [ "src:all" ]; + + buildAttrs = { + installPhase = '' + runHook preInstall + install -Dm555 -t "$out/bin" bazel-bin/src/perf_to_profile + runHook postInstall + ''; + }; + + meta = with lib; { + description = "Tool to convert Linux perf files to the profile.proto format used by pprof"; + homepage = "https://github.com/google/perf_data_converter"; + license = licenses.bsd3; + maintainers = with maintainers; [ hzeller ]; + platforms = platforms.linux; + }; +} |