Patchwork [meta-networking] add support for opendataplane

login
register
mail settings
Submitter Yao Zhao
Date July 31, 2014, 7:15 p.m.
Message ID <1406834100-20328-1-git-send-email-yao.zhao@windriver.com>
Download mbox | patch
Permalink /patch/77041/
State Superseded, archived
Headers show

Comments

Yao Zhao - July 31, 2014, 7:15 p.m.
support build opendataplane from linaro.

The OpenDataPlane (ODP) project provides a data plane application
programming environment that is easy to use, high performance,
and portable between networking SoCs.

Signed-off-by: Yao Zhao <yao.zhao@windriver.com>
---
 ...inux-dpdk-remove-unnecessary-include-path.patch | 29 ++++++++++++++++++++++
 .../opendataplane/opendataplane.inc                | 21 ++++++++++++++++
 .../opendataplane/opendataplane_0.2.bb             | 25 +++++++++++++++++++
 .../opendataplane/opendataplane_git.bb             | 14 +++++++++++
 4 files changed, 89 insertions(+)
 create mode 100644 meta-networking/recipes-support/opendataplane/files/0001-linux-dpdk-remove-unnecessary-include-path.patch
 create mode 100644 meta-networking/recipes-support/opendataplane/opendataplane.inc
 create mode 100644 meta-networking/recipes-support/opendataplane/opendataplane_0.2.bb
 create mode 100644 meta-networking/recipes-support/opendataplane/opendataplane_git.bb
Khem Raj - July 31, 2014, 9:01 p.m.
On Thu, Jul 31, 2014 at 12:15 PM, Yao Zhao <yao.zhao@windriver.com> wrote:
> support build opendataplane from linaro.
>
> The OpenDataPlane (ODP) project provides a data plane application
> programming environment that is easy to use, high performance,
> and portable between networking SoCs.
>
> Signed-off-by: Yao Zhao <yao.zhao@windriver.com>
> ---
>  ...inux-dpdk-remove-unnecessary-include-path.patch | 29 ++++++++++++++++++++++
>  .../opendataplane/opendataplane.inc                | 21 ++++++++++++++++
>  .../opendataplane/opendataplane_0.2.bb             | 25 +++++++++++++++++++
>  .../opendataplane/opendataplane_git.bb             | 14 +++++++++++
>  4 files changed, 89 insertions(+)
>  create mode 100644 meta-networking/recipes-support/opendataplane/files/0001-linux-dpdk-remove-unnecessary-include-path.patch
>  create mode 100644 meta-networking/recipes-support/opendataplane/opendataplane.inc
>  create mode 100644 meta-networking/recipes-support/opendataplane/opendataplane_0.2.bb
>  create mode 100644 meta-networking/recipes-support/opendataplane/opendataplane_git.bb
>
> diff --git a/meta-networking/recipes-support/opendataplane/files/0001-linux-dpdk-remove-unnecessary-include-path.patch b/meta-networking/recipes-support/opendataplane/files/0001-linux-dpdk-remove-unnecessary-include-path.patch
> new file mode 100644
> index 0000000..a0ef7ce
> --- /dev/null
> +++ b/meta-networking/recipes-support/opendataplane/files/0001-linux-dpdk-remove-unnecessary-include-path.patch
> @@ -0,0 +1,29 @@
> +From 72b8eacc2985f054cadc5d0b48351a658998b8d6 Mon Sep 17 00:00:00 2001
> +From: Yao Zhao <yao.zhao@windriver.com>
> +Date: Wed, 30 Jul 2014 16:02:14 -0400
> +Subject: [PATCH] linux-dpdk: remove unnecessary include path
> +
> +for dpdk include/arch and include/exec-env is only included
> +by generic rte_xxx.h header, can't be included directly.
> +
> +Signed-off-by: Yao Zhao <yao.zhao@windriver.com>
> +---
> + platform/linux-dpdk/Makefile.am | 2 --
> + 1 file changed, 2 deletions(-)
> +
> +diff --git a/platform/linux-dpdk/Makefile.am b/platform/linux-dpdk/Makefile.am
> +index 4aa568f..dfcaadb 100644
> +--- a/platform/linux-dpdk/Makefile.am
> ++++ b/platform/linux-dpdk/Makefile.am
> +@@ -12,8 +12,6 @@ PLAT_CFLAGS  = -msse4.2
> + if SDK_INSTALL_PATH_
> + PLAT_CFLAGS += -include $(SDK_INSTALL_PATH)/include/rte_config.h
> + PLAT_CFLAGS += -I$(SDK_INSTALL_PATH)/include
> +-PLAT_CFLAGS += -I$(SDK_INSTALL_PATH)/include/arch
> +-PLAT_CFLAGS += -I$(SDK_INSTALL_PATH)/include/exec-env

is this patch upstreamed ?

> +
> + AM_LDFLAGS  += -L$(SDK_INSTALL_PATH)/lib
> + endif
> +--
> +1.9.1
> +
> diff --git a/meta-networking/recipes-support/opendataplane/opendataplane.inc b/meta-networking/recipes-support/opendataplane/opendataplane.inc
> new file mode 100644
> index 0000000..c4b184e
> --- /dev/null
> +++ b/meta-networking/recipes-support/opendataplane/opendataplane.inc
> @@ -0,0 +1,21 @@
> +SUMMARY = "Cross platform OpenDataPlane application APIs"
> +
> +DESCRIPTION = "The OpenDataPlane project has been established to \
> +produce an open-source, cross-platform set of application \
> +programming interfaces (APIs) for the networking data plane."
> +
> +HOMEPAGE = "http://www.opendataplane.org"
> +SECTION = "networking"
> +LICENSE = "BSD-3-Clause"
> +LIC_FILES_CHKSUM = "file://LICENSE;md5=4ccfa994aa96974cfcd39a59faee20a2"
> +
> +SRC_URI = "git://git.linaro.org/lng/odp.git"
> +
> +COMPATIBLE_HOST = "^((?!mips).*)$"
> +
> +PACKAGECONFIG ??= "platform_linux_generic"
> +PACKAGECONFIG[netmap] = "--enable-netmap,,,"
> +PACKAGECONFIG[platform_linux_generic] = "--with-platform=linux-generic,,,"
> +
> +S = "${WORKDIR}/git"
> +
> diff --git a/meta-networking/recipes-support/opendataplane/opendataplane_0.2.bb b/meta-networking/recipes-support/opendataplane/opendataplane_0.2.bb
> new file mode 100644
> index 0000000..74b6c2f
> --- /dev/null
> +++ b/meta-networking/recipes-support/opendataplane/opendataplane_0.2.bb
> @@ -0,0 +1,25 @@
> +require ${BPN}.inc
> +
> +#odp-0.2 tag
> +SRCREV  = "6007d8833a6880abedf98f792586c0cfb9f10de0"
> +PV = "0.2"
> +
> +#0.2 still using pure Makefile
> +
> +#override the Makefile DESTDIR
> +export DESTDIR="${D}${exec_prefix}"
> +
> +do_install () {
> +    oe_runmake install
> +
> +    #move DESTDIR/share/odp/odp_x usr/bin
> +    install -d ${D}${bindir}
> +    for i in ${DESTDIR}/share/odp/*; do
> +        filename=`basename $i`
> +        mv ${DESTDIR}/share/odp/${filename} ${D}${bindir}/${filename}
> +    done
> +    rm -rf ${DESTDIR}/share
> +}
> +
> +#non standard doc install location
> +FILES_${PN}-doc += "/usr/doc/*"

hardcoding /usr can be removed.

> diff --git a/meta-networking/recipes-support/opendataplane/opendataplane_git.bb b/meta-networking/recipes-support/opendataplane/opendataplane_git.bb
> new file mode 100644
> index 0000000..7415993
> --- /dev/null
> +++ b/meta-networking/recipes-support/opendataplane/opendataplane_git.bb
> @@ -0,0 +1,14 @@
> +require ${BPN}.inc
> +
> +SRC_URI += "file://0001-linux-dpdk-remove-unnecessary-include-path.patch"
> +
> +SRCREV  = "${AUTOREV}"
> +#8f4f080625e2db810da3f13770ba418c72b08ede will support --with-sdk-install-path
> +PV = "0.2+git${SRCPV}"
> +
> +PACKAGECONFIG[platform_linux_generic] = "--with-platform=linux-generic,,openssl,libcrypto"
> +#need meta-intel layer's common/recipes-extended/dpdk/dpdk recipe
> +PACKAGECONFIG[platform_linux_dpdk] = '--with-platform=linux-dpdk --with-sdk-install-path="${STAGING_EXECPREFIXDIR}",,dpdk,'
> +PACKAGECONFIG[platform_linux_keystone2] = "--with-platform=linux-keystone2,,,"
> +
> +inherit autotools
Paul Eggleton - Aug. 1, 2014, 9:15 a.m.
On Thursday 31 July 2014 15:15:00 Yao Zhao wrote:
> support build opendataplane from linaro.
> 
> The OpenDataPlane (ODP) project provides a data plane application
> programming environment that is easy to use, high performance,
> and portable between networking SoCs.
> 
> Signed-off-by: Yao Zhao <yao.zhao@windriver.com>
> ---
>  ...inux-dpdk-remove-unnecessary-include-path.patch | 29
> ++++++++++++++++++++++ .../opendataplane/opendataplane.inc                |
> 21 ++++++++++++++++ .../opendataplane/opendataplane_0.2.bb             | 25
> +++++++++++++++++++ .../opendataplane/opendataplane_git.bb             | 14
> +++++++++++ 4 files changed, 89 insertions(+)
>  create mode 100644
> meta-networking/recipes-support/opendataplane/files/0001-linux-dpdk-remove-
> unnecessary-include-path.patch create mode 100644
> meta-networking/recipes-support/opendataplane/opendataplane.inc create mode
> 100644 meta-networking/recipes-support/opendataplane/opendataplane_0.2.bb
> create mode 100644
> meta-networking/recipes-support/opendataplane/opendataplane_git.bb
> 
> diff --git
> a/meta-networking/recipes-support/opendataplane/files/0001-linux-dpdk-remov
> e-unnecessary-include-path.patch
> b/meta-networking/recipes-support/opendataplane/files/0001-linux-dpdk-remov
> e-unnecessary-include-path.patch new file mode 100644
> index 0000000..a0ef7ce
> --- /dev/null
> +++
> b/meta-networking/recipes-support/opendataplane/files/0001-linux-dpdk-remov
> e-unnecessary-include-path.patch @@ -0,0 +1,29 @@
> +From 72b8eacc2985f054cadc5d0b48351a658998b8d6 Mon Sep 17 00:00:00 2001
> +From: Yao Zhao <yao.zhao@windriver.com>
> +Date: Wed, 30 Jul 2014 16:02:14 -0400
> +Subject: [PATCH] linux-dpdk: remove unnecessary include path
> +
> +for dpdk include/arch and include/exec-env is only included
> +by generic rte_xxx.h header, can't be included directly.
> +
> +Signed-off-by: Yao Zhao <yao.zhao@windriver.com>
> +---
> + platform/linux-dpdk/Makefile.am | 2 --
> + 1 file changed, 2 deletions(-)
> +
> +diff --git a/platform/linux-dpdk/Makefile.am
> b/platform/linux-dpdk/Makefile.am +index 4aa568f..dfcaadb 100644
> +--- a/platform/linux-dpdk/Makefile.am
> ++++ b/platform/linux-dpdk/Makefile.am
> +@@ -12,8 +12,6 @@ PLAT_CFLAGS  = -msse4.2
> + if SDK_INSTALL_PATH_
> + PLAT_CFLAGS += -include $(SDK_INSTALL_PATH)/include/rte_config.h
> + PLAT_CFLAGS += -I$(SDK_INSTALL_PATH)/include
> +-PLAT_CFLAGS += -I$(SDK_INSTALL_PATH)/include/arch
> +-PLAT_CFLAGS += -I$(SDK_INSTALL_PATH)/include/exec-env
> +
> + AM_LDFLAGS  += -L$(SDK_INSTALL_PATH)/lib
> + endif
> +--
> +1.9.1
> +
> diff --git a/meta-networking/recipes-support/opendataplane/opendataplane.inc
> b/meta-networking/recipes-support/opendataplane/opendataplane.inc new file
> mode 100644
> index 0000000..c4b184e
> --- /dev/null
> +++ b/meta-networking/recipes-support/opendataplane/opendataplane.inc
> @@ -0,0 +1,21 @@
> +SUMMARY = "Cross platform OpenDataPlane application APIs"
> +
> +DESCRIPTION = "The OpenDataPlane project has been established to \
> +produce an open-source, cross-platform set of application \
> +programming interfaces (APIs) for the networking data plane."
> +
> +HOMEPAGE = "http://www.opendataplane.org"
> +SECTION = "networking"
> +LICENSE = "BSD-3-Clause"
> +LIC_FILES_CHKSUM = "file://LICENSE;md5=4ccfa994aa96974cfcd39a59faee20a2"
> +
> +SRC_URI = "git://git.linaro.org/lng/odp.git"
> +
> +COMPATIBLE_HOST = "^((?!mips).*)$"
> +
> +PACKAGECONFIG ??= "platform_linux_generic"
> +PACKAGECONFIG[netmap] = "--enable-netmap,,,"
> +PACKAGECONFIG[platform_linux_generic] = "--with-platform=linux-generic,,,"
> +
> +S = "${WORKDIR}/git"
> +
> diff --git
> a/meta-networking/recipes-support/opendataplane/opendataplane_0.2.bb
> b/meta-networking/recipes-support/opendataplane/opendataplane_0.2.bb new
> file mode 100644
> index 0000000..74b6c2f
> --- /dev/null
> +++ b/meta-networking/recipes-support/opendataplane/opendataplane_0.2.bb
> @@ -0,0 +1,25 @@
> +require ${BPN}.inc
> +
> +#odp-0.2 tag
> +SRCREV  = "6007d8833a6880abedf98f792586c0cfb9f10de0"
> +PV = "0.2"
> +
> +#0.2 still using pure Makefile
> +
> +#override the Makefile DESTDIR
> +export DESTDIR="${D}${exec_prefix}"
> +
> +do_install () {
> +    oe_runmake install
> +
> +    #move DESTDIR/share/odp/odp_x usr/bin
> +    install -d ${D}${bindir}
> +    for i in ${DESTDIR}/share/odp/*; do
> +        filename=`basename $i`
> +        mv ${DESTDIR}/share/odp/${filename} ${D}${bindir}/${filename}
> +    done
> +    rm -rf ${DESTDIR}/share
> +}
> +
> +#non standard doc install location
> +FILES_${PN}-doc += "/usr/doc/*"
> diff --git
> a/meta-networking/recipes-support/opendataplane/opendataplane_git.bb
> b/meta-networking/recipes-support/opendataplane/opendataplane_git.bb new
> file mode 100644
> index 0000000..7415993
> --- /dev/null
> +++ b/meta-networking/recipes-support/opendataplane/opendataplane_git.bb
> @@ -0,0 +1,14 @@
> +require ${BPN}.inc
> +
> +SRC_URI += "file://0001-linux-dpdk-remove-unnecessary-include-path.patch"
> +
> +SRCREV  = "${AUTOREV}"

I'm fairly sure we want to avoid having recipes with SRCREV  = "${AUTOREV}" in 
commonly-used public layers, since it's hard to know if it will continue to 
work from one day to the next.

Cheers,
Paul
Fathi Boudra - Aug. 1, 2014, 11:39 a.m.
On 1 August 2014 12:15, Paul Eggleton <paul.eggleton@linux.intel.com> wrote:
> On Thursday 31 July 2014 15:15:00 Yao Zhao wrote:
>> support build opendataplane from linaro.
>>
>> The OpenDataPlane (ODP) project provides a data plane application
>> programming environment that is easy to use, high performance,
>> and portable between networking SoCs.
>>
>> Signed-off-by: Yao Zhao <yao.zhao@windriver.com>
>> ---
>>  ...inux-dpdk-remove-unnecessary-include-path.patch | 29
>> ++++++++++++++++++++++ .../opendataplane/opendataplane.inc                |
>> 21 ++++++++++++++++ .../opendataplane/opendataplane_0.2.bb             | 25
>> +++++++++++++++++++ .../opendataplane/opendataplane_git.bb             | 14
>> +++++++++++ 4 files changed, 89 insertions(+)
>>  create mode 100644
>> meta-networking/recipes-support/opendataplane/files/0001-linux-dpdk-remove-
>> unnecessary-include-path.patch create mode 100644
>> meta-networking/recipes-support/opendataplane/opendataplane.inc create mode
>> 100644 meta-networking/recipes-support/opendataplane/opendataplane_0.2.bb
>> create mode 100644
>> meta-networking/recipes-support/opendataplane/opendataplane_git.bb
>>
>> diff --git
>> a/meta-networking/recipes-support/opendataplane/files/0001-linux-dpdk-remov
>> e-unnecessary-include-path.patch
>> b/meta-networking/recipes-support/opendataplane/files/0001-linux-dpdk-remov
>> e-unnecessary-include-path.patch new file mode 100644
>> index 0000000..a0ef7ce
>> --- /dev/null
>> +++
>> b/meta-networking/recipes-support/opendataplane/files/0001-linux-dpdk-remov
>> e-unnecessary-include-path.patch @@ -0,0 +1,29 @@
>> +From 72b8eacc2985f054cadc5d0b48351a658998b8d6 Mon Sep 17 00:00:00 2001
>> +From: Yao Zhao <yao.zhao@windriver.com>
>> +Date: Wed, 30 Jul 2014 16:02:14 -0400
>> +Subject: [PATCH] linux-dpdk: remove unnecessary include path
>> +
>> +for dpdk include/arch and include/exec-env is only included
>> +by generic rte_xxx.h header, can't be included directly.
>> +
>> +Signed-off-by: Yao Zhao <yao.zhao@windriver.com>
>> +---
>> + platform/linux-dpdk/Makefile.am | 2 --
>> + 1 file changed, 2 deletions(-)
>> +
>> +diff --git a/platform/linux-dpdk/Makefile.am
>> b/platform/linux-dpdk/Makefile.am +index 4aa568f..dfcaadb 100644
>> +--- a/platform/linux-dpdk/Makefile.am
>> ++++ b/platform/linux-dpdk/Makefile.am
>> +@@ -12,8 +12,6 @@ PLAT_CFLAGS  = -msse4.2
>> + if SDK_INSTALL_PATH_
>> + PLAT_CFLAGS += -include $(SDK_INSTALL_PATH)/include/rte_config.h
>> + PLAT_CFLAGS += -I$(SDK_INSTALL_PATH)/include
>> +-PLAT_CFLAGS += -I$(SDK_INSTALL_PATH)/include/arch
>> +-PLAT_CFLAGS += -I$(SDK_INSTALL_PATH)/include/exec-env
>> +
>> + AM_LDFLAGS  += -L$(SDK_INSTALL_PATH)/lib
>> + endif
>> +--
>> +1.9.1
>> +
>> diff --git a/meta-networking/recipes-support/opendataplane/opendataplane.inc
>> b/meta-networking/recipes-support/opendataplane/opendataplane.inc new file
>> mode 100644
>> index 0000000..c4b184e
>> --- /dev/null
>> +++ b/meta-networking/recipes-support/opendataplane/opendataplane.inc
>> @@ -0,0 +1,21 @@
>> +SUMMARY = "Cross platform OpenDataPlane application APIs"
>> +
>> +DESCRIPTION = "The OpenDataPlane project has been established to \
>> +produce an open-source, cross-platform set of application \
>> +programming interfaces (APIs) for the networking data plane."
>> +
>> +HOMEPAGE = "http://www.opendataplane.org"
>> +SECTION = "networking"
>> +LICENSE = "BSD-3-Clause"
>> +LIC_FILES_CHKSUM = "file://LICENSE;md5=4ccfa994aa96974cfcd39a59faee20a2"
>> +
>> +SRC_URI = "git://git.linaro.org/lng/odp.git"
>> +
>> +COMPATIBLE_HOST = "^((?!mips).*)$"
>> +
>> +PACKAGECONFIG ??= "platform_linux_generic"
>> +PACKAGECONFIG[netmap] = "--enable-netmap,,,"
>> +PACKAGECONFIG[platform_linux_generic] = "--with-platform=linux-generic,,,"
>> +
>> +S = "${WORKDIR}/git"
>> +
>> diff --git
>> a/meta-networking/recipes-support/opendataplane/opendataplane_0.2.bb
>> b/meta-networking/recipes-support/opendataplane/opendataplane_0.2.bb new
>> file mode 100644
>> index 0000000..74b6c2f
>> --- /dev/null
>> +++ b/meta-networking/recipes-support/opendataplane/opendataplane_0.2.bb
>> @@ -0,0 +1,25 @@
>> +require ${BPN}.inc
>> +
>> +#odp-0.2 tag
>> +SRCREV  = "6007d8833a6880abedf98f792586c0cfb9f10de0"
>> +PV = "0.2"
>> +
>> +#0.2 still using pure Makefile
>> +
>> +#override the Makefile DESTDIR
>> +export DESTDIR="${D}${exec_prefix}"
>> +
>> +do_install () {
>> +    oe_runmake install
>> +
>> +    #move DESTDIR/share/odp/odp_x usr/bin
>> +    install -d ${D}${bindir}
>> +    for i in ${DESTDIR}/share/odp/*; do
>> +        filename=`basename $i`
>> +        mv ${DESTDIR}/share/odp/${filename} ${D}${bindir}/${filename}
>> +    done
>> +    rm -rf ${DESTDIR}/share
>> +}
>> +
>> +#non standard doc install location
>> +FILES_${PN}-doc += "/usr/doc/*"
>> diff --git
>> a/meta-networking/recipes-support/opendataplane/opendataplane_git.bb
>> b/meta-networking/recipes-support/opendataplane/opendataplane_git.bb new
>> file mode 100644
>> index 0000000..7415993
>> --- /dev/null
>> +++ b/meta-networking/recipes-support/opendataplane/opendataplane_git.bb
>> @@ -0,0 +1,14 @@
>> +require ${BPN}.inc
>> +
>> +SRC_URI += "file://0001-linux-dpdk-remove-unnecessary-include-path.patch"
>> +
>> +SRCREV  = "${AUTOREV}"
>
> I'm fairly sure we want to avoid having recipes with SRCREV  = "${AUTOREV}" in
> commonly-used public layers, since it's hard to know if it will continue to
> work from one day to the next.
>
> Cheers,
> Paul

fwiw, we have already a recipe in our layer:
https://git.linaro.org/openembedded/meta-linaro.git/blob/HEAD:/meta-linaro/recipes-extra/odp/odp.bb

You might want to check with our LNG guys for merging and keep only one.
In addition, they can also review/merge your extra patch...

Cheers,
Fathi
Yao Zhao - Aug. 1, 2014, 1:35 p.m.
[Re: [oe] [meta-networking][PATCH] add support for opendataplane] On 01/08/2014 (Fri 14:39) Fathi Boudra wrote:

> On 1 August 2014 12:15, Paul Eggleton <paul.eggleton@linux.intel.com> wrote:
> > On Thursday 31 July 2014 15:15:00 Yao Zhao wrote:
> >> support build opendataplane from linaro.
> >>
> >> The OpenDataPlane (ODP) project provides a data plane application
> >> programming environment that is easy to use, high performance,
> >> and portable between networking SoCs.
> >>
> >> Signed-off-by: Yao Zhao <yao.zhao@windriver.com>
> >> ---
> >>  ...inux-dpdk-remove-unnecessary-include-path.patch | 29
> >> ++++++++++++++++++++++ .../opendataplane/opendataplane.inc                |
> >> 21 ++++++++++++++++ .../opendataplane/opendataplane_0.2.bb             | 25
> >> +++++++++++++++++++ .../opendataplane/opendataplane_git.bb             | 14
> >> +++++++++++ 4 files changed, 89 insertions(+)
> >>  create mode 100644
> >> meta-networking/recipes-support/opendataplane/files/0001-linux-dpdk-remove-
> >> unnecessary-include-path.patch create mode 100644
> >> meta-networking/recipes-support/opendataplane/opendataplane.inc create mode
> >> 100644 meta-networking/recipes-support/opendataplane/opendataplane_0.2.bb
> >> create mode 100644
> >> meta-networking/recipes-support/opendataplane/opendataplane_git.bb
> >>
> >> diff --git
> >> a/meta-networking/recipes-support/opendataplane/files/0001-linux-dpdk-remov
> >> e-unnecessary-include-path.patch
> >> b/meta-networking/recipes-support/opendataplane/files/0001-linux-dpdk-remov
> >> e-unnecessary-include-path.patch new file mode 100644
> >> index 0000000..a0ef7ce
> >> --- /dev/null
> >> +++
> >> b/meta-networking/recipes-support/opendataplane/files/0001-linux-dpdk-remov
> >> e-unnecessary-include-path.patch @@ -0,0 +1,29 @@
> >> +From 72b8eacc2985f054cadc5d0b48351a658998b8d6 Mon Sep 17 00:00:00 2001
> >> +From: Yao Zhao <yao.zhao@windriver.com>
> >> +Date: Wed, 30 Jul 2014 16:02:14 -0400
> >> +Subject: [PATCH] linux-dpdk: remove unnecessary include path
> >> +
> >> +for dpdk include/arch and include/exec-env is only included
> >> +by generic rte_xxx.h header, can't be included directly.
> >> +
> >> +Signed-off-by: Yao Zhao <yao.zhao@windriver.com>
> >> +---
> >> + platform/linux-dpdk/Makefile.am | 2 --
> >> + 1 file changed, 2 deletions(-)
> >> +
> >> +diff --git a/platform/linux-dpdk/Makefile.am
> >> b/platform/linux-dpdk/Makefile.am +index 4aa568f..dfcaadb 100644
> >> +--- a/platform/linux-dpdk/Makefile.am
> >> ++++ b/platform/linux-dpdk/Makefile.am
> >> +@@ -12,8 +12,6 @@ PLAT_CFLAGS  = -msse4.2
> >> + if SDK_INSTALL_PATH_
> >> + PLAT_CFLAGS += -include $(SDK_INSTALL_PATH)/include/rte_config.h
> >> + PLAT_CFLAGS += -I$(SDK_INSTALL_PATH)/include
> >> +-PLAT_CFLAGS += -I$(SDK_INSTALL_PATH)/include/arch
> >> +-PLAT_CFLAGS += -I$(SDK_INSTALL_PATH)/include/exec-env
> >> +
> >> + AM_LDFLAGS  += -L$(SDK_INSTALL_PATH)/lib
> >> + endif
> >> +--
> >> +1.9.1
> >> +
> >> diff --git a/meta-networking/recipes-support/opendataplane/opendataplane.inc
> >> b/meta-networking/recipes-support/opendataplane/opendataplane.inc new file
> >> mode 100644
> >> index 0000000..c4b184e
> >> --- /dev/null
> >> +++ b/meta-networking/recipes-support/opendataplane/opendataplane.inc
> >> @@ -0,0 +1,21 @@
> >> +SUMMARY = "Cross platform OpenDataPlane application APIs"
> >> +
> >> +DESCRIPTION = "The OpenDataPlane project has been established to \
> >> +produce an open-source, cross-platform set of application \
> >> +programming interfaces (APIs) for the networking data plane."
> >> +
> >> +HOMEPAGE = "http://www.opendataplane.org"
> >> +SECTION = "networking"
> >> +LICENSE = "BSD-3-Clause"
> >> +LIC_FILES_CHKSUM = "file://LICENSE;md5=4ccfa994aa96974cfcd39a59faee20a2"
> >> +
> >> +SRC_URI = "git://git.linaro.org/lng/odp.git"
> >> +
> >> +COMPATIBLE_HOST = "^((?!mips).*)$"
> >> +
> >> +PACKAGECONFIG ??= "platform_linux_generic"
> >> +PACKAGECONFIG[netmap] = "--enable-netmap,,,"
> >> +PACKAGECONFIG[platform_linux_generic] = "--with-platform=linux-generic,,,"
> >> +
> >> +S = "${WORKDIR}/git"
> >> +
> >> diff --git
> >> a/meta-networking/recipes-support/opendataplane/opendataplane_0.2.bb
> >> b/meta-networking/recipes-support/opendataplane/opendataplane_0.2.bb new
> >> file mode 100644
> >> index 0000000..74b6c2f
> >> --- /dev/null
> >> +++ b/meta-networking/recipes-support/opendataplane/opendataplane_0.2.bb
> >> @@ -0,0 +1,25 @@
> >> +require ${BPN}.inc
> >> +
> >> +#odp-0.2 tag
> >> +SRCREV  = "6007d8833a6880abedf98f792586c0cfb9f10de0"
> >> +PV = "0.2"
> >> +
> >> +#0.2 still using pure Makefile
> >> +
> >> +#override the Makefile DESTDIR
> >> +export DESTDIR="${D}${exec_prefix}"
> >> +
> >> +do_install () {
> >> +    oe_runmake install
> >> +
> >> +    #move DESTDIR/share/odp/odp_x usr/bin
> >> +    install -d ${D}${bindir}
> >> +    for i in ${DESTDIR}/share/odp/*; do
> >> +        filename=`basename $i`
> >> +        mv ${DESTDIR}/share/odp/${filename} ${D}${bindir}/${filename}
> >> +    done
> >> +    rm -rf ${DESTDIR}/share
> >> +}
> >> +
> >> +#non standard doc install location
> >> +FILES_${PN}-doc += "/usr/doc/*"
> >> diff --git
> >> a/meta-networking/recipes-support/opendataplane/opendataplane_git.bb
> >> b/meta-networking/recipes-support/opendataplane/opendataplane_git.bb new
> >> file mode 100644
> >> index 0000000..7415993
> >> --- /dev/null
> >> +++ b/meta-networking/recipes-support/opendataplane/opendataplane_git.bb
> >> @@ -0,0 +1,14 @@
> >> +require ${BPN}.inc
> >> +
> >> +SRC_URI += "file://0001-linux-dpdk-remove-unnecessary-include-path.patch"
> >> +
> >> +SRCREV  = "${AUTOREV}"
> >
> > I'm fairly sure we want to avoid having recipes with SRCREV  = "${AUTOREV}" in
> > commonly-used public layers, since it's hard to know if it will continue to
> > work from one day to the next.
> >
> > Cheers,
> > Paul
> 
> fwiw, we have already a recipe in our layer:
> https://git.linaro.org/openembedded/meta-linaro.git/blob/HEAD:/meta-linaro/recipes-extra/odp/odp.bb
> 
> You might want to check with our LNG guys for merging and keep only one.
> In addition, they can also review/merge your extra patch...
> 
Hi Fathi,

This is what Anders Roxell suggested to commit to yocto, not
meta-linaro.

yao
> Cheers,
> Fathi
Yao Zhao - Aug. 1, 2014, 2:36 p.m.
changes v2:
1.change /usr to variable in 0.2 bb
2.replace AUTOREV with current HEAD tag(which works) 
3.add more descriptions for dpdk build in commit message
4.will send the 0001-linux-dpdk-remove-unnecessary-include-path.patch
  to upstream.

Yao Zhao (1):
  add support for opendataplane

 ...inux-dpdk-remove-unnecessary-include-path.patch | 29 ++++++++++++++++++++++
 .../opendataplane/opendataplane.inc                | 21 ++++++++++++++++
 .../opendataplane/opendataplane_0.2.bb             | 25 +++++++++++++++++++
 .../opendataplane/opendataplane_git.bb             | 14 +++++++++++
 4 files changed, 89 insertions(+)
 create mode 100644 meta-networking/recipes-support/opendataplane/files/0001-linux-dpdk-remove-unnecessary-include-path.patch
 create mode 100644 meta-networking/recipes-support/opendataplane/opendataplane.inc
 create mode 100644 meta-networking/recipes-support/opendataplane/opendataplane_0.2.bb
 create mode 100644 meta-networking/recipes-support/opendataplane/opendataplane_git.bb
Yao Zhao - Aug. 1, 2014, 4:05 p.m.
Hi,

Please hold on reviewing this.
I think it needs more work and will repost it a bit later.

Sorry about that.

thanks,
yao

------------------------------------------------------------------------

*From:* Zhao, Yao
*Sent:* Friday, August 01, 2014 10:36AM
*To:* openembedded-devel@lists.openembedded.org
*Subject:* [oe] [meta-networking][PATCH v2] add support for opendataplane

changes v2:
1.change /usr to variable in 0.2 bb
2.replace AUTOREV with current HEAD tag(which works)
3.add more descriptions for dpdk build in commit message
4.will send the 0001-linux-dpdk-remove-unnecessary-include-path.patch
   to upstream.

Yao Zhao (1):
   add support for opendataplane

  ...inux-dpdk-remove-unnecessary-include-path.patch | 29 ++++++++++++++++++++++
  .../opendataplane/opendataplane.inc                | 21 ++++++++++++++++
  .../opendataplane/opendataplane_0.2.bb             | 25 +++++++++++++++++++
  .../opendataplane/opendataplane_git.bb             | 14 +++++++++++
  4 files changed, 89 insertions(+)
  create mode 100644 meta-networking/recipes-support/opendataplane/files/0001-linux-dpdk-remove-unnecessary-include-path.patch
  create mode 100644 meta-networking/recipes-support/opendataplane/opendataplane.inc
  create mode 100644 meta-networking/recipes-support/opendataplane/opendataplane_0.2.bb
  create mode 100644 meta-networking/recipes-support/opendataplane/opendataplane_git.bb

Patch

diff --git a/meta-networking/recipes-support/opendataplane/files/0001-linux-dpdk-remove-unnecessary-include-path.patch b/meta-networking/recipes-support/opendataplane/files/0001-linux-dpdk-remove-unnecessary-include-path.patch
new file mode 100644
index 0000000..a0ef7ce
--- /dev/null
+++ b/meta-networking/recipes-support/opendataplane/files/0001-linux-dpdk-remove-unnecessary-include-path.patch
@@ -0,0 +1,29 @@ 
+From 72b8eacc2985f054cadc5d0b48351a658998b8d6 Mon Sep 17 00:00:00 2001
+From: Yao Zhao <yao.zhao@windriver.com>
+Date: Wed, 30 Jul 2014 16:02:14 -0400
+Subject: [PATCH] linux-dpdk: remove unnecessary include path
+
+for dpdk include/arch and include/exec-env is only included
+by generic rte_xxx.h header, can't be included directly.
+
+Signed-off-by: Yao Zhao <yao.zhao@windriver.com>
+---
+ platform/linux-dpdk/Makefile.am | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/platform/linux-dpdk/Makefile.am b/platform/linux-dpdk/Makefile.am
+index 4aa568f..dfcaadb 100644
+--- a/platform/linux-dpdk/Makefile.am
++++ b/platform/linux-dpdk/Makefile.am
+@@ -12,8 +12,6 @@ PLAT_CFLAGS  = -msse4.2
+ if SDK_INSTALL_PATH_
+ PLAT_CFLAGS += -include $(SDK_INSTALL_PATH)/include/rte_config.h
+ PLAT_CFLAGS += -I$(SDK_INSTALL_PATH)/include
+-PLAT_CFLAGS += -I$(SDK_INSTALL_PATH)/include/arch
+-PLAT_CFLAGS += -I$(SDK_INSTALL_PATH)/include/exec-env
+ 
+ AM_LDFLAGS  += -L$(SDK_INSTALL_PATH)/lib
+ endif
+-- 
+1.9.1
+
diff --git a/meta-networking/recipes-support/opendataplane/opendataplane.inc b/meta-networking/recipes-support/opendataplane/opendataplane.inc
new file mode 100644
index 0000000..c4b184e
--- /dev/null
+++ b/meta-networking/recipes-support/opendataplane/opendataplane.inc
@@ -0,0 +1,21 @@ 
+SUMMARY = "Cross platform OpenDataPlane application APIs"
+
+DESCRIPTION = "The OpenDataPlane project has been established to \
+produce an open-source, cross-platform set of application \
+programming interfaces (APIs) for the networking data plane."
+
+HOMEPAGE = "http://www.opendataplane.org"
+SECTION = "networking"
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=4ccfa994aa96974cfcd39a59faee20a2"
+                 
+SRC_URI = "git://git.linaro.org/lng/odp.git"
+
+COMPATIBLE_HOST = "^((?!mips).*)$"
+
+PACKAGECONFIG ??= "platform_linux_generic"
+PACKAGECONFIG[netmap] = "--enable-netmap,,,"
+PACKAGECONFIG[platform_linux_generic] = "--with-platform=linux-generic,,,"
+
+S = "${WORKDIR}/git"
+
diff --git a/meta-networking/recipes-support/opendataplane/opendataplane_0.2.bb b/meta-networking/recipes-support/opendataplane/opendataplane_0.2.bb
new file mode 100644
index 0000000..74b6c2f
--- /dev/null
+++ b/meta-networking/recipes-support/opendataplane/opendataplane_0.2.bb
@@ -0,0 +1,25 @@ 
+require ${BPN}.inc
+
+#odp-0.2 tag
+SRCREV  = "6007d8833a6880abedf98f792586c0cfb9f10de0"
+PV = "0.2"
+
+#0.2 still using pure Makefile
+
+#override the Makefile DESTDIR
+export DESTDIR="${D}${exec_prefix}"
+
+do_install () {
+    oe_runmake install
+    
+    #move DESTDIR/share/odp/odp_x usr/bin
+    install -d ${D}${bindir}
+    for i in ${DESTDIR}/share/odp/*; do
+        filename=`basename $i`
+        mv ${DESTDIR}/share/odp/${filename} ${D}${bindir}/${filename}
+    done
+    rm -rf ${DESTDIR}/share
+}
+
+#non standard doc install location
+FILES_${PN}-doc += "/usr/doc/*"
diff --git a/meta-networking/recipes-support/opendataplane/opendataplane_git.bb b/meta-networking/recipes-support/opendataplane/opendataplane_git.bb
new file mode 100644
index 0000000..7415993
--- /dev/null
+++ b/meta-networking/recipes-support/opendataplane/opendataplane_git.bb
@@ -0,0 +1,14 @@ 
+require ${BPN}.inc
+
+SRC_URI += "file://0001-linux-dpdk-remove-unnecessary-include-path.patch"
+
+SRCREV  = "${AUTOREV}"
+#8f4f080625e2db810da3f13770ba418c72b08ede will support --with-sdk-install-path
+PV = "0.2+git${SRCPV}"
+
+PACKAGECONFIG[platform_linux_generic] = "--with-platform=linux-generic,,openssl,libcrypto"
+#need meta-intel layer's common/recipes-extended/dpdk/dpdk recipe
+PACKAGECONFIG[platform_linux_dpdk] = '--with-platform=linux-dpdk --with-sdk-install-path="${STAGING_EXECPREFIXDIR}",,dpdk,'
+PACKAGECONFIG[platform_linux_keystone2] = "--with-platform=linux-keystone2,,,"
+
+inherit autotools