1{
2 lib,
3 stdenv,
4 fetchFromGitHub,
5 kernel,
6 kernelModuleMakeFlags,
7}:
8
9stdenv.mkDerivation rec {
10 pname = "lttng-modules-${kernel.version}";
11 version = "2.13.15";
12
13 src = fetchFromGitHub {
14 owner = "lttng";
15 repo = "lttng-modules";
16 rev = "v${version}";
17 hash = "sha256-cEiv1EjsEvyreRERrCGKKpJdA1IKvuyVmgA7S3EkEnU=";
18 };
19
20 nativeBuildInputs = kernel.moduleBuildDependencies;
21
22 hardeningDisable = [ "pic" ];
23
24 env.NIX_CFLAGS_COMPILE = "-Wno-error=implicit-function-declaration";
25
26 makeFlags = kernelModuleMakeFlags ++ [
27 "KERNELDIR=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"
28 "INSTALL_MOD_PATH=${placeholder "out"}"
29 ];
30
31 installTargets = [ "modules_install" ];
32
33 enableParallelBuilding = true;
34
35 meta = with lib; {
36 description = "Linux kernel modules for LTTng tracing";
37 homepage = "https://lttng.org/";
38 license = with licenses; [
39 lgpl21Only
40 gpl2Only
41 mit
42 ];
43 platforms = platforms.linux;
44 maintainers = [ maintainers.bjornfor ];
45 broken =
46 (lib.versions.majorMinor kernel.modDirVersion) == "5.10"
47 || (lib.versions.majorMinor kernel.modDirVersion) == "5.4";
48 };
49}