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
