X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=debian%2Fcontrol;h=1d75a9e8be851d0b57799c14ac38748b09f64b13;hb=2732340d33c9b92603573a94fd42222c13031c40;hp=51122936d5f1fb70dde9e9c027e6731f06060537;hpb=e2582a898a2135a8a8a09c9364aa13f289fc5ec4;p=deb_dpdk.git diff --git a/debian/control b/debian/control index 51122936..1d75a9e8 100644 --- a/debian/control +++ b/debian/control @@ -2,6 +2,8 @@ Source: dpdk Priority: optional Maintainer: deb_dpdk Packagers Uploaders: Luca Boccassi , + Christian Ehrhardt , + Santiago Ruano Rincón Build-Depends: debhelper (>= 9), dh-python, dh-systemd (>= 1.5), @@ -27,13 +29,38 @@ Vcs-Browser: https://gerrit.fd.io/r/gitweb?p=deb_dpdk.git Package: dpdk Section: admin Architecture: amd64 arm64 i386 ppc64el -Depends: libdpdk-dev (= ${binary:Version}), +Depends: hwdata, lsb-base (>= 3.2-14), pciutils, ${misc:Depends}, ${python:Depends}, ${shlibs:Depends} -Suggests: linux-image-generic +Recommends: dpdk-igb-uio-dkms (= ${binary:Version}) [arm64], + dpdk-rte-kni-dkms (= ${binary:Version}) [arm64], + librte-pmd-af-packet1 (= ${binary:Version}), + librte-pmd-bnxt1 (= ${binary:Version}), + librte-pmd-bond1 (= ${binary:Version}), + librte-pmd-cxgbe1 (= ${binary:Version}), + librte-pmd-e1000-1 (= ${binary:Version}), + librte-pmd-ena1 (= ${binary:Version}), + librte-pmd-enic1 (= ${binary:Version}) [amd64 arm64 i386], + librte-pmd-fm10k1 (= ${binary:Version}) [amd64 i386], + librte-pmd-i40e1 (= ${binary:Version}), + librte-pmd-ixgbe1 (= ${binary:Version}) [amd64 arm64 i386], + librte-pmd-null-crypto1 (= ${binary:Version}), + librte-pmd-null1 (= ${binary:Version}), + librte-pmd-pcap1 (= ${binary:Version}), + librte-pmd-qede1 (= ${binary:Version}), + librte-pmd-ring2 (= ${binary:Version}), + librte-pmd-vhost1 (= ${binary:Version}), + librte-pmd-virtio1 (= ${binary:Version}), + librte-pmd-vmxnet3-uio1 (= ${binary:Version}) [amd64 arm64 i386], + librte-pmd-xenvirt1 (= ${binary:Version}) [amd64 arm64 i386] +Suggests: dpdk-doc, + dpdk-igb-uio-dkms (= ${binary:Version}), + dpdk-rte-kni-dkms (= ${binary:Version}), + linux-image-generic, + python-pyelftools, Description: Data Plane Development Kit (runtime) DPDK is a set of libraries for fast packet processing. Applications run in user-space and communicate directly with dedicated network interfaces. @@ -54,6 +81,7 @@ Description: Data Plane Development Kit (development files) Package: dpdk-doc Section: doc Architecture: all +Multi-Arch: foreign Homepage: http://dpdk.org/doc/guides/index.html Depends: libjs-jquery, libjs-underscore, ${misc:Depends}, ${python:Depends} Recommends: python, ${python:Recommends} @@ -96,24 +124,24 @@ Section: libdevel Architecture: amd64 arm64 i386 ppc64el Multi-Arch: same Pre-Depends: ${misc:Pre-Depends} -Depends: ${misc:Depends}, - libpcap-dev, - libethdev4 (= ${binary:Version}), +Depends: libpcap-dev, librte-acl2 (= ${binary:Version}), librte-cfgfile2 (= ${binary:Version}), librte-cmdline2 (= ${binary:Version}), - librte-cryptodev1 (= ${binary:Version}), + librte-cryptodev2 (= ${binary:Version}), librte-distributor1 (= ${binary:Version}), - librte-eal2 (= ${binary:Version}), + librte-eal3 (= ${binary:Version}), + librte-ethdev5 (= ${binary:Version}), librte-hash2 (= ${binary:Version}), librte-ip-frag1 (= ${binary:Version}), librte-jobstats1 (= ${binary:Version}), - librte-kni2 (= ${binary:Version}) [amd64 arm64], + librte-kni2 (= ${binary:Version}) [amd64 arm64 ppc64el], librte-kvargs1 (= ${binary:Version}), librte-lpm2 (= ${binary:Version}), librte-mbuf2 (= ${binary:Version}), librte-mempool2 (= ${binary:Version}), librte-meter1 (= ${binary:Version}), + librte-net1 (= ${binary:Version}), librte-pdump1 (= ${binary:Version}), librte-pipeline3 (= ${binary:Version}), librte-pmd-af-packet1 (= ${binary:Version}), @@ -124,11 +152,12 @@ Depends: ${misc:Depends}, librte-pmd-ena1 (= ${binary:Version}), librte-pmd-enic1 (= ${binary:Version}) [amd64 arm64 i386], librte-pmd-fm10k1 (= ${binary:Version}) [amd64 i386], - librte-pmd-i40e1 (= ${binary:Version}) [amd64 i386], + librte-pmd-i40e1 (= ${binary:Version}), librte-pmd-ixgbe1 (= ${binary:Version}) [amd64 arm64 i386], librte-pmd-null-crypto1 (= ${binary:Version}), librte-pmd-null1 (= ${binary:Version}), librte-pmd-pcap1 (= ${binary:Version}), + librte-pmd-qede1 (= ${binary:Version}), librte-pmd-ring2 (= ${binary:Version}), librte-pmd-vhost1 (= ${binary:Version}), librte-pmd-virtio1 (= ${binary:Version}), @@ -141,7 +170,8 @@ Depends: ${misc:Depends}, librte-sched1 (= ${binary:Version}), librte-table2 (= ${binary:Version}), librte-timer1 (= ${binary:Version}), - librte-vhost3 (= ${binary:Version}) + librte-vhost3 (= ${binary:Version}), + ${misc:Depends} Description: Data Plane Development Kit (basic development files) DPDK is a set of libraries for fast packet processing. Applications run in user-space and communicate directly with dedicated network interfaces. @@ -150,7 +180,7 @@ Description: Data Plane Development Kit (basic development files) build external applications which will also require at least SSE3 support when running. -Package: libethdev4 +Package: librte-ethdev5 Architecture: amd64 arm64 i386 ppc64el Multi-Arch: same Homepage: http://dpdk.org/doc/api/rte__ethdev_8h.html @@ -201,7 +231,7 @@ Description: Data Plane Development Kit (librte-cmdline runtime library) . This package contains the runtime libraries for librte_cmdline. -Package: librte-cryptodev1 +Package: librte-cryptodev2 Architecture: amd64 arm64 i386 ppc64el Multi-Arch: same Homepage: http://dpdk.org/doc/api/rte__cryptodev_8h.html @@ -227,7 +257,7 @@ Description: Data Plane Development Kit (librte-distributor runtime library) . This package contains the runtime libraries for librte_distributor. -Package: librte-eal2 +Package: librte-eal3 Architecture: amd64 arm64 i386 ppc64el Multi-Arch: same Homepage: http://dpdk.org/doc/api/rte__eal_8h.html @@ -370,6 +400,24 @@ Description: Data Plane Development Kit (librte-pipeline runtime library) . This package contains the runtime libraries for librte_pipeline. +Package: librte-net1 +Architecture: amd64 arm64 i386 ppc64el +Multi-Arch: same +Homepage: http://dpdk.org/doc/guides/prog_guide/overview.html?highlight=librte_net#librte-net +Pre-Depends: ${misc:Pre-Depends} +Depends: ${misc:Depends}, ${shlibs:Depends} +Conflicts: libdpdk0 +Description: Data Plane Development Kit (librte-net runtime library) + DPDK is a set of libraries for fast packet processing. Applications run + in user-space and communicate directly with dedicated network interfaces. + . + This package contains the runtime libraries for librte_net. + . + The librte_net library is a collection of IP protocol definitions and + convenience macros. It is based on code from the FreeBSD* IP stack and + contains protocol numbers (for use in IP headers), IP-related macros, + IPv4/IPv6 header structures and TCP, UDP and SCTP header structures. + Package: librte-pmd-af-packet1 Architecture: amd64 arm64 i386 ppc64el Multi-Arch: same @@ -461,7 +509,7 @@ Description: Data Plane Development Kit (librte-pmd-enic runtime library) This package contains the runtime libraries for librte_pmd_enic. Package: librte-pmd-fm10k1 -Architecture: amd64 i386 ppc64el +Architecture: amd64 i386 Multi-Arch: same Homepage: http://dpdk.org/doc/guides/nics/fm10k.html Pre-Depends: ${misc:Pre-Depends} @@ -474,7 +522,7 @@ Description: Data Plane Development Kit (librte-pmd-fm10k runtime library) This package contains the runtime libraries for librte_pmd_fm10k. Package: librte-pmd-i40e1 -Architecture: amd64 i386 +Architecture: amd64 arm64 i386 ppc64el Multi-Arch: same Homepage: http://dpdk.org/doc/guides/nics/i40e.html Pre-Depends: ${misc:Pre-Depends} @@ -603,6 +651,22 @@ Description: Data Plane Development Kit (librte-pmd-xenvirt runtime library) . This package contains the runtime libraries for librte_pmd_xenvirt. +Package: librte-pmd-qede1 +Architecture: amd64 arm64 i386 ppc64el +Multi-Arch: same +Homepage: http://dpdk.org/doc/guides/nics/qede.html +Pre-Depends: ${misc:Pre-Depends} +Depends: ${misc:Depends}, ${shlibs:Depends} +Conflicts: libdpdk0 +Description: Data Plane Development Kit (librte-pmd-qede runtime library) + DPDK is a set of libraries for fast packet processing. Applications run + in user-space and communicate directly with dedicated network interfaces. + . + This package contains the runtime libraries for librte_pmd_qede which is + The base driver is the backend module for the QLogic FastLinQ QL4xxxx + 25G/40G CNA family of adapters as well as their virtual functions (VF) + in SR-IOV context. + Package: librte-port3 Architecture: amd64 arm64 i386 ppc64el Multi-Arch: same @@ -719,3 +783,65 @@ Description: Data Plane Development Kit (librte_pdump runtime library) . This package contains the runtime libraries for librte_pdump. +# All following packages are for ABI compatibility to older releases. +# Newer DPDK versions are ABI compatible to older ones for at least one release +# and more if maintainable. +# +# The cross dependencies in DPDK libraries would otherwise force us to conflict +# with older ABI versions to avoid double ld.so resolution +# (https://lists.ubuntu.com/archives/ubuntu-devel/2017-February/039659.html). +# +# But the conflicts in debian/control would make the old versions and thereby +# the dependent applications non-installable until there is a rebuild (as other +# updates would do). +# But for our case that would deny most benefits of version named libraries +# (e.g. the ability to have both). +# +# Instead of adding conflicts fields - whenever possible - provide a backward +# compatible wrapper symlinking to the new (ABI compatible) implementation. +# +# Still as soon as (all) dependendent packages are rebuilt these compat +# wrappers can be autoremoved (apt will take care of that) + +Package: libethdev4 +Architecture: amd64 arm64 i386 ppc64el +Multi-Arch: same +Homepage: http://dpdk.org/doc/api/rte__ethdev_8h.html +Pre-Depends: ${misc:Pre-Depends} +Depends: librte-ethdev5, ${misc:Depends}, ${shlibs:Depends} +Conflicts: libdpdk0 +Description: Data Plane Development Kit (libethdev runtime library) + DPDK is a set of libraries for fast packet processing. Applications run + in user-space and communicate directly with dedicated network interfaces. + . + This package contains an ABI compatbility link for an older version of the + runtime libraries for libethdev. + +Package: librte-cryptodev1 +Architecture: amd64 arm64 i386 ppc64el +Multi-Arch: same +Homepage: http://dpdk.org/doc/api/rte__cryptodev_8h.html +Pre-Depends: ${misc:Pre-Depends} +Depends: librte-cryptodev2, ${misc:Depends}, ${shlibs:Depends} +Conflicts: libdpdk0 +Description: Data Plane Development Kit (librte-cryptodev runtime library) + DPDK is a set of libraries for fast packet processing. Applications run + in user-space and communicate directly with dedicated network interfaces. + . + This package contains an ABI compatbility link for an older version of the + the runtime libraries for librte_cryptodev. + +Package: librte-eal2 +Architecture: amd64 arm64 i386 ppc64el +Multi-Arch: same +Homepage: http://dpdk.org/doc/api/rte__eal_8h.html +Pre-Depends: ${misc:Pre-Depends} +Depends: librte-eal3, ${misc:Depends}, ${shlibs:Depends} +Conflicts: libdpdk0 +Description: Data Plane Development Kit (librte-eal runtime library) + DPDK is a set of libraries for fast packet processing. Applications run + in user-space and communicate directly with dedicated network interfaces. + . + This package contains an ABI compatbility link for an older version of the + runtime libraries for librte_eal. +