[dts] [PATCH V1] fix dpdk test app compile issue
Liu, Yong
yong.liu at intel.com
Thu Mar 2 08:18:29 CET 2017
Thanks, huilong. If I am right, this patch is for latest dpdk code and
not work on 17.02.
Pending merge action after tag for v17.02 created.
On 03/02/2017 03:12 PM, xu,huilong wrote:
> change list:
> new dpdk code move code path and make file, default compile will not compile app test path.
> so should compile test app and copy test app to driver compile path.
>
> Signed-off-by: xu,huilong <huilongx.xu at intel.com>
> ---
> framework/project_dpdk.py | 15 ++++++++++++++-
> 1 file changed, 14 insertions(+), 1 deletion(-)
>
> diff --git a/framework/project_dpdk.py b/framework/project_dpdk.py
> index e2e4b5e..7a4e4f7 100644
> --- a/framework/project_dpdk.py
> +++ b/framework/project_dpdk.py
> @@ -183,6 +183,13 @@ class DPDKdut(Dut):
>
> # compile
> out = self.send_expect("make -j install T=%s %s" % (target, extra_options), "# ", build_time)
> + #should not check test app compile status, because if test compile fail,
> + #all unit test can't exec, but others case will exec sucessfull
> + self.send_expect("make -j -C test/", "# ", build_time)
> + app_list = ['./test/test/test', './test/test-acl/testacl', './test/test-pipeline/testpipeline', './test/cmdline_test/cmdline_test']
> + for app in app_list:
> + self.send_expect('cp %s ./%s/app' % (app, target), "# ", 30)
> +
>
> if("Error" in out or "No rule to make" in out):
> self.logger.error("ERROR - try without '-j'")
> @@ -191,7 +198,6 @@ class DPDKdut(Dut):
>
> assert ("Error" not in out), "Compilation error..."
> assert ("No rule to make" not in out), "No rule to make error..."
> -
> def build_install_dpdk_freebsd(self, target, extra_options):
> """
> Build DPDK source code on Freebsd with specified target.
> @@ -206,6 +212,13 @@ class DPDKdut(Dut):
> out = self.send_expect("make -j %d install T=%s CC=gcc48" % (self.number_of_cores,
> target),
> "#", 120)
> + #should not check test app compile status, because if test compile fail,
> + #all unit test can't exec, but others case will exec sucessfull
> + self.send_expect("make -j -C test/ CC=gcc48", "# ", build_time)
> +
> + app_list = ['./test/test/test', './test/test-acl/testacl', './test/test-pipeline/testpipeline', './test/cmdline_test/cmdline_test']
> + for app in app_list:
> + self.send_expect('cp -f %s ./%s/app' % (app, target), "# ", 30)
>
> if("Error" in out or "No rule to make" in out):
> self.logger.error("ERROR - try without '-j'")
More information about the dts
mailing list