Age | Commit message (Collapse) | Author | Files | Lines |
|
17.05 moved all the tools to /usr/share/dpdk/usertools and those that
got installed by the makefiles are adapted like dpdk-pmdinfo.
But others that we decided to include like dpdk-devbind are missing.
So currently this is a broken symlink:
/sbin/dpdk-devbind -> /usr/share/dpdk/tools/dpdk-devbind.py
And intstead it is at:
/usr/share/dpdk/usertools/dpdk-devbind.py
Fix by adapting d/rules to link from the right path
Change-Id: I89ba54b3df81f5d2170e8a231674a6592935a033
Signed-off-by: Christian Ehrhardt <christian.ehrhardt@canonical.com>
|
|
The dpdk-dev SDK package is arch-dependent, as it ships a number of
binary executables.
Also using RTE_SDK does not support the multiple level of headers, so
instead of symlinking into /usr/include/dpdk copy the full set of
headers into /usr/share/dpdk/TARGET/include
Given dpkg cannot replace a symlink with a directory automatically
also generate a preinst file to handle it manually on upgrade.
Change-Id: I1fb8fbe424b8ef015c04062f2cffe9f2b9ffe02f
Signed-off-by: Luca Boccassi <luca.boccassi@gmail.com>
|
|
Generate them at build time to substitute the right directory per
architecture to fix the build.
Change-Id: Ib6ba0820a27a4cc38d5e11dc94d35f1adece1453
Signed-off-by: Luca Boccassi <luca.boccassi@gmail.com>
|
|
The sed regex is greedy, so 17.08-rc2-0vyatta1 returns 17.08-rc2.
Match everything until the separator instead.
Also use dpkg-parsechangelog --show-field Version to simplify it
further. It's available since dpkg-dev 17.0 which is in both
Ubuntu 14.04 and Debian 8.
Change-Id: Ie3ef44b5573d6ee586e8cf291f307c0539976ead
Signed-off-by: Luca Boccassi <luca.boccassi@gmail.com>
|
|
To avoid breaking compatibility, at least for the x86_64 users which
are the vast majority, symlink arch-specific headers in the general
include directory.
Change-Id: I684115c9196d7926e15734221e9ad8e1061af432
Signed-off-by: Luca Boccassi <luca.boccassi@gmail.com>
|
|
Fix multiarch compatibility by installing architecture specific
headers into the multiarch subdirectory.
Change-Id: I877432a659628c15bd68ab48d950d3ee795044f8
Signed-off-by: Luca Boccassi <luca.boccassi@gmail.com>
|
|
Build test tools which is now split from default build.
We want those as we already provided a few of them together with the dpdk-dev
package as helpers.
Since we want only those from the shared (not the static) build we only
add the shared ones.
Also along that some paths changed which had to be adapted.
This will add testacl and testpipeline tools and unify them with the
already provided test and testpmd tools in one directory.
Due to that testpmd will no more be in path, but that is correct given
that it is a test/dev tool more than a normal end user binary.
Change-Id: Ice383b5a70fe26fcd12864a0a86eebe114272108
Signed-off-by: Luca Boccassi <luca.boccassi@gmail.com>
Signed-off-by: Christian Ehrhardt <christian.ehrhardt@canonical.com>
|
|
Do not try to copy the unit test binaries if the config is not
enabled.
Change-Id: I339eac3b5bfae351085aebb69adbacac99790c03
Signed-off-by: Luca Boccassi <luca.boccassi@gmail.com>
|
|
Change-Id: I932232250c4f7ced707914bc3484b66849db43f1
Signed-off-by: Luca Boccassi <luca.boccassi@gmail.com>
|
|
Packaging is tuned toward having ABI-named packages, so change
custom config files too, not only the default ones
Change-Id: I8deae49d2b7d589d69e72da407e397ca430752af
Signed-off-by: Luca Boccassi <luca.boccassi@gmail.com>
|
|
Change-Id: I73e00edf4d7135e92d084d5748330ee7b3ab212d
Signed-off-by: Luca Boccassi <luca.boccassi@gmail.com>
|
|
Conflicts:
app/test-pmd/parameters.c
app/test-pmd/testpmd.c
debian/changelog
debian/control
debian/patches/fix-vhost-user-socket-permission.patch
debian/rules
doc/guides/cryptodevs/qat.rst
doc/guides/nics/thunderx.rst
doc/guides/rel_notes/release_16_11.rst
drivers/net/i40e/i40e_rxtx_vec_neon.c
drivers/net/ixgbe/ixgbe_rxtx.c
drivers/net/mlx5/mlx5_rxtx.c
drivers/net/nfp/nfp_net.c
drivers/net/qede/qede_ethdev.c
drivers/net/thunderx/nicvf_struct.h
drivers/net/virtio/virtio_ethdev.c
drivers/net/virtio/virtio_pci.c
drivers/net/virtio/virtio_pci.h
drivers/net/virtio/virtio_user/virtio_user_dev.c
drivers/net/virtio/virtio_user/virtio_user_dev.h
drivers/net/virtio/virtio_user_ethdev.c
examples/dpdk_qat/main.c
examples/performance-thread/l3fwd-thread/main.c
examples/quota_watermark/qw/init.c
lib/librte_eal/bsdapp/eal/eal_pci.c
lib/librte_eal/common/include/rte_version.h
lib/librte_vhost/socket.c
lib/librte_vhost/vhost.c
lib/librte_vhost/vhost.h
pkg/dpdk.spec
test/test/test_mempool.c
Change-Id: I04809b1bcf4ecee4c171c5acb60a8a8aac8cc4a8
Signed-off-by: Luca Boccassi <luca.boccassi@gmail.com>
|
|
Change-Id: Ieddf137bcb8ed68417b61ac7f66969d20231b4ed
Signed-off-by: Luca Boccassi <luca.boccassi@gmail.com>
|
|
Change-Id: I64ea0708cacbb657895ba2548bd3b02fac9a0c0c
Signed-off-by: Luca Boccassi <luca.boccassi@gmail.com>
|
|
There are many, many binary packages in DPDK, and they constantly
change.
To avoid having to manually maintain the list of dependencies of
libdpdk-dev and recommends of dpdk, generate them at build time
depending on what is actually built for each architecture.
Change-Id: I19f5f037c41dc4b1d61fb5b2c00e0f005431d8f0
Signed-off-by: Luca Boccassi <luca.boccassi@gmail.com>
|
|
dbgsym packages go in the -debug section of the archive, and various
DDs and FTP Masters have strongly recommended to avoid uploading any
such metapackage to Main for this reason.
It can be still very useful for users and rebuilders, so leave it
disabled behind a dbgsym_meta DEB_BUILD_OPTIONS flag.
Change-Id: I112f3195755cc6bafef3167b39d3d47273572377
Signed-off-by: Luca Boccassi <luca.boccassi@gmail.com>
|
|
This adds a meta-package to install all generated -dbgsym packages.
Change-Id: If2d802317628d5858ce2a60add445da39ab980e8
Signed-off-by: Luca Boccassi <luca.boccassi@gmail.com>
|
|
Change-Id: Ia7e55570cdc8aa93c82fbd2d7403331ecee95030
Signed-off-by: Luca Boccassi <luca.boccassi@gmail.com>
|
|
Change-Id: I23f329a3116563d70b318f6c4c9ad9159a48e997
Signed-off-by: Luca Boccassi <luca.boccassi@gmail.com>
|
|
Debian Policy version 4.0.0 was just released and nodoc is officially
recommended and recognised. Rename the option to comply.
Change-Id: If80282f5e47b05065dd427d067f6e37c0f349517
Signed-off-by: Luca Boccassi <luca.boccassi@gmail.com>
|
|
These were built only in the arch indep, and therefore usually x86 only.
Due to that dh:_installman only picked it up there.
Move the make target to the binary section, so that the man pages will
be packaged along the executables.
Update in v2
- keep it in the BUILD_DOC wrapper to be able to skip it with
nodoc build option.
Change-Id: I6aa6f2d78014de7764b6a8804711570b0194f66d
Signed-off-by: Christian Ehrhardt <christian.ehrhardt@canonical.com>
|
|
Upstream's build system requires a complete rebuild to have both
static and shared libraries, which takes time. Add a
DEB_BUILD_OPTIONS nostatic variable to let users disable it.
Change-Id: If33884e0b85f8fb00c8293bae3e1668db6c74e4c
Signed-off-by: Luca Boccassi <luca.boccassi@gmail.com>
|
|
Takes some good time to build the documentation, so add a
DEB_BUILD_OPTIONS nodocs variable to let users disable it.
Change-Id: I8cb44d31329367784d2987ecba008143be089376
Signed-off-by: Luca Boccassi <luca.boccassi@gmail.com>
|
|
Build test tools which is now split from default build.
We want those as we already provided a few of them together with the dpdk-dev
package as helpers.
Since we want only those from the shared (not the static) build we only
add the shared ones.
Also along that some paths changed which had to be adapted.
This will add testacl and testpipeline tools and unify them with the
already provided test and testpmd tools in one directory.
Due to that testpmd will no more be in path, but that is correct given
that it is a test/dev tool more than a normal end user binary.
Change-Id: Ice383b5a70fe26fcd12864a0a86eebe114272108
Signed-off-by: Christian Ehrhardt <christian.ehrhardt@canonical.com>
|
|
To avoid further issues with sub-libraries bumping ABIs one by one
we adapted to the MAJOR_ABI config feature.
That shall allow us to:
- co-install old and new binaries
- avoid recursive ldd resolving to the wrong (old vs new ABI) libs
- all libs being directly recognizable which code base they are from
Change-Id: I14c7bd1749969a812be9730829ba009401d443a2
Signed-off-by: Christian Ehrhardt <christian.ehrhardt@canonical.com>
|
|
This is a workaround for the assumption of install-kmod functionality
that the running kernel is identical with the kernel we build against.
This fixes commit 75964339a3 ("Make debian/rules file call install-kmod").
Change-Id: If5b9a99db36d4a9130ee9876ef93d581132369fc
Signed-off-by: Jan Blunck <jblunck@infradead.org>
Signed-off-by: Luca Boccassi <luca.boccassi@gmail.com>
|
|
Change-Id: Ie769436ef8de824ad85ac5fd10f12de4e6f8f970
Signed-off-by: Jan Blunck <jblunck@infradead.org>
Signed-off-by: Luca Boccassi <luca.boccassi@gmail.com>
|
|
Change-Id: Ie619ee1992fd6d9d41e0b427707a825658c4dfc9
Signed-off-by: Jan Blunck <jblunck@infradead.org>
Signed-off-by: Luca Boccassi <luca.boccassi@gmail.com>
|
|
Lets pass the multiarch libdir at install time so that the links embedded
in the dpdk-dev package (build environment) are correct.
Change-Id: I4f907ad88721f2155a300dc6ad6724a686b7b194
Signed-off-by: Jan Blunck <jblunck@infradead.org>
Signed-off-by: Luca Boccassi <luca.boccassi@gmail.com>
|
|
The cross dependencies in DPDK libraries would 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)
The conflicts 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.
Instead of adding a conflicts - whenever possible - provide a backward
compatible wrapper symlinking to the new (ABI compatible) implementation.
Change-Id: If9fa9cb9474ad0ac555bdf1a0c72f701ddaf2926
Signed-off-by: Christian Ehrhardt <christian.ehrhardt@canonical.com>
|
|
Change-Id: Idd522f11cf20b6321ccd1c7db949f5fcb10f82d3
Signed-off-by: Christian Ehrhardt <christian.ehrhardt@canonical.com>
|
|
In Debian 9 -fPIE is now default, which causes build failures when
building kernel modules.
Pass -fno-PIE to fix it.
Change-Id: Ib9187ef6ed72bd25b92fb9f449a9435fcc5cc6cf
Signed-off-by: Luca Boccassi <luca.boccassi@gmail.com>
|
|
dpkg-dev < 1.18.11.
On newer dpkg-dev versions, dpkg-buildflags handle them directly and are
injected by gcc (6.x).
Change-Id: I1fd99405d9b07e10c3bc41034256212ebeaf7549
Signed-off-by: Santiago <santiagorr@riseup.net>
|
|
The autotest suite is ready to use after build and built by default.
It can be useful to developers and tools to have access to the test
toolchains built together with the packaged content.
Change-Id: I5d5fe58b4ccc6960edde92bbec2577526d0c9916
Signed-off-by: Christian Ehrhardt <christian.ehrhardt@canonical.com>
|
|
Build seems stable enough to support DEB_BUILD_OPTIONS parallel these
days. Since we don't just dh we have to explicitly support that flag.
Change-Id: Ia7fc590f81cdae5b4bd5abdfb36af7aaeddfa10c
Signed-off-by: Christian Ehrhardt <christian.ehrhardt@canonical.com>
|
|
If EAL is initialized and the path isn't existing at all (=no PMDs at
all are installed) the initialization fails with:
EAL: /usr/lib/x86_64-linux-gnu/dpdk-pmds/: cannot open shared object
file: No such file or directory
So since we support RTE_EAL_PMD_PATH now but can never guarantee that
there always will be a PMD it becomes a requirement of librte_eal to
have at least an empty path.
An empty path is fine and will not load anything, but avoid the
initializaiton error.
Change-Id: I2725169c67c190f8ed8b608fc5ae508ae66eab1c
Signed-off-by: Christian Ehrhardt <christian.ehrhardt@canonical.com>
|
|
This sets RTE_EAL_PMD_PATH to /usr/lib/$(shell dpkg-architecture
-qDEB_HOST_MULTIARCH)/dpdk-pmds.
On creating the pmd library packages those get a symlink from that dir.
This allows DPDK applications to autoload pmd drivers and only rely on
the EAL -d option for those provided in other places (e.g. custom
drivers).
By that one can use testpmd/l2fwd/openvswitch-dpdk and others without
passing -d <full-path-to-pmd.so> to EAL.
Each lib gets an extra relative symlink from the RTE_EAL_PMD_PATH dir to
the lib itself e.g. for librte_vhost:
./usr/lib/x86_64-linux-gnu/dpdk-pmds/
./usr/lib/x86_64-linux-gnu/dpdk-pmds/librte_vhost.so.3 -> ../librte_vhost.so.3
Change-Id: Idf997e58cfa5060961239b3ee0c22de89e0ed1a3
Signed-off-by: Christian Ehrhardt <christian.ehrhardt@canonical.com>
|
|
Parse DEB_BUILD_OPTIONS and let users override the defaults.
If DPDK_CONFIG is overridden, allow users to store it in the debian/
directory, to avoid modifying the upstream tree, and also avoid
modifying it during dh_auto_configure.
Change-Id: I6b4f449a36ab079fab271b5930b020fbafc24905
Signed-off-by: Luca Boccassi <luca.boccassi@gmail.com>
|
|
In order to allow users to call debian/rules manually and overriding
the default values of DPDK_CONFIG, RTE_MACHINE and RTE_TARGET assign
the defaults with ?= instead of :=
Change-Id: I5b4b63e62572705b37ff37d610df6305546c62f5
Signed-off-by: Luca Boccassi <luca.boccassi@gmail.com>
|
|
Call the build of manpages in d/rules arch indep build to be available for
later install-runtime (which is arch dep, but uses the same directories).
Change-Id: I9035d09a9d44c6fbc049f20a20db8bbb51c6478a
Signed-off-by: Christian Ehrhardt <christian.ehrhardt@canonical.com>
|
|
Pass RTE_DEVEL_BUILD=n to make calls to avoid building the test
pmds with rpath set to the current path, which is wrong for binaries
shipped by distributions.
Fixes Lintian Error:
E: dpdk: binary-or-shlib-defines-rpath usr/bin/dpdk-pdump
/home/lboccass/git/dpdk_deb/debian/build/shared-root/lib
Change-Id: I45e6a72beed1769fe35277ec5a2bcf50788254bd
Signed-off-by: Luca Boccassi <luca.boccassi@gmail.com>
|
|
Enable ppc64el to build supported packages on that architecture as well.
xen dependencies are not available on ppc64el, so disable xen pmd in
that case.
powerpc currently has several libraries and pmds disabled in its default
dpdk config. That defines the range of expected-to-work packages.
Follow that and remove ppc64el architecture on those libs and pmds as packages.
Change-Id: I7f18962ad9e021c42e80739ddd569db4ecfe65dc
Signed-off-by: Christian Ehrhardt <christian.ehrhardt@canonical.com>
Change-Id: Ic0bb0741f4027dd4ed371e3228aa770fb3b698f9
Signed-off-by: Christian Ehrhardt <christian.ehrhardt@canonical.com>
|
|
When the binary kernel module build is enabled, a new package is
autogenerated. This requires adding it to the debian/control file,
and then cleaning it up.
Doing this via a backup debian/control.orig file that is gitignored
is error prone and can lead to changes being inadvertently and
silently overwritten.
Use a sed expression to remove the exact autogenerated snippet
instead to avoid this issue.
Change-Id: If04c25d2b267f654475567b78a36fd1de8318d76
Signed-off-by: Luca Boccassi <luca.boccassi@gmail.com>
|
|
Otherwise the DPDK build errors out when the other environment
variables are set.
Change-Id: Iaa63a8e747be4daae5d23fa986e184a63eed827f
Signed-off-by: Luca Boccassi <luca.boccassi@gmail.com>
|
|
Part of fix for:
W: dpdk-dev: hardening-no-relro usr/share/dpdk/x86_64-default-linuxapp-gcc/app/dpdk-pmdinfogen
Change-Id: I27805d114619944d2cb0df2d35ddbf3d157aea18
Signed-off-by: Luca Boccassi <luca.boccassi@gmail.com>
|
|
Add optional binary kernel modules package, disabled by default
(build with DEB_BUILD_OPTIONS=kernel_modules to enable). If enabled
will build kernel modules against the local, current kernel version
(override by adding ksrc=<path/to/kernel/sources> to
DEB_BUILD_OPTIONS) into a dpdk-modules-<kernel version> package.
Useful for downstream projects that ship a complete ISO, where it is
not desirable to include a whole building environment for DKMS
packages.
Change-Id: I7e0ab239eaf08da71f9d58d60e32abf7cd42bec4
Signed-off-by: Luca Boccassi <luca.boccassi@gmail.com>
|
|
Simplify debian/rules targets by using overrides on debhelper targets
Change-Id: Id018eae33b5f93acf54b3f24e0f4733683371ad5
Signed-off-by: Luca Boccassi <luca.boccassi@gmail.com>
|
|
The api and guides docs are built in the static build dir but
installed from the shared dir, which is empty. Use the static dir
in both the build and install targets.
Change-Id: Ibd532d8cfce770b8109e04a88b51307dae2a7fde
Signed-off-by: Luca Boccassi <luca.boccassi@gmail.com>
|
|
The content of the libdpdk.so linker script is read at build time and
the libraries included are used to generate the LIBS flags. Also the
version is read from the changelog.
Change-Id: I52a6dd01706713feb91004d138dbeac7e870aca5
Signed-off-by: Luca Boccassi <luca.boccassi@gmail.com>
|
|
Changes:
- Tools renamed, dpdk_nic_bind is now dpdk-devbind
- Adapt d/p/ubuntu-fix-vhost-user-socket-permission.patch to 16.07-rc4
Change-Id: I7b476d3d063db3b321ba6e79289ea99e337f0da0
Signed-off-by: Ricardo Salveti <ricardo.salveti@linaro.org>
|