diff options
Diffstat (limited to 'nixpkgs/pkgs/os-specific/linux/ena')
-rw-r--r-- | nixpkgs/pkgs/os-specific/linux/ena/default.nix | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/os-specific/linux/ena/default.nix b/nixpkgs/pkgs/os-specific/linux/ena/default.nix new file mode 100644 index 000000000000..495cd49e3f48 --- /dev/null +++ b/nixpkgs/pkgs/os-specific/linux/ena/default.nix @@ -0,0 +1,41 @@ +{ stdenv, fetchFromGitHub, kernel }: + +stdenv.mkDerivation rec { + version = "2.0.2"; + name = "ena-${version}-${kernel.version}"; + + src = fetchFromGitHub { + owner = "amzn"; + repo = "amzn-drivers"; + rev = "ena_linux_${version}"; + sha256 = "0vb8s0w7ddwajk5gj5nqqlqc63p8p556f9ccwviwda2zvgqmk2pb"; + }; + + hardeningDisable = [ "pic" ]; + + nativeBuildInputs = kernel.moduleBuildDependencies; + + # linux 3.12 + NIX_CFLAGS_COMPILE = "-Wno-error=implicit-function-declaration"; + + configurePhase = '' + cd kernel/linux/ena + substituteInPlace Makefile --replace '/lib/modules/$(BUILD_KERNEL)' ${kernel.dev}/lib/modules/${kernel.modDirVersion} + ''; + + installPhase = '' + strip -S ena.ko + dest=$out/lib/modules/${kernel.modDirVersion}/misc + mkdir -p $dest + cp ena.ko $dest/ + xz $dest/ena.ko + ''; + + meta = with stdenv.lib; { + description = "Amazon Elastic Network Adapter (ENA) driver for Linux"; + homepage = https://github.com/amzn/amzn-drivers; + license = licenses.gpl2; + maintainers = [ maintainers.eelco ]; + platforms = platforms.linux; + }; +} |