1{ stdenv, kernel, perl }:
2
3assert (!(kernel.features.grsecurity or false));
4
5let
6 baseBuildFlags = [ "INSTALL_HDR_PATH=$(out)" "headers_install" ];
7in stdenv.mkDerivation {
8 name = "linux-headers-${kernel.version}";
9
10 inherit (kernel) src patches;
11
12 nativeBuildInputs = [ perl ];
13
14 buildFlags = [ "ARCH=${stdenv.platform.kernelArch}" ] ++ baseBuildFlags;
15
16 crossAttrs = {
17 inherit (kernel.crossDrv) src patches;
18 buildFlags = [ "ARCH=${stdenv.cross.platform.kernelArch}" ] ++ baseBuildFlags;
19 };
20
21 installPhase = ''
22 find $out \( -name ..install.cmd -o -name .install \) -print0 | xargs -0 rm
23 '';
24
25 # Headers shouldn't reference anything else
26 allowedReferences = [];
27
28 meta.platforms = stdenv.lib.platforms.linux;
29}