[oe] [PATCH] Teach insane.bbclass to ignore SDK packages wrt -dev and .so check

Koen Kooi k.kooi at student.utwente.nl
Tue Apr 28 07:10:18 UTC 2009


On 23-04-09 19:59, Tom Rini wrote:
> With the change to make having libfoo.so symlinks in the main package
> become fatal (along with GNU_HASH) SDK stuff is broken now.  At Richard's
> suggestion, the following patch teaches insane.bbclass to not run the
> -dev check on sdk||canadian-sdk recipes.


Acked-by: Koen Kooi <koen at openembedded.org>


> I did this by splitting the devdbg check into two separate checks
> (rather than re-order the checks as we do want to pull dbg stuff out).
> This also clarifies the comments to both.  As an aside, yes we bail out
> if say a file named Kconfig.debug ends up in a package.
>
> Signed-off-by: Tom Rini<trini at embeddedalley.com>
>
> diff --git a/classes/insane.bbclass b/classes/insane.bbclass
> index 584a5f1..cc881dc 100644
> --- a/classes/insane.bbclass
> +++ b/classes/insane.bbclass
> @@ -250,21 +250,35 @@ def package_qa_check_rpath(file,name,d, elf):
>
>       return sane
>
> -def package_qa_check_devdbg(path, name,d, elf):
> +def package_qa_check_dev(path, name,d, elf):
>       """
> -    Check for debug remains inside the binary or
> -    non dev packages containing
> +    Check for ".so" library symlinks in non-dev packages
>       """
>
>       import bb, os
>       sane = True
>
> +    # SDK packages are special.
> +    for s in ['sdk', 'canadian-sdk']:
> +        if bb.data.inherits_class(s, d):
> +            return True
> +
>       if not "-dev" in name:
>           if path[-3:] == ".so" and os.path.islink(path):
>               error_msg = "non -dev package contains symlink .so: %s path '%s'" % \
>                        (name, package_qa_clean_path(path,d))
>               sane = package_qa_handle_error(0, error_msg, name, path, d)
>
> +    return sane
> +
> +def package_qa_check_dbg(path, name,d, elf):
> +    """
> +    Check for ".debug" files or directories outside of the dbg package
> +    """
> +
> +    import bb, os
> +    sane = True
> +
>       if not "-dbg" in name:
>           if '.debug' in path:
>               error_msg = "non debug package contains .debug directory: %s path %s" % \
> @@ -493,9 +507,10 @@ python do_package_qa () {
>       if not packages:
>           return
>
> -    checks = [package_qa_check_rpath, package_qa_check_devdbg,
> +    checks = [package_qa_check_rpath, package_qa_check_dev,
>                 package_qa_check_perm, package_qa_check_arch,
> -              package_qa_check_desktop, package_qa_hash_style]
> +              package_qa_check_desktop, package_qa_hash_style,
> +              package_qa_check_dbg]
>       walk_sane = True
>       rdepends_sane = True
>       for package in packages.split():
>






More information about the Openembedded-devel mailing list