[bitbake-devel,ZEUS,MASTER,2/2] toaster: improve warnings when adding dependency to packages

Submitted by Reyna, David on Nov. 27, 2019, 12:43 a.m. | Patch ID: 167426

Details

Message ID 5E53D14CE4667A45B9A06760DE5D13D0FAE91779@ALA-MBD.corp.ad.wrs.com
State New
Headers show

Commit Message

Reyna, David Nov. 27, 2019, 12:43 a.m.
Hi Richard,

As we discussed at ELCE, I am putting this back on the top of your list. This was the missed patch for Zeus.

I am hoping that it gets merged to 3.0.1 and to master.

Thanks,
David


-----Original Message-----
From: Reyna, David 
Sent: Tuesday, October 15, 2019 8:09 AM
To: bitbake-devel@lists.openembedded.org; richard.purdie@linuxfoundation.org
Cc: Reyna, David
Subject: RE: [bitbake-devel] [PATCH 2/2] toaster: improve warnings when adding dependency to packages

Hi Richard,

This is the second of two patches that I sent. The first one got merged but this one did not.

- David

-----Original Message-----
From: bitbake-devel-bounces@lists.openembedded.org [mailto:bitbake-devel-bounces@lists.openembedded.org] On Behalf Of David Reyna
Sent: Tuesday, October 01, 2019 4:18 PM
To: bitbake-devel@lists.openembedded.org
Subject: [bitbake-devel] [PATCH 2/2] toaster: improve warnings when adding dependency to packages

From: David Reyna <David.Reyna@windriver.com>

Some of the objects that bitbake reports to Toaster as dependencies to packages
are known objects that are not packages, for example library files and kernel
modules. In the Toaster logs, mark these as "Info" instead of "Warning".

[YOCTO #13386]

Signed-off-by: David Reyna <David.Reyna@windriver.com>
---
 lib/bb/ui/buildinfohelper.py | 10 ++++++++++
 1 file changed, 10 insertions(+)

Patch hide | download patch | download mbox

diff --git a/lib/bb/ui/buildinfohelper.py b/lib/bb/ui/buildinfohelper.py
index f2151c2..5cbca97 100644
--- a/lib/bb/ui/buildinfohelper.py
+++ b/lib/bb/ui/buildinfohelper.py
@@ -646,6 +646,9 @@  class ORMWrapper(object):
                 Target_Installed_Package.objects.create(target = target_obj, package = packagedict[p]['object'])
 
         packagedeps_objs = []
+        pattern_so = re.compile(r'.*\.so(\.\d*)?$')
+        pattern_lib = re.compile(r'.*\-suffix(\d*)?$')
+        pattern_ko = re.compile(r'^kernel-module-.*')
         for p in packagedict:
             for (px,deptype) in packagedict[p]['depends']:
                 if deptype == 'depends':
@@ -654,6 +657,13 @@  class ORMWrapper(object):
                     tdeptype = Package_Dependency.TYPE_TRECOMMENDS
 
                 try:
+                    # Skip known non-package objects like libraries and kernel modules
+                    if pattern_so.match(px) or pattern_lib.match(px):
+                        logger.info("Toaster does not add library file dependencies to packages (%s,%s)", p, px)
+                        continue
+                    if pattern_ko.match(px):
+                        logger.info("Toaster does not add kernel module dependencies to packages (%s,%s)", p, px)
+                        continue
                     packagedeps_objs.append(Package_Dependency(
                         package = packagedict[p]['object'],
                         depends_on = packagedict[px]['object'],

Comments

Richard Purdie Nov. 27, 2019, 8:46 a.m.
Hi David,

As far as I can tell, this was already merged back in October:

http://git.yoctoproject.org/cgit.cgi/poky/commit/bitbake?id=97a5762be1c8da4092ba7e51dbd46a0c8b9764e8

and therefore should be in master and zeus already?

Cheers,

Richard

On Wed, 2019-11-27 at 00:43 +0000, Reyna, David wrote:
> Hi Richard,
> 
> As we discussed at ELCE, I am putting this back on the top of your
> list. This was the missed patch for Zeus.
> 
> I am hoping that it gets merged to 3.0.1 and to master.
> 
> Thanks,
> David
> 
> 
> -----Original Message-----
> From: Reyna, David 
> Sent: Tuesday, October 15, 2019 8:09 AM
> To: bitbake-devel@lists.openembedded.org; 
> richard.purdie@linuxfoundation.org
> Cc: Reyna, David
> Subject: RE: [bitbake-devel] [PATCH 2/2] toaster: improve warnings
> when adding dependency to packages
> 
> Hi Richard,
> 
> This is the second of two patches that I sent. The first one got
> merged but this one did not.
> 
> - David
> 
> -----Original Message-----
> From: bitbake-devel-bounces@lists.openembedded.org [mailto:
> bitbake-devel-bounces@lists.openembedded.org] On Behalf Of David
> Reyna
> Sent: Tuesday, October 01, 2019 4:18 PM
> To: bitbake-devel@lists.openembedded.org
> Subject: [bitbake-devel] [PATCH 2/2] toaster: improve warnings when
> adding dependency to packages
> 
> From: David Reyna <David.Reyna@windriver.com>
> 
> Some of the objects that bitbake reports to Toaster as dependencies
> to packages
> are known objects that are not packages, for example library files
> and kernel
> modules. In the Toaster logs, mark these as "Info" instead of
> "Warning".
> 
> [YOCTO #13386]
> 
> Signed-off-by: David Reyna <David.Reyna@windriver.com>
> ---
>  lib/bb/ui/buildinfohelper.py | 10 ++++++++++
>  1 file changed, 10 insertions(+)
> 
> diff --git a/lib/bb/ui/buildinfohelper.py
> b/lib/bb/ui/buildinfohelper.py
> index f2151c2..5cbca97 100644
> --- a/lib/bb/ui/buildinfohelper.py
> +++ b/lib/bb/ui/buildinfohelper.py
> @@ -646,6 +646,9 @@ class ORMWrapper(object):
>                  Target_Installed_Package.objects.create(target =
> target_obj, package = packagedict[p]['object'])
>  
>          packagedeps_objs = []
> +        pattern_so = re.compile(r'.*\.so(\.\d*)?$')
> +        pattern_lib = re.compile(r'.*\-suffix(\d*)?$')
> +        pattern_ko = re.compile(r'^kernel-module-.*')
>          for p in packagedict:
>              for (px,deptype) in packagedict[p]['depends']:
>                  if deptype == 'depends':
> @@ -654,6 +657,13 @@ class ORMWrapper(object):
>                      tdeptype = Package_Dependency.TYPE_TRECOMMENDS
>  
>                  try:
> +                    # Skip known non-package objects like libraries
> and kernel modules
> +                    if pattern_so.match(px) or
> pattern_lib.match(px):
> +                        logger.info("Toaster does not add library
> file dependencies to packages (%s,%s)", p, px)
> +                        continue
> +                    if pattern_ko.match(px):
> +                        logger.info("Toaster does not add kernel
> module dependencies to packages (%s,%s)", p, px)
> +                        continue
>                      packagedeps_objs.append(Package_Dependency(
>                          package = packagedict[p]['object'],
>                          depends_on = packagedict[px]['object'],
> -- 
> 1.9.1
>