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 Technical Lead Embedded Distribution Developer Contact : +919742182240
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
