add linuxPackages.dpdk: libs and drivers for fast packet processing

+42
+40
pkgs/os-specific/linux/dpdk/default.nix
··· 1 + { stdenv, lib, kernel, fetchurl }: 2 + 3 + assert lib.versionAtLeast kernel.version "3.18"; 4 + 5 + stdenv.mkDerivation rec { 6 + name = "dpdk-${version}-${kernel.version}"; 7 + version = "16.04"; 8 + 9 + src = fetchurl { 10 + url = "http://dpdk.org/browse/dpdk/snapshot/dpdk-${version}.tar.gz"; 11 + sha256 = "0yrz3nnhv65v2jzz726bjswkn8ffqc1sr699qypc9m78qrdljcfn"; 12 + }; 13 + 14 + RTE_KERNELDIR = "${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"; 15 + RTE_TARGET = "x86_64-native-linuxapp-gcc"; 16 + 17 + enableParallelBuilding = true; 18 + outputs = [ "out" "examples" ]; 19 + 20 + buildPhase = '' 21 + make T=x86_64-native-linuxapp-gcc config 22 + make T=x86_64-native-linuxapp-gcc install 23 + make T=x86_64-native-linuxapp-gcc examples 24 + ''; 25 + 26 + installPhase = '' 27 + cp -pr x86_64-native-linuxapp-gcc/{app,lib,include,kmod} $out/ 28 + 29 + mkdir $examples 30 + cp -pr examples/* $examples/ 31 + ''; 32 + 33 + meta = with stdenv.lib; { 34 + description = "Set of libraries and drivers for fast packet processing"; 35 + homepage = http://dpdk.org/; 36 + license = with licenses; [ lgpl21 gpl2 bsd2 ]; 37 + platforms = platforms.linux; 38 + maintainers = [ maintainers.iElectric ]; 39 + }; 40 + }
+2
pkgs/top-level/all-packages.nix
··· 10652 10652 10653 10653 cpupower = callPackage ../os-specific/linux/cpupower { }; 10654 10654 10655 + dpdk = callPackage ../os-specific/linux/dpdk { }; 10656 + 10655 10657 e1000e = callPackage ../os-specific/linux/e1000e {}; 10656 10658 10657 10659 v4l2loopback = callPackage ../os-specific/linux/v4l2loopback { };