Commit 24730b03 authored by Wim de With's avatar Wim de With
Browse files

dpdk: 23.07 -> 23.11

parent 064bba6f
Loading
Loading
Loading
Loading
+6 −18
Original line number Diff line number Diff line
{ stdenv, lib
, kernel
, fetchurl
, pkg-config, meson, ninja, makeWrapper
, libbsd, numactl, libbpf, zlib, elfutils, jansson, openssl, libpcap, rdma-core
@@ -13,16 +12,13 @@
  )
}:

let
  mod = kernel != null;
  dpdkVersion = "23.07";
in stdenv.mkDerivation {
stdenv.mkDerivation rec {
  pname = "dpdk";
  version = "${dpdkVersion}" + lib.optionalString mod "-${kernel.version}";
  version = "23.11";

  src = fetchurl {
    url = "https://fast.dpdk.org/rel/dpdk-${dpdkVersion}.tar.xz";
    sha256 = "sha256-4IYU6K65KUB9c9cWmZKJpE70A0NSJx8JOX7vkysjs9Y=";
    url = "https://fast.dpdk.org/rel/dpdk-${version}.tar.xz";
    sha256 = "sha256-ZPpY/fyelRDo5BTjvt0WW9PUykZaIxsoAyP4PNU/2GU=";
  };

  nativeBuildInputs = [
@@ -44,7 +40,7 @@ in stdenv.mkDerivation {
    openssl.dev
    zlib
    python3
  ] ++ lib.optionals mod kernel.moduleBuildDependencies;
  ];

  propagatedBuildInputs = [
    # Propagated to support current DPDK users in nixpkgs which statically link
@@ -56,21 +52,15 @@ in stdenv.mkDerivation {

  postPatch = ''
    patchShebangs config/arm buildtools
  '' + lib.optionalString mod ''
    # kernel_install_dir is hardcoded to `/lib/modules`; patch that.
    sed -i "s,kernel_install_dir *= *['\"].*,kernel_install_dir = '$kmod/lib/modules/${kernel.modDirVersion}'," kernel/linux/meson.build
  '';

  mesonFlags = [
    "-Dtests=false"
    "-Denable_docs=true"
    "-Denable_kmods=${lib.boolToString mod}"
    "-Ddeveloper_mode=disabled"
  ]
  # kni kernel driver is currently not compatble with 5.11
  ++ lib.optional (mod && kernel.kernelOlder "5.11") "-Ddisable_drivers=kni"
  ++ [(if shared then "-Ddefault_library=shared" else "-Ddefault_library=static")]
  ++ lib.optional (machine != null) "-Dmachine=${machine}"
  ++ lib.optional mod "-Dkernel_dir=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"
  ++ lib.optional (withExamples != []) "-Dexamples=${builtins.concatStringsSep "," withExamples}";

  postInstall = ''
@@ -87,7 +77,6 @@ in stdenv.mkDerivation {

  outputs =
    [ "out" "doc" ]
    ++ lib.optional mod "kmod"
    ++ lib.optional (withExamples != []) "examples";

  meta = with lib; {
@@ -96,6 +85,5 @@ in stdenv.mkDerivation {
    license = with licenses; [ lgpl21 gpl2 bsd2 ];
    platforms =  platforms.linux;
    maintainers = with maintainers; [ magenbluten orivej mic92 zhaofengli ];
    broken = mod && kernel.isHardened;
  };
}
+1 −3
Original line number Diff line number Diff line
@@ -27683,9 +27683,7 @@ with pkgs;
  cryptodev = linuxPackages.cryptodev;
  dpdk = callPackage ../os-specific/linux/dpdk {
    kernel = null; # dpdk modules are in linuxPackages.dpdk.kmod
  };
  dpdk = callPackage ../os-specific/linux/dpdk { };
  keyutils = callPackage ../os-specific/linux/keyutils { };
+1 −2
Original line number Diff line number Diff line
@@ -309,6 +309,7 @@ in {
    inherit (pkgs) odp-dpdk pktgen; # added 2018-05
    inherit (pkgs) bcc bpftrace; # added 2021-12
    inherit (pkgs) oci-seccomp-bpf-hook; # added 2022-11
    inherit (pkgs) dpdk; # added 2024-03

    acpi_call = callPackage ../os-specific/linux/acpi-call {};

@@ -345,8 +346,6 @@ in {

    dpdk-kmods = callPackage ../os-specific/linux/dpdk-kmods { };

    dpdk = pkgs.dpdk.override { inherit kernel; };

    exfat-nofuse = if lib.versionOlder kernel.version "5.8" then callPackage ../os-specific/linux/exfat { } else null;

    evdi = callPackage ../os-specific/linux/evdi { };