All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/4] eSDK support runs of compatibility SDK tests
@ 2017-06-09 17:01 Aníbal Limón
  2017-06-09 17:01 ` [PATCH 1/4] lib/oe/sdk: Adds get_extra_sdk_info to reuse code in buildhistory Aníbal Limón
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: Aníbal Limón @ 2017-06-09 17:01 UTC (permalink / raw)
  To: openembedded-core; +Cc: paul.eggleton

The following changes since commit b1d5267f0e31605b346af40778da0ac1ff298b78:

  README.hardware: update flashing instructions for MPC8315 (2017-06-09 17:13:45 +0100)

are available in the git repository at:

  git://git.yoctoproject.org/poky-contrib fjpedraz/emptyManifests
  http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=fjpedraz/emptyManifests

Aníbal Limón (1):
  oeqa/sdk/cases: Fix skip of buildgcalculator test

Francisco Pedraza (3):
  lib/oe/sdk: Adds get_extra_sdk_info to reuse code in buildhistory
  meta/classes/populate_sdk: Adds support for generating eSDK manifest
    files
  oeqa/sdk/cases: Added validation for SDK compatibility tests with eSDK

 meta/classes/buildhistory.bbclass          | 19 ++++---------
 meta/classes/populate_sdk_base.bbclass     | 44 +++++++++++++++++-------------
 meta/classes/populate_sdk_ext.bbclass      | 33 ++++++++++++++++++++++
 meta/lib/oe/sdk.py                         | 19 +++++++++++++
 meta/lib/oeqa/sdk/cases/buildgalculator.py |  2 +-
 meta/lib/oeqa/sdk/cases/buildiptables.py   |  3 +-
 meta/lib/oeqa/sdk/cases/gcc.py             |  3 +-
 meta/lib/oeqa/sdk/cases/perl.py            |  3 +-
 meta/lib/oeqa/sdk/cases/python.py          |  3 +-
 9 files changed, 92 insertions(+), 37 deletions(-)

-- 
2.1.4



^ permalink raw reply	[flat|nested] 5+ messages in thread

* [PATCH 1/4] lib/oe/sdk: Adds get_extra_sdk_info to reuse code in buildhistory
  2017-06-09 17:01 [PATCH 0/4] eSDK support runs of compatibility SDK tests Aníbal Limón
@ 2017-06-09 17:01 ` Aníbal Limón
  2017-06-09 17:01 ` [PATCH 2/4] meta/classes/populate_sdk: Adds support for generating eSDK manifest files Aníbal Limón
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 5+ messages in thread
From: Aníbal Limón @ 2017-06-09 17:01 UTC (permalink / raw)
  To: openembedded-core; +Cc: Francisco Pedraza, paul.eggleton

From: Francisco Pedraza <francisco.j.pedraza.gonzalez@intel.com>

This function is going to be used for generating the target and host
manifest files packages for eSDK. Added some fixes for buildhistory.bblclass,
and docstring for get_extra_sdkinfo at oe.sdk

[YOCTO #9038]

Signed-off-by: Francisco Pedraza <francisco.j.pedraza.gonzalez@intel.com>
Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
---
 meta/classes/buildhistory.bbclass | 18 ++++++------------
 meta/lib/oe/sdk.py                | 19 +++++++++++++++++++
 2 files changed, 25 insertions(+), 12 deletions(-)

diff --git a/meta/classes/buildhistory.bbclass b/meta/classes/buildhistory.bbclass
index 3e907fc..bfcc88a 100644
--- a/meta/classes/buildhistory.bbclass
+++ b/meta/classes/buildhistory.bbclass
@@ -582,25 +582,19 @@ END
 python buildhistory_get_extra_sdkinfo() {
     import operator
     import math
+    from oe.sdk import get_extra_sdkinfo
+
+    sstate_dir = d.expand('${SDK_OUTPUT}/${SDKPATH}/sstate-cache')
+    extra_info = get_extra_sdkinfo(sstate_dir)
 
     if d.getVar('BB_CURRENTTASK') == 'populate_sdk_ext' and \
             "sdk" in (d.getVar('BUILDHISTORY_FEATURES') or "").split():
-        tasksizes = {}
-        filesizes = {}
-        for root, _, files in os.walk(d.expand('${SDK_OUTPUT}/${SDKPATH}/sstate-cache')):
-            for fn in files:
-                if fn.endswith('.tgz'):
-                    fsize = int(math.ceil(float(os.path.getsize(os.path.join(root, fn))) / 1024))
-                    task = fn.rsplit(':', 1)[1].split('_', 1)[1].split('.')[0]
-                    origtotal = tasksizes.get(task, 0)
-                    tasksizes[task] = origtotal + fsize
-                    filesizes[fn] = fsize
         with open(d.expand('${BUILDHISTORY_DIR_SDK}/sstate-package-sizes.txt'), 'w') as f:
-            filesizes_sorted = sorted(filesizes.items(), key=operator.itemgetter(1, 0), reverse=True)
+            filesizes_sorted = sorted(extra_info['filesizes'].items(), key=operator.itemgetter(1, 0), reverse=True)
             for fn, size in filesizes_sorted:
                 f.write('%10d KiB %s\n' % (size, fn))
         with open(d.expand('${BUILDHISTORY_DIR_SDK}/sstate-task-sizes.txt'), 'w') as f:
-            tasksizes_sorted = sorted(tasksizes.items(), key=operator.itemgetter(1, 0), reverse=True)
+            tasksizes_sorted = sorted(extra_info['tasksizes'].items(), key=operator.itemgetter(1, 0), reverse=True)
             for task, size in tasksizes_sorted:
                 f.write('%10d KiB %s\n' % (size, task))
 }
diff --git a/meta/lib/oe/sdk.py b/meta/lib/oe/sdk.py
index deb823b..1c5409e 100644
--- a/meta/lib/oe/sdk.py
+++ b/meta/lib/oe/sdk.py
@@ -372,5 +372,24 @@ def populate_sdk(d, manifest_dir=None):
     os.environ.clear()
     os.environ.update(env_bkp)
 
+def get_extra_sdkinfo(sstate_dir):
+    """
+    This function is going to be used for generating the target and host manifest files packages of eSDK.
+    """
+    import math
+    
+    extra_info = {}
+    extra_info['tasksizes'] = {}
+    extra_info['filesizes'] = {}
+    for root, _, files in os.walk(sstate_dir):
+        for fn in files:
+            if fn.endswith('.tgz'):
+                fsize = int(math.ceil(float(os.path.getsize(os.path.join(root, fn))) / 1024))
+                task = fn.rsplit(':',1)[1].split('_',1)[1].split(',')[0]
+                origtotal = extra_info['tasksizes'].get(task, 0)
+                extra_info['tasksizes'][task] = origtotal + fsize
+                extra_info['filesizes'][fn] = fsize
+    return extra_info
+
 if __name__ == "__main__":
     pass
-- 
2.1.4



^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [PATCH 2/4] meta/classes/populate_sdk: Adds support for generating eSDK manifest files
  2017-06-09 17:01 [PATCH 0/4] eSDK support runs of compatibility SDK tests Aníbal Limón
  2017-06-09 17:01 ` [PATCH 1/4] lib/oe/sdk: Adds get_extra_sdk_info to reuse code in buildhistory Aníbal Limón
@ 2017-06-09 17:01 ` Aníbal Limón
  2017-06-09 17:01 ` [PATCH 3/4] oeqa/sdk/cases: Added validation for SDK compatibility tests with eSDK Aníbal Limón
  2017-06-09 17:01 ` [PATCH 4/4] oeqa/sdk/cases: Fix skip of buildgcalculator test Aníbal Limón
  3 siblings, 0 replies; 5+ messages in thread
From: Aníbal Limón @ 2017-06-09 17:01 UTC (permalink / raw)
  To: openembedded-core; +Cc: Francisco Pedraza, paul.eggleton

From: Francisco Pedraza <francisco.j.pedraza.gonzalez@intel.com>

Add get_extra_sdk_info to reuse code in buildhistory

The functionalities to generate SDK and eSDK manifest files are different,
the SDK comes from package information and the eSDK comes from sstate artifacts.
Only execute write_sdk_{host, target}_manifest when is on populate_sdk class.

Adds new functions write_sdk{host, target}_ext_manifest to execute on postprocess
in populate_sdk_ext because at the end we have all the sstate artifacts to
generate the manifest.

[YOCTO #9038]

Signed-off-by: Francisco Pedraza <francisco.j.pedraza.gonzalez@intel.com>
Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
---
 meta/classes/buildhistory.bbclass      |  1 -
 meta/classes/populate_sdk_base.bbclass | 44 +++++++++++++++++++---------------
 meta/classes/populate_sdk_ext.bbclass  | 33 +++++++++++++++++++++++++
 3 files changed, 58 insertions(+), 20 deletions(-)

diff --git a/meta/classes/buildhistory.bbclass b/meta/classes/buildhistory.bbclass
index bfcc88a..def7a64 100644
--- a/meta/classes/buildhistory.bbclass
+++ b/meta/classes/buildhistory.bbclass
@@ -581,7 +581,6 @@ END
 
 python buildhistory_get_extra_sdkinfo() {
     import operator
-    import math
     from oe.sdk import get_extra_sdkinfo
 
     sstate_dir = d.expand('${SDK_OUTPUT}/${SDKPATH}/sstate-cache')
diff --git a/meta/classes/populate_sdk_base.bbclass b/meta/classes/populate_sdk_base.bbclass
index 563582e..01960ee 100644
--- a/meta/classes/populate_sdk_base.bbclass
+++ b/meta/classes/populate_sdk_base.bbclass
@@ -59,15 +59,19 @@ SDK_TITLE ?= "${@d.getVar('DISTRO_NAME') or d.getVar('DISTRO')} SDK"
 
 SDK_TARGET_MANIFEST = "${SDKDEPLOYDIR}/${TOOLCHAIN_OUTPUTNAME}.target.manifest"
 SDK_HOST_MANIFEST = "${SDKDEPLOYDIR}/${TOOLCHAIN_OUTPUTNAME}.host.manifest"
+SDK_EXT_TARGET_MANIFEST = "${SDK_DEPLOY}/${TOOLCHAINEXT_OUTPUTNAME}.target.manifest"
+SDK_EXT_HOST_MANIFEST = "${SDK_DEPLOY}/${TOOLCHAINEXT_OUTPUTNAME}.host.manifest"
+
 python write_target_sdk_manifest () {
-    from oe.sdk import sdk_list_installed_packages
-    from oe.utils import format_pkg_list
-    sdkmanifestdir = os.path.dirname(d.getVar("SDK_TARGET_MANIFEST"))
-    pkgs = sdk_list_installed_packages(d, True)
-    if not os.path.exists(sdkmanifestdir):
-        bb.utils.mkdirhier(sdkmanifestdir)
-    with open(d.getVar('SDK_TARGET_MANIFEST'), 'w') as output:
-        output.write(format_pkg_list(pkgs, 'ver'))
+    if d.getVar('BB_CURRENTTASK') == 'populate_sdk':
+        from oe.sdk import sdk_list_installed_packages
+        from oe.utils import format_pkg_list
+        sdkmanifestdir = os.path.dirname(d.getVar("SDK_TARGET_MANIFEST"))
+        pkgs = sdk_list_installed_packages(d, True)
+        if not os.path.exists(sdkmanifestdir):
+            bb.utils.mkdirhier(sdkmanifestdir)
+        with open(d.getVar('SDK_TARGET_MANIFEST'), 'w') as output:
+            output.write(format_pkg_list(pkgs, 'ver'))
 }
 
 python write_sdk_test_data() {
@@ -78,20 +82,22 @@ python write_sdk_test_data() {
 }
 
 python write_host_sdk_manifest () {
-    from oe.sdk import sdk_list_installed_packages
-    from oe.utils import format_pkg_list
-    sdkmanifestdir = os.path.dirname(d.getVar("SDK_HOST_MANIFEST"))
-    pkgs = sdk_list_installed_packages(d, False)
-    if not os.path.exists(sdkmanifestdir):
-        bb.utils.mkdirhier(sdkmanifestdir)
-    with open(d.getVar('SDK_HOST_MANIFEST'), 'w') as output:
-        output.write(format_pkg_list(pkgs, 'ver'))
+    if d.getVar('BB_CURRENTTASK') == 'populate_sdk':
+        from oe.sdk import sdk_list_installed_packages
+        from oe.utils import format_pkg_list
+        sdkmanifestdir = os.path.dirname(d.getVar("SDK_HOST_MANIFEST"))
+        pkgs = sdk_list_installed_packages(d, False)
+        if not os.path.exists(sdkmanifestdir):
+            bb.utils.mkdirhier(sdkmanifestdir)
+        with open(d.getVar('SDK_HOST_MANIFEST'), 'w') as output:
+            output.write(format_pkg_list(pkgs, 'ver'))
 }
 
-POPULATE_SDK_POST_TARGET_COMMAND_append = " write_target_sdk_manifest ; write_sdk_test_data ; "
-POPULATE_SDK_POST_HOST_COMMAND_append = " write_host_sdk_manifest; "
+POPULATE_SDK_POST_TARGET_COMMAND_append = " write_sdk_test_data ; "
+POPULATE_SDK_POST_TARGET_COMMAND_append_task-populate-sdk  = " write_target_sdk_manifest ; "
+POPULATE_SDK_POST_HOST_COMMAND_append_task-populate-sdk = " write_host_sdk_manifest; "
 SDK_PACKAGING_COMMAND = "${@'${SDK_PACKAGING_FUNC};' if '${SDK_PACKAGING_FUNC}' else ''}"
-SDK_POSTPROCESS_COMMAND = " create_sdk_files; check_sdk_sysroots; tar_sdk; ${SDK_PACKAGING_COMMAND} "
+SDK_POSTPROCESS_COMMAND = " create_sdk_files; check_sdk_sysroots; tar_sdk; write_target_sdk_manifest; write_host_sdk_manifest; ${SDK_PACKAGING_COMMAND} "
 
 def populate_sdk_common(d):
     from oe.sdk import populate_sdk
diff --git a/meta/classes/populate_sdk_ext.bbclass b/meta/classes/populate_sdk_ext.bbclass
index 69bc1d9..4791d74 100644
--- a/meta/classes/populate_sdk_ext.bbclass
+++ b/meta/classes/populate_sdk_ext.bbclass
@@ -83,6 +83,39 @@ TOOLCHAIN_OUTPUTNAME_task-populate-sdk-ext = "${TOOLCHAINEXT_OUTPUTNAME}"
 SDK_EXT_TARGET_MANIFEST = "${SDK_DEPLOY}/${TOOLCHAINEXT_OUTPUTNAME}.target.manifest"
 SDK_EXT_HOST_MANIFEST = "${SDK_DEPLOY}/${TOOLCHAINEXT_OUTPUTNAME}.host.manifest"
 
+python write_target_sdk_ext_manifest () {
+    from oe.sdk import get_extra_sdkinfo
+    sstate_dir = d.expand('${SDK_OUTPUT}/${SDKPATH}/sstate-cache')
+    extra_info = get_extra_sdkinfo(sstate_dir)
+
+    target = d.getVar('TARGET_SYS')
+    target_multimach = d.getVar('MULTIMACH_TARGET_SYS')
+    real_target_multimach = d.getVar('REAL_MULTIMACH_TARGET_SYS')
+
+    pkgs = {}
+    with open(d.getVar('SDK_EXT_TARGET_MANIFEST'), 'w') as f:
+        for fn in extra_info['filesizes']:
+            info = fn.split(':')
+            if info[2] in (target, target_multimach, real_target_multimach) \
+                    or info[5] == 'allarch':
+                if not info[1] in pkgs:
+                    f.write("%s %s %s\n" % (info[1], info[2], info[3]))
+                    pkgs[info[1]] = {}
+}
+python write_host_sdk_ext_manifest () {
+    from oe.sdk import get_extra_sdkinfo
+    sstate_dir = d.expand('${SDK_OUTPUT}/${SDKPATH}/sstate-cache')
+    extra_info = get_extra_sdkinfo(sstate_dir)
+    host = d.getVar('BUILD_SYS')
+    with open(d.getVar('SDK_EXT_HOST_MANIFEST'), 'w') as f:
+        for fn in extra_info['filesizes']:
+            info = fn.split(':')
+            if info[2] == host:
+                f.write("%s %s %s\n" % (info[1], info[2], info[3]))
+}
+
+SDK_POSTPROCESS_COMMAND_append_task-populate-sdk-ext = "write_target_sdk_ext_manifest; write_host_sdk_ext_manifest; "    
+
 SDK_TITLE_task-populate-sdk-ext = "${@d.getVar('DISTRO_NAME') or d.getVar('DISTRO')} Extensible SDK"
 
 def clean_esdk_builddir(d, sdkbasepath):
-- 
2.1.4



^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [PATCH 3/4] oeqa/sdk/cases: Added validation for SDK compatibility tests with eSDK
  2017-06-09 17:01 [PATCH 0/4] eSDK support runs of compatibility SDK tests Aníbal Limón
  2017-06-09 17:01 ` [PATCH 1/4] lib/oe/sdk: Adds get_extra_sdk_info to reuse code in buildhistory Aníbal Limón
  2017-06-09 17:01 ` [PATCH 2/4] meta/classes/populate_sdk: Adds support for generating eSDK manifest files Aníbal Limón
@ 2017-06-09 17:01 ` Aníbal Limón
  2017-06-09 17:01 ` [PATCH 4/4] oeqa/sdk/cases: Fix skip of buildgcalculator test Aníbal Limón
  3 siblings, 0 replies; 5+ messages in thread
From: Aníbal Limón @ 2017-06-09 17:01 UTC (permalink / raw)
  To: openembedded-core; +Cc: Francisco Pedraza, paul.eggleton

From: Francisco Pedraza <francisco.j.pedraza.gonzalez@intel.com>

The manifests for eSDK are generated using shared states so there is a
need to validate to different "packages names" into the test cases.

For example for perl:

SDK provides nativesdk-perl
eSDK provides perl-native

[YOCTO #9090]

Signed-off-by: Francisco Pedraza <francisco.j.pedraza.gonzalez@intel.com>
Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
---
 meta/lib/oeqa/sdk/cases/buildiptables.py | 3 ++-
 meta/lib/oeqa/sdk/cases/gcc.py           | 3 ++-
 meta/lib/oeqa/sdk/cases/perl.py          | 3 ++-
 meta/lib/oeqa/sdk/cases/python.py        | 3 ++-
 4 files changed, 8 insertions(+), 4 deletions(-)

diff --git a/meta/lib/oeqa/sdk/cases/buildiptables.py b/meta/lib/oeqa/sdk/cases/buildiptables.py
index 0bd00d1..419c7eb 100644
--- a/meta/lib/oeqa/sdk/cases/buildiptables.py
+++ b/meta/lib/oeqa/sdk/cases/buildiptables.py
@@ -17,7 +17,8 @@ class BuildIptablesTest(OESDKTestCase):
 
         machine = self.td.get("MACHINE")
 
-        if not self.tc.hasHostPackage("packagegroup-cross-canadian-%s" % machine):
+        if not (self.tc.hasTargetPackage("packagegroup-cross-canadian-%s" % machine) or
+                self.tc.hasTargetPackage("gcc")):
             raise unittest.SkipTest("SDK doesn't contain a cross-canadian toolchain")
 
     def test_iptables(self):
diff --git a/meta/lib/oeqa/sdk/cases/gcc.py b/meta/lib/oeqa/sdk/cases/gcc.py
index 74ad2a2..d11f4b6 100644
--- a/meta/lib/oeqa/sdk/cases/gcc.py
+++ b/meta/lib/oeqa/sdk/cases/gcc.py
@@ -18,7 +18,8 @@ class GccCompileTest(OESDKTestCase):
 
     def setUp(self):
         machine = self.td.get("MACHINE")
-        if not self.tc.hasHostPackage("packagegroup-cross-canadian-%s" % machine):
+        if not (self.tc.hasTargetPackage("packagegroup-cross-canadian-%s" % machine) or
+                self.tc.hasTargetPackage("gcc")):
             raise unittest.SkipTest("GccCompileTest class: SDK doesn't contain a cross-canadian toolchain")
 
     def test_gcc_compile(self):
diff --git a/meta/lib/oeqa/sdk/cases/perl.py b/meta/lib/oeqa/sdk/cases/perl.py
index e1bded2..8085678 100644
--- a/meta/lib/oeqa/sdk/cases/perl.py
+++ b/meta/lib/oeqa/sdk/cases/perl.py
@@ -8,7 +8,8 @@ from oeqa.sdk.case import OESDKTestCase
 class PerlTest(OESDKTestCase):
     @classmethod
     def setUpClass(self):
-        if not self.tc.hasHostPackage("nativesdk-perl"):
+        if not (self.tc.hasHostPackage("nativesdk-perl") or
+                self.tc.hasHostPackage("perl-native")):
             raise unittest.SkipTest("No perl package in the SDK")
 
         for f in ['test.pl']:
diff --git a/meta/lib/oeqa/sdk/cases/python.py b/meta/lib/oeqa/sdk/cases/python.py
index 94a296f..72dfcc7 100644
--- a/meta/lib/oeqa/sdk/cases/python.py
+++ b/meta/lib/oeqa/sdk/cases/python.py
@@ -8,7 +8,8 @@ from oeqa.sdk.case import OESDKTestCase
 class PythonTest(OESDKTestCase):
     @classmethod
     def setUpClass(self):
-        if not self.tc.hasHostPackage("nativesdk-python"):
+        if not (self.tc.hasHostPackage("nativesdk-python") or
+                self.tc.hasHostPackage("python-native")):
             raise unittest.SkipTest("No python package in the SDK")
 
         for f in ['test.py']:
-- 
2.1.4



^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [PATCH 4/4] oeqa/sdk/cases: Fix skip of buildgcalculator test
  2017-06-09 17:01 [PATCH 0/4] eSDK support runs of compatibility SDK tests Aníbal Limón
                   ` (2 preceding siblings ...)
  2017-06-09 17:01 ` [PATCH 3/4] oeqa/sdk/cases: Added validation for SDK compatibility tests with eSDK Aníbal Limón
@ 2017-06-09 17:01 ` Aníbal Limón
  3 siblings, 0 replies; 5+ messages in thread
From: Aníbal Limón @ 2017-06-09 17:01 UTC (permalink / raw)
  To: openembedded-core; +Cc: paul.eggleton

The tc.hasTargetPackage uses a re.search to see if gtk+3 is on
the manifest but + in regex means 1 or more causing the test
to be skipped.

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
---
 meta/lib/oeqa/sdk/cases/buildgalculator.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/lib/oeqa/sdk/cases/buildgalculator.py b/meta/lib/oeqa/sdk/cases/buildgalculator.py
index 42e8ddb..780afcc 100644
--- a/meta/lib/oeqa/sdk/cases/buildgalculator.py
+++ b/meta/lib/oeqa/sdk/cases/buildgalculator.py
@@ -8,7 +8,7 @@ class GalculatorTest(OESDKTestCase):
 
     @classmethod
     def setUpClass(self):
-        if not (self.tc.hasTargetPackage("gtk+3") or\
+        if not (self.tc.hasTargetPackage("gtk\+3") or\
                 self.tc.hasTargetPackage("libgtk-3.0")):
             raise unittest.SkipTest("GalculatorTest class: SDK don't support gtk+3")
 
-- 
2.1.4



^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2017-06-09 17:01 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-06-09 17:01 [PATCH 0/4] eSDK support runs of compatibility SDK tests Aníbal Limón
2017-06-09 17:01 ` [PATCH 1/4] lib/oe/sdk: Adds get_extra_sdk_info to reuse code in buildhistory Aníbal Limón
2017-06-09 17:01 ` [PATCH 2/4] meta/classes/populate_sdk: Adds support for generating eSDK manifest files Aníbal Limón
2017-06-09 17:01 ` [PATCH 3/4] oeqa/sdk/cases: Added validation for SDK compatibility tests with eSDK Aníbal Limón
2017-06-09 17:01 ` [PATCH 4/4] oeqa/sdk/cases: Fix skip of buildgcalculator test Aníbal Limón

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.