Accepting request 407870 from home:ndas:branches:network
- Added support for aarch64 compilation. [+0035-PAGE_SIZE-constant-is-not-defined-on-ARM-since-multi.patch] - Disabled aarch64 dpdk-examples package for the time being as it contains lots of Intel specific code. - Added proper "Group" field for the subpackages . OBS-URL: https://build.opensuse.org/request/show/407870 OBS-URL: https://build.opensuse.org/package/show/network/dpdk?expand=0&rev=11
This commit is contained in:
parent
cfeb396293
commit
3fe05243eb
@ -0,0 +1,28 @@
|
||||
From a81e0a0f73a834d2cd8e5fd3237fac85574ad778 Mon Sep 17 00:00:00 2001
|
||||
From: Nirmoy Das <ndas@suse.de>
|
||||
Date: Mon, 11 Jul 2016 11:56:27 +0200
|
||||
Subject: [PATCH] PAGE_SIZE constant is not defined on ARM since multiple
|
||||
values are possible, so DPDK needs to dynamically get the page size.
|
||||
|
||||
---
|
||||
drivers/net/bnx2x/bnx2x.c | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/drivers/net/bnx2x/bnx2x.c b/drivers/net/bnx2x/bnx2x.c
|
||||
index 67af5da..766d66b 100644
|
||||
--- a/drivers/net/bnx2x/bnx2x.c
|
||||
+++ b/drivers/net/bnx2x/bnx2x.c
|
||||
@@ -34,6 +34,10 @@
|
||||
#define BNX2X_PMD_VERSION_MINOR 0
|
||||
#define BNX2X_PMD_VERSION_PATCH 0
|
||||
|
||||
+#ifndef PAGE_SIZE
|
||||
+#define PAGE_SIZE sysconf(_SC_PAGE_SIZE)
|
||||
+#endif
|
||||
+
|
||||
static inline const char *
|
||||
bnx2x_pmd_version(void)
|
||||
{
|
||||
--
|
||||
2.9.0
|
||||
|
@ -1,3 +1,12 @@
|
||||
-------------------------------------------------------------------
|
||||
Mon Jul 11 18:20:57 CEST 2016 - ndas@suse.de
|
||||
|
||||
- Added support for aarch64 compilation.
|
||||
[+0035-PAGE_SIZE-constant-is-not-defined-on-ARM-since-multi.patch]
|
||||
- Disabled aarch64 dpdk-examples package for the time being as it
|
||||
contains lots of Intel specific code.
|
||||
- Added proper "Group" field for the subpackages .
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jun 23 09:56:05 UTC 2016 - mchandras@suse.de
|
||||
|
||||
|
94
dpdk.spec
94
dpdk.spec
@ -16,16 +16,26 @@
|
||||
#
|
||||
|
||||
|
||||
%define machine native
|
||||
%ifarch x86_64
|
||||
%define machine native
|
||||
%define target x86_64-%{machine}-linuxapp-gcc
|
||||
%else if %ix86
|
||||
%endif
|
||||
%ifarch %ix86
|
||||
%define machine native
|
||||
%define target i686-%{machine}-linuxapp-gcc
|
||||
%endif
|
||||
|
||||
%bcond_without shared
|
||||
%ifarch aarch64
|
||||
%define machine armv8a
|
||||
%define target arm64-%{machine}-linuxapp-gcc
|
||||
%endif
|
||||
# Examples seems to contain lots of Intel specific code
|
||||
# so disabling examples package for aarch64 till we find
|
||||
# time to fix them all. - TODO
|
||||
%ifnarch aarch64
|
||||
# Add option to build without examples
|
||||
%bcond_without examples
|
||||
%endif
|
||||
%bcond_without shared
|
||||
# Add option to build without tools
|
||||
%bcond_without tools
|
||||
Name: dpdk
|
||||
@ -45,59 +55,61 @@ Patch6: 0006-d639996-vhost-enable-log_shmfd-protocol-feature.patch
|
||||
#PATCH-FIX-UPSTREAM 0007-ixgbe-fix-VLAN-filter-missing-brackets.patch
|
||||
Patch7: 0007-ixgbe-fix-VLAN-filter-missing-brackets.patch
|
||||
#PATCH-FIX-UPSTREAM 0008-app-testpmd-handle-SIGINT-and-SIGTERM.patch
|
||||
Patch8: 0008-app-testpmd-handle-SIGINT-and-SIGTERM.patch
|
||||
Patch8: 0008-app-testpmd-handle-SIGINT-and-SIGTERM.patch
|
||||
#PATCH-FIX-UPSTREAM 0009-bonding-copy-entire-config-structure-in-mode-4.patch
|
||||
Patch9: 0009-bonding-copy-entire-config-structure-in-mode-4.patch
|
||||
Patch9: 0009-bonding-copy-entire-config-structure-in-mode-4.patch
|
||||
#PATCH-FIX-UPSTREAM 0010-bonding-fix-active-slaves-with-no-primary.patch
|
||||
Patch10: 0010-bonding-fix-active-slaves-with-no-primary.patch
|
||||
#PATCH-FIX-UPSTREAM 0011-bonding-do-not-ignore-multicast-in-mode-4.patch
|
||||
Patch11: 0011-bonding-do-not-ignore-multicast-in-mode-4.patch
|
||||
Patch11: 0011-bonding-do-not-ignore-multicast-in-mode-4.patch
|
||||
#PATCH-FIX-UPSTREAM 0012-bonding-do-not-activate-slave-twice.patch
|
||||
Patch12: 0012-bonding-do-not-activate-slave-twice.patch
|
||||
#PATCH-FIX-UPSTREAM 0013-bonding-fix-crash-when-no-slave-device.patch
|
||||
Patch13: 0013-bonding-fix-crash-when-no-slave-device.patch
|
||||
Patch13: 0013-bonding-fix-crash-when-no-slave-device.patch
|
||||
#PATCH-FIX-UPSTREAM 0014-bonding-fix-detach-of-bonded-device.patch
|
||||
Patch14: 0014-bonding-fix-detach-of-bonded-device.patch
|
||||
Patch14: 0014-bonding-fix-detach-of-bonded-device.patch
|
||||
#PATCH-FIX-UPSTREAM 0015-bonding-fix-detach-of-slave-devices.patch
|
||||
Patch15: 0015-bonding-fix-detach-of-slave-devices.patch
|
||||
Patch15: 0015-bonding-fix-detach-of-slave-devices.patch
|
||||
#PATCH-FIX-UPSTREAM 0016-eal-linux-support-built-in-kernel-modules.patch
|
||||
Patch16: 0016-eal-linux-support-built-in-kernel-modules.patch
|
||||
Patch16: 0016-eal-linux-support-built-in-kernel-modules.patch
|
||||
#PATCH-FIX-UPSTREAM 0017-examples-l3fwd-handle-SIGINT-and-SIGTERM.patch
|
||||
Patch17: 0017-examples-l3fwd-handle-SIGINT-and-SIGTERM.patch
|
||||
Patch17: 0017-examples-l3fwd-handle-SIGINT-and-SIGTERM.patch
|
||||
#PATCH-FIX-UPSTREAM 0018-fm10k-fix-VLAN-flag-in-scattered-Rx.patch
|
||||
Patch18: 0018-fm10k-fix-VLAN-flag-in-scattered-Rx.patch
|
||||
Patch18: 0018-fm10k-fix-VLAN-flag-in-scattered-Rx.patch
|
||||
#PATCH-FIX-UPSTREAM 0019-i40e-base-fix-driver-load-failure.patch
|
||||
Patch19: 0019-i40e-base-fix-driver-load-failure.patch
|
||||
Patch19: 0019-i40e-base-fix-driver-load-failure.patch
|
||||
#PATCH-FIX-UPSTREAM 0020-i40e-base-fix-missing-check-for-stopped-admin-queue.patch
|
||||
Patch20: 0020-i40e-base-fix-missing-check-for-stopped-admin-queue.patch
|
||||
Patch20: 0020-i40e-base-fix-missing-check-for-stopped-admin-queue.patch
|
||||
#PATCH-FIX-UPSTREAM 0021-i40e-fix-inverted-check-for-no-refcount.patch
|
||||
Patch21: 0021-i40e-fix-inverted-check-for-no-refcount.patch
|
||||
Patch21: 0021-i40e-fix-inverted-check-for-no-refcount.patch
|
||||
#PATCH-FIX-UPSTREAM 0022-i40e-fix-overflow.patch
|
||||
Patch22: 0022-i40e-fix-overflow.patch
|
||||
Patch22: 0022-i40e-fix-overflow.patch
|
||||
#PATCH-FIX-UPSTREAM 0023-i40e-fix-VLAN-filtering.patch
|
||||
Patch23: 0023-i40e-fix-VLAN-filtering.patch
|
||||
Patch23: 0023-i40e-fix-VLAN-filtering.patch
|
||||
#PATCH-FIX-UPSTREAM 0024-mempool-fix-leak-when-creation-fails.patch
|
||||
Patch24: 0024-mempool-fix-leak-when-creation-fails.patch
|
||||
Patch24: 0024-mempool-fix-leak-when-creation-fails.patch
|
||||
#PATCH-FIX-UPSTREAM 0025-pcap-fix-captured-frame-length.patch
|
||||
Patch25: 0025-pcap-fix-captured-frame-length.patch
|
||||
Patch25: 0025-pcap-fix-captured-frame-length.patch
|
||||
#PATCH-FIX-UPSTREAM 0026-port-fix-crash-for-ethdev-writer-nodrop.patch
|
||||
Patch26: 0026-port-fix-crash-for-ethdev-writer-nodrop.patch
|
||||
Patch26: 0026-port-fix-crash-for-ethdev-writer-nodrop.patch
|
||||
#PATCH-FIX-UPSTREAM 0027-port-fix-crash-for-ring-writer-nodrop.patch
|
||||
Patch27: 0027-port-fix-crash-for-ring-writer-nodrop.patch
|
||||
Patch27: 0027-port-fix-crash-for-ring-writer-nodrop.patch
|
||||
#PATCH-FIX-UPSTREAM 0028-tools-fix-unbinding-failure-handling.patch
|
||||
Patch28: 0028-tools-fix-unbinding-failure-handling.patch
|
||||
Patch28: 0028-tools-fix-unbinding-failure-handling.patch
|
||||
#PATCH-FIX-UPSTREAM 0029-tools-support-Python-3-in-bind-script.patch
|
||||
Patch29: 0029-tools-support-Python-3-in-bind-script.patch
|
||||
Patch29: 0029-tools-support-Python-3-in-bind-script.patch
|
||||
#PATCH-FIX-UPSTREAM 0030-tools-support-binding-to-built-in-kernel-modules.patch
|
||||
Patch30: 0030-tools-support-binding-to-built-in-kernel-modules.patch
|
||||
Patch30: 0030-tools-support-binding-to-built-in-kernel-modules.patch
|
||||
#PATCH-FIX-UPSTREAM 0031-vhost-fix-leak-of-fds-and-mmaps.patch
|
||||
Patch31: 0031-vhost-fix-leak-of-fds-and-mmaps.patch
|
||||
Patch31: 0031-vhost-fix-leak-of-fds-and-mmaps.patch
|
||||
#PATCH-FIX-UPSTREAM 0032-virtio-fix-crash-in-statistics-functions.patch
|
||||
Patch32: 0032-virtio-fix-crash-in-statistics-functions.patch
|
||||
Patch32: 0032-virtio-fix-crash-in-statistics-functions.patch
|
||||
#PATCH-FIX-UPSTREAM 0033-virtio-fix-descriptors-pointing-to-the-same-buffer.patch
|
||||
Patch33: 0033-virtio-fix-descriptors-pointing-to-the-same-buffer.patch
|
||||
Patch33: 0033-virtio-fix-descriptors-pointing-to-the-same-buffer.patch
|
||||
#PATCH-FIX-UPSTREAM 0034-virtio-fix-restart.patch
|
||||
Patch34: 0034-virtio-fix-restart.patch
|
||||
Patch34: 0034-virtio-fix-restart.patch
|
||||
#PATCH-FIX-OPENSUSE 0035-PAGE_SIZE-constant-is-not-defined-on-ARM-since-multi
|
||||
Patch35: 0035-PAGE_SIZE-constant-is-not-defined-on-ARM-since-multi.patch
|
||||
|
||||
#
|
||||
# Patches for build fixes
|
||||
@ -121,18 +133,12 @@ Patch105: 0105-e1000-fix-missing-link-interrupt-check-brackets.patch
|
||||
Patch106: 0106-app-test-fix-missing-brackets.patch
|
||||
#PATCH-FIX-UPSTREAM: 0107-examples-ip_pipeline-use-unsigned-constants-for-left.patch
|
||||
Patch107: 0107-examples-ip_pipeline-use-unsigned-constants-for-left.patch
|
||||
|
||||
BuildRequires: doxygen
|
||||
BuildRequires: fdupes
|
||||
BuildRequires: libnuma-devel
|
||||
BuildRequires: libpcap-devel
|
||||
BuildRequires: zlib-devel
|
||||
#
|
||||
# The DPDK is designed to optimize througput of network traffic using, among
|
||||
# other techniques, carefully crafted x86 assembly instructions. As such it
|
||||
# currently (and likely never will) run on non-x86 platforms
|
||||
#
|
||||
ExclusiveArch: x86_64 %ix86
|
||||
ExclusiveArch: aarch64 x86_64 %ix86
|
||||
|
||||
%description
|
||||
The Data Plane Development Kit is a set of libraries and drivers for
|
||||
@ -149,6 +155,7 @@ applications with the Data Plane Development Kit.
|
||||
|
||||
%package doc
|
||||
Summary: Data Plane Development Kit API documentation
|
||||
Group: System/Libraries
|
||||
BuildArch: noarch
|
||||
|
||||
%description doc
|
||||
@ -157,6 +164,7 @@ API programming documentation for the Data Plane Development Kit.
|
||||
%if %{with tools}
|
||||
%package tools
|
||||
Summary: Tools for setting up Data Plane Development Kit environment
|
||||
Group: System/Libraries
|
||||
Requires: %{name} = %{version}
|
||||
Requires: findutils
|
||||
Requires: iproute
|
||||
@ -170,6 +178,7 @@ This package contains tools for setting up Data Plane Development Kit environmen
|
||||
%if %{with examples}
|
||||
%package examples
|
||||
Summary: Data Plane Development Kit example applications
|
||||
Group: System/Libraries
|
||||
BuildRequires: libvirt-devel
|
||||
|
||||
%description examples
|
||||
@ -187,9 +196,9 @@ as L2 and L3 forwarding.
|
||||
%patch1 -p1 -z .enic
|
||||
%patch2 -p1 -z .examples
|
||||
%patch3 -p1 -z .dtneeded
|
||||
%patch4 -p1
|
||||
%patch5 -p1
|
||||
%patch6 -p1
|
||||
%patch4 -p1
|
||||
%patch5 -p1
|
||||
%patch6 -p1
|
||||
%patch7 -p1
|
||||
%patch8 -p1
|
||||
%patch9 -p1
|
||||
@ -218,6 +227,7 @@ as L2 and L3 forwarding.
|
||||
%patch32 -p1
|
||||
%patch33 -p1
|
||||
%patch34 -p1
|
||||
%patch35 -p1
|
||||
|
||||
# Build fixes
|
||||
%patch99 -p1 -z .rtetoolchain
|
||||
@ -255,7 +265,7 @@ export EXTRA_CFLAGS="%{optflags} -Wformat -fPIC -Wno-error=array-bounds"
|
||||
|
||||
make V=1 O=%{target} T=%{target} %{?_smp_mflags} config
|
||||
|
||||
setconf CONFIG_RTE_MACHINE '"default"'
|
||||
setconf CONFIG_RTE_MACHINE '"%{machine}"'
|
||||
# Disable experimental features
|
||||
setconf CONFIG_RTE_NEXT_ABI n
|
||||
setconf CONFIG_RTE_LIBRTE_CRYPTODEV n
|
||||
@ -385,7 +395,7 @@ rm -f %{buildroot}%{_bindir}/*.map
|
||||
%defattr(-,root,root)
|
||||
#BSD
|
||||
%docdir
|
||||
%doc LICENSE.GPL LICENSE.LGPL
|
||||
%doc LICENSE.GPL LICENSE.LGPL
|
||||
|
||||
%files devel
|
||||
%defattr(-,root,root)
|
||||
@ -395,9 +405,11 @@ rm -f %{buildroot}%{_bindir}/*.map
|
||||
%if %{with tools}
|
||||
%exclude %{sdkdir}/tools/
|
||||
%endif
|
||||
|
||||
%if %{with examples}
|
||||
%exclude %{sdkdir}/examples/
|
||||
%endif
|
||||
|
||||
%{_sysconfdir}/profile.d/dpdk-sdk-*.*
|
||||
%if ! %{with shared}
|
||||
%{_libdir}/*.a
|
||||
|
Loading…
Reference in New Issue
Block a user