[V1] framework/project_dpdk: add examples/all build for meson build

Message ID 1599700376-28951-1-git-send-email-lihongx.ma@intel.com (mailing list archive)
State Accepted
Headers
Series [V1] framework/project_dpdk: add examples/all build for meson build |

Commit Message

Ma, LihongX Sept. 10, 2020, 1:12 a.m. UTC
  add support for build all examples in suite

Signed-off-by: LihongX Ma <lihongx.ma@intel.com>
---
 framework/project_dpdk.py | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)
  

Comments

Ling, WeiX Sept. 10, 2020, 8:51 a.m. UTC | #1
Tested-by: Ling, Wei<weix.ling@intel.com>

Regards,
Ling Wei

-----Original Message-----
From: Ma, LihongX <lihongx.ma@intel.com> 
Sent: Thursday, September 10, 2020 09:13 AM
To: dts@dpdk.org
Cc: Ling, WeiX <weix.ling@intel.com>; Ma, LihongX <lihongx.ma@intel.com>
Subject: [dts][PATCH V1] framework/project_dpdk: add examples/all build for meson build

add support for build all examples in suite

Signed-off-by: LihongX Ma <lihongx.ma@intel.com>
---
 framework/project_dpdk.py | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/framework/project_dpdk.py b/framework/project_dpdk.py index b5727ef..c1b5eaf 100644
--- a/framework/project_dpdk.py
+++ b/framework/project_dpdk.py
@@ -543,18 +543,22 @@ class DPDKdut(Dut):
 
         folder_info = folder.split('/')
         name = folder_info[-1]
-        if name not in self.apps_name:
+        if name != 'examples' and name not in self.apps_name:
             raise Exception('Please config %s file path on conf/app_name.cfg' % name)
 
-        example = '/'.join(folder_info[folder_info.index('examples')+1:])
+        if name == 'examples':
+            example = 'all'
+        else:
+            example = 
+ '/'.join(folder_info[folder_info.index('examples')+1:])
         out = self.send_expect("meson configure -Dexamples=%s %s" % (example, self.target), "# ")
         assert ("FAILED" not in out), "Compilation error... \r\n %s" % out
         out = self.send_expect("ninja -C %s" % self.target, "# ", timeout)
         assert ("FAILED" not in out), "Compilation error... \r\n %s" % out
 
         # verify the app build in the config path
-        out = self.send_expect('ls %s' % self.apps_name[name], "# ", verify=True)
-        assert(isinstance(out, str)), 'please confirm %s app path and name in app_name.cfg' % name
+        if example != 'all':
+            out = self.send_expect('ls %s' % self.apps_name[name], "# ", verify=True)
+            assert(isinstance(out, str)), 'please confirm %s app path 
+ and name in app_name.cfg' % name
 
         return out
 
--
2.7.4
  
Tu, Lijuan Sept. 15, 2020, 8:33 a.m. UTC | #2
> Subject: [dts] [PATCH V1] framework/project_dpdk: add examples/all build for
> meson build
> 
> add support for build all examples in suite
> 
> Signed-off-by: LihongX Ma <lihongx.ma@intel.com>

Applied
  

Patch

diff --git a/framework/project_dpdk.py b/framework/project_dpdk.py
index b5727ef..c1b5eaf 100644
--- a/framework/project_dpdk.py
+++ b/framework/project_dpdk.py
@@ -543,18 +543,22 @@  class DPDKdut(Dut):
 
         folder_info = folder.split('/')
         name = folder_info[-1]
-        if name not in self.apps_name:
+        if name != 'examples' and name not in self.apps_name:
             raise Exception('Please config %s file path on conf/app_name.cfg' % name)
 
-        example = '/'.join(folder_info[folder_info.index('examples')+1:])
+        if name == 'examples':
+            example = 'all'
+        else:
+            example = '/'.join(folder_info[folder_info.index('examples')+1:])
         out = self.send_expect("meson configure -Dexamples=%s %s" % (example, self.target), "# ")
         assert ("FAILED" not in out), "Compilation error... \r\n %s" % out
         out = self.send_expect("ninja -C %s" % self.target, "# ", timeout)
         assert ("FAILED" not in out), "Compilation error... \r\n %s" % out
 
         # verify the app build in the config path
-        out = self.send_expect('ls %s' % self.apps_name[name], "# ", verify=True)
-        assert(isinstance(out, str)), 'please confirm %s app path and name in app_name.cfg' % name
+        if example != 'all':
+            out = self.send_expect('ls %s' % self.apps_name[name], "# ", verify=True)
+            assert(isinstance(out, str)), 'please confirm %s app path and name in app_name.cfg' % name
 
         return out