Hi,

Please find attached first draft version of DPDK recipe.

Let me know if it is good to go in main line.

Regards,
Gaurang Shastri
Embedded Distribution Developer
From 40d84cc472b663a6eca0aadf2283f82f96f31c1e Mon Sep 17 00:00:00 2001
From: Gaurang Shastri <[email protected]>
Date: Fri, 23 May 2014 14:43:55 +0530
Subject: [PATCH] dpdk: first draft version of Intel DPDK version 1.6.0r2

Use the latest version from the dpdk website.

[YOCTO #4394]

Signed-off-by: Gaurang Shastri <[email protected]>
---
 meta-romley/recipes-bsp/dpdk/dpdk_1.6.0r2.bb |   89 ++++++++++++++++++++++++++
 1 files changed, 89 insertions(+), 0 deletions(-)
 create mode 100644 meta-romley/recipes-bsp/dpdk/dpdk_1.6.0r2.bb

diff --git a/meta-romley/recipes-bsp/dpdk/dpdk_1.6.0r2.bb b/meta-romley/recipes-bsp/dpdk/dpdk_1.6.0r2.bb
new file mode 100644
index 0000000..fb98e69
--- /dev/null
+++ b/meta-romley/recipes-bsp/dpdk/dpdk_1.6.0r2.bb
@@ -0,0 +1,89 @@
+DESCRIPTION = "Intel(r) Data Plane Development Kit"
+HOMEPAGE = "http://dpdk.org";
+LICENSE = "BSD & LGPLv2 & GPLv2"
+LIC_FILES_CHKSUM = "file://LICENSE.GPL;md5=751419260aa954499f7abaabaa882bbe"
+
+SRC_URI = "http://dpdk.org/browse/dpdk/snapshot/dpdk-${PV}.tar.gz \
+"
+
+SRC_URI[md5sum] = "f406d027320fc8e724bff20db5397cbb"
+SRC_URI[sha256sum] = "e72fdebcf8a899fc58e60c9b6493b7457576eece60b08dea6aee96c9087df4b2"
+
+DEPENDS = "virtual/kernel linux-libc-headers"
+
+S = "${WORKDIR}/dpdk-${PV}"
+
+inherit module
+
+PACKAGES = "${PN}-core-runtime ${PN}-core-static ${PN}-core-devel"
+
+export target="build"
+export destdir="${D}${prefix}"
+export datadir1="${datadir}/${PN}"
+export moddir="/lib/modules/${KERNEL_VERSION}/extra"
+export machine="default"
+
+export RTE_SDK = "${S}"
+export RTE_SRCDIR = "${RTE_SDK}"
+export RTE_OUTPUT = "${RTE_SDK}/${target}"
+
+do_compile () {
+    make O=${target} T=${TARGET_ARCH}-default-linuxapp-gcc 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
+
+    cd ${RTE_OUTPUT}
+    sed -ri 's,/usrbuild,build,' Makefile
+    sed -ri 's,/usr,,' Makefile
+    unset LDFLAGS TARGET_LDFLAGS BUILD_LDFLAGS
+    oe_runmake KSRC=${STAGING_KERNEL_DIR} CFLAGS='${CFLAGS}' prefix='' \
+        EXTRA_LDFLAGS='' LDFLAGS='' LDLIBS='' CROSS='${CROSS_COMPILE}' V=1
+    cp lib/*.so ${RTE_OUTPUT}
+
+    sed -ri 's,(RTE_BUILD_SHARED_LIB=).*,\1n,' ${RTE_OUTPUT}/.config
+    oe_runmake KSRC=${STAGING_KERNEL_DIR} CFLAGS='${CFLAGS}' prefix='' \
+        EXTRA_LDFLAGS='' LDFLAGS='' LDLIBS='' CROSS='${CROSS_COMPILE}' V=1
+}
+
+do_install () {
+    unset LDFLAGS TARGET_LDFLAGS BUILD_LDFLAGS
+    make O=${target} DESTDIR=${destdir}
+    mkdir -p ${D}${moddir}
+    mv ${destdir}/${target}/kmod/*.ko  ${D}${moddir}/
+    rmdir ${destdir}/${target}/kmod
+    mkdir -p ${D}${sbindir}
+    ln -s ${datadir1}/tools/igb_uio_bind.py ${D}${sbindir}/igb_uio_bind
+    mkdir -p ${D}${bindir}
+    mv ${destdir}/${target}/app/testpmd ${D}${bindir}/
+    rmdir ${destdir}/${target}/app
+    mv ${destdir}/${target}/include    ${D}${includedir}/
+    mv ${destdir}/${target}/lib        ${D}${libdir}
+    mv ${destdir}/${target}/*.so       ${D}${libdir}
+    mkdir -p ${D}${datadir1}
+    mv ${destdir}/${target}/.config    ${D}${datadir1}/config
+    mv ${destdir}/${target}            ${D}${datadir1}
+    mv ${destdir}/mk                   ${D}${datadir1}
+    cp -a examples              ${D}${datadir1}
+    cp -a tools                 ${D}${datadir1}
+    ln -s ${datadir}/config     ${D}${datadir1}/${target}/.config
+    ln -s ${includedir}         ${D}${datadir1}/${target}/include
+    ln -s ${libdir}             ${D}${datadir1}/${target}/lib
+}
+
+FILES_${PN}-core-runtime = "${datadir1} ${datadir1}/config \
+                            ${datadir1}/tools ${moddir}/* \
+                            ${sbindir}/* ${bindir}/* \
+                            ${libdir}/*.so"
+
+FILES_${PN}-core-static = "${libdir}/*.a"
+
+FILES_${PN}-core-devel = "${includedir}/* ${datadir1}/mk \
+                          ${datadir1}/${target} \
+                          ${datadir1}/examples"
+
+INSANE_SKIP_${PN}-core-runtime = "ldflags"
+INSANE_SKIP_${PN}-core-static = "staticdev"
+INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
+
-- 
1.7.0.1

-- 
_______________________________________________
meta-intel mailing list
[email protected]
https://lists.yoctoproject.org/listinfo/meta-intel

Reply via email to