Add a vpp-dpdk-dev package, enable plugins to use dpdk APIs directly 77/177/1
authorDave Barach <dave@barachs.net>
Mon, 1 Feb 2016 17:05:52 +0000 (12:05 -0500)
committerDave Barach <dave@barachs.net>
Mon, 1 Feb 2016 17:06:04 +0000 (12:06 -0500)
Change-Id: I69db06a0b5d5d556c2fd570ea0056bb59d7bc3d6
Signed-off-by: Dave Barach <dave@barachs.net>
.gitignore
build-data/platforms.mk
build-root/deb/debian/.gitignore
build-root/deb/debian/control
build-root/scripts/find-dpdk-contents [new file with mode: 0755]

index 05d08a6..f0b17c0 100644 (file)
@@ -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
index 38f840e..988be14 100644 (file)
@@ -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 ;                                  \
index 261ea48..e7868b4 100644 (file)
@@ -7,6 +7,7 @@ vpp-dpdk-dkms*
 vpp/
 vpp-dev/
 vpp-lib/
+vpp-dpdk-dev/
 vpp-dpdk-dkms/
 vpp-dbg/
 vppctl/
index a90cea7..cf22fd0 100644 (file)
@@ -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 (executable)
index 0000000..f8c80b5
--- /dev/null
@@ -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        
+