I needed some other bpf-related tools located in the kernel source tree, so I hijacked the bpftool package, renamed it to bpftools and added those programs.wip/yesman
parent
c47fc06de1
commit
c4bd0719e3
@ -1,30 +0,0 @@ |
||||
{ lib, stdenv |
||||
, libopcodes, libbfd, libelf |
||||
, linuxPackages_latest, zlib |
||||
, python3 |
||||
}: |
||||
|
||||
stdenv.mkDerivation { |
||||
pname = "bpftool"; |
||||
inherit (linuxPackages_latest.kernel) version src; |
||||
|
||||
nativeBuildInputs = [ python3 ]; |
||||
buildInputs = [ libopcodes libbfd libelf zlib ]; |
||||
|
||||
preConfigure = '' |
||||
patchShebangs scripts/bpf_helpers_doc.py |
||||
|
||||
cd tools/bpf/bpftool |
||||
substituteInPlace ./Makefile \ |
||||
--replace '/usr/local' "$out" \ |
||||
--replace '/usr' "$out" \ |
||||
--replace '/sbin' '/bin' |
||||
''; |
||||
|
||||
meta = with lib; { |
||||
description = "Debugging/program analysis tool for the eBPF subsystem"; |
||||
license = [ licenses.gpl2 licenses.bsd2 ]; |
||||
platforms = platforms.linux; |
||||
maintainers = with maintainers; [ thoughtpolice ]; |
||||
}; |
||||
} |
@ -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_helpers_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 ]; |
||||
}; |
||||
} |
Loading…
Reference in new issue