diff --git a/.gitignore b/.gitignore index e69de29..60c9a74 100644 --- a/.gitignore +++ b/.gitignore @@ -0,0 +1 @@ +/dpdk-1.7.0-20140603git5ebbb1728.tgz diff --git a/common_linuxapp b/common_linuxapp new file mode 100644 index 0000000..8e22ecd --- /dev/null +++ b/common_linuxapp @@ -0,0 +1,339 @@ +# BSD LICENSE +# +# Copyright(c) 2010-2014 Intel Corporation. All rights reserved. +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in +# the documentation and/or other materials provided with the +# distribution. +# * Neither the name of Intel Corporation nor the names of its +# contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# + +# +# define executive environment +# +# CONFIG_RTE_EXEC_ENV can be linuxapp, baremetal +# +CONFIG_RTE_EXEC_ENV="linuxapp" +CONFIG_RTE_EXEC_ENV_LINUXAPP=y + +## +## machine can define specific variables or action for a specific board +## RTE_MACHINE can be: +## default nothing specific +## native current machine +## atm Intel® Atom™ microarchitecture +## nhm Intel® microarchitecture code name Nehalem +## wsm Intel® microarchitecture code name Westmere +## snb Intel® microarchitecture code name Sandy Bridge +## ivb Intel® microarchitecture code name Ivy Bridge +## +## Note: if your compiler does not support the relevant -march options, +## it will be compiled with whatever latest processor the compiler supports! +## +#CONFIG_RTE_MACHINE="native" +# +## +## define the architecture we compile for. +## CONFIG_RTE_ARCH can be i686, x86_64, x86_64_32 +## +#CONFIG_RTE_ARCH="x86_64" +#CONFIG_RTE_ARCH_X86_64=y +# +## +## The compiler we use. +## Can be gcc or icc. +## +#CONFIG_RTE_TOOLCHAIN="gcc" +#CONFIG_RTE_TOOLCHAIN_GCC=y + +# +# Use intrinsics or assembly code for key routines +# +CONFIG_RTE_FORCE_INTRINSICS=n + +# +# Compile to share library +# +CONFIG_RTE_BUILD_SHARED_LIB=y + +# +# Combine to one single library +# +CONFIG_RTE_BUILD_COMBINE_LIBS=n +CONFIG_RTE_LIBNAME="intel_dpdk" + +# +# Compile libc directory +# +CONFIG_RTE_LIBC=n + +# +# Compile newlib as libc from source +# +CONFIG_RTE_LIBC_NEWLIB_SRC=n + +# +# Use binary newlib +# +CONFIG_RTE_LIBC_NEWLIB_BIN=n + +# +# Use binary newlib +# +CONFIG_RTE_LIBC_NETINCS=n + +# +# Compile libgloss (newlib-stubs) +# +CONFIG_RTE_LIBGLOSS=n + +# +# Compile Environment Abstraction Layer +# +CONFIG_RTE_LIBRTE_EAL=y +CONFIG_RTE_MAX_LCORE=64 +CONFIG_RTE_MAX_NUMA_NODES=8 +CONFIG_RTE_MAX_MEMSEG=256 +CONFIG_RTE_MAX_MEMZONE=2560 +CONFIG_RTE_MAX_TAILQ=32 +CONFIG_RTE_LOG_LEVEL=8 +CONFIG_RTE_LOG_HISTORY=256 +CONFIG_RTE_LIBEAL_USE_HPET=n +CONFIG_RTE_EAL_ALLOW_INV_SOCKET_ID=n +CONFIG_RTE_EAL_ALWAYS_PANIC_ON_ERROR=n + +# +# Compile Environment Abstraction Layer for linux +# +CONFIG_RTE_LIBRTE_EAL_LINUXAPP=y + +# +# Compile Environment Abstraction Layer for Bare metal +# +CONFIG_RTE_LIBRTE_EAL_BAREMETAL=n + +# +# Compile Environment Abstraction Layer to support Vmware TSC map +# +CONFIG_RTE_LIBRTE_EAL_VMWARE_TSC_MAP_SUPPORT=y + +# +# Compile the argument parser library +# +CONFIG_RTE_LIBRTE_KVARGS=y + +# +# Compile generic ethernet library +# +CONFIG_RTE_LIBRTE_ETHER=y +CONFIG_RTE_LIBRTE_ETHDEV_DEBUG=n +CONFIG_RTE_MAX_ETHPORTS=32 +CONFIG_RTE_LIBRTE_IEEE1588=n +CONFIG_RTE_ETHDEV_QUEUE_STAT_CNTRS=16 + +# +# Compile burst-oriented IGB & EM PMD drivers +# +CONFIG_RTE_LIBRTE_EM_PMD=n +CONFIG_RTE_LIBRTE_IGB_PMD=n +CONFIG_RTE_LIBRTE_E1000_DEBUG_INIT=n +CONFIG_RTE_LIBRTE_E1000_DEBUG_RX=n +CONFIG_RTE_LIBRTE_E1000_DEBUG_TX=n +CONFIG_RTE_LIBRTE_E1000_DEBUG_TX_FREE=n +CONFIG_RTE_LIBRTE_E1000_DEBUG_DRIVER=n +CONFIG_RTE_LIBRTE_E1000_PF_DISABLE_STRIP_CRC=n + +# +# Compile burst-oriented IXGBE PMD driver +# +CONFIG_RTE_LIBRTE_IXGBE_PMD=n +CONFIG_RTE_LIBRTE_IXGBE_DEBUG_INIT=n +CONFIG_RTE_LIBRTE_IXGBE_DEBUG_RX=n +CONFIG_RTE_LIBRTE_IXGBE_DEBUG_TX=n +CONFIG_RTE_LIBRTE_IXGBE_DEBUG_TX_FREE=n +CONFIG_RTE_LIBRTE_IXGBE_DEBUG_DRIVER=n +CONFIG_RTE_LIBRTE_IXGBE_PF_DISABLE_STRIP_CRC=n +CONFIG_RTE_LIBRTE_IXGBE_RX_ALLOW_BULK_ALLOC=y +CONFIG_RTE_LIBRTE_IXGBE_ALLOW_UNSUPPORTED_SFP=n + +# +# Compile burst-oriented VIRTIO PMD driver +# +CONFIG_RTE_LIBRTE_VIRTIO_PMD=y +CONFIG_RTE_LIBRTE_VIRTIO_DEBUG_INIT=n +CONFIG_RTE_LIBRTE_VIRTIO_DEBUG_RX=n +CONFIG_RTE_LIBRTE_VIRTIO_DEBUG_TX=n +CONFIG_RTE_LIBRTE_VIRTIO_DEBUG_DRIVER=n +CONFIG_RTE_LIBRTE_VIRTIO_DEBUG_DUMP=n + +# +# Compile burst-oriented VMXNET3 PMD driver +# +CONFIG_RTE_LIBRTE_VMXNET3_PMD=y +CONFIG_RTE_LIBRTE_VMXNET3_DEBUG_INIT=n +CONFIG_RTE_LIBRTE_VMXNET3_DEBUG_RX=n +CONFIG_RTE_LIBRTE_VMXNET3_DEBUG_TX=n +CONFIG_RTE_LIBRTE_VMXNET3_DEBUG_TX_FREE=n +CONFIG_RTE_LIBRTE_VMXNET3_DEBUG_DRIVER=n + +# +# Compile example software rings based PMD +# +CONFIG_RTE_LIBRTE_PMD_RING=y +CONFIG_RTE_PMD_RING_MAX_RX_RINGS=16 +CONFIG_RTE_PMD_RING_MAX_TX_RINGS=16 + +# +# Compile software PMD backed by PCAP files +# +CONFIG_RTE_LIBRTE_PMD_PCAP=y + + +CONFIG_RTE_LIBRTE_PMD_XENVIRT=n + +# +# Do prefetch of packet data within PMD driver receive function +# +CONFIG_RTE_PMD_PACKET_PREFETCH=y + +# +# Compile librte_ring +# +CONFIG_RTE_LIBRTE_RING=y +CONFIG_RTE_LIBRTE_RING_DEBUG=n +CONFIG_RTE_RING_SPLIT_PROD_CONS=n + +# +# Compile librte_mempool +# +CONFIG_RTE_LIBRTE_MEMPOOL=y +CONFIG_RTE_MEMPOOL_CACHE_MAX_SIZE=512 +CONFIG_RTE_LIBRTE_MEMPOOL_DEBUG=n + +# +# Compile librte_mbuf +# +CONFIG_RTE_LIBRTE_MBUF=y +CONFIG_RTE_LIBRTE_MBUF_DEBUG=n +CONFIG_RTE_MBUF_SCATTER_GATHER=y +CONFIG_RTE_MBUF_REFCNT_ATOMIC=y +CONFIG_RTE_PKTMBUF_HEADROOM=128 + +# +# Compile librte_timer +# +CONFIG_RTE_LIBRTE_TIMER=y +CONFIG_RTE_LIBRTE_TIMER_DEBUG=n + +# +# Compile librte_malloc +# +CONFIG_RTE_LIBRTE_MALLOC=y +CONFIG_RTE_LIBRTE_MALLOC_DEBUG=n +CONFIG_RTE_MALLOC_MEMZONE_SIZE=11M + +# +# Compile librte_cmdline +# +CONFIG_RTE_LIBRTE_CMDLINE=y +CONFIG_RTE_LIBRTE_CMDLINE_DEBUG=n + +# +# Compile librte_hash +# +CONFIG_RTE_LIBRTE_HASH=y +CONFIG_RTE_LIBRTE_HASH_DEBUG=n + +# +# Compile librte_lpm +# +CONFIG_RTE_LIBRTE_LPM=y +CONFIG_RTE_LIBRTE_LPM_DEBUG=n + +# +# Compile librte_power +# +CONFIG_RTE_LIBRTE_POWER=y +CONFIG_RTE_LIBRTE_POWER_DEBUG=n +CONFIG_RTE_MAX_LCORE_FREQS=64 + +# +# Compile librte_net +# +CONFIG_RTE_LIBRTE_NET=y + +# +# Compile librte_meter +# +CONFIG_RTE_LIBRTE_METER=y + +# +# Compile librte_sched +# +CONFIG_RTE_LIBRTE_SCHED=y +CONFIG_RTE_SCHED_RED=n +CONFIG_RTE_SCHED_COLLECT_STATS=n +CONFIG_RTE_SCHED_SUBPORT_TC_OV=n +CONFIG_RTE_SCHED_PORT_N_GRINDERS=8 + +# +# Compile the test application +# Compile librte_kni +# +CONFIG_RTE_LIBRTE_KNI=y +CONFIG_RTE_KNI_KO_DEBUG=n +CONFIG_RTE_KNI_VHOST=n +CONFIG_RTE_KNI_VHOST_MAX_CACHE_SIZE=1024 +CONFIG_RTE_KNI_VHOST_VNET_HDR_EN=n +CONFIG_RTE_KNI_VHOST_DEBUG_RX=n +CONFIG_RTE_KNI_VHOST_DEBUG_TX=n + +# +#Compile Xen domain0 support +# +CONFIG_RTE_LIBRTE_XEN_DOM0=n + +# +# Enable warning directives +# +CONFIG_RTE_INSECURE_FUNCTION_WARNING=n + +# +# Compile the test application +# +CONFIG_RTE_APP_TEST=y + +# +# Compile the PMD test application +# +CONFIG_RTE_TEST_PMD=y +CONFIG_RTE_TEST_PMD_RECORD_CORE_CYCLES=n +CONFIG_RTE_TEST_PMD_RECORD_BURST_STATS=n + +# +# Support NIC bypass logic +# +CONFIG_RTE_NIC_BYPASS=n + diff --git a/defconfig_i686-default-linuxapp-gcc b/defconfig_i686-default-linuxapp-gcc new file mode 100644 index 0000000..6aaf124 --- /dev/null +++ b/defconfig_i686-default-linuxapp-gcc @@ -0,0 +1,68 @@ +# BSD LICENSE +# +# Copyright(c) 2010-2014 Intel Corporation. All rights reserved. +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in +# the documentation and/or other materials provided with the +# distribution. +# * Neither the name of Intel Corporation nor the names of its +# contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# + +#include "common_linuxapp" + +# +# machine can define specific variables or action for a specific board +# RTE_MACHINE can be: +# default nothing specific +# native current machine +# atm Intel® Atom™ microarchitecture +# nhm Intel® microarchitecture code name Nehalem +# wsm Intel® microarchitecture code name Westmere +# snb Intel® microarchitecture code name Sandy Bridge +# ivb Intel® microarchitecture code name Ivy Bridge +# +# Note: if your compiler does not support the relevant -march options, +# it will be compiled with whatever latest processor the compiler supports! +# +CONFIG_RTE_MACHINE="default" + +# +# define the architecture we compile for. +# CONFIG_RTE_ARCH can be i686, x86_64, x86_64_32 +# +CONFIG_RTE_ARCH="i686" +CONFIG_RTE_ARCH_I686=y + +# +# The compiler we use. +# Can be gcc or icc. +# +CONFIG_RTE_TOOLCHAIN="gcc" +CONFIG_RTE_TOOLCHAIN_GCC=y + +# +# KNI is not supported on 32-bit +# +CONFIG_RTE_LIBRTE_KNI=n diff --git a/defconfig_x86_64-default-linuxapp-gcc b/defconfig_x86_64-default-linuxapp-gcc new file mode 100644 index 0000000..7380e16 --- /dev/null +++ b/defconfig_x86_64-default-linuxapp-gcc @@ -0,0 +1,68 @@ +# BSD LICENSE +# +# Copyright(c) 2010-2014 Intel Corporation. All rights reserved. +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in +# the documentation and/or other materials provided with the +# distribution. +# * Neither the name of Intel Corporation nor the names of its +# contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# + +#include "common_linuxapp" + +# +# machine can define specific variables or action for a specific board +# RTE_MACHINE can be: +# default nothing specific +# native current machine +# atm Intel® Atom™ microarchitecture +# nhm Intel® microarchitecture code name Nehalem +# wsm Intel® microarchitecture code name Westmere +# snb Intel® microarchitecture code name Sandy Bridge +# ivb Intel® microarchitecture code name Ivy Bridge +# +# Note: if your compiler does not support the relevant -march options, +# it will be compiled with whatever latest processor the compiler supports! +# +CONFIG_RTE_MACHINE="default" + +# +# define the architecture we compile for. +# CONFIG_RTE_ARCH can be i686, x86_64, x86_64_32 +# +CONFIG_RTE_ARCH="x86_64" +CONFIG_RTE_ARCH_X86_64=y + +# +# The compiler we use. +# Can be gcc or icc. +# +CONFIG_RTE_TOOLCHAIN="gcc" +CONFIG_RTE_TOOLCHAIN_GCC=y + +# +# KNI is not supported on fedora +# +CONFIG_RTE_LIBRTE_KNI=n diff --git a/dpdk-1.7.0-igb_uio_disable.patch b/dpdk-1.7.0-igb_uio_disable.patch new file mode 100644 index 0000000..49da00b --- /dev/null +++ b/dpdk-1.7.0-igb_uio_disable.patch @@ -0,0 +1,15 @@ +diff -up ./lib/librte_eal/linuxapp/Makefile.orig ./lib/librte_eal/linuxapp/Makefile +--- ./lib/librte_eal/linuxapp/Makefile.orig 2014-05-29 05:43:11.000000000 -0400 ++++ ./lib/librte_eal/linuxapp/Makefile 2014-06-03 12:24:26.754134045 -0400 +@@ -31,7 +31,10 @@ + + include $(RTE_SDK)/mk/rte.vars.mk + +-DIRS-$(CONFIG_RTE_LIBRTE_EAL_LINUXAPP) += igb_uio ++# In a future release of dpdk, igb_uio will be build-time ++# disable-able. Until then, just comment it out here ++#DIRS-$(CONFIG_RTE_LIBRTE_EAL_LINUXAPP) += igb_uio ++ + DIRS-$(CONFIG_RTE_LIBRTE_EAL_LINUXAPP) += eal + ifeq ($(CONFIG_RTE_LIBRTE_KNI),y) + DIRS-$(CONFIG_RTE_LIBRTE_EAL_LINUXAPP) += kni diff --git a/dpdk.spec b/dpdk.spec new file mode 100644 index 0000000..89c2e6e --- /dev/null +++ b/dpdk.spec @@ -0,0 +1,134 @@ +%global rel 0.6 + +# As per packaging guidelines, since dpdk is pre-release, this is the git hash +# that I used with git archive to build the source tarball and the date on which +# I did it +%global upstreamtag 20140603git5ebbb1728 + +Name: dpdk +Version: 1.7.0 +Release: %{rel}.%{upstreamtag}%{?dist} +URL: http://dpdk.org +Source: http://dpdk.org/browse/dpdk/snapshot/dpdk-%{version}-%{upstreamtag}.tgz +Source1: defconfig_x86_64-default-linuxapp-gcc +Source2: defconfig_i686-default-linuxapp-gcc +Source3: common_linuxapp + +# +# Currently the igb_uio module doesn't have a configuration option to disable +# itself in dpdk. Since we don't build kernel modules as part of user space +# pacakges, this patch manually removes the Makefile directives to build it +# This can be dropped when upstream makes this configurable +# +Patch0: dpdk-1.7.0-igb_uio_disable.patch + +Summary: Data Plane Development Kit core + +# +# Note that, while this is dual licensed, all code that is included with this +# Pakcage are BSD licensed. The only files that aren't licensed via BSD is the +# kni kernel module which is dual LGPLv2/BSD, and thats not built for fedora. +# +License: BSD and LGPLv2 and GPLv2 + +# +# 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: i386 x86_64 + +%global target %{_arch}-default-linuxapp-gcc +%global machine default + +BuildRequires: kernel-devel, kernel-headers, libpcap-devel, doxygen + +%description +DPDK core includes kernel modules, core libraries and tools. +testpmd application allows to test fast packet processing environments +on x86 platforms. For instance, it can be used to check that environment +can support fast path applications such as 6WINDGate, pktgen, rumptcpip, etc. +More libraries are available as extensions in other packages. + + +%package devel +Summary: Data Plane Development Kit core for development +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description devel +DPDK core-devel is a set of makefiles, headers, examples and documentation +for fast packet processing on x86 platforms. +More libraries are available as extensions in other packages. + +%package doc +Summary: Data Plane Development Kit core programming API documentation +Requires: %{name}%{?_isa} = %{version}-%{release} +BuildArch: noarch + +%description doc +DPDK core library API programming documentation + +%global destdir %{buildroot}%{_prefix} +%global datadir %{_datadir}/%{name}-%{version} +%global docdir %{_docdir}/%{name}-%{version} + +%prep +%setup -q +cp %{SOURCE1} ./config/ +cp %{SOURCE2} ./config/ +cp %{SOURCE3} ./config/ +%patch0 -p1 + +%build +make O=%{target} T=%{target} %{?_smp_mflags} config +make O=%{target} %{?_smp_mflags} +make O=%{target} %{?_smp_mflags} doc + +%install +make O=%{target} DESTDIR=%{destdir} +mkdir -p %{buildroot}%{_sbindir} +mkdir -p %{buildroot}%{_libdir}/%{name}-%{version} +mkdir -p %{buildroot}%{_includedir}/%{name}-%{version} +mkdir -p %{buildroot}%{_bindir} +mv %{destdir}/%{target}/app/testpmd %{buildroot}%{_bindir}/testpmd-%{version} +rmdir %{destdir}/%{target}/app +mv %{destdir}/%{target}/include/* %{buildroot}%{_includedir}/%{name}-%{version} +mv %{destdir}/%{target}/lib/* %{buildroot}%{_libdir}/%{name}-%{version} +mkdir -p %{buildroot}%{docdir} +mv %{destdir}/%{target}/doc/* %{buildroot}%{docdir} +rmdir %{destdir}/%{target}/doc +mkdir -p %{buildroot}%{datadir} +mv %{destdir}/%{target}/.config %{buildroot}%{datadir}/config +rm -rf %{destdir}/%{target}/kmod +mv %{destdir}/%{target} %{buildroot}%{datadir} +rm -rf %{destdir}/mk +rm -rf %{destdir}/scripts +cp -a tools %{buildroot}%{datadir} + +%files +# BSD +%dir %{datadir} +%{datadir}/config +# Theres no point in packaging any of the tools +# We currently don't need the igb uio script, there +# are several uio scripts already available +# And the cpu_layout script functionality is +# covered by lscpu +%exclude %{datadir}/tools +%{_bindir}/* +%{_libdir}/%{name}-%{version} + +%files doc +#BSD +%{docdir} + +%files devel +#BSD +%{_includedir}/* +#%{datadir}/%{target} +%exclude %{docdir}/html + +%changelog +* Tue May 13 2014 - Neil Horman - 1.0.7-0.4.20140603git5ebbb1728 +- Initial Build + diff --git a/sources b/sources index e69de29..c4d0dd0 100644 --- a/sources +++ b/sources @@ -0,0 +1 @@ +70de60182a0d48b58431dae2f6921db4 dpdk-1.7.0-20140603git5ebbb1728.tgz