diff options
Diffstat (limited to 'pkgs/os-specific/linux/bpftools/default.nix')
-rw-r--r-- | pkgs/os-specific/linux/bpftools/default.nix | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/pkgs/os-specific/linux/bpftools/default.nix b/pkgs/os-specific/linux/bpftools/default.nix new file mode 100644 index 00000000000..f2ca8d87471 --- /dev/null +++ b/pkgs/os-specific/linux/bpftools/default.nix @@ -0,0 +1,38 @@ +{ lib, stdenv +, libopcodes, libbfd, libelf, readline +, linuxPackages_latest, zlib +, python3, bison, flex +}: + +stdenv.mkDerivation { + pname = "bpftools"; + inherit (linuxPackages_latest.kernel) version src; + + nativeBuildInputs = [ python3 bison flex ]; + buildInputs = [ libopcodes libbfd libelf zlib readline ]; + + preConfigure = '' + patchShebangs scripts/bpf_doc.py + + cd tools/bpf + substituteInPlace ./bpftool/Makefile \ + --replace '/usr/local' "$out" \ + --replace '/usr' "$out" \ + --replace '/sbin' '/bin' + ''; + + buildFlags = [ "bpftool" "bpf_asm" "bpf_dbg" ]; + + installPhase = '' + make -C bpftool install + install -Dm755 -t $out/bin bpf_asm + install -Dm755 -t $out/bin bpf_dbg + ''; + + meta = with lib; { + description = "Debugging/program analysis tools for the eBPF subsystem"; + license = [ licenses.gpl2 licenses.bsd2 ]; + platforms = platforms.linux; + maintainers = with maintainers; [ thoughtpolice ]; + }; +} |