From 74574228b0f63a3c8fd373321ed25f4d24308df0 Mon Sep 17 00:00:00 2001 From: Dave Barach Date: Mon, 1 Feb 2016 12:05:52 -0500 Subject: [PATCH] Add a vpp-dpdk-dev package, enable plugins to use dpdk APIs directly Change-Id: I69db06a0b5d5d556c2fd570ea0056bb59d7bc3d6 Signed-off-by: Dave Barach --- .gitignore | 1 + build-data/platforms.mk | 4 ++++ build-root/deb/debian/.gitignore | 1 + build-root/deb/debian/control | 16 ++++++++-------- build-root/scripts/find-dpdk-contents | 20 ++++++++++++++++++++ 5 files changed, 34 insertions(+), 8 deletions(-) create mode 100755 build-root/scripts/find-dpdk-contents diff --git a/.gitignore b/.gitignore index 05d08a6b03c..f0b17c0d04a 100644 --- a/.gitignore +++ b/.gitignore @@ -3,6 +3,7 @@ /build-root/build-*/ /build-root/install-*/ /build-root/tools +/build-root/dpdk-includes/ /build-root/packages-vpp/ /build-root/path_setup /build-root/build-config.mk diff --git a/build-data/platforms.mk b/build-data/platforms.mk index 38f840e1d87..988be14b61d 100644 --- a/build-data/platforms.mk +++ b/build-data/platforms.mk @@ -36,6 +36,10 @@ install-deb: $(patsubst %,%-find-source,$(ROOT_PACKAGES)) ./scripts/find-dev-contents $(INSTALL_PREFIX)$(ARCH) \ deb/debian/vpp-dev.install ; \ \ + : dpdk headers ; \ + ./scripts/find-dpdk-contents $(INSTALL_PREFIX)$(ARCH) \ + deb/debian/vpp-dpdk-dev.install ; \ + \ : bin package needs startup config ; \ echo ../../vpp/conf/startup.conf /etc/vpp \ >> deb/debian/vpp.install ; \ diff --git a/build-root/deb/debian/.gitignore b/build-root/deb/debian/.gitignore index 261ea486783..e7868b4e964 100644 --- a/build-root/deb/debian/.gitignore +++ b/build-root/deb/debian/.gitignore @@ -7,6 +7,7 @@ vpp-dpdk-dkms* vpp/ vpp-dev/ vpp-lib/ +vpp-dpdk-dev/ vpp-dpdk-dkms/ vpp-dbg/ vppctl/ diff --git a/build-root/deb/debian/control b/build-root/deb/debian/control index a90cea76ea2..cf22fd021bb 100644 --- a/build-root/deb/debian/control +++ b/build-root/deb/debian/control @@ -23,16 +23,16 @@ Package: vpp-dev Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends} Description: Vector Packet Processing--development support - This package contains development support files for the VPP libraries, including: + This package contains development support files for the VPP libraries . - Do we need to list those header files or just leave it blank ? - dynamic vectors (vec.c), dynamic bitmaps (bitmap.h), allocation heap of - objects (heap.c), allocation pool(pool.h), dynamic hash tables (hash.c), memory - allocator (mheap.c), extendable printf-like interface built on top of vectors - (format.c), formats for data structures (std-formats.c), and support for clock - time-based function calls (timer.c). + +Package: vpp-dpdk-dev +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends} +Description: Vector Packet Processing--development support + This package contains dpdk header files which match the dpdk version + compiled into the vpp executable . - TODO: reference and describe only the .h files Package: vpp-lib Architecture: any diff --git a/build-root/scripts/find-dpdk-contents b/build-root/scripts/find-dpdk-contents new file mode 100755 index 00000000000..f8c80b5bf81 --- /dev/null +++ b/build-root/scripts/find-dpdk-contents @@ -0,0 +1,20 @@ +#!/bin/bash + +# includes +rm -rf dpdk-includes +mkdir dpdk-includes +(cd $1/dpdk/include; tar cfh - . | (cd ../../../dpdk-includes; tar xf -)) + +paths=`cd dpdk-includes; find . -type f -print` +rm -f $2 + +for path in $paths +do + dir=`dirname $path` + if [ $dir = "." ] ; then + echo ../dpdk-includes/$path /usr/include/vpp-dpdk >> $2 + else + echo ../dpdk-includes/$path /usr/include/vpp-dpdk/$dir >> $2 + fi +done + -- 2.16.6