X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=pkg%2Fdpdk.spec;h=fd1b5ef7185cd865f043ffd98e203b2a7c98462b;hb=9bc2cbb007c0a3335c5582357ae9f6d37ea0b654;hp=acbb2be58bdcd1ea6b9ffa62159f856051188e7b;hpb=7173acefc7cfdfbbb9b91fcba1c9a67adb4c07c9;p=dpdk.git diff --git a/pkg/dpdk.spec b/pkg/dpdk.spec index acbb2be58b..fd1b5ef718 100644 --- a/pkg/dpdk.spec +++ b/pkg/dpdk.spec @@ -30,7 +30,7 @@ # OF THE POSSIBILITY OF SUCH DAMAGE. Name: dpdk -Version: 2.1.0 +Version: 17.08 Release: 1 Packager: packaging@6wind.com URL: http://dpdk.org @@ -40,13 +40,20 @@ Summary: Data Plane Development Kit core Group: System Environment/Libraries License: BSD and LGPLv2 and GPLv2 -ExclusiveArch: i686, x86_64 -%global target %{_arch}-native-linuxapp-gcc +ExclusiveArch: i686 x86_64 aarch64 +%ifarch aarch64 +%global machine armv8a +%global target arm64-%{machine}-linuxapp-gcc +%global config arm64-%{machine}-linuxapp-gcc +%else %global machine default +%global target %{_arch}-%{machine}-linuxapp-gcc +%global config %{_arch}-native-linuxapp-gcc +%endif -BuildRequires: kernel-devel, kernel-headers, libpcap-devel, xen-devel +BuildRequires: kernel-devel, kernel-headers, libpcap-devel BuildRequires: doxygen, python-sphinx, inkscape -BuildRequires: texlive-collection-latexextra, texlive-collection-fontsextra +BuildRequires: texlive-collection-latexextra %description DPDK core includes kernel modules, core libraries and tools. @@ -69,74 +76,44 @@ BuildArch: noarch DPDK doc is divided in two parts: API details in doxygen HTML format and guides in sphinx HTML/PDF formats. -%global destdir %{buildroot}%{_prefix} -%global moddir /lib/modules/%(uname -r)/extra -%global datadir %{_datadir}/dpdk -%global docdir %{_docdir}/dpdk - %prep %setup -q %build -make O=%{target} T=%{target} config +make O=%{target} T=%{config} config sed -ri 's,(RTE_MACHINE=).*,\1%{machine},' %{target}/.config sed -ri 's,(RTE_APP_TEST=).*,\1n,' %{target}/.config sed -ri 's,(RTE_BUILD_SHARED_LIB=).*,\1y,' %{target}/.config sed -ri 's,(RTE_NEXT_ABI=).*,\1n,' %{target}/.config sed -ri 's,(LIBRTE_VHOST=).*,\1y,' %{target}/.config sed -ri 's,(LIBRTE_PMD_PCAP=).*,\1y,' %{target}/.config -sed -ri 's,(LIBRTE_PMD_XENVIRT=).*,\1y,' %{target}/.config -sed -ri 's,(LIBRTE_XEN_DOM0=).*,\1y,' %{target}/.config make O=%{target} %{?_smp_mflags} make O=%{target} doc %install rm -rf %{buildroot} -make O=%{target} DESTDIR=%{destdir} -mkdir -p %{buildroot}%{moddir} -mv %{destdir}/%{target}/kmod/*.ko %{buildroot}%{moddir} -rmdir %{destdir}/%{target}/kmod -mkdir -p %{buildroot}%{_sbindir} -ln -s %{datadir}/tools/*nic_bind.py %{buildroot}%{_sbindir}/dpdk_nic_bind -mkdir -p %{buildroot}%{_bindir} -mv %{destdir}/%{target}/app/testpmd %{buildroot}%{_bindir} -rmdir %{destdir}/%{target}/app -mv %{destdir}/%{target}/include %{buildroot}%{_includedir} -mv %{destdir}/%{target}/lib %{buildroot}%{_libdir} -mkdir -p %{buildroot}%{docdir} -rm -rf %{destdir}/%{target}/doc/*/*/.{build,doc}* -mv %{destdir}/%{target}/doc/html/* %{buildroot}%{docdir} -mv %{destdir}/%{target}/doc/*/*/*pdf %{buildroot}%{docdir}/guides -rm -rf %{destdir}/%{target}/doc -mkdir -p %{buildroot}%{datadir} -mv %{destdir}/%{target}/.config %{buildroot}%{datadir}/config -mv %{destdir}/%{target} %{buildroot}%{datadir} -mv %{destdir}/scripts %{buildroot}%{datadir} -mv %{destdir}/mk %{buildroot}%{datadir} -cp -a examples %{buildroot}%{datadir} -cp -a tools %{buildroot}%{datadir} -ln -s %{datadir}/config %{buildroot}%{datadir}/%{target}/.config -ln -s %{_includedir} %{buildroot}%{datadir}/%{target}/include -ln -s %{_libdir} %{buildroot}%{datadir}/%{target}/lib +make install O=%{target} DESTDIR=%{buildroot} \ + prefix=%{_prefix} bindir=%{_bindir} sbindir=%{_sbindir} \ + includedir=%{_includedir}/dpdk libdir=%{_libdir} \ + datadir=%{_datadir}/dpdk docdir=%{_docdir}/dpdk %files -%dir %{datadir} -%{datadir}/config -%{datadir}/tools -%{moddir}/* +%dir %{_datadir}/dpdk +%{_datadir}/dpdk/usertools +/lib/modules/%(uname -r)/extra/* %{_sbindir}/* %{_bindir}/* %{_libdir}/* %files devel -%{_includedir}/* -%{datadir}/mk -%{datadir}/scripts -%{datadir}/%{target} -%{datadir}/examples +%{_includedir}/dpdk +%{_datadir}/dpdk/mk +%{_datadir}/dpdk/buildtools +%{_datadir}/dpdk/%{target} +%{_datadir}/dpdk/examples %files doc -%doc %{docdir} +%doc %{_docdir}/dpdk %post /sbin/ldconfig