diff mbox

[PATCHv2] scripts: add builddpdk

Message ID 1458310573-5046-1-git-send-email-maxim.uvarov@linaro.org
State Superseded
Headers show

Commit Message

Maxim Uvarov March 18, 2016, 2:16 p.m. UTC
Add script to quickly build odp with dpdk pktio support.

Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
---
 v2: - make target pass thought env;
     - use vars in 2 more palaces
     - use pushd/popd

 .gitignore        |  1 +
 scripts/builddpdk | 26 ++++++++++++++++++++++++++
 2 files changed, 27 insertions(+)
 create mode 100755 scripts/builddpdk

Comments

Mike Holmes March 18, 2016, 2:25 p.m. UTC | #1
On 18 March 2016 at 10:16, Maxim Uvarov <maxim.uvarov@linaro.org> wrote:

> Add script to quickly build odp with dpdk pktio support.

>

> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>

> ---

>  v2: - make target pass thought env;

>      - use vars in 2 more palaces

>      - use pushd/popd

>

>  .gitignore        |  1 +

>  scripts/builddpdk | 26 ++++++++++++++++++++++++++

>  2 files changed, 27 insertions(+)

>  create mode 100755 scripts/builddpdk

>

> diff --git a/.gitignore b/.gitignore

> index b4c146b..4945d25 100644

> --- a/.gitignore

> +++ b/.gitignore

> @@ -31,6 +31,7 @@ core

>  cscope.out

>  depcomp

>  doc/output

> +dpdk/

>  install-sh

>  lib/

>  libtool

> diff --git a/scripts/builddpdk b/scripts/builddpdk

>


This is going to get confused with odp-dpdk, name it something like
builddpdkpktio, we also need to put in clear documentation in this script
on how it is related to odp-dpdk and refer people to the full odp-dpdk.


> new file mode 100755

> index 0000000..bcc00b0

> --- /dev/null

> +++ b/scripts/builddpdk

> @@ -0,0 +1,26 @@

> +#!/bin/bash

> +

> +TARGET=${TARGET:-"x86_64-native-linuxapp-gcc"}

> +

> +git clone http://dpdk.org/git/dpdk dpdk

> +pushd dpdk

> +git checkout -b bv2.2.0 v2.2.0

> +

> +#Make and edit DPDK configuration

> +make config T=${TARGET} O=${TARGET}

> +pushd x86_64-native-linuxapp-gcc

> +sed -ri 's,(CONFIG_RTE_BUILD_COMBINE_LIBS=).*,\1y,' .config

> +#To use I/O without DPDK supported NIC's enable pcap pmd:

> +sed -ri 's,(CONFIG_RTE_LIBRTE_PMD_PCAP=).*,\1y,' .config

> +popd

> +

> +#Build DPDK

> +make install T=${TARGET} EXTRA_CFLAGS="-fPIC"

> +popd

> +

> +#Build ODP

> +./bootstrap;

> +./configure  --enable-test-vald  --enable-test-perf --enable-test-cpp \

> +            --enable-debug --enable-debug-print \

> +            --with-dpdk-path=`pwd`/dpdk/${TARGET}

> +make

> --

> 2.7.1.250.gff4ea60

>

> _______________________________________________

> lng-odp mailing list

> lng-odp@lists.linaro.org

> https://lists.linaro.org/mailman/listinfo/lng-odp

>




-- 
Mike Holmes
Technical Manager - Linaro Networking Group
Linaro.org <http://www.linaro.org/> *│ *Open source software for ARM SoCs
"Work should be fun and collaborative, the rest follows"
Maxim Uvarov March 18, 2016, 2:47 p.m. UTC | #2
On 03/18/16 17:25, Mike Holmes wrote:
>
>
> On 18 March 2016 at 10:16, Maxim Uvarov <maxim.uvarov@linaro.org 
> <mailto:maxim.uvarov@linaro.org>> wrote:
>
>     Add script to quickly build odp with dpdk pktio support.
>
>     Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org
>     <mailto:maxim.uvarov@linaro.org>>
>     ---
>      v2: - make target pass thought env;
>          - use vars in 2 more palaces
>          - use pushd/popd
>
>      .gitignore        |  1 +
>      scripts/builddpdk | 26 ++++++++++++++++++++++++++
>      2 files changed, 27 insertions(+)
>      create mode 100755 scripts/builddpdk
>
>     diff --git a/.gitignore b/.gitignore
>     index b4c146b..4945d25 100644
>     --- a/.gitignore
>     +++ b/.gitignore
>     @@ -31,6 +31,7 @@ core
>      cscope.out
>      depcomp
>      doc/output
>     +dpdk/
>      install-sh
>      lib/
>      libtool
>     diff --git a/scripts/builddpdk b/scripts/builddpdk
>
>
> This is going to get confused with odp-dpdk, name it something like 
> builddpdkpktio, we also need to put in clear documentation in this 
> script on how it is related to odp-dpdk and refer people to the full 
> odp-dpdk.

I want to do the same script for netmap.
How about that names?:

scripts/build-pktio-dpdk
scripts/build-pktio-netmap

Maxim
>
>     new file mode 100755
>     index 0000000..bcc00b0
>     --- /dev/null
>     +++ b/scripts/builddpdk
>     @@ -0,0 +1,26 @@
>     +#!/bin/bash
>     +
>     +TARGET=${TARGET:-"x86_64-native-linuxapp-gcc"}
>     +
>     +git clone http://dpdk.org/git/dpdk dpdk
>     +pushd dpdk
>     +git checkout -b bv2.2.0 v2.2.0
>     +
>     +#Make and edit DPDK configuration
>     +make config T=${TARGET} O=${TARGET}
>     +pushd x86_64-native-linuxapp-gcc
>     +sed -ri 's,(CONFIG_RTE_BUILD_COMBINE_LIBS=).*,\1y,' .config
>     +#To use I/O without DPDK supported NIC's enable pcap pmd:
>     +sed -ri 's,(CONFIG_RTE_LIBRTE_PMD_PCAP=).*,\1y,' .config
>     +popd
>     +
>     +#Build DPDK
>     +make install T=${TARGET} EXTRA_CFLAGS="-fPIC"
>     +popd
>     +
>     +#Build ODP
>     +./bootstrap;
>     +./configure  --enable-test-vald  --enable-test-perf
>     --enable-test-cpp \
>     +            --enable-debug --enable-debug-print \
>     +            --with-dpdk-path=`pwd`/dpdk/${TARGET}
>     +make
>     --
>     2.7.1.250.gff4ea60
>
>     _______________________________________________
>     lng-odp mailing list
>     lng-odp@lists.linaro.org <mailto:lng-odp@lists.linaro.org>
>     https://lists.linaro.org/mailman/listinfo/lng-odp
>
>
>
>
> -- 
> Mike Holmes
> Technical Manager - Linaro Networking Group
> Linaro.org <http://www.linaro.org/>***│ *Open source software for ARM SoCs
> "Work should be fun and collaborative, the rest follows"
>
Mike Holmes March 18, 2016, 2:50 p.m. UTC | #3
On 18 March 2016 at 10:47, Maxim Uvarov <maxim.uvarov@linaro.org> wrote:

> On 03/18/16 17:25, Mike Holmes wrote:

>

>>

>>

>> On 18 March 2016 at 10:16, Maxim Uvarov <maxim.uvarov@linaro.org <mailto:

>> maxim.uvarov@linaro.org>> wrote:

>>

>>     Add script to quickly build odp with dpdk pktio support.

>>

>>     Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org

>>     <mailto:maxim.uvarov@linaro.org>>

>>     ---

>>      v2: - make target pass thought env;

>>          - use vars in 2 more palaces

>>          - use pushd/popd

>>

>>      .gitignore        |  1 +

>>      scripts/builddpdk | 26 ++++++++++++++++++++++++++

>>      2 files changed, 27 insertions(+)

>>      create mode 100755 scripts/builddpdk

>>

>>     diff --git a/.gitignore b/.gitignore

>>     index b4c146b..4945d25 100644

>>     --- a/.gitignore

>>     +++ b/.gitignore

>>     @@ -31,6 +31,7 @@ core

>>      cscope.out

>>      depcomp

>>      doc/output

>>     +dpdk/

>>      install-sh

>>      lib/

>>      libtool

>>     diff --git a/scripts/builddpdk b/scripts/builddpdk

>>

>>

>> This is going to get confused with odp-dpdk, name it something like

>> builddpdkpktio, we also need to put in clear documentation in this script

>> on how it is related to odp-dpdk and refer people to the full odp-dpdk.

>>

>

> I want to do the same script for netmap.

> How about that names?:

>

> scripts/build-pktio-dpdk

> scripts/build-pktio-netmap

>


I think that is better for the names, and we need to well document in the
readme as well as these scripts what it means to build in this way.


>

> Maxim

>

>>

>>     new file mode 100755

>>     index 0000000..bcc00b0

>>     --- /dev/null

>>     +++ b/scripts/builddpdk

>>     @@ -0,0 +1,26 @@

>>     +#!/bin/bash

>>     +

>>     +TARGET=${TARGET:-"x86_64-native-linuxapp-gcc"}

>>     +

>>     +git clone http://dpdk.org/git/dpdk dpdk

>>     +pushd dpdk

>>     +git checkout -b bv2.2.0 v2.2.0

>>     +

>>     +#Make and edit DPDK configuration

>>     +make config T=${TARGET} O=${TARGET}

>>     +pushd x86_64-native-linuxapp-gcc

>>     +sed -ri 's,(CONFIG_RTE_BUILD_COMBINE_LIBS=).*,\1y,' .config

>>     +#To use I/O without DPDK supported NIC's enable pcap pmd:

>>     +sed -ri 's,(CONFIG_RTE_LIBRTE_PMD_PCAP=).*,\1y,' .config

>>     +popd

>>     +

>>     +#Build DPDK

>>     +make install T=${TARGET} EXTRA_CFLAGS="-fPIC"

>>     +popd

>>     +

>>     +#Build ODP

>>     +./bootstrap;

>>     +./configure  --enable-test-vald  --enable-test-perf

>>     --enable-test-cpp \

>>     +            --enable-debug --enable-debug-print \

>>     +            --with-dpdk-path=`pwd`/dpdk/${TARGET}

>>     +make

>>     --

>>     2.7.1.250.gff4ea60

>>

>>     _______________________________________________

>>     lng-odp mailing list

>>     lng-odp@lists.linaro.org <mailto:lng-odp@lists.linaro.org>

>>     https://lists.linaro.org/mailman/listinfo/lng-odp

>>

>>

>>

>>

>> --

>> Mike Holmes

>> Technical Manager - Linaro Networking Group

>> Linaro.org <http://www.linaro.org/>***│ *Open source software for ARM

>> SoCs

>> "Work should be fun and collaborative, the rest follows"

>>

>>

>



-- 
Mike Holmes
Technical Manager - Linaro Networking Group
Linaro.org <http://www.linaro.org/> *│ *Open source software for ARM SoCs
"Work should be fun and collaborative, the rest follows"
diff mbox

Patch

diff --git a/.gitignore b/.gitignore
index b4c146b..4945d25 100644
--- a/.gitignore
+++ b/.gitignore
@@ -31,6 +31,7 @@  core
 cscope.out
 depcomp
 doc/output
+dpdk/
 install-sh
 lib/
 libtool
diff --git a/scripts/builddpdk b/scripts/builddpdk
new file mode 100755
index 0000000..bcc00b0
--- /dev/null
+++ b/scripts/builddpdk
@@ -0,0 +1,26 @@ 
+#!/bin/bash
+
+TARGET=${TARGET:-"x86_64-native-linuxapp-gcc"}
+
+git clone http://dpdk.org/git/dpdk dpdk
+pushd dpdk
+git checkout -b bv2.2.0 v2.2.0
+
+#Make and edit DPDK configuration
+make config T=${TARGET} O=${TARGET}
+pushd x86_64-native-linuxapp-gcc
+sed -ri 's,(CONFIG_RTE_BUILD_COMBINE_LIBS=).*,\1y,' .config
+#To use I/O without DPDK supported NIC's enable pcap pmd:
+sed -ri 's,(CONFIG_RTE_LIBRTE_PMD_PCAP=).*,\1y,' .config
+popd
+
+#Build DPDK
+make install T=${TARGET} EXTRA_CFLAGS="-fPIC"
+popd
+
+#Build ODP
+./bootstrap;
+./configure  --enable-test-vald  --enable-test-perf --enable-test-cpp \
+	     --enable-debug --enable-debug-print \
+	     --with-dpdk-path=`pwd`/dpdk/${TARGET}
+make