[OE-core] [PATCH] classes/license: copy licenses even if there are no checksummed files

Beth 'pidge' Flanagan pidge at toganlabs.com
Wed Nov 2 18:37:35 UTC 2016


On Wed, 2016-11-02 at 15:07 +0000, Ross Burton wrote:
> Previously do_populate_lic would bail writing the license files (such
> as the MIT
> license text) to deploy/licenses/${PN}/ if there were no files listed
> in
> LIC_FILES_CHKSUM.
> 
> However this means that recipes that generate their content (such as
> os-release)
> or are otherwise "interesting" (such as perf) don't have their
> license files
> copied over, resulting in warnings from do_rootfs.
> 

It's been a bit since I've looked at license.bbclass, but I guess my
question here is this seems to take out all notification that a recipe
doesn't have a LIC_FILES_CHKSUM, correct?

I'd rather we maybe kept the note in and maybe whitelisted recipes that
did interesting things so that didn't appear than just ignored when a
recipe was missing it. 

Because if we don't at least bb.note it, I can see people just ignoring
it entirely (which would be bad in a lot of ways)

-b

> Signed-off-by: Ross Burton <ross.burton at intel.com>
> ---
>  meta/classes/license.bbclass | 8 +-------
>  1 file changed, 1 insertion(+), 7 deletions(-)
> 
> diff --git a/meta/classes/license.bbclass
> b/meta/classes/license.bbclass
> index 660b85f..afcfbfc 100644
> --- a/meta/classes/license.bbclass
> +++ b/meta/classes/license.bbclass
> @@ -390,7 +390,7 @@ def find_license_files(d):
>      from collections import defaultdict, OrderedDict
>  
>      # All the license files for the package
> -    lic_files = d.getVar('LIC_FILES_CHKSUM', True)
> +    lic_files = d.getVar('LIC_FILES_CHKSUM', True) or ""
>      pn = d.getVar('PN', True)
>      # The license files are located in S/LIC_FILE_CHECKSUM.
>      srcdir = d.getVar('S', True)
> @@ -469,12 +469,6 @@ def find_license_files(d):
>      if not generic_directory:
>          bb.fatal("COMMON_LICENSE_DIR is unset. Please set this in
> your distro config")
>  
> -    if not lic_files:
> -        # No recipe should have an invalid license file. This is
> checked else
> -        # where, but let's be pedantic
> -        bb.note(pn + ": Recipe file does not have license file
> information.")
> -        return lic_files_paths
> -
>      for url in lic_files.split():
>          try:
>              (type, host, path, user, pswd, parm) =
> bb.fetch.decodeurl(url)



More information about the Openembedded-core mailing list