1 # SPDX-License-Identifier: BSD-3-Clause
2 # Copyright 2014 6WIND S.A.
7 Packager: packaging@6wind.com
9 Source: http://dpdk.org/browse/dpdk/snapshot/dpdk-%{version}.tar.gz
11 Summary: Data Plane Development Kit core
12 Group: System Environment/Libraries
13 License: BSD and LGPLv2 and GPLv2
15 ExclusiveArch: i686 x86_64 aarch64
17 %global machine armv8a
18 %global target arm64-%{machine}-linuxapp-gcc
19 %global config arm64-%{machine}-linuxapp-gcc
21 %global machine default
22 %global target %{_arch}-%{machine}-linuxapp-gcc
23 %global config %{_arch}-native-linuxapp-gcc
26 BuildRequires: kernel-devel, kernel-headers, libpcap-devel
27 BuildRequires: doxygen, python-sphinx, inkscape
28 BuildRequires: texlive-collection-latexextra
31 DPDK core includes kernel modules, core libraries and tools.
32 testpmd application allows to test fast packet processing environments
33 on x86 platforms. For instance, it can be used to check that environment
34 can support fast path applications such as 6WINDGate, pktgen, rumptcpip, etc.
35 More libraries are available as extensions in other packages.
38 Summary: Data Plane Development Kit for development
39 Requires: %{name}%{?_isa} = %{version}-%{release}
41 DPDK devel is a set of makefiles, headers and examples
42 for fast packet processing on x86 platforms.
45 Summary: Data Plane Development Kit API documentation
48 DPDK doc is divided in two parts: API details in doxygen HTML format
49 and guides in sphinx HTML/PDF formats.
55 make O=%{target} T=%{config} config
56 sed -ri 's,(RTE_MACHINE=).*,\1%{machine},' %{target}/.config
57 sed -ri 's,(RTE_APP_TEST=).*,\1n,' %{target}/.config
58 sed -ri 's,(RTE_BUILD_SHARED_LIB=).*,\1y,' %{target}/.config
59 sed -ri 's,(RTE_NEXT_ABI=).*,\1n,' %{target}/.config
60 sed -ri 's,(LIBRTE_VHOST=).*,\1y,' %{target}/.config
61 sed -ri 's,(LIBRTE_PMD_PCAP=).*,\1y,' %{target}/.config
62 make O=%{target} %{?_smp_mflags}
67 make install O=%{target} DESTDIR=%{buildroot} \
68 prefix=%{_prefix} bindir=%{_bindir} sbindir=%{_sbindir} \
69 includedir=%{_includedir}/dpdk libdir=%{_libdir} \
70 datadir=%{_datadir}/dpdk docdir=%{_docdir}/dpdk
74 %{_datadir}/dpdk/usertools
75 /lib/modules/%(uname -r)/extra/*
83 %{_datadir}/dpdk/buildtools
84 %{_datadir}/dpdk/%{target}
85 %{_datadir}/dpdk/examples