unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#72793] [PATCH] Package DPDK
@ 2024-08-24 13:25 Kai Jellinghaus
  0 siblings, 0 replies; only message in thread
From: Kai Jellinghaus @ 2024-08-24 13:25 UTC (permalink / raw)
  To: 72793

I've created a small patch to create a dpdk package. I did my best to
follow the docs, but please do point out any mistake I've made.
As you will see tests are disabled currently - I've not been able to
figure out how to mount /sys into the build sandbox. I'm not sure if
this is critical for accepting the package.
Additionally, this patch is based on my own copy of guix, so the base
commit is likely incompatible. Again, I'm unsure if this poses a
problem.

Lastly, I haven't seen info on how the copyright headers are done.
I've seen a bunch of different people so I'm assuming it's the author,
and copyright isn't somehow signed over.

Please let me know about any issues, I'm happy to put in the work.

From e2cbd9c0a296bab233728e193d670199e1fda6aa Mon Sep 17 00:00:00 2001
Message-ID: <e2cbd9c0a296bab233728e193d670199e1fda6aa.1724505791.git.kaij@j10-labs.com>
From: Kai Jellinghaus <kaij@j10-labs.com>
Date: Sat, 24 Aug 2024 15:06:09 +0200
Subject: [PATCH] Package DPDK

Change-Id: Ib1486e7c9af77a88a90631f9dd775d54ba88ce9c
---
 gnu/local.mk          |  1 +
 gnu/packages/dpdk.scm | 63 +++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 64 insertions(+)
 create mode 100644 gnu/packages/dpdk.scm

diff --git a/gnu/local.mk b/gnu/local.mk
index 4d7b17e4b4..e0bb90fa13 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -249,6 +249,7 @@ GNU_SYSTEM_MODULES =                \
   %D%/packages/docbook.scm            \
   %D%/packages/docker.scm            \
   %D%/packages/documentation.scm        \
+  %D%/packages/dpdk.scm        \
   %D%/packages/dvtm.scm                \
   %D%/packages/easyrpg.scm            \
   %D%/packages/ebook.scm            \
diff --git a/gnu/packages/dpdk.scm b/gnu/packages/dpdk.scm
new file mode 100644
index 0000000000..4fb965799a
--- /dev/null
+++ b/gnu/packages/dpdk.scm
@@ -0,0 +1,63 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2024 Kai Jellinghaus <kaij@j10-labs.com>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu packages dpdk)
+  #:use-module ((guix licenses) #:prefix license:)
+  #:use-module (guix gexp)
+  #:use-module (guix utils)
+  #:use-module (guix packages)
+  #:use-module (guix download)
+  #:use-module (guix git-download)
+  #:use-module (guix build-system meson)
+  #:use-module (gnu packages)
+  #:use-module (gnu packages backup)
+  #:use-module (gnu packages elf)
+  #:use-module (gnu packages linux)
+  #:use-module (gnu packages python)
+  #:use-module (gnu packages python-xyz)
+  #:use-module (gnu packages pkg-config))
+
+(define-public dpdk
+  (package
+    (name "dpdk")
+    (version "24.07")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/DPDK/dpdk")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "04i4j4c5vcyldh0435hr01d2d5c0xf6y0sfg64764f79902i8p6i"))))
+    (build-system meson-build-system)
+    (native-inputs (list pkg-config python python-pyelftools numactl
libarchive libelf))
+    (inputs '())
+    (arguments
+      ; tests do exist, however they all require /sys/devices/system/
to be available. TODO
+     `(#:tests? #f))
+    (license (list
+      ; some files are additionally lgpl-2.1, but only in combination
with bsd-3
+      license:bsd-3 ; core components
+      license:gpl2 ; kernel components
+      license:expat ; lib/eal/windows/include/dirent.h, drivers/net/gve/base/*
+      license:bsd-2 ; lib/eal/windows/include/getopt.h
+      license:isc)) ; lib/eal/windows/getopt.c (dual licensed to bsd-2)
+    (synopsis "Data Plane Development Kit")
+    (description "DPDK is a set of libraries and drivers for fast
packet processing.")
+    (home-page "https://www.dpdk.org/")))
\ No newline at end of file

base-commit: e27369b5e62e58b480b7d0dfeb1ed03180342353
-- 
2.46.0




^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2024-08-24 16:43 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-08-24 13:25 [bug#72793] [PATCH] Package DPDK Kai Jellinghaus

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).