at 23.05-pre 47 lines 1.3 kB view raw
1{ lib, stdenv, fetchFromGitHub, kernel }: 2 3stdenv.mkDerivation rec { 4 version = "2.7.1"; 5 name = "ena-${version}-${kernel.version}"; 6 7 src = fetchFromGitHub { 8 owner = "amzn"; 9 repo = "amzn-drivers"; 10 rev = "ena_linux_${version}"; 11 sha256 = "sha256-JkGzmmsAmLvL9e+bg58H79GNHgsqydK/79VoWEq5/Mc="; 12 }; 13 14 hardeningDisable = [ "pic" ]; 15 16 nativeBuildInputs = kernel.moduleBuildDependencies; 17 makeFlags = kernel.makeFlags; 18 19 # linux 3.12 20 NIX_CFLAGS_COMPILE = "-Wno-error=implicit-function-declaration"; 21 22 configurePhase = '' 23 runHook preConfigure 24 cd kernel/linux/ena 25 substituteInPlace Makefile --replace '/lib/modules/$(BUILD_KERNEL)' ${kernel.dev}/lib/modules/${kernel.modDirVersion} 26 runHook postConfigure 27 ''; 28 29 installPhase = '' 30 runHook preInstall 31 $STRIP -S ena.ko 32 dest=$out/lib/modules/${kernel.modDirVersion}/misc 33 mkdir -p $dest 34 cp ena.ko $dest/ 35 xz $dest/ena.ko 36 runHook postInstall 37 ''; 38 39 meta = with lib; { 40 description = "Amazon Elastic Network Adapter (ENA) driver for Linux"; 41 homepage = "https://github.com/amzn/amzn-drivers"; 42 license = licenses.gpl2Only; 43 maintainers = [ maintainers.eelco ]; 44 platforms = platforms.linux; 45 broken = kernel.kernelAtLeast "5.17"; 46 }; 47}