ecapture: support non-core btf mode (#418733)
This commit is contained in:
commit
70450f7db1
@ -1,7 +1,6 @@
|
|||||||
{
|
{
|
||||||
buildGoModule,
|
buildGoModule,
|
||||||
fetchFromGitHub,
|
fetchFromGitHub,
|
||||||
stdenv,
|
|
||||||
bpftools,
|
bpftools,
|
||||||
lib,
|
lib,
|
||||||
nspr,
|
nspr,
|
||||||
@ -18,6 +17,9 @@
|
|||||||
bash,
|
bash,
|
||||||
zsh,
|
zsh,
|
||||||
nix-update-script,
|
nix-update-script,
|
||||||
|
llvmPackages,
|
||||||
|
withNonBTF ? false,
|
||||||
|
kernel ? null,
|
||||||
}:
|
}:
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
@ -33,6 +35,7 @@ buildGoModule rec {
|
|||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
llvmPackages.libllvm
|
||||||
clang
|
clang
|
||||||
fd
|
fd
|
||||||
bpftools
|
bpftools
|
||||||
@ -94,16 +97,23 @@ buildGoModule rec {
|
|||||||
--replace-fail '"errors"' ' '
|
--replace-fail '"errors"' ' '
|
||||||
'';
|
'';
|
||||||
|
|
||||||
postConfigure = ''
|
postConfigure =
|
||||||
sed -i '/git/d' Makefile
|
''
|
||||||
sed -i '/git/d' variables.mk
|
sed -i '/git/d' Makefile
|
||||||
|
sed -i '/git/d' variables.mk
|
||||||
|
|
||||||
substituteInPlace Makefile \
|
substituteInPlace Makefile \
|
||||||
--replace-fail '/bin/bash' '${lib.getExe bash}'
|
--replace-fail '/bin/bash' '${lib.getExe bash}'
|
||||||
|
''
|
||||||
make ebpf
|
+ lib.optionalString withNonBTF ''
|
||||||
go-bindata -pkg assets -o "assets/ebpf_probe.go" $(find user/bytecode -name "*.o" -printf "./%p ")
|
substituteInPlace variables.mk \
|
||||||
'';
|
--replace-fail "-emit-llvm" "-emit-llvm -I${kernel.dev}/lib/modules/${kernel.modDirVersion}/build/include -Wno-error=implicit-function-declaration"
|
||||||
|
KERN_BUILD_PATH=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build KERN_SRC_PATH=${kernel.dev}/lib/modules/${kernel.modDirVersion}/source make ebpf_noncore
|
||||||
|
''
|
||||||
|
+ ''
|
||||||
|
make ebpf
|
||||||
|
go-bindata -pkg assets -o "assets/ebpf_probe.go" $(find user/bytecode -name "*.o" -printf "./%p ")
|
||||||
|
'';
|
||||||
|
|
||||||
checkFlags =
|
checkFlags =
|
||||||
let
|
let
|
||||||
|
@ -397,6 +397,11 @@ in
|
|||||||
|
|
||||||
dpdk-kmods = callPackage ../os-specific/linux/dpdk-kmods { };
|
dpdk-kmods = callPackage ../os-specific/linux/dpdk-kmods { };
|
||||||
|
|
||||||
|
ecapture = callPackage ../by-name/ec/ecapture/package.nix {
|
||||||
|
withNonBTF = true;
|
||||||
|
inherit kernel;
|
||||||
|
};
|
||||||
|
|
||||||
exfat-nofuse =
|
exfat-nofuse =
|
||||||
if lib.versionOlder kernel.version "5.8" then callPackage ../os-specific/linux/exfat { } else null;
|
if lib.versionOlder kernel.version "5.8" then callPackage ../os-specific/linux/exfat { } else null;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user