[OE-core] [PATCH 2/5] insane.bbclass: in file-rdeps do not look into RDEPENDS recursively

Khem Raj raj.khem at gmail.com
Fri Aug 16 17:41:21 UTC 2019


Thanks Martin to fix a bunch of QA issues in meta-openembedded
surfaced after this change in core, there still are some left if
someone wants to take a look at it

https://errors.yoctoproject.org/Errors/Build/87032/

On Tue, Aug 13, 2019 at 11:24 AM Alexander Kanavin
<alex.kanavin at gmail.com> wrote:
>
> Recursive RDEPENDS resolution requires that all of the dependent
> recipes' packaging has completed. There is no mechanism to ensure that
> and therefore races were observed.
>
> This change effectively requires recipes to list their runtime file
> dependencies explicitly rather than have them pulled indirectly.
> This may require a bit of fixing in layers, but should result
> in a better definition of runtime file dependencies.
>
> Signed-off-by: Alexander Kanavin <alex.kanavin at gmail.com>
> ---
>  meta/classes/insane.bbclass | 18 ------------------
>  1 file changed, 18 deletions(-)
>
> diff --git a/meta/classes/insane.bbclass b/meta/classes/insane.bbclass
> index 35c4fdb4913..9b886d13805 100644
> --- a/meta/classes/insane.bbclass
> +++ b/meta/classes/insane.bbclass
> @@ -722,25 +722,7 @@ def package_qa_check_rdepends(pkg, pkgdest, skip, taskdeps, packages, d):
>                              filerdepends[subkey] = key[13:]
>
>              if filerdepends:
> -                next = rdepends
>                  done = rdepends[:]
> -                # Find all the rdepends on the dependency chain
> -                while next:
> -                    new = []
> -                    for rdep in next:
> -                        rdep_data = oe.packagedata.read_subpkgdata(rdep, d)
> -                        sub_rdeps = rdep_data.get("RDEPENDS_" + rdep)
> -                        if not sub_rdeps:
> -                            continue
> -                        for sub_rdep in bb.utils.explode_deps(sub_rdeps):
> -                            if sub_rdep in done:
> -                                continue
> -                            if oe.packagedata.has_subpkgdata(sub_rdep, d):
> -                                # It's a new rdep
> -                                done.append(sub_rdep)
> -                                new.append(sub_rdep)
> -                    next = new
> -
>                  # Add the rprovides of itself
>                  if pkg not in done:
>                      done.insert(0, pkg)
> --
> 2.17.1
>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core


More information about the Openembedded-core mailing list