nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 stdenv,
4 fetchFromGitHub,
5 autoreconfHook,
6 pkg-config,
7 dpdk,
8 libbpf,
9 libconfig,
10 libpcap,
11 numactl,
12 openssl,
13 zlib,
14 zstd,
15 libbsd,
16 elfutils,
17 jansson,
18 libnl,
19}:
20
21stdenv.mkDerivation rec {
22 pname = "odp-dpdk";
23 version = "1.46.0.0_DPDK_22.11";
24
25 src = fetchFromGitHub {
26 owner = "OpenDataPlane";
27 repo = "odp-dpdk";
28 rev = "v${version}";
29 hash = "sha256-9stWGupRSQwUXOdPEQ9Rhkim22p5BBA5Z+2JCYS7Za0=";
30 };
31
32 patches = [
33 ./odp-dpdk_25.03.patch
34 ];
35
36 nativeBuildInputs = [
37 autoreconfHook
38 pkg-config
39 ];
40
41 buildInputs = [
42 (dpdk.overrideAttrs {
43 patches = [
44 ./dpdk_25.03.patch
45 ];
46 })
47 libconfig
48 libpcap
49 numactl
50 openssl
51 zlib
52 zstd
53 libbsd
54 elfutils
55 jansson
56 libbpf
57 libnl
58 ];
59
60 # binaries will segfault otherwise
61 dontStrip = true;
62
63 enableParallelBuilding = true;
64
65 meta = with lib; {
66 description = "Open Data Plane optimized for DPDK";
67 homepage = "https://www.opendataplane.org";
68 license = licenses.bsd3;
69 platforms = platforms.linux;
70 maintainers = [ maintainers.abuibrahim ];
71 };
72}