Re: [meta-intel] [PATCH V2 1/3] meta-intel/common: Add include file for DPDK

2014-09-26 Thread Selvaraj, Sreeju ArmughanX
Hi Ross,

Is this patch fine ? Do you have any feedback on this.

Thanks and Regards,
-Sreeju

-Original Message-
From: Selvaraj, Sreeju ArmughanX 
Sent: Wednesday, September 17, 2014 10:20 PM
To: meta-intel@yoctoproject.org
Cc: Selvaraj, Sreeju ArmughanX
Subject: [PATCH V2 1/3] meta-intel/common: Add include file for DPDK

From: Sreeju Selvaraj sreeju.armughanx.selva...@intel.com

Added include file dpdk.inc to share the common functionality based on 
dpdk_1.6.0r2

Added a new variable EXAMPLE_BUILD_DIR. this points to apps build directory 
which is different in dpdk v1.6.0r2 and v1.7.0.
User of dpdk.inc has to define EXAMPLE_BUILD_DIR for the installation of 
example apps

Signed-off-by: Sreeju Selvaraj sreeju.armughanx.selva...@intel.com
---
 common/recipes-extended/dpdk/dpdk.inc| 139 +
 common/recipes-extended/dpdk/dpdk_1.6.0r2.bb | 150 +++
 2 files changed, 154 insertions(+), 135 deletions(-)  create mode 100644 
common/recipes-extended/dpdk/dpdk.inc

diff --git a/common/recipes-extended/dpdk/dpdk.inc 
b/common/recipes-extended/dpdk/dpdk.inc
new file mode 100644
index 000..ef369df
--- /dev/null
+++ b/common/recipes-extended/dpdk/dpdk.inc
@@ -0,0 +1,139 @@
+DESCRIPTION = Intel(r) Data Plane Development Kit
+HOMEPAGE = http://dpdk.org;
+LICENSE = BSD  LGPLv2  GPLv2
+LIC_FILES_CHKSUM = file://LICENSE.GPL;md5=751419260aa954499f7abaabaa882bbe
+
+
+RDEPENDS_${PN} += python-subprocess
+
+inherit module
+
+export MODULE_DIR=/lib/modules/${KERNEL_VERSION}/kernel/drivers/net
+export RTE_SDK = ${S}
+export RTE_TARGET=${TARGET_ARCH}-ivshmem-${TARGET_OS}app-gcc
+export ICP_ROOT = ${PKG_CONFIG_SYSROOT_DIR}/usr/include
+export ICP_LIB_ROOT= ${PKG_CONFIG_SYSROOT_DIR}/usr/lib
+export RTE_KERNELDIR = ${STAGING_KERNEL_DIR}
+export INSTALL_PATH = ${prefix}/dpdk
+
+
+do_configure () {
+   #
+   ### default value for prefix is usr, unsetting it, so it
+   ### will not be concatenated in ${RTE_TARGET}/Makefile
+   ### which will cause compilation failure
+   #
+   unset prefix
+
+   make O=$RTE_TARGET T=$RTE_TARGET config
+
+}
+
+
+do_compile () {
+   unset LDFLAGS TARGET_LDFLAGS BUILD_LDFLAGS
+
+   cd ${S}/${RTE_TARGET}
+   oe_runmake EXTRA_LDFLAGS= --sysroot=${STAGING_DIR_HOST} \
+  EXTRA_CFLAGS= --sysroot=${STAGING_DIR_HOST} \
+  CROSS=${TARGET_PREFIX} \
+  prefix=  LDFLAGS=  WERROR_FLAGS=-w V=1
+
+}
+
+
+do_install () {
+
+   install -m 0755 -d  ${D}/${INSTALL_PATH} \
+   ${D}/${INSTALL_PATH}/doc \
+   ${D}/${INSTALL_PATH}/tools \
+   ${D}/${INSTALL_PATH}/${RTE_TARGET} \
+   ${D}/${INSTALL_PATH}/${RTE_TARGET}/app \
+   ${D}${includedir} \
+   ${D}${includedir}/arch \
+   ${D}${includedir}/exec-env \
+   ${D}${libdir} \
+   ${D}${MODULE_DIR}
+
+   install -m 0755 ${S}/${RTE_TARGET}/kmod/igb_uio.ko  
${D}${MODULE_DIR}/
+   install -m 0755 ${S}/${RTE_TARGET}/kmod/rte_kni.ko  
${D}${MODULE_DIR}/
+
+   install -m 640 ${S}/${RTE_TARGET}/lib/*.a   ${D}${libdir}
+
+   install -m 640 ${S}/${RTE_TARGET}/.config   
${D}/${INSTALL_PATH}/${RTE_TARGET}/
+   install -m 640 ${S}/${RTE_TARGET}/include/*.h   
${D}${includedir}/
+   install -m 640 ${S}/${RTE_TARGET}/include/arch/*
${D}${includedir}/arch/
+   install -m 640 ${S}/${RTE_TARGET}/include/exec-env/*
${D}${includedir}/exec-env/
+   install -m 0755 ${S}/tools/*.py 
${D}/${INSTALL_PATH}/tools/
+
+
+   #Install test applications
+   install -m 0755 ${S}/${RTE_TARGET}/app/test 
${D}/${INSTALL_PATH}/${RTE_TARGET}/app
+   install -m 0755 ${S}/${RTE_TARGET}/app/testpmd  
${D}/${INSTALL_PATH}/${RTE_TARGET}/app
+   install -m 0755 ${S}/${RTE_TARGET}/app/dump_cfg 
${D}/${INSTALL_PATH}/${RTE_TARGET}/app
+   install -m 0755 ${S}/${RTE_TARGET}/app/cmdline_test 
${D}/${INSTALL_PATH}/${RTE_TARGET}/app
+
+
+   # Install example applications
+   # It is expected that user of this include file should define 
EXAMPLES_BUILD_DIR
+   for app in ${S}/examples/*
+   do
+   case `basename ${app}` in
+   dpdk_qat | vhost | vhost_xen | Makefile ) continue
+   ;;
+   l2fwd-ivshmem)
+   install -m 0755 ${app}/guest/${EXAMPLES_BUILD_DIR}/app/guest
${D}/${INSTALL_PATH}/${RTE_TARGET}/app
+   install -m 0755 ${app}/host/${EXAMPLES_BUILD_DIR}/app/host  
${D}/${INSTALL_PATH}/${RTE_TARGET}/app

Re: [meta-intel] [PATCH V2 1/3] meta-intel/common: Add include file for DPDK

2014-09-26 Thread Burton, Ross
On 26 September 2014 07:58, Selvaraj, Sreeju ArmughanX
sreeju.armughanx.selva...@intel.com wrote:
 Is this patch fine ? Do you have any feedback on this.

It seems reasonable to me.

Ross
-- 
___
meta-intel mailing list
meta-intel@yoctoproject.org
https://lists.yoctoproject.org/listinfo/meta-intel


[meta-intel] [PATCH V2 1/3] meta-intel/common: Add include file for DPDK

2014-09-17 Thread sreeju . armughanx . selvaraj
From: Sreeju Selvaraj sreeju.armughanx.selva...@intel.com

Added include file dpdk.inc to share the common functionality
based on dpdk_1.6.0r2

Added a new variable EXAMPLE_BUILD_DIR. this points to apps build
directory which is different in dpdk v1.6.0r2 and v1.7.0.
User of dpdk.inc has to define EXAMPLE_BUILD_DIR for the
installation of example apps

Signed-off-by: Sreeju Selvaraj sreeju.armughanx.selva...@intel.com
---
 common/recipes-extended/dpdk/dpdk.inc| 139 +
 common/recipes-extended/dpdk/dpdk_1.6.0r2.bb | 150 +++
 2 files changed, 154 insertions(+), 135 deletions(-)
 create mode 100644 common/recipes-extended/dpdk/dpdk.inc

diff --git a/common/recipes-extended/dpdk/dpdk.inc 
b/common/recipes-extended/dpdk/dpdk.inc
new file mode 100644
index 000..ef369df
--- /dev/null
+++ b/common/recipes-extended/dpdk/dpdk.inc
@@ -0,0 +1,139 @@
+DESCRIPTION = Intel(r) Data Plane Development Kit
+HOMEPAGE = http://dpdk.org;
+LICENSE = BSD  LGPLv2  GPLv2
+LIC_FILES_CHKSUM = file://LICENSE.GPL;md5=751419260aa954499f7abaabaa882bbe
+
+
+RDEPENDS_${PN} += python-subprocess
+
+inherit module
+
+export MODULE_DIR=/lib/modules/${KERNEL_VERSION}/kernel/drivers/net
+export RTE_SDK = ${S}
+export RTE_TARGET=${TARGET_ARCH}-ivshmem-${TARGET_OS}app-gcc
+export ICP_ROOT = ${PKG_CONFIG_SYSROOT_DIR}/usr/include
+export ICP_LIB_ROOT= ${PKG_CONFIG_SYSROOT_DIR}/usr/lib
+export RTE_KERNELDIR = ${STAGING_KERNEL_DIR}
+export INSTALL_PATH = ${prefix}/dpdk
+
+
+do_configure () {
+   #
+   ### default value for prefix is usr, unsetting it, so it
+   ### will not be concatenated in ${RTE_TARGET}/Makefile
+   ### which will cause compilation failure
+   #
+   unset prefix
+
+   make O=$RTE_TARGET T=$RTE_TARGET config
+
+}
+
+
+do_compile () {
+   unset LDFLAGS TARGET_LDFLAGS BUILD_LDFLAGS
+
+   cd ${S}/${RTE_TARGET}
+   oe_runmake EXTRA_LDFLAGS= --sysroot=${STAGING_DIR_HOST} \
+  EXTRA_CFLAGS= --sysroot=${STAGING_DIR_HOST} \
+  CROSS=${TARGET_PREFIX} \
+  prefix=  LDFLAGS=  WERROR_FLAGS=-w V=1
+
+}
+
+
+do_install () {
+
+   install -m 0755 -d  ${D}/${INSTALL_PATH} \
+   ${D}/${INSTALL_PATH}/doc \
+   ${D}/${INSTALL_PATH}/tools \
+   ${D}/${INSTALL_PATH}/${RTE_TARGET} \
+   ${D}/${INSTALL_PATH}/${RTE_TARGET}/app \
+   ${D}${includedir} \
+   ${D}${includedir}/arch \
+   ${D}${includedir}/exec-env \
+   ${D}${libdir} \
+   ${D}${MODULE_DIR}
+
+   install -m 0755 ${S}/${RTE_TARGET}/kmod/igb_uio.ko  
${D}${MODULE_DIR}/
+   install -m 0755 ${S}/${RTE_TARGET}/kmod/rte_kni.ko  
${D}${MODULE_DIR}/
+
+   install -m 640 ${S}/${RTE_TARGET}/lib/*.a   ${D}${libdir}
+
+   install -m 640 ${S}/${RTE_TARGET}/.config   
${D}/${INSTALL_PATH}/${RTE_TARGET}/
+   install -m 640 ${S}/${RTE_TARGET}/include/*.h   
${D}${includedir}/
+   install -m 640 ${S}/${RTE_TARGET}/include/arch/*
${D}${includedir}/arch/
+   install -m 640 ${S}/${RTE_TARGET}/include/exec-env/*
${D}${includedir}/exec-env/
+   install -m 0755 ${S}/tools/*.py 
${D}/${INSTALL_PATH}/tools/
+
+
+   #Install test applications
+   install -m 0755 ${S}/${RTE_TARGET}/app/test 
${D}/${INSTALL_PATH}/${RTE_TARGET}/app
+   install -m 0755 ${S}/${RTE_TARGET}/app/testpmd  
${D}/${INSTALL_PATH}/${RTE_TARGET}/app
+   install -m 0755 ${S}/${RTE_TARGET}/app/dump_cfg 
${D}/${INSTALL_PATH}/${RTE_TARGET}/app
+   install -m 0755 ${S}/${RTE_TARGET}/app/cmdline_test 
${D}/${INSTALL_PATH}/${RTE_TARGET}/app
+
+
+   # Install example applications
+   # It is expected that user of this include file should define 
EXAMPLES_BUILD_DIR
+   for app in ${S}/examples/*
+   do
+   case `basename ${app}` in
+   dpdk_qat | vhost | vhost_xen | Makefile ) continue
+   ;;
+   l2fwd-ivshmem)
+   install -m 0755 ${app}/guest/${EXAMPLES_BUILD_DIR}/app/guest
${D}/${INSTALL_PATH}/${RTE_TARGET}/app
+   install -m 0755 ${app}/host/${EXAMPLES_BUILD_DIR}/app/host  
${D}/${INSTALL_PATH}/${RTE_TARGET}/app
+   continue
+   ;;
+   multi_process)
+   install -m 0755 
${app}/client_server_mp/mp_client/${EXAMPLES_BUILD_DIR}/app/mp_client   
${D}/${INSTALL_PATH}/${RTE_TARGET}/app
+   install -m 0755 
${app}/client_server_mp/mp_server/${EXAMPLES_BUILD_DIR}/app/mp_server